Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase 12345»»»

What Makes a Good Programmer Expand / Collapse
Author
Message
Posted Tuesday, May 15, 2007 11:12 AM
SSCrazy

SSCrazySSCrazySSCrazySSCrazySSCrazySSCrazySSCrazySSCrazy

Group: General Forum Members
Last Login: Thursday, July 17, 2014 7:55 AM
Points: 2,805, Visits: 3,067
Comments posted here are about the content posted at http://www.sqlservercentral.com/columnists/jchan/3000.asp
Post #366081
Posted Tuesday, July 3, 2007 12:59 AM
SSC Rookie

SSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC Rookie

Group: General Forum Members
Last Login: Wednesday, August 27, 2014 2:37 AM
Points: 25, Visits: 141
I am new to the software development. This article impressed me very well. Will try to become a good programmer...

Thank you very much for your valuable thoughts...

Good wishes to you
Post #378515
Posted Tuesday, July 3, 2007 1:22 AM
Valued Member

Valued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued Member

Group: General Forum Members
Last Login: Tuesday, December 23, 2008 12:38 AM
Points: 74, Visits: 3

I am not a guru, hopefully I am a good programmer, but this article sure encourage me to keep on trying to work for good programming and a  satisfying execution of my job.

Post #378523
Posted Tuesday, July 3, 2007 1:50 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Tuesday, August 7, 2007 2:16 AM
Points: 5, Visits: 1
"And then there are developers who just know how to do sweet talk and pretend they know everything, in fact they do nothing right, you just do not know how they can stay in the business."

Beware of these people when they're really good at it, because your boss(es) may never have any more insight in your products than what they can see when they use it. It's even possible those in charge know nothing of technology.
So the sweet talkers may never be revealed. I've worked with people like this, and they seem very professional. Any time they make a mistake, they also make it sound like you in fact made the mistake by thinking they had done that in the first place. In fact, they make it sound like they were about to do what you suggested all along.
And we end up doing their jobs for them, because we will get in trouble if they make the whole group fail.

But I have also met people who are good programmers. They may not have a great sense of logic, but if you've got technology in your blood, you can do well with little.

I have creativity and logic in mine, and this in itself has bred my sense of technology, even if I don't have the same natural ways with programming languages, linux console system handling, etc, as many people I know. But this line of buisness takes all sorts.
People say I'm a good programmer, though I am utterly inexperienced so far. I hope to live up to it.
Post #378535
Posted Tuesday, July 3, 2007 1:51 AM
SSC-Enthusiastic

SSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-EnthusiasticSSC-Enthusiastic

Group: General Forum Members
Last Login: Monday, November 5, 2007 1:41 PM
Points: 115, Visits: 3

Two proverbs here:

1) Anything worth doing is worth doing well.
2) Beauty is in the eye of the beholder.

I think anyone who has ever written code, has tried to make it work good.
But what is understandable and sufficient for those who write code merely to solve a problem, may be absolute horror to those who regard writing code as an art. It depends on your standards and point of view.

Whenever I need to write code, I like to name variables for what they are, for example if goal() set score = score +1. It makes the process more transparant for me. If professional programmers will never regard me as anything more than an amateur for that, so be it.

Opinions are like assholes: everybody has one...




Post #378536
Posted Tuesday, July 3, 2007 2:29 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Sunday, December 16, 2007 10:15 PM
Points: 1, Visits: 2

The newbies were impressed by this post because it was written to impress newbs. This said little that hasn't been said (often) before...and by people who write a lot better than this. As for Gates, Gates is all about marketing. Microsoft does the very thing they decry so much...Push programmers to write for production, not quality. For proof, you need look no further than every single product they ever released. Gates loves to come off as a 'guru' himself, and maybe he is, but certainly not a tech guru. No, Gates strong point has ALWAYS been in marketing, certainly not in innovation. The only innovation M$ has EVER brought to market is that which they first purchased (or simply robbed) from someone else. But I digress.

A 'guru, from a programming perspective, doesn't, in fact, need ANY interpersonal communication skills...It's ridiculous to assert otherwise. If he has them, well that's just gravy. It makes him (or her) a LOT easier to get along with within a team work environment, but has NOTHING to do with his/her 'guru' status.

Gurus are NOT, although the label 'guru' would indicate otherwise, in ANY sense a teacher, or a mentor. They don't NEED to teach, because they are more than capable of DOING. If they CHOOSE to teach, again, that's just more gravy.

Gurus are the ones that not only KNOW five ways from Sunday how to accomplish a particular coding task, in multiple languages and on any platform, they ALSO know (and much more importantly) the OPTIMUM way that said task SHOULD be done.

They also are ALWAYS thinking 'outside the box'...In fact, they don't even acknowledge the box's existence for the most part.

