What makes a good programmer?

Started by Darren Dirt, December 09, 2005, 11:46:00 PM

Previous topic - Next topic

Darren Dirt

What makes a good programmer?



This "Grumpy Old" guy sounds off.



http://grumpyoldprogrammer.myblogsite.com/blog/_archives/2005/6/10/927276.html





I've read a few of his "rants", and to be honest, they're awesome -- and challenging on the ego and/or "cherished and established beliefs" :)





...case in point: inheritance, scrutinized.
_____________________

Strive for progress. Not perfection.
_____________________

Mr. Analog

Login!? Screw that noise.



A programmer only needs three things to be "good" IMHO



1. Good communicator



2. Must have a thirst for knowledge



3. Must be detail oriented



Notice that "technical skills" are not on my top 3 list, any monkey can be taught to push buttons, the things I value you either have or you work at improving.
By Grabthar's Hammer

Darren Dirt

Quote from: "Mr. Analog"Login!? Screw that noise.



A programmer only needs three things to be "good" IMHO



1. Good communicator



2. Must have a thirst for knowledge



3. Must be detail oriented



Notice that "technical skills" are not on my top 3 list, any monkey can be taught to push buttons, the things I value you either have or you work at improving.



LOGIN? What? We don't need no steenkin' login for that site...



Although I think in some browsers the CSS is weird so the content is way off to the right side -- worth the scrollbar slide to read the content :)
_____________________

Strive for progress. Not perfection.
_____________________

Tom

QuoteAlthough I think in some browsers the CSS is weird so the content is way off to the right side -- worth the scrollbar slide to read the content Smile
I assume the monkies that designed that site only checked it in IE. I haven't so I could be wrong.
<Zapata Prime> I smell Stanley... And he smells good!!!

Darren Dirt

Quote from: "Tom"
QuoteAlthough I think in some browsers the CSS is weird so the content is way off to the right side -- worth the scrollbar slide to read the content Smile
I assume the monkies that designed that site only checked it in IE. I haven't so I could be wrong.



Sorry, I was wrong, it's not bad CSS that makes the text of the article go way off on the right side. It's an annoying banner ad that is like 800 pixels wide, must be a free hosting/blog site. Firefox and IE render it basically the same.



But still, worth the slide over to read the content :) Not sure what Mr. A was speaking of when he mentioned a "login"... unless he wanted to offer a comment, perhaps?
_____________________

Strive for progress. Not perfection.
_____________________

Thorin

Uhh, Microsoft now calls us "Occupational" and "Professional" Programmers?
Prayin' for a 20!

gcc thorin.c -pedantic -o Thorin
compile successful

Shayne

While working on my own projects recently i have taken a liking to the "extreme programming" way.  In stead of making a cadilac solution, instead make what i need, i can always build on it later if i need too.  Ive shaved a ton of lines, lots of cycles, and lots of time.



Not sure thats detail orientated.

Thorin

I've had a look at XP a while back, and would love to use it to develop as part of a group.  I even went so far as to suggest it at my-former-your-current employer, but there was no buy-in; the idea of architect-as-you-go just didn't seem appealing.  Do you follow all of the practices?  That is, do you have a business user who writes stories on 3x5 cards describing how a piece of the software would work?  Do you pair-program?



But no, that's not the definition of "detail oriented".  What Mr. A. refers to is the innate ability to notice the tiny minutiae rather than gloss over them; for instance, noticing the spelling of "oriented" :)
Prayin' for a 20!

gcc thorin.c -pedantic -o Thorin
compile successful

Shayne

I guess i could read more then skim.  Ah well :P



As for XP, myself and 2 other programmers did it for a while on a game i made.  Worked well, however the biggest complaint i have is coding standards are gone.  Since everything is so light and speedy, corners are cut and i find maintainability drops.  Though instead of maintaining its basically faster to just recode it with the new requirements.



Im not sure i follow XP to the Xtreme, but i did read over it and decided that i liked some of the ideas and implemented my own sorta version of it.



Im very anti-framework.

Tonnica

I defenitely agree with him on his last point that there's really a wide variety of different skill sets, personalities, and methodologies that make "good" programmers.



Some need to have good communication skills and the ability to translate what they've heard/seen/absorbed into a design people won't agonize over having to use (*cough*Lotusnotes*cough*). Some need to have good machine-level understanding so that huge-arse batchfile from the infernal realms only has to run a few hours instead of a few days. Some need to be thorough (especially in debugging) for those real-time monitoring applications run on time-critical systems (like instrumentation in a refinery). Some need to be flexible for those times where they have to remote in via a Citrix client (being routed through a DSL network with DSLAM, right Thorin? ;)) to make sure that the mainframe app interfacing with the payment transaction system is not only up and running at maximum efficiency but it's also exactly following the business rules it was designed for.



The top 3 I think make a good programmer are:



1) Good communication skills (excellent communication skills being the best, but "good" being more realistic)

2) Strong learner

3) Able to step back from a problem to see the big picture (failing that, being able to see underneath the underneath in the code. Or at least bring in a copy of Come Come Paradise)

Thorin

Quote from: "Shayne"As for XP ... the biggest complaint i have is coding standards are gone.  Since everything is so light and speedy, corners are cut and i find maintainability drops.

What do you consider "coding standards" here?  It's a fuzzy term that means lots of different things to different people...  For me, "coding standards" means how to lay out the code so that it is readable and understandable with as little learning curve as possible.
Prayin' for a 20!

gcc thorin.c -pedantic -o Thorin
compile successful