Low Standards, Stupidity, or Both?
This is a rant. If you don’t like rants, feel free to stop reading now. You’ve been warned.
Set the Bar Low
For my first example, let’s take a look at a portion of the Prudential Patterson home page:

Here we find the “Quick Search” section. That <select> component shows three choices. In reality, it contains 234 items! It has so many items, the scroll bar is not even visible. You have to hold the down arrow for more than TEN SECONDS to scroll through the entire list; you can only see 1.28% of the available choices at any given time. This is their definition of “Quick Search”.
Their home page also features this gigantic image:

This is the “Featured Property”…perhaps a working picture is in order?
A programmer actually created this web page and said “This is Production Quality” and let it go through to the web site. Unbelievable.
Nobody Cares
Now let’s talk about the Suburban Journals. Here is a picture of their page that lets you submit classified advertisements online:

I filled this out because I did not want to place my ad by telephone. My ad contained a cryptic URL from tinyurl.com, so I wanted to ensure it was correct. After waiting several days, I tried again. A week later, after nobody called back, I finally drove to the office to place my ad in person.
While placing my order with a woman who typed my information into her computer, I told her about the broken web site. Her response? Something like:
That’s not my department.
This is kind of funny…because a few minutes into our transaction, she had to call THAT VERY DEPARTMENT to ask for help with her data entry task. Did she mention the broken web page? Of course not.
So the web page continues to exist. Who knows how many requests end up going to /dev/null each day.
MapQuest
Any web site that still uses old-school MapQuest makes me angry.
Development Environment From Hell
Brad left this wonderful comment on my blog the other day:
I am forced to use IBM Rational Application Developer for WebSphere at work. It blows. You have to remember all kinds of quirks (like manually saving your files before running). I use it to autogenerate web service stubs for my EJBs. then move the project to Idea. What really blows is that if I need to ask the tech lead a question, I have to go back to RAD. I also have to check in my RAD project to CVS. I pray daily for a return to Ant or Maven. It takes 25 grueling GUI commands in hidden submenus of hidden menus to build a project from scatch (to our spec.).
Here is how it should work:
ant dist
But no…it takes 25 manual steps in a bloated overpriced IDE from hell. There are two possibilities:
- Laziness. The first team member lazily used the GUI wizard to generate the first part the application in its infancy. Then the next guy came along and tacked on some tiny additional step. Hey, it’s just one tiny thing. No raindrop thinks it is responsible for the flood.
- Stupidity. Someone actually “designed” this system and intentionally chose IDE wizards and human steps instead of automated scripts. I’ll just pretend nobody is stupid enough to intentionally design a build system requiring 25 manual steps.
I’m a Fireman
When your job consists of “putting out fires” all day (because of horrific software), maybe your job title should be “fireman”.
Or maybe when you’re embarrassed to admit you work in this industry, you should just lie and tell people “I’m a Fireman”. Show them the callus on your mouse hand and tell them it’s from climbing the ladder.
I think the reason I am using RAD is what I call the “airplane seatback magazine” syndrome. Your VP goes on a flight and reads a propoganda based article talking all about how such and such software tool solved all their problems and saved a bajillion dollars from the IT budget. Then the VP goes home and “impresses” his underlings at the next staff meeting by saying “Why aren’t we using [insert product name]? It could save us big money! Picture him/her holding the wadded up magazine in one hand and pointing at it with the other. Of course, no one in the room has written a line of code in 10 years..
When I went to the “training session” for using RAD on our team I was astonished. Here were the most respected, most technical members of our team saying things like.. Did you remember to uninstall patch 321? Did you swap out the WAS 6.1 resource bundles for the 6.0 ones? Did you select the project in the control tree, right click on it, then select “Build Path”, then select “configure build path”, then press “add external JAR file”? My response was.. “I don’t see the control tree. They respond.. “you are in Java Browsing perspective you fool! Select the Java perspective!”
I am hiding under my desk until the pendulum swings back to using Ant.
It’s surprising what people push out the door in order to just get something out, regardless of how shoddy it is. I look at the explosion of websites that overuse ajax and have no degradation plan in place or don’t handle error conditions properly as a real pain. If you install Firebug in Firefox, you’d be amazed how many sites you’ll visit where you’ll see errors pile up.
The “fireman” role you described is pretty common, it was described in a seminar I went to years ago on being able to effectively manage multiple tasks. It comes down to you being the “go to” guy for answers or problem solving and being too nice (or unable) to turn people down. People in this role generally have a high burnout rate.