Smash Company Splash Image

September 15th, 2010

In Technology

4 Comments

Do web designers and programmers just stop caring after awhile?

(written by lawrence krubner, however indented passages are often quotes). You can contact lawrence at: lawrence@krubner.com

I start working at a new place. There are 2 programmers that have been working there awhile. I look at their code. It is atrocious. I am left to wonder if they care at all what another programmer might think of their work.

A friend of mine starts working at a web design shop. Many of the programmers who are there have been there for 3 or 4 years. They are in the habit of cranking out bad code at a fast rate. Whatever spark of creativity they may have once had, it has been worn away by projects that are forever behind schedule. Their project manager encourages them to cut corners and go faster. Do they still care what another programmer might think of their work?

I take over an old website that was built by another programmer. Perhaps they were experimenting with new ideas when they created the site. The code is an unusual mix of objects and procedural code. Configuration information is stored in several locations – sometimes in ini files, sometimes in PHP “config.php” files, sometimes declared as global variables, sometimes as constants, sometimes hard-coded as initial values to object variables. Did this programmer care what another programmer might think?

A friend takes over the maintenance of a well known political web site. He finds that the original programmer had been learning programming and PHP as they built the site. Apparently unsure how to use functions, the original programmer initially triggered blocks of code by putting the code in separate files and then including() the file when necessary. That original programmer ran the site for 2 years, and over time clearly learned a lot about programming. The later code is better written, but the original code is still there. This programmer then moved on to better things, perhaps bored or looking for better pay. They did not bother to clean up the work. I’m asked to help out. The code is so bad that my friend and I trade snippets back and forth, laughing as we go.

1 year later. By a very strange coincidence, this same friend of mine takes over another site, focused on astrology, which just happens to have been built by the same programmer who built the political website. Now we see many of the same bad programming, including some bits of bad code that were apparently copied from the political website. To give an example: the original programmer decided to store some data in one database, and some data in another database. To switch between the 2 databases, the programmer had put database connection info in different config.php files, and then the code includes these different config files at different times. Some blocks of code actually go back and forth between the 2 databases, 3 or 4 times in the space of 30 lines. Most of the time the code is connecting to the database as the root user, so if the username/password was ever compromised, an intruder would have full rights to everything. We are now looking at code that this programmer wrote 4 years into their career as a programmer. They seem to have never cared what another programmer might have thought of their work.

I start working at a new place. I am told to talk to a programmer named John. He has worked at this company for 4 years, and he was the lead programmer for most of that time. He was hired to save the company. My co-workers speak of him reverently. They recall the way, during his first year, he would work 60 hours a week. They recall how he would gently chide them for writing bad code. They recall how many good articles about programming that he got them to read. Before John there had been another lead programmer, named Ben, who had what is described as “anger management issues”. Ben had been a terrible programmer, and John had seemed like a saint in comparison. But now John is leaving the company. During his first 2 years he tried to educate management about workflow issues in the company, and how they effected the tech team, but now he no longer fights such battles. He and his wife have bought a farm up in Maine. He spends most of his time there and he works remotely. It is hard to get a hold of him. He is working only part-time now. I look at some of the code he has recently written, and this code contains some bad anti-patterns, such as methods that contain 400 lines of code, and methods that have SQL hard-coded in them. After a month of working with him, I get the sense that he is a bit burned out. Does he care much what I might think of the code he is writing nowadays?

I think it is a pattern: the more programmers or web designers are at one place (or the more they work alone) the less they seem to care about the craftsmanship of their work. I wonder how places like Google and Facebook deal with the potential for burnout among their staff? I imagine it helps to have a management team that understands technical work. And I can imagine that being around other highly motivated folks probably helps. Possibly a constant inflow of new staff is necessary, otherwise even the best companies would settle into a stagnant state.

Source



Check out my book:





RECENT COMMENTS

January 11, 2018 8:51 am

From Karthik Raghunathan on One-on-one meetings are underrated, whereas group meetings waste time

"the great kathy sierra has covered one aspect of this in one of her posts : http://headrush.typepad.com/creat..."

January 7, 2018 8:12 pm

From lawrence on One-on-one meetings are underrated, whereas group meetings waste time

"A good article here: https://hbr.org/2014/03/why-good-managers-are-so-rare If great managers seem scarce..."

January 7, 2018 5:14 pm

