OK, I am a business type guy and I have to say... I completely agree with this article. In my experience, developers become good at what they do not through learning languages, but rather through mastering three basic skills:
a) modeling business specs into discrete technical steps (loops, workflows, calls, etc.);
b) developing intuition for tackling bugs, e.g. knowing where to look for causes and how to fix them quickly, even if it often sounds like a completely illogical thing to do;
c) developing and sticking to well-defined procedures, e.g. documenting code, making timely backups, going through security checklists and so on.
So whenever I need to hire a new developer for my projects, I try to assess how well he fits those three criteria.
a) modeling business specs into discrete technical steps (loops, workflows, calls, etc.); b) developing intuition for tackling bugs, e.g. knowing where to look for causes and how to fix them quickly, even if it often sounds like a completely illogical thing to do; c) developing and sticking to well-defined procedures, e.g. documenting code, making timely backups, going through security checklists and so on.
So whenever I need to hire a new developer for my projects, I try to assess how well he fits those three criteria.