What type of programmer are you?

What type of programmer are you?

I am not a working neuroscientist. I don't have a MRI machine in my closet. All I have is my subjective experience and have formed my opinions based on it

I think there are two kinds of programmers. The one who is systematic, the one who likes to plan things out on paper before starting to code. The other is the spontaneous type, the one who likes to start writing code and then figure the structure along the way.

So which is right? As most things in life, this is not black and white.

When all the pieces you need are in your head, you can plan and get it done. One who is leaned towards the second should develop the ability to plan better. But if you find yourself planning and getting it done in a single shot everytime, that means you are not really pushing yourself.

If you are really stepping into uncharted territories, you should be spontaneous when the plan goes out of the window. So start with a solid plan but develop the spontaneonity to improvise. There will always be a bit of figuring out, quick trying of different things and seeing what works, which anyone who did any serious programming will tell you. Sometimes, you should do things which at some level, you don't know what you are doing.

Too much chaos is no good. Too much order ain't taking the cake either. The right balance of order and chaos, the yin and the yang, the left and the right brain, the black and the white is needed.

A team needs the systematic types who keeps the order and the talented spontaneous types who brings some creativity. This applies inside your head as well, develop you left brain to be more systematic but don't starve your right brain off being creative. One who is inclined towards one side should strive to develop the other side as well.

There is more to a programmer's brain than the above, but that is story for another day.