I poke around the internet a little bit, and I often stumble upon content like the following:
That kind of stuff absolutely bamboozles me. I’ve been around the IT industry for, well, lets just say “a number of years” 😂 and a consequence of that duration is that I’ve worked with a lot of languages. If I go right back to where it all started, it was learning BASIC from a magazine. The first lesson you learnt quickly was to leave some gaps in between the line numbers in your code, because if you later wanted to add code, you had to pick line numbers that would fit “between” the existing ones. Code ran top to bottom as defined by the line number sequence. That could be frustrating, but if you wanted to get something achieved, you just got on with it. You wrote and debugged your code until it worked, and you had a running program.
![]()
Then in school and university, I learnt Pascal. Not having line numbers was nice, but coming from BASIC with its top to bottom execution, having to define routines before you called them was a shock to the system, and it was the first time I’d used a compiler. Why did I have to compile a program before running it? It all was initially a bit odd but if you wanted to get something achieved, you just got on with it. You wrote and debugged your code until it worked, and you had a running program
![]()
Then came the C language. The concept of trusting modules that someone else had written was a new thing, and its flexibility was a danger to the novice. Want to overwrite some memory that wasn’t yours? Sure, no problem. And coming from the “baby sitter” fashion of previous languages where they tried to protect you from yourself to a language that simply said “Core dump” when something went wrong took some time to adjust to. It felt like this was a language not for the faint-hearted, but if you wanted to get something achieved, you just got on with it. You wrote and debugged your code until it worked, and you had a running program
![]()
Then my first job in the “real world” was as a COBOL programmer. Incredibly verbose, you had to write a lot of text to do simple tasks, and the concept of variables being just overlays on bytes of data from a file seemed very odd, but if you wanted to get something achieved, you just got on with it. You wrote and debugged your code until it worked, and you had a running program

There’s been of other languages as well along the way (Java, C++, ProLog!) but recently I’ve been dabbling with Python, and again – some weird things to learn. I mean, indentation not being just for readability but actually changing the way the code could run? Cmon man, you’re joking, but if you wanted to get something achieved, you just got on with it. You wrote and debugged your code until it worked, and you had a running program
![]()
With all of the languages I’ve used – with all of their quirks, features, nuances and strange mannerisms, I cannot remember in any case where I thought: “I am so emotionally distressed by the language I am using that I need to tell the world how much I hate it”.
I just can’t work out why anyone would hate a language. You might have a favourite language, you might have some pet peeves about how a language is used, or much more likely, some frustrations with how it is used in a particular work environment. But for the overwhelming majority of your time in the IT workplace, the decision on what languages, what platforms, what technologies that will be used was taken long before you joined the team. Or even if you are part of a team to make a decision on these things, one would hope you would be looking the broader IT industry to see what the norms are, and I can assure you, SQL is most definitely a norm. It just seems to me such a wasted amount of emotional energy to rant about your hate for SQL or any language for that matter. I’m not sure what you’re hoping to achieve to be honest.
Of course if you ask me about Apple products….well, that’s a different story 😂. (Just jokes)




Leave a reply to robinsc Cancel reply