The poster also mentioned how humble and unassuming this hypothetical guru is. In my experience (ESPECIALLY during my 4 years at Microsoft), that's simply not true. They are TOTALLY assuming and oftentimes downright prima donnas...and with good reason. They realize their worth to their employer. They know the savings in time and money their presence on the work force represents, and they expect management to recognize it as well....and to compensate them accordingly.

Merely 'good' programmers on the other hand, are a company's bread and butter. They ARE the ones that simply 'git 'er done'!...And Management loves them for that fact alone.




Regards,

Cyberian
Post #378551
Posted Tuesday, July 3, 2007 2:47 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Friday, September 21, 2007 3:23 PM
Points: 5, Visits: 1
The one thing that separates the good from the bad is their ability to test their own work.

A programmer who thinks about everything that they will need to test for covers all of the possible outcomes and sends out code that is cost effective.

A programmer who focuses only on the primary goal does not cover all eventualities and turns out code that has holes in it. This is expensive. If code with flaws get out to the testers it is far more expensive to fix.

Of course the latter can eventuate when management concentrates on cost instead of quality and of course this ends up being far less cost effective.
Post #378559
Posted Tuesday, July 3, 2007 3:15 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Friday, September 7, 2007 6:25 AM
Points: 1, Visits: 1
Very good article which motivates one towards learning new technologies and  implementing better coding.
Post #378565
Posted Tuesday, July 3, 2007 3:50 AM
Grasshopper

GrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopperGrasshopper

Group: General Forum Members
Last Login: Friday, March 27, 2009 4:01 AM
Points: 14, Visits: 40

Your criteria:

1."First the real gurus don't advertise their expertise."
2."gurus ... try to make it easy for others to understand"
3."And of course, the guru has kept up with technology"
4."Finally...A good developer spends a lot of time talking to the users to understand what they need"

You're specifying the criteria for a good teacher, not a code guru. And 4 is totally left-field, a good programmer does not need to be a good analyst, they just need the support of a good analyst.

Of the two people I've met who I think of as gurus, they fit but one or two of these criteria (usually just keeping up with the tech).

Post #378574
Posted Tuesday, July 3, 2007 4:37 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Monday, May 31, 2010 11:27 AM
Points: 3, Visits: 5

This is quite a good article for the fact that it opens up conversation and opinions.

I'm going to be a bit pedantic in my opinion by saying that you have to be careful of the terms that you use.  The only communication skill a programmer needs is the ability to communicate with a computer.  A programmer will not design a system, they will be given a design that they have to program.

The one thing that I do agree with 100% from this article is the description of those who talk about what they can do etc.  I think I have worked with at least 2 of these in every job I've had, it's a part of life that we can't get away from.  We just have to take comfort in the fact that it doesn't take long for these people to be exposed.  The same goes for those who refuse to learn new technology.  These people won't be in jobs for long and most likely don't have a very fulfilling life at all.  I feel sad for these people more than anything.

The description of a GURU according to this article is something that I don't think I have every seen and I don't think I ever want to see one.  Mr Gates certainly is not a GURU.  This is the man who predicted (something like) the internet would come to nothing and that we would never need any more than 256 or 512 MB of memory in a computer (these are not exact quotes).  I must be in a dream now where I am posting this to the internet on a laptop with 2GB of memory.  Mr Gates is a specialist (he certainly is very valuable to his company).  His speciality is knowing what purchases to make and he has the ability to very quickly exploit new technology.  I am not saying this is a bad thing, I think that he is good at what he does and that without him much of the technology we have today would either not exist or not be so widely used.  I don't think he robs people though.  This is a very careless accusation to make!

"When you read their programs, they already have comments and their code is easy enough to understand."

This is not enough to be correct.  It should be that their code is easy enough to understand and has the need for very little comments.  If code needs a lot of comments all over the place, the programmer feels the need to explain their work.  A good programmer should write self explanatory code.

Yes it is true that a good programmer should test their work etc. but they should NEVER be the last person to test.  Do authors proof read their own writings before it goes to print?  No, they do not and neither should a programmer.  Testing is a specialised function within a production line and for it to be performed to any level of acceptance needs someone with a different way of thinking than any programmer that I know.  I am not good at testing, but this does not make me any less of a "programmer".

I don't even claim to be a good programmer, I just claim to be good at what I do.  I don't know if technology and programming is in my blood, but I have been told by many people that it is.  I never even new what a PC was until I was 18, a keyboard was something that you could play music on.  By the time I was 19 I had learned enough through books to get my first job as a programmer.  10 years later and I am still learning and I have only been on 1 course, which my employer insisted I attend so I had to.  I can write (100% working) code when I am sleeping (this has been witnessed many times).  For these reasons, people say that it is in my blood.  As a legendary Scottish footballer once said "mibees Aye, mibees Naw".

If you're a bit confused with some of the terms in this answer, then in Scotland NAW means No, AYE means Yes, and Mibees means Maybe. If you're still confused try this link.

Post #378585
« Prev Topic | Next Topic »

Add to briefcase 12345»»»

Permissions Expand / Collapse