Today, a day after my 23'rd birthday, Allegro 5 has been released. It's been 8 years, 10 months, and 4 days since it was first announced in April 1'st 2002. 8 years is quite a long time for software related things, but the Allegro developers managed to beat Duke Nukem Forever anyway (yet another thing to add to The Duke Nukem Forever List).
Allegro is a “game programming library”, or what I would describe as something that will get stuff to display on screen in an orderly fashion and make the keyboard and mouse work. Even though I haven't found the hardware accelerated mind control function yet, I am pleased with the new features it has, like the integration of common libraries such as libpng and DUMB. This way I can also load png's, jpeg's, wav's, and “extended modules” without dealing with dependency issues across multiple systems. I think Allegro's new drawing API is closer to how OpenGL and DirectX works, but in a 2d way. The new event system that didn't exist in Allegro 4 will save plenty of extra CPU time, with busy polling methods now obsolete.
My first experience with Allegro is when I bought a book titled Game Programing All in One, 2nd Edition in 2005. I used to think the only possible way to make video games were that you had to go to a special college to learn DirectX and get employed at video game company. It was pretty exiting to see there was something I can use that would work on more than just Microsoft Windows. It was even more exiting to learn what the GPL really means, since I knew from all EULA that I was forbidden from telling anyone how the things I used worked internally. Some EULAs even looked like I was forbidden to tell how my own program works.
From there I found the allegro community which hosts fun short programing competitions like SpeedHack and TINS. I participated in some of those competitions and even almost finished in TINS 2006 with a game called “Train Master”. That community that kept Allegro alive even until now.
Time to start making some serious games.