Sunday 18 September 2011

Why programming is depressing.

Computer programmers are depressed people. In 2011, a survey of all the programmers I know revealed worrying trends of annoying, passive aggressive and socially awkward behaviour, which are statistically significant, if not actually significant. 


And it's no wonder. After careful inspection of the working environment, I uncovered a persistent theme of pessimism tightly woven into the fabric of almost every programmer's everyday tool set. 


Consider the following: 
public void main(String args[])


This is a clear reference, public void, to the emptiness of a post-modern materialistic society. It reminds the programmer that community isn't what it used to be, and how an individualistic society can increase loneliness rather than increase personal autonomy. A typical programmer of Java, JavaScript, C, C++ (and much more) has to jump this depressing hurdle almost every time they wish to add a new piece of functionality to a system. 


One of the most depressing programming languages is Visual Basic. Part of the attraction of VB is its emphasis on making programming concepts easier and more fool proof. Unfortunately, this just comes across as patronising. Consider these two equivalent lines of programming, first in C#, then in VB
internal static int i;
Friend Shared Integer i


While the first line of C# seems like sophisticated jargon, the Visual Basic equivalent seems more like a 6 year old's birthday party. "Can I haz a integer?" No, VB, you cannot share my integers or anything else. Using VB to create computer programs has a severe detrimental effect on a programmer's self esteem. 


However, the C-style programming languages are not much better. In particular, all method calls in Java, C# etc. end with what looks like an upside down frowny face with a black eye. 
int i = Integer.parseInt("1");
int j = Integer.parseInt("2");


This makes programming the emotional equivalent of repeatedly punching children in the face. 


Chance combinations of syntax like the above can leave a programmer in an emotional heap. Consider the following code which an older programmer might take as a subconscious message that his life is over. 

if(age < 30)
{
    make();
}
else
{
    break;
}


I hope you consider these things next time you deal with a programmer, remembering they may be in a lot of emotional turmoil. 

Friday 16 September 2011

How to make it in IT

The title says it all. Well, it says IT. What is IT? IT is an acronym for "IT Technology" and its one of the most lucrative industries in today's marketplace. But what exactly is it? And more importantly, how can I be successful in IT?

The first stepping stone in a career in IT is to get an IT degree - a computer science, informations systems or computing degree. They are all the same thing and they all mean IT. Yeah you have to go to university for a while, but its actually very easy to cheat at university in IT in Australian universities. This is because Australian universities have lots of overseas students, who can only pass their exams by cheating off the 5% of intelligent English speaking students. This lowers the average mark and makes it pretty easy for us English speakers to do the same.

Once you've got your degree in IT, you can do anything from designing award winning web pages, building revolutionary new search algorithms, fixing hardware and troubleshooting Windows. At this point in history, computers are so well understood that there are almost zero technological roadblocks to realising complex abstract concepts as functioning, internet ready systems in real time.

But hold your horses' iCloud 2.0..... if that's all true, why haven't IT professional solved world hunger and made me an iPhone app that can run on my windows mobile? Sorry, that's not how capitalism works. Unfortunately, the competitive marketplace requires all IT professionals to pretend everything is quite difficult and tedious, and that technological advances are made slowly and accumulate over time. That way they can pretend when they release the next version of the iPad that it is actually an achievement, and not just really, really easy and all they did was drink coffee on yachts with champagne while playing Xbox (which we could have had back in 1995 easily).

Because IT is so easy, you don't really need to know anything about it to take advantage of it, that's what IT professionals are for. You just need to know how to make them promise to do what they would say is almost impossible, but we all know is actually a very simple matter. That's why google employees just sit around in their offices all day mucking around. Seriously, the google website is only two pages!

This is a handy thing to remember when you're dealing with IT professionals - it helps if you keep telling them to hurry up. Because chances are they could solve all your problems in a few minutes but they are just putting off the work to create the illusion of complexity. All computer programs are fundamentally composed of 1s and 0s, which is about as simple as things get. Imagine how easy maths would be using only 1s and 0s!

Also, the apparent disciplines of IT are completely fake. There isn't really a difference between a "web designer" or "software architect" or "help desk" or "perl programmer" - they all have IT degrees. If an IT professional is being coy by saying that what you're asking of them is outside their field of expertise, chances are you can prompt them to change their mind simply by saying "But you're in IT, aren't you?"

Don't be fooled, IT is easy and the only thing stopping you from being the next Bill Gates is other people's laziness.