There is a strange dynamic, a true dichotomy, amongst Web developers. Anyone who works in this industry knows what I am talking about. Trying to get two developers with no work history to work together is often like introducing a new cat to the household, sure things might work out but it’s never a pretty start.
Web Developers, (We) Are a Judgmental Group
I think the underlying issue here is that we are always, and I mean always, making judgments on how any person built any specific Web application. We judge their competence, their problem-solving ability, and most importantly: their ability to write code.
Did they write 100 lines of garbage code, when another method would have done the same in 10?
Can I even read the code or does it take me an hour to figure out what the hell kind of logic they were using?
Did they load the site up with scripts, modules, and plugins in an effort to make up for their lack of programming skills?
And even when we don’t say these things out loud… We are thinking of them. As I have mentioned 100 times before, Web development is interesting in that there is no true set of rules or standards to how any specific challenge will be met and there is no one way to accomplish a single goal. How one Web developer did it is almost certainly not the way another developer would have done it.
Very Few Like To Work In Other People’s Code
Many Web developers, if not all, naturally hate working in other people’s code. It takes longer and there are sure to be challenges that crop up that would not exist ‘if they had only done it this way…‘
My job is unique in that with my focus on Web support and Website maintenance I am almost always working in someone else’s code. It’s definitely a challenge sometimes to not bad-mouth any previous developer as my 1-hour task becomes a 2-hour task because it is clear this script kiddie has no knowledge of best practices and has cut and pasted a massive amount of crap code… How the hell does this work at all?! You get it.
The Client is Not Paying for a Fight
Because most of my day is spent in other people’s code, I make an effort to not bad-mouth other developers to my clients. I’m not saying I don’t badmouth crap code and I am above this all… I just try not to bad-mouth the client. They are not paying me to tell them what a mistake they made hiring that ‘other guy’, they just want their site to work.
Sometimes I get frustrated with other developers as it seems they have made it their job to make others look bad. I guess the effort is focused on making them look good in comparison, but it’s frustrating and seems to feed a never-ending cycle of critique. I’ve seen developers work almost tirelessly to educate the client on what a crappy job the last guy did and I have wondered why. The goal should be to make the client feel as good as possible about the investments they have made, not berate them on what bad choices they made.