roncli.com blog
The blog of roncli
roncli.com blog
roncli.com
blog
Profile
roncli
Houston, Texas, United States
Labels
Coding
CTG Music
Editorials
Games
Miscellaneous
Music
Servers
Silliness
Software
Sports
Trax in Space Beta
Weather
Recent Posts
WTF did Revival Productions just do?
A Tale of Two Communities
The Final Stretch
A Two Tiered, Untiered OTL
Secretly, you wish you could've done what I did
What have I done since roncli.com v2?
It's Done. It's Finally Done.
The Big Picture is Starting to Wear on Me
A Low Bang to Buck Ratio
win-acme
Archives
February 2005
March 2005
April 2005
May 2005
June 2005
July 2005
August 2005
September 2005
October 2005
November 2005
December 2005
January 2006
February 2006
March 2006
April 2006
May 2006
June 2006
July 2006
August 2006
September 2006
October 2006
November 2006
December 2006
February 2007
March 2007
April 2007
May 2007
June 2007
July 2007
August 2007
September 2007
October 2007
November 2007
December 2007
January 2008
February 2008
March 2008
April 2008
June 2008
July 2008
September 2008
December 2008
February 2009
July 2009
August 2009
September 2009
October 2009
November 2009
February 2010
March 2010
April 2010
June 2010
July 2010
August 2010
September 2010
October 2010
November 2010
December 2010
March 2011
June 2011
July 2011
August 2011
September 2011
October 2011
December 2011
January 2012
February 2012
April 2012
July 2012
November 2012
July 2013
April 2014
July 2014
August 2014
November 2014
December 2014
March 2015
April 2015
May 2015
June 2015
July 2015
September 2015
January 2016
February 2016
May 2016
July 2016
November 2016
March 2017
January 2018
May 2018
June 2018
January 2019
January 2021
February 2021
March 2021
August 2021
October 2021
December 2021
August 2022
November 2022
October 2023
February 2024
April 2024
Sunday, July 10, 2005
Rant: Programmers and Egos
Posted: 12:02:00 AM 0 comments
Now playing: O - Zone - Dragostea Din Tei (3:34)

Some may remember my old rant series I had way back when on roncli.com... While this is not about the digital music scene (or whatever it calls itself these days), this is in that vein. Be prepared for bad grammar, spelling, language, and attitude.

Pardon my hypocracy for a moment.

I've been a programmer now for 7 years by trade and 20 years by hobby. It is to the point where programming concepts come naturally to me, and there is very little that I can't figure out. When presented with a limited set of programming tools, I can push those tools to the limit. I know for a fact that my ability, skill, and talent in the field is well beyond what many people who call themselves programmers even strive to become. Therefore, when I say I know programmers and programming, I know what I'm talking about.

I prefer to work alone. The reason being is that when I program things by myself that the logic is mine, the errors are mine, and I can be extremely self-critical when it comes to my work. And, I can do this all without pissing myself off. Because it's me! I don't get mad at myself when I'm programming because I've discovered that I've done something the wrong way. I just fix it. I am, however, able to easily tolerate working with a team.

Most of the time.

One thing I have discovered is that programmers have an ego about their own work. Even I do. When someone changes something I wrote, I want to know why. Did I make an error? Did I not understand the required logic? Just tell me, and my ego is satisfied. And, thankfully, most people are like this. If you show them an error they made, they are like "OMGLOLZ, I can't believe I did that, thanx."

Then... there are the idiot programmers that are Never Wrong.

These programmers are the ones that can take a well-established team environment and wreck it in a matter of seconds. They can deflate the confidence of other members of the team by imposing a ridiculous set of standards that don't make sense.

How do they do this? By taking offense at every little thing that is directed at their work. Let me give a few examples.

"It's not a bug/limitation/problem, it's a feature." - The canonical developer response. Believe it or not, some people use it. It's synonymous with, "I'm lazy, and I'm not changing it." News flash: If you're lazy, programming isn't for you. Programming can be redundant work, and if you're not willing to step up and do all of the work required, don't bother.

"I can't do that because it encourages bad programming." - This interesting one was told to me by someone who developed a scripting language. Basically, the script I was writing would error out if someone provided the script with an invalid number. The reason it would error out was because I had no way to test whether or not the number provided was valid. Upon asking for that, this was the response I got. Of course, this is in an environment when scripts are required to be approved before they are used. When suggesting that those who are approving the scripts could watch for scripts that don't handle user input correctly, I instead got a piece of his mind about handling user input.

"You're not supposed to do that." - What, I'm not supposed to use the tools you've given me to do what I'm supposed to do? Then why do I have them?

My favorite one as of late: "The scripting is supposed to be slow, it was designed that way." - What the fuck are you on?! If it's designed to be slow, you are not going about programming correctly at all, and should consider a career change. Seriously. You aren't a programmer if you can't figure out how/don't want to optimize something. Is scripting slower than compiled code? Yes. But you can visit any of the ASP websites I have designed - which is *ALL* script - and you will find that not one of them runs slowly. Scripting != Slow - and if it does, either the script that is slow was written wrong, or the scripting language itself needs some serious optimization.

These same programmers are almost always the same people that want to design something from the ground up without having a clue of what they are doing. They will run into problems that they don't perceive as problems, because they designed it and it must be right. When programmers like this are in positions of authority when it comes to software design, your product is either going to be very low quality, or it's going to fail miserably.

So programmers, you have an ego. I know because I have one, too. Get over it. Learn from your mistakes, realize you have much to learn, and stop being a roadblock to productivity and innovation.

Labels: ,