

Should an architect also be a coder? - edw519
http://ponderousprog.blogspot.com/2008/05/rabbit-hole.html

======
menloparkbum
One key to happiness and success is to never get involved with the side of the
business where this question is relevant.

------
osipov
The question is incomplete. It should be rephrased to specify time, e.g.
should an architect also be a _former_ coder or should an architect be a coder
2 hours a day/month/year? I suppose someone could try to advance an argument
on whether someone could be architect without ever writing a line of code, but
I doubt that someone would get very far.

~~~
mojuba
_Former coder_ implies disappointed coder, doesn't it? Or otherwise what could
be the reason for giving up coding, aside from illness and death? So an
architect in the mainstream sense is someone alive and well who is NOT loving
programming. A perfect candidate for managing programmers, indeed.

~~~
michael_dorfman
"Former coder implies disappointed coder, doesn't it? Or otherwise what could
be the reason for giving up coding, aside from illness and death?"

I disagree, being a former coder myself. As time went on, I found I could be
much more effective by leading a team (and then a company) where other people
would write the code. When you're writing in a high-level language, you've got
a compiler that is generating machine instructions based on your high-level
code. When you are writing "managed code" in the .NET Framework, there's an
additional layer of abstraction-- you are writing (for example) C#, which gets
compiled into IL, which gets JIT compiled into you've got a compiler writing
Intermediate Language code which is then compiled into machine instructions.
Becoming an architect (or product manager, etc.) is adding additional layers
of abstraction (and power). Your ideas are still getting transformed into
machine instructions-- there's just a few more steps along the way.

~~~
mojuba
Except becoming a "pure" architect exactly means to give up coding. Drawing
diagrams on the whiteboard or any kind of an UML editor - and only doing that
is not programming. It's probably called "drawing diagrams", but never
"coding". So I suppose what I said about disappointment is still true.

~~~
michael_dorfman
I can only speak for myself and say that it's probably been 5 years since I've
written a line of code that ended up in production, but I don't consider
myself a "disappointed coder". I still like to code in my spare time-- but at
the office, I think I can be more effective writing code indirectly through
coders rather than writing code directly.

------
okeumeni
My answer in simple, an Architect should be a potential GOOD coder; this
implies that he was a good coder and can sit down when necessary and piss some
nice code.

I have been in the business long enough to know that an architect with no
solid coding experience generally design either a weak system or a fancy
disastrous system.

------
wanorris
Has anyone ever advanced a plausible argument for how you can be an effective
architect without also coding? This seems like the same conclusion everyone
comes to when giving it even a modicum of thought.

~~~
michael_dorfman
Without coding, or without ever having coded?

I wouldn't hire an architect who had never coded; but, I don't have my
architects writing production code.

~~~
wanorris
Don't you worry about them getting rusty or having an insufficient
understanding of the code base?

As an architect, I relinquish the bulk of the coding to our other programmers,
but if I didn't do some of it, I would lose touch with the realities of the
code base.

~~~
huherto
The key is that once you stop coding you start getting rusty.

An effective way is for the architect to code the proof of concept. Once most
of the issues are understood he can start bringing more engineers to the team.

