skip to content

DerekAllard.com : CodeIgniter, ExpressionEngine, and the World of Web Design

Judging the work quality of other developers

November 01st, 2007

You ever inherited a site done by someone else, and looked and the site and thought “what the hell where they smoking when they did that, and who gave it to the client making it seem like a good idea”?  C’mon you web-snobs, I know you have.  We’ve all done it.  Heck, I’ve done it recently.

There are two sides to every story

Well, I’m going to stop making any judgments about the quality of other people’s work unless I know the circumstances around how it got developed.  A day of reflecting on my own work has made me rethink things.  Yesterday I was working on a project, plugging away and I thought “hey, I’ve solved this problem before, let me go see what I did”.  So I pull out some old code, and next thing I know, I’m looking over some work I did some time ago.  I wasn’t super impressed. I found a series of nested if statements at one point, when really it could have been written in one line.  Is that the end of the world?  No, but it shows inelegance, and a lack of careful planning.  If this was someone elses work I would have thought “phfft, they’re lazy”.  Anyhow, I was disappointed, so I thought I’d fix it up and upload it for my (former) client....

And then it all came flooding back. 

  • “Now, who was that client again....? oh yeah… them
  • “I had that working perfectly and then they changed the specs”
  • “Golly, another new head of the committee… welcome to the team”
  • “I remember that line of code… they actually threatened that if I didn’t have that working by the end of the day I wouldn’t get paid.”
  • “But I’ve already changed that to behave the exact opposite way you want, after you asked me to, after you told me to change it back”
  • “Design by committee is horrible, but design by committee when 3 of the 4 people who were spearheading the committee have quit or ‘moved on’ is death”

So as you can see… in a lot of the cases the slightly less elegant code was a result of a changing landscape. I don’t think I could possibly build to quality, when the idea of “quality” is a moving target.  In that case, a nested if just worked for me.  When you’re bound by the triple constraints of cost, quality and speed, then something has to bend.  If the client isn’t willing to sacrifice cost or speed, then quality is going to suffer.

So I’m no longer going to look at

$some_dudes_name 'some name';
echo 
"The name of that guy was " $some_dudes_name;

and think “why did they even bother”?  Maybe the developer was dumb (that’s always a possibility), or maybe that variable used to hold other information, or maybe they were directed that way, or maybe the dev inherited other code that the client wasn’t willing to let them alter it.  Who knows?

Until I know the history and politics around why something was coded the way it was coded… I’m reserving judgment on anyone else’s work.

Oh yeah, and that inelegant client code I found?  I never did fix it up.

This entry was made on November 01st, 2007 @ 11:38 and filed into , , .

Comments

PXLated wrote on November 01st, 2007 @ 13:01

On the other hand, if the site was done recently and it’s loaded with tables and font tags and the developer is selling their services...well, I think one can be critical :-)
Ran into that last week and the developer was charging the client $75/hr.

Jakob Buis wrote on November 01st, 2007 @ 16:06

About three months ago I nearly decided to fire a subcontractor for delivering bad code (he had already proved to have a problem with deadlines)...ultimately I found out the specific code was my own...ouch

PXLated wrote on November 01st, 2007 @ 16:36

“I found out the specific code was my own”
----------
Ouch is right :-)

Hostingx wrote on November 02nd, 2007 @ 5:57

hahahah!

This sounds soo familiar :P i think its the same by every developer :o

Madz wrote on November 02nd, 2007 @ 8:13

Well Derek, you have to always remember a few things;

1. Developers learn, designers don’t (sorry for the stereotype)
2. When involved in a Design Committee, you know you’re in trouble, whether or not they died or moved on...lol.
3. Budget equals final-product

PXLated wrote on November 02nd, 2007 @ 9:51

1) Ridiculous
2) Probably applies to all committees
3) Not always but often
;-)

Jonathan Gordon wrote on November 10th, 2007 @ 19:01

Ya know, I’ve been working on a client site recently, (in fact, I’m writing something up for him right now—a bit of a complaint), who did the same thing: drastic change after drastic change, and it has caused the layout to go from simple div/css beauty, to a hacked table/div/css mess. It’s aggravating, and I think every day about what the next developer is going to say about me to this client when they do maintenance work on his site.

I hope they have as much compassion and understanding as you do, Derek, it’s very admirable.

This kind of affected my outlook on shoddy websites I come across in my work, but PXLated is right to say there are times the fool shouldn’t have had a keyboard. Heck, I don’t even make $75/hr. Dangit.

Post a Comment

*required


Some xhtml accepted