From a young age, I discovered the importance of getting a head start in life, I remember around the age of 10 saying to my parents “I want to be a race car driver” and them telling me that this was highly unlikely, when I asked why they told me “the drivers you see on TV probably started at a young age” and naively I said “well why can’t I start at a young age, we could get lessons at the local go-karting centre” they told me “we don’t have the money for you to do go-karting lessons”.
It was a typical desire of a young boy and it was probably one of the few times my parents didn’t lie to me in order to make their lives easier, but I now realised that if I was going to make something of my life I had to get a head start on everyone else.
One problem though; I was not from an affluent city and I was not from a rich family, so being a race car driver was out of the question. But we did have a computer, it was a Compaq Presario and I remember it having a 1.2 GHz processor and 256MB of RAM. So, not the poorest either. My parents were hard-working and middle-class.
I started off writing Batch scripts, which were simple files that executed console commands in sequence, with the help of google I found that batch files could execute VB Script which gave my batch scripts an edge, being able to execute basic dialogs for inputs and such things.
After a while, probably due to using IRC chat servers I discovered that C programming seemed to be the main language the older and more experienced programmers used. So I managed to obtain two books on C programming and one on C++ which was a small SAMS Teach Yourself in 10 minutes. I remember seeing the syntax of cout<< and thinking, I much prefer printf() and that was the major driving force for me to preferentially select C over C++.
I wrote some basic programs in C, all as console applications, but I still had no idea how to create dialog windows which is what I was interested in doing, using graphics and all these fancy things which Windows could provide, I didn’t know much about the linker or the Win32 API at this point. I was just compiling my code using Dev C++ in the most basic of ways.
With the help of an allusive ‘tech guy’ my father worked with while in the police force, I was lucky enough to get copies of Visual Studio 6.
So with my desire to do more graphical programming, I took up Visual Basic 6, I noticed that it was part of the Visual Studio package I had when browsing around at what had been installed and one of the first things it displayed on launch was a workspace to create dialog windows, you could select and drag out buttons and other objects which then when double-clicked would hop into the code editor with the function caller for that button already written out for you. Timers and other elements could also be added as visual elements to the dialog window but would be hidden from the run-time view. In this way, programming was indeed, for the most part, a very visual process.
I used Visual Basic from 14 to 17 and then from 17 on I started to heavily take on the C++ Object Oriented doctrine, which would last until I was 25 or 26 when I finally started to come to my senses and preferred to only use plain C.
Going back some years I was always a pretty happy and extroverted child, up to a point, primarily because of my naivety. I would not have a problem knocking on random neighbors doors and talking to them in the neighborhood or offering to wash their cars or mow their lawns for 2–3 pounds. But at some point I realised how two-faced adults could be, well, I realised how that most of the time adults were two-faced. I think the first time was when I experienced how facial expressions of adults would quickly change, how it did not seem natural for an adult’s facial poses to change so quickly because when I was genuinely happy it would take me a while to naturally transition back to a stable monotone facial expression.
This realisation created insecurity in me, and as I started to see the world for what it really was, I got my first inkling that people’s facial emotions only represented what they felt they should be represented based on the social pressures around them at that time.
I noticed that most people were not generally happy people (maybe that’s just underpaid and over-stressed teachers for you when growing up). That most people were jealous of others happiness more often than not.
Often if I met someone who had an amazing skill or ability I would be excited, because in my mind thoughts like collaboration and mutual interests would be forefront. Little did I know that it made other people who felt they lacked these intense interests and skills very insecure, and in turn not like me. This made me question myself, and it made me more ashamed of myself.
By being ashamed of myself I felt that it was because I felt guilty for making other people feel bad about themselves, but without this being an intended effect, of course. I had not realised this was a side product of my actions until it was too late. But was this a ‘bad thing’, after all, I was just being ‘my true authentic self’, was it my duty to take on the emotional baggage of when other people felt belittled or inferior by my indirect actions, akin to treading on eggshells? Or was I just associating with the wrong people. I was nice to everyone I met, regardless of who they were. I believed everyone had their unique qualities, just that some people had unique qualities more in line with my interests than others.
At 17 I went to college, I started for the first time to discover people who were jealous of my prowess in programming (for my age). Although at this point they were very few in numbers, a minority. I was non the less very proactive in trying to teach people. I had a lot of energy and I was very enthusiastic about programming. I would love to try and teach people what I knew. But by starting university, I had realised that some people just don’t have it in them, and by that, I mean some people didn’t really want to learn to program rather all they wanted was to be like me; good at something that seemed more impressive and lucrative than other skills and hobbies. The problem is that, if you don’t have a genuine interest in a skill, you just won’t have an easy time learning it. Most people who wanted to learn to program for the wrong reasons didn’t have any idea what they wanted to use that skill for, I would tell them “if you are going to learn to program, you have to want to learn it, you must set yourself a task or have a task in mind.” if the person did not set themselves a task it was a clear sign they were not genuinely interested in learning programming, because they simply had no purpose to. Thus there was clearly a disingenuous motive.
Also while at university I discovered for the first time in my life people who had managed to get where they were in life riding on the backs of others, and by that, I mean having others basically do the work for them, usually by manipulating others through friendships. Programming took up a lot of my time, so I could never really help these kinds of people because they would often ask for a lot of my time, 5 such people was akin to having 5 newborn babies to look after all crying to be spoon-fed individually. Being someone who had taught myself from books and setting myself activities I thought it actually kind of rude to think that people thought they could take up my time to basically spoon feed them programming. These people would obviously come to demonise me.
By the time I had finished my university degree I felt that much of everyone on my course had pretty much demonised me thanks to the concerted efforts of a few who hated me, even though in reality it was a minority, these are people who would maintain a facade of being amicable with me if I was helping them; for example in my games physics module I had allowed the small seminar group made up of mostly these core people to copy my code for a PhysX implementation because no one else at the time was proficient enough to implement a library like PhysX although it was a module requirement the tutor was not a programmer, I knew that by allowing others to copy me I would get no recognition for it. Maybe that was the only truly altruistic decision I made at university, knowing I was throwing a lifeline to people I knew who secretly absolutely hated me and would never give me any credit for doing so. The same people who went on complain that it was unfair for my project to be listed in the Expotees brochure of 2011 because “it was not a real project” by their standards.
People did some devious things that I think others should be wary of happening to themselves, besides the common rumour mill, I was naive and trusting and that leads to people accessing my computer when I was “AFK” to delete source code I had written, steal my saved browser passwords, access my Facebook, or borrowing my phone to send messages or block calls from numbers without me knowing. None of these actions are ones I would have dreamed of perpetrating against other people.
Sure I might get a little envious sometimes if, for example, I see someone driving a brand new luxury car. But I don’t key their car when I see it parked unattended.