« Installing The Latest PHP on Ubuntu | Code Bootcamp » |
When I was younger, I had strong opinions about many subjects. I felt I was right about a great many things, and anyone who disagreed with me was wrong. In my mind there was a right or a wrong, a black and a white, with little room for grey. Others were certainly entitled to their own opinion, but that didn’t make them any less wrong if their opinion differed from my own.
As I’ve gotten older, I’ve begun to realize in programming, and in life, so often things rely on a two word phrase that makes all the difference: it depends.
Where only a few years ago I might have criticized a framework choice or language decision, these days I realize that when it comes to picking a language or a framework, it depends. It depends on use case, on needs, on so much more than right or wrong.
Where only a few years ago I might have advocated for a particular development practice in absolute terms, I’ve come to realize that it too depends. Not all development practices are always appropriate, all of the time, in all situations.
I’m confident I am a better developer, more engaging consultant and ultimately improved person for the realization that it depends. Accepting nuance makes for a stronger solution, and recognizing differences makes us all better off.
Next time you find yourself reaching for an absolute, a hard and fast rule, remember that much of the time the answer is variable. It depends.
Brandon Savage is the author of Mastering Object Oriented PHP and Practical Design Patterns in PHP
Posted on 2/20/2019 at 8:00 am
Paul M. Jones wrote at 2/20/2019 4:00 pm:
Good article.
The next questions then become, “Depends on *what* specifically?” and “What are the tradeoffs of the different options?” It is the ability to articulate (not merely imagine!) the various “depends/tradeoffs” that gives insight.
Guy G wrote at 2/26/2019 4:17 pm:
Great post.
When it comes to programming and life in general, taking the “shades of grey” approach rather than the “black and white” is more realistic with the dynamism of both. Things are constantly changing. Staying absolute about certain things closes you off and makes you less open for change.
« Installing The Latest PHP on Ubuntu | Code Bootcamp » |