Michael Abrash is considered one of the greatest programmers of today. With a career that spans from 1982 to today, it's no wonder why he's so famous. His claims to fame include writing the Graphics Programming Black Book and assisting John Carmack in Quake and Doom. He was a former mentor of John Carmack, another game programming legend. In fact, Carmack considers Abrash to rival his own programming talent. Michael Abrash also helped to develop the Microsoft XBox.

Here is a list of books for which Michael Abrash has partial credit:
1984 - IBM PCJR Graphics
1985 - IBM PCJR User's Guide

Here is a list of books written by Michael Abrash:
1989 - Power Graphics Programming
1990 - Zen of Assembly Language
1994 - Zen of Graphics Programming
1994 - Zen of Code Optimization
1996 - Zen of Graphics Programming, Second Edition
1997 - Graphics Programming Black Book

Finally, a list of games for which Michael Abrash has partial (and full) credit:
1982 - Space Strike
1982 - Snack Attack II
1982 - Cosmic Crusader
1983 - Big Top
1993 - Doom
1995 - The Ultimate Doom
1996 - Quake
1998 - Half-Life
1999 - Half-Life (Game of the Year Edition)
2000 - Motocross Madness 2
2000 - Microsoft Flight Simulator 2000
2000 - Half-Life: Platinum Collection
2001 - Serious Sam: The First Encounter

"This is the best time to be a programmer."

I remember reading the quote above from one of Michael Abrash's programming articles in Dr. Dobb's Journal back in the early 90's. He was talking about how computer hardware and software had progressed so far the past decade or so. Computers were becoming more and more powerful, and software technology was rapidly advancing, making the present time the most fun times to be a programmer. This was in an era when PC's were mostly running on Intel 386 and 486 CPUs, and the dominant operating system being MS-DOS and Windows 3.1.

Today (February, 2010), I would like to say that this is the best time to be a programmer. It was fun before, and it's even more fun now. With the Internet you have access to an endless amount of resources and tutorials. You can download various freely available source code and tools and learn the valuable techniques on how to create similar ones.

It's a good time to take advantage of all the programming resources available online. Here are a couple of practice projects I've been thinking of starting this year:

1. Write a language interpreter (flex, bison, C)
2. Add new features to scintilla text editor (scintilla, C++)
3. Write an arcade game (pycap, python)
4. Develop a corkboard or thoughts posting website (apache, python, javascript)

Happy programming!

Log in or register to write something here or to contact authors.