Despite my intentions to keep this blog updated fairly frequently it would appear that we’re at end of this year. As such I have decided to do a retrospective post of the year (at least for me, as it’s my blog after all!).

jc (programming language and dissertation)

This year marked my final year at Abertay, having started back in 2016 as a fresh-faced and optimistic 17-year-old and now coming out the other end as a slightly more world-weary and cynical 21-year-old. Now that I’ve graduated I look back on my time at Abertay very fondly.

I often think about this last 10 seconds but replace “lawyer” with “games programmer”.

As a consequence of my total disdain for specializing before entering the games industry I decided not to do a game engine as I’d previously planned because it would likely be out of scope for a dissertation project to embark on by myself. Therefore I chose to attempt something far more reasonable: designing and implementing a programming language and compiler. By the time I started blogging about it the language’s design (at least for the dissertation) was solidified and after a few initial tests I was diving into the task of actually implementing the compiler for it. I’ve covered this in a few blog posts, finishing up everything for my degree roughly halfway through May. In a previous blog post I did state that I intended to put this project on hiatus for a couple of months before coming back to it with a fresh perspective. Certain things have gotten in the way of this (which we’ll get to shortly) but suffice to say the project is on hiatus for the foreseeable future.

Compiler fast. Linker slow.

Entering the games industry

This is sort-of a big one for me. I finally entered the games industry as a junior programmer at Pocket Sized Hands. I was initially part-time while I finished up my degree and was brought on full-time starting in June. There isn’t really much else I can say about it here but it’s been great working at a company where you have a significant impact on the projects you work on. Another massive bonus is that my work is based in Dundee which means I don’t have to uproot my entire life again. That being said…

Global pandemic

The (ongoing, at the time of writing) pandemic has caused a colossal amount of upheaval. I have been relatively unaffected by it, socialising notwithstanding, which is a very rare and lucky position to be in.

Graduating and the Abertay Digital Graduate Show

As I mentioned previously I have actually finished my degree and thus my foray into higher education is at an end (at least for the foreseeable future, who knows what I’ll be doing in a decade’s time). One event I’d always been excited to participate in was Abertay’s yearly Digital Graduate Show. For the uninitiated, this show was a chance for students to present projects they’d been working on to their peers and members of the industry. A cynical view of the event would be that it was a great networking opportunity but it was far more to me than that. I’d attended the graduate show the previous two years and had seen the standard of what was being presented there, so for me it presented both a goal and a challenge of sorts. Unfortunately the physical event was cancelled and we did it digitally instead but it was still an awesome experience. I actually ended up winning the Outplay Academy-judged Technical Excellence prize for the aforementioned programming language work which was completely unexpected given the fierce competition I had for that honour.

This was pretty damn cool.

That V&A Dundee interview (aka old man screams about C++ for about 25 minutes)

Towards the end of the year I got an email informing me the V&A Dundee was asking to be put in touch with me because they were interested in my work. Naturally I jumped at the opportunity to present and talk about what I’d spent the better part of 8 months of my life meticulously researching and implementing. The series was called Design Unlocked and featured recent designers who had graduated from Abertay and the University of Dundee talking about their work. I hasten to add that I was a rather strange choice given that technically speaking I wasn’t a designer by trade. Nevertheless you can see the interview here or here.

Untitled game project

Despite putting the programming language work on hiatus that doesn’t mean I haven’t been working on anything recently. For the last few months I’ve started developing a new game project to attempt to learn (and re-learn) some low-level systems and games programming techniques. At the time of writing I can’t really say what it is I’m building exactly but I can say that I can render 3D models with lighting and shadowmapping, render text on the screen from a font file and work with basic spritesheet animation. There’s still a lot to be done but the ultimate end goal is that the code I’ve started writing this year to power this game will be worked on, split into libraries and improved for at least the next 10 years. It is a rather absurdly ambitious goal but if I’m not known for attempting those then I don’t know what I am known for.

This is a lot more impressive under the hood than it looks.
I do intend to blog about implementing this at some point.
Good old spritesheet animation.

Wrapping up and future plans

It’s been one hell of a year. To be honest at the start of the year I didn’t know whether I’d be working in the games industry at all by now. I’m extraordinarily grateful to all the people who gave me the opportunities that enabled this, and I can only hope to live up to the hopes and expectations I will be held to as a result of these.

In terms of future plans I’ve already outlined what I intend to do outside of work on the programming and technology side. In terms of my life I’m hoping to have a better work-life balance going into next year, spend some time not thinking or doing programming or work of that kind. If you’ve made it this far into the post thanks for reading and I’ll see you in 2021!

Categories: life