Friday, September 28, 2007

Staying Sharp

37 Signals answers the question that has always bothered programmers. In order to be good at what you do, do you need to stop having a life outside of keeping up with technology ? While I agree with the answer (in principle) 37s provides, the industry does not seem to value understanding of core concepts on whose foundation all languages and application development tools are built.

When time and money are in short supply (which is almost always the case), they need someone whose skills are fresh even if their grasp of fundamental concepts of programming and design and seriously deficient. Therefore, it is commonplace to have a twenty four year old kid with two years of experience in whatever "flavor of the month technology" business has decided to go with be responsible for a substantial development effort.

While he/she maybe highly fluent in the language, their grammar is lacking and aesthetics is most often completely absent. To land the job, even a seasoned programmer has to demonstrate comparable fluency. Her facility with design patterns will most likely not cut it at the typical job interview where the focus is on tactical needs i.e. being able to hit the ground running and churn reams of code in a specific language. Once on the job, they may be able to demonstrate what other value they bring to the table.

From having been a programmer once and seen many others in that role, I don't think learning on the job is anywhere near sufficient if you want your coding skills to be sharp enough to pay the bills. Sadly, the industry does not seek programming mavens or a superior quality product. They are quite happy with skilled labor if that will ensure a short time to market.

No comments: