

Good Programmers Make Bad Architects - foresterh
http://www.caffeinatedcoder.com/guest-post-good-programmers-make-bad-designers/

======
mcherm
The author of the piece ("Rand") emphasizes that good developers know one
language well and architecture requires a multi-language approach. As a
programmer-moved-to-architect I don't find this very convincing. One reason is
that being a good PROGRAMMER required me to learn several different languages
(and thus several different paradigms). I often wrote Java code that strongly
resembled functional programming, and my development skills were better for
it.

More difficult, I have found, is to adapt to the "build vs buy" choice. As a
developer, I generally was asked to build something that could solve the
problem. As an architect I am more often asked to decide whether we should
build it or we should buy something instead. I have had to train myself to
ignore that first instinct which screams "Hey... I know how to do this!!" and
replace it with a cold evaluation of whether it is WORTH it to build
ourselves.

Overall, though, I disagree: I think good programmers can be good architects.
But the article raises some interesting points.

~~~
foresterh
You could almost argue that the definition of a "good programmer" is one that
does know many languages, even if just to bring over paradigms from one to the
other or keep his brain sharp.

I also think that programmer to architect could go either way. Some
programmers are very well versed in their domain and current application and
make excellent architects while the application remains the same. Once enough
changes are made, they are no longer an expert in the code base, and don't
know the best ways to extend and improve on it. Others are good at envisioning
the current solution and know, from doing it with the programmer hat, how to
best architect a change, no matter how it evolves.

