The masterful programmer

He is henceforth known as a person, independent of gender.

Software is expression. The more domain you have over a given programming language, the more freely you can give shape to your ideas.

Frameworks are tools built on top of languages to help you perform a given set of tasks more easily. The tradeoff is they get in the way of expressiveness. i.e.: they’re not your ideas anymore, but rather, pieces of other people’s ideas which you’re plugging into yours, to make software happen.

A programmer with little domain over a programming language is unable to adequately translate his ideas into software. He faces the same challenge that any of us would face when trying to write a letter containing instructions in a foreign language: no matter how well I know the instructions, I’m barred by my ability to convey what I know in words I’m not familiar with.

Hence, a programmer who’s striving to become masterful should use frameworks as much as possible, but with the purpose of deepening his understanding of the programming language and the underlying platform, so he can eventually be free of them should he choose to, or should the architecture call for it.

Understand that in this day and age, there are two kinds of programmers: the ones who use tools, and the ones bound to their tools. Be the former.

  1. julio-ody posted this