GDC 2014 Slides Compilation

Edit: I think the GDC Vault has been updated with all available content, so you may want to go there instead. See you next year!?

Get’em while they’re fresh! If you know of stuff missing here, please tell me about it on Twitter @TheJare. You can also check industry sites like Gamasutra, Polygon or Develop for ongoing coverage, and hopefully a lot of these materials will show up in the GDC Vault soon.



Production & Biz


Firedemo 20th anniversary

It’s been nearly 20 years since we released that old fire effect and the demoscene turned out to love it. I have ported it to HTML5 to celebrate!

It all started when we bought a math coprocessor for our 386/25 and I started playing with fractals and plasmas. A few programming mistakes later, this thing came out and looked neat, so we slapped JCAB’s VT player and released it. Eternal gratitude to Jester of Sanity for unknowingly lending me his fantastic ‘Elysium’ mod – it didn’t take me long to learn that such acts were VERY badly frowned upon.

You can check out the source code on github if you are so inclined. The comments are slightly better this time! This version runs rather slowly on Chrome, and I don’t really know why, but IE, Firefox (Win and Android) and iOS Safari work great.

GDC 2013

It’s that time of the year again, when everyone else is partying and having fun (or maybe not – WTF IGDA?) at GDC in San Francisco. I’ll try to collect any links to lecture materials I come across. If you know of stuff missing here, please tell me about it on Twitter @TheJare. You can also check industry sites like Gamasutra, Polygon or Develop for ongoing coverage, and hopefully a lot of these materials will show up in the GDC Vault soon.

Edit: also check out eXile’s awesome and better organized compilation (focused on programming & rendering).

Constantly updated…

Improv math

I always loved math and it was one of my favourite subjects during school. I have to thank my dad and my bro for instilling that love in my head. My young self was always baffled by how most people around me not only hated math, but they seemed to have a hard time with it. How could it be hard? It was all logical, you hardly needed to work or memorize anything because, hey, with just a few basics in your head you could deduce any formulas or theorems you needed during an exam, right? Heh.

This year I’m one of the tutors for the Master on Game Programming at the U-Tad. The subject I’m teaching this course is Game Architecture: Game Objects, Main Loop and Timing, Reading & Saving, etc. This is the Master’s debut year, so while I believe the course is going great (and students seem to agree so far), some bits and pieces are not ideal and will need improvement for the following years.

One of them is, unsurprisingly, math.

Continue reading


Back in my 2nd year in college (1990), I took a half year course on functional programming. Back then, having several years of heavy duty Z80 assembly videogames programming, and being recently introduced to high level languages via Pascal and Modula 2, my brain was very fresh and open to new paradigms and ideas. Structured languages like Pascal and C were a great way to remove some of the tedium and bureaucracy of assembly, but functional was mindblowing. I already understood the idea of passing functions around as parameters, since we did a lot of that in our semi-OOP approach to game character behaviour. But when you create your first infinite list, wow, that’s a moment to remember!

Continue reading


Yesterday I had the honor to give a presentation at the SpainJS Javascript conference in Madrid, on the topic of Videogames and Javascript. I wasted a lot of time preparing a dynamic HTML5 page for my deck of slides, which was my excuse to play with CSS 3d transitions and fancy formatting. You can see the dynamic deck (which needs Chrome/Firefox or a similarly decent browser), the static deck (should work everywhere), a PDF I converted using wkhtmltopdf, the Speakerdeck, or the video. Enjoy!


A few months ago I created a Github account to see what it’s all about. Even if you use it yourself without all the nice features of a distributed version control system, it’s a great way to manage & publish your open source projects!

I put up there some of my old C/C++ code, and a few experiments I’ve toyed with in my (now scarce) spare time, mostly related to JavaScript. Feel free to check them out!

Metro and JavaScript

On Facebook I wrote a bunch of thoughts on the fact that Windows 8 treats JavaScript as a first-class citizen for native Metro apps. It was triggered by this and a few other related reads on WinJS.

In general, there is value in having a single language available for all your needs and platforms even if it’s not 100% portable (look at C/C++). JavaScript is the most widely available language today and, while ugly, the popularity of runtimes like NodeJS and the myriad HTML5 mobile app wrappers like PhoneGap prove that it is viable.

But what’s the value for Microsoft? Is this WinJS effort going to encourage devs to port their web apps easily into native Win versions? I think that’s just not very likely, most devs will settle with just a web app (e.g. Trello), and very successful web apps will get native versions regardless (e.g. Evernote).

I can’t help but think that the effort would have been better spent developing a hassle-free PhoneGap-for-Metro kind of wrapper rather than a close-but-not-quite web-like native environment that developers still need to treat like a port and a separate platform.