I still say Tricks Of course, there's going to be some bad algorithms (in any book), but the idea is to read a ton of books and learn how you can make even better algorithms, then compare each algorithm with your local friends. Why is your algorithm better? You start learning from one another. With Tricks though, you're learning to write a software rasterizer in 2d (volume II is 3d software rasterization), and ask any company, software rasterization was never entirely figured out. If it works, it works. It was never mastered. But the idea of doing this is getting an edge on your resume saying that you can draw 3d objects without any hardware acceleration on the machine. You would be a much more valuable employee with a proven passion in graphics than some programmer who relys on hardware to do the job. You will be taken more seriously. The great thing with Tricks is it takes you in as a beginner and takes you out as a very educated person in graphics. Once you read the two volumes, moving to any API will be very easy. You already did all the hard work. But if you're not in school studying computer science or some relatable major, you can use C# and take advantage of hardware acceleration right away. I don't care. The reason why I recommond it is simply because of educational value. Everything else just teaches you how to draw a cube on the screen and say you're a game programmer at the very end. I don't think so! Don't worry about what API you use - people complain about Tricks being outdated with DirectDraw in the first volume. The API should be the last concern. I'd be happy if I had my amiga here and I could just program on that and carry over to Direct3D with the same graphics knowledge. Just learn graphics, and you will be able to use any API today and in the future. All I can say is be competative in today's world with specializing in graphics, not "games." Show your passion in graphics programming. Even as a beginner you can start today with the Tricks series. At any rate, just learn from the ground up! Again, I learn it for educational value but also to stay competative in the knowledge base. I don't claim to know it all, but I know what it takes to get that extra edge, and I'll definitely take the heat for always yelling out "Tricks!" But then again too, it's just a passion for learning graphics from the inside-out.
Read this article too to get a better idea in what a company is looking for. At the end, ask yourself if you have that edge companies are looking for. And, finally, see if you still have that same passion at the end.