One thing that has annoyed me every time I have visited the Norwegian Developers Conference (NDC) struck again this year. A common theme in many of the talks I went to, was how bad we are as an industry. The script goes about like this:
- The speaker starts by ranting about some horrendous practices and technologies. Common targets last year was Agile, Javascript and Goto statements. This year I noticed more WCF, Javascript (again), testing and if all else fails you can always strike comedy gold by taking a few jabs at Java.
- After the initial doomsday description some speakers go straight for the solution while some talk about how actually some old practices were good “We had 8 characters for method names, so we had to give good names, now people are using unlimited space and are stupid», «before you had to care about the heap and the stack and everything, which was great because we created applications we understood»
- The crescendo comes after a while when an insight into a new technology or language is presented as a solution that will fix most problems. “If we just get this right, we might pull it off”.
The self loathing attitude is not something specific to NDC, it is something I find being presented in most of the IT functions I attend. The intangible feeling that we are crap, have always been, and can’t compare with the real engineers, is what I call the «Real Engineering Disciplines Envy Syndrome» (REDES).
Clik here to view.

REDES goes like this:
«Our projects fail.
We fail orders of magnitude more than any other engineering discipline.
We fail because we can’t estimate anything and we can’t estimate anything because we’re not real engineers.
Real engineers would have everything planned, modelled, labelled, signed, sealed, delivered (I’m yours)».
This does not add up. Haven’t you noticed that we have taken over the world? In the last 20 years, IT has taken over the world to the degree that your grandmother are on facebook and the nerds like Jobs and Gates have most definitely brought revenge on the jocks.
Clik here to view.

Let me list some of the successes:
- Bezos and Amazon conquered retail.
- Spotify and its like have changed the way we consume and share music.
- CGI and computer effects have taken over the movie industry, Netflix are outcompeting cable-TV companies for distribution.
- Intelligence agencies does not need agents nor snitches anymore, the computers will take care of their every surveillance need.
- Newspapers are in rapid decline, online news sites and social networks are filling people’s news needs.
It is not just the industries we have conquered it is the incredible sites like youtube where 100 hours of video is uploaded every minute, or Twitter where the record of tweets per second now stands at more than 140.000. 140.000 per second!
How
So the question is this, how have we been able to do all this? How did we create all these incredible systems, concurrent from here until eternity, search data amounts never before imagined and implant IT in the day to day life of large parts of the human population if we are so utterly crap?
To me it does not add up. To me the statement:
does not compile.
I am not saying all software is incredible. We have our fair share of failures, but I find the comparison to real engineering troublesome. It is not like real engineers don’t make crap. Not all bridges stand, not all ships float, tubes don’t align and waterlines burst. It is human to fail and it happens in every industry. I think in every industry you have both skilled and not-so-skilled people. This applies as much to dike builders as it does for programmers.
We should strive to improve, always bettering our methods, projects, languages, but we should already take enormous pride in the magnificent constructions we create which rival the cathedrals of old.
PS: I do understand ranting about ranters is a bit ironic, but – and – equals +.
Follow the discussion on Hackernews
Clik here to view.
Clik here to view.
Clik here to view.
Clik here to view.
Clik here to view.