Greetings Nicklas, I assure you I did read the article, and I also assure you that I:
a) Am coming from a constructive place
b) Am not attempting to be over-reactive.
c) Not attempting to be disrespectful or disparaging
My response is upon looking at the code itself. As developers, we sometimes want to draw people into our “little worlds”, and I swear to you that in using that term, I do not in any way mean that as demeaning, attacking, or antagonistic. It’s just something I’ve observed in myself as well as others. I want to be clear that I’ve been just as guilty. I’ve had to tone down the “If they just follow this pattern in my framework, it would make everything so much easier!” approach.
Please bear with me as I (hopefully) present a representative analogy. Let’s say you have an airport, and with it being a modern airport, each of the runways supports ILS. That’s the “follow my framework” approach. So long as you take the time to get lined up with a proper ILS approach, your landing is significantly easier- you just follow the ILS markers, keep your nose up and within the indicators and your airspeed in check, and the plane practically lands itself.
But what happens if the plane experiences an emergency, and the normal skilled pilot gets sick from food-poisoning. It just so happens that a flight-attendant happens to find a passenger who just so happens can fly a crop-duster back in row 33. He or she doesn’t know about all the electronics of your fancy A350, and he certainly doesn’t know about ILS, but he/she knows how to read an altimeter, an airspeed indicator, as well as work a yoke, rudders, and a throttle. The faster that guest pilot can attain situational awareness and find the nearest runway, the better off everyone is.
Write your code so that a crop-duster can land the plane without ILS on a runway in Muncie, Indiana.