I've been reading some books lately, just some general stuff like Unit Testing, Spring, and Clean Code. At work we can get whatever books we want, but of course it has to be programmer books. So I thought I would order some good books, but they can't be game programming books, that would be too obvious abuse, and I think my boss would say something if the company was spending on books on my hobby

But clearly, there are plenty programming books that aren't game oriented but still benefit game programmers. Most recently I read "Clean Code", which shows you how to write clean understandable code. This benefits both the game programmer in me and also the work programmer.

But, I'm totally oblivious to what good books are out there. I mostly read what is passed on to me, and let others choose.

So, what good books do you guys think are worth reading? (Not just game oriented only books please)

It's aimed completely at beginners (so I don't think it's necessarilly right for you) but the best programming book I ever read was Objects First with Java. Excellent for beginners and teaches very clean code from an object-oriented point of view. Too many OO books say they are teaching from an object first perspective but get very cody or abstract about it very quickly (and so confuse the reader). This manages to avoid that trap.

The following two seem to be either loved or hated and no middle ground:Compilers: Principles, Techniques, and Tools, by Aho, Lam, Sethi & UllmanStructure and Interpretation of Computer Programs, by Abelson & Sussman

And one that I "haven't" read, but looks like it could be interesting:Programming Language Pragmatics, by Michael L. Scott

that would be too obvious abuse, and I think my boss would say something if the company was spending on books on my hobby

So if your boss doesn't know you're buying books with his money for your hobby, it's OK.[move]mumbles something about ethics 'n stuff, and about how to abuse the marquee to annoy you a bit, but you still want to read to the end of it, because it might actually get interesting right about... now. no luck. make sure your boss doesn't catch you. now click this scrolling link for a good read about how to get back on your boss once he tries to fire you. seriously, once your eyes are opened to the wonderful world of power abuse, you will be feared, praised and promoted.[/move]

So if your boss doesn't know you're buying books with his money for your hobby, it's OK.[move]mumbles something about ethics 'n stuff, and about how to abuse the marquee to annoy you a bit, but you still want to read to the end of it, because it might actually get interesting right about... now. no luck. make sure your boss doesn't catch you. now click this scrolling link for a good read about how to get back on your boss once he tries to fire you. seriously, once your eyes are opened to the wonderful world of power abuse, you will be feared, praised and promoted.[/move]

I actually don't see any real issue with this. It will overall make him a better programmer, which will improve his job. Where is the harm if he gets a little extra out on the side? All of the good bosses I've had would easily allow this sort of thing (and so I worked very hard for all of them in return). It's like using the photocopier for personal use, stealing the left-over alcohol from the office party or getting a few extra days added onto a business trip as a short holiday.

Refactoring: Improving the Design of Existing Code - Similar to Clean Code in that it focuses on small iterative changes. Well worth a read.

Code Complete - The Bible!! Read it cover to cover and it made me a better programmer. Been over 10 years since I read it so it is on my re-read list.

Agile Testing: A Practical Guide for Testers and Agile Teams - Targeted at professional testers that are transitioning from traditional waterfall process to agile. Ok book in that it gave some ideas about how to test on a higher level above unit testing.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org