Nej's Natterings

Thursday, January 18, 2007

Loadsamoney!

People assume, because I work in IT, that I'm paid lots of money.

Unfortunately this isn't the case. I do, however, earn a fair salary, probably more than other people I know who don't work in IT. There is therefore a glimmer of truth in the statement, but not as much as most might think.

There is, though, a reason for this. Writing software is hard. Let me give you an example; A little while back, my boss asked me to make a change to our website to add a tick-box that, when ticked, would show the last ten positions for a vehicle on the map, rather than just the most recent one.

Sounds simple? A tick-box! But it isn't, really.

It actually involved knowing SQL, HTML, ColdFusion, CFScript and Javascript. 5 Different languages to accomplish one tick-box.

It involved changes to the code of 14 different web-pages, 6 SQL Stored Procedures, the creation of a new database table, a new Trigger and another new Stored Procedure. Plus the creation of 3 new icons.

It required being able to hunt through the Fusebox methodology to track down what actually does happen when you click on something.

It also needed the creation of a test app in Visual Basic to test things that our mapping engine has not been asked to do before (easier to figure things out in VB than on a web page), like drawing polylines.

It needs you to hold several trains of logical thought in your head at the same time, all at different levels of abstraction. You need to know what page is calling what page, what bit of Javascript is being done at the client-end, what the server is doing, and what the database is doing. You need to hold it all in your head at the same time and follow them along mentally.

Not everybody can do this. I'm not calling myself superior or anything, it's just that most people don't have the bit of the brain that can cope with this. Or, more likely, they probably do but are too smart to try, sparing their minds the twisting that programmers put theirs through daily.

Currently, I'm trying to track down bugs that have arisen from a test rollout of a new version of Coldfusion. Things that used to work, now don't. And that's even harder, especially on web apps, because there's practically no debugging. What I'd give for the ability to set breakpoints and watches. The problem would be solved in a fraction of the time. Especially as it's hard enough just to find what web-page actually doesn't work (much, much harder than you might think).

Sometimes I think life would be much easier if I was a train driver or something, and my brain wouldn't feel like it's the wrong way round in my head.

Now if you'll excuse me, the wind is blowing at about 5000mph and I want to go and look out of the window.

0 Comments:

Post a Comment

<< Home