From lawrence on One-on-one meetings are underrated, whereas group meetings waste time

"I had another thought about this. I think many businesses tend to promote extroverts, on the assumption th..."

January 5, 2018 4:49 pm

From lawrence on One-on-one meetings are underrated, whereas group meetings waste time

"Also worth reading is this article which reminds me how many terrible managers there are. If you run a large c..."

January 3, 2018 5:50 pm

From lawrence on One-on-one meetings are underrated, whereas group meetings waste time

"Rodrigo Dias, thank you for writing. I should have emphasized the bit about the French going to dinner. I agre..."

January 3, 2018 4:52 am

From Rodrigo Dias on One-on-one meetings are underrated, whereas group meetings waste time

"I agree with management through O3 (I've written about it here..."

January 1, 2018 12:14 pm

From Sergei on One-on-one meetings are underrated, whereas group meetings waste time

"This is too much witch hunt. If you have a one on one just so you can figure out who to blame for a problem th..."

December 30, 2017 8:25 pm

From lawrence on One-on-one meetings are underrated, whereas group meetings waste time

"Will Pemble, I agree. The key issue is delegation. To be productive at the personal level, we must learn to de..."

December 29, 2017 12:29 pm

From Will Pemble on One-on-one meetings are underrated, whereas group meetings waste time

"Lawrence, Your recount of a marketing meeting is a great example of circular conversation. Busy people rarely..."

December 28, 2017 7:59 pm

From lawrence on Retail is suffering because the middle classes have lost $1,355 trillion in income since 1970

"I suppose we should round that to $1.356 trillion...."

December 28, 2017 7:15 pm

From Anonymous on Retail is suffering because the middle classes have lost $1,355 trillion in income since 1970

"Apparently, $1,355,610,000,000 = $1,355 trillion...."

December 28, 2017 12:51 pm

From lawrence on Business productivity has been undermined by the hubris and power-grabbing of elite computer programmers

""By Just A Programmer", thank you for writing. I think we agree that top level programmers should be focused o..."

December 28, 2017 12:39 pm

From Just A Programmer on Business productivity has been undermined by the hubris and power-grabbing of elite computer programmers

"I've observed exactly the opposite dysfunction at many companies. The programmers are used as general workers..."

December 28, 2017 11:00 am

From lawrence on One-on-one meetings are underrated, whereas group meetings waste time

"Ian, thank you for writing. You ask "And who are you to educate them?" Presumably that is my job, if I have be..."

December 28, 2017 4:23 am

From Ian on One-on-one meetings are underrated, whereas group meetings waste time

"And who are you to educate them? How do can you find yourself the power to decide if someone in your team is b..."

4 COMMENTS

September 16, 2010
10:06 am

By Colin Steele

In my experience, over time, programmers will self-select themselves into the group you’ve identified here, which we might call “programmers in practice”, or “de facto programmers”, and another group: “craftsmen”.

(Pardon the non-inclusive language. :)

I have enjoyed the privilege of working with many more in the latter group in my career, although not without exceptions. Over time, I’ve observed a few things about the group of programmer-craftsmen, including that over time, the programmer-craftsmen cares MORE deeply about their work, not less.

September 16, 2010
11:01 am

By lawrence

Colin, thank you for writing. I am not 100% sure I understand what you mean. In my last paragraph I tried to suggest things that help programmers avoid burnout. Do you feel that the group you identify as “craftsmen” is sort of naturally immune to burnout?

I agree there are many programmers who care more deeply about their work as time goes by, though I imagine this is also a group that seeks out those challenges that keep them interested in the work.

September 22, 2010
9:12 pm

By Colin Steele

While I don’t think that craftsmen are *immune* to burnout, I think that they self-select out of situations in which other programmers become burned out. That might be by choosing projects (main or side), choosing the right (or a different) company, or by continuously challenging themselves. I think anyone can get burned out, but the top performers bail out and move on before they fall victim. Or they preemptively avoid situations like that altogether.

The point I was making is that in my experience, the group you describe can be contrasted with folks who exhibit the exact opposite trajectory. Those are the ones I like to hire, and work with!!

September 23, 2010
10:42 am

By lawrence

Colin, I like the way you put it:

“I think that they self-select out of situations in which other programmers become burned out.”

I think you are right about that. That’s the key thing, really, taking steps to avoid burnout, and preemptively leaving situations that would lead to it.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>