In my last trip to Germany I truly enjoyed Konrad Zuse Museum[1] in Hünfeld. Many descriptions are in German, but I can truly recommend it, especially if you're with a German speaker (but even without, there are models and artifacts). Not many people (me included) know about the dawn of computer science behind Britain and the US, so it was very interesting and refreshing.
[1] http://www.zuse-museum-huenfeld.de/
edited for more information.
I really must visit the Zuse museum. When I was working in Munich I saw some of his hardware in the Deutsches Museum. Very interesting.
Learning SQL is a really excellent intro, and probably covers the majority of what your average developer is going to ever need to know about SQL ( http://shop.oreilly.com/product/9780596520847.do )
SQL and Relational Theory gives you more background on relational theory - basically gives a more academic background for existing practitioners of SQL. Date is pretty dry author with a few hangups, but it's largely good solid stuff ( http://shop.oreilly.com/product/0636920022879.do )
Oracle Essentials is a good solid introduction to Oracle, and gives a useful bit of background on how database management systems work ( http://shop.oreilly.com/product/9780596514549.do )
For other subjects:
Code Complete needs little introduction ( http://shop.oreilly.com/product/9780735619678.do )
I've only just started reading Version Control with Git, but it seems pretty good so far, and is well-reviewed ( http://shop.oreilly.com/product/9780596520137.do )
- He really dislikes SQL (His books often use Tutorial D, which is a language Date created to represent what a good relational query language would look like).
- He really hates the use of null values.
- He's of an academic bent - dryish, but still perfectly readable.
- I would say that he tends to gloss over performance issues that get in the way of ideal database schema design, viewing them as implementation issues (which is true, but in reality, all DBMS products have weaknesses, and at some point you'll probably have to make compromises in your schema design).
With this said, I would read his book. He'll tell you the best way to do things, if you ignore performance. This puts you in a good position to start out from a pure, ideal implementation from which you can compromise when you have to. I much prefer this to a less-educated ad-hoc approach.
No Starch, Eloquent JavaScript. A Modern Introduction to Programming: http://shop.oreilly.com/product/9781593272821.do
No Starch, The Book of CSS3: http://shop.oreilly.com/product/9781593272869.do
O’Reilly, bash Cookbook: http://shop.oreilly.com/product/9780596526788.do
O’Reilly, CSS: The Missing Manual, 2nd Edition: http://shop.oreilly.com/product/9780596802455.do
O’Reilly, JavaScript: The Good Parts: http://shop.oreilly.com/product/9780596517748.do
O’Reilly, Mastering Regular Expressions, 3rd Edition: http://shop.oreilly.com/product/9780596528126.do
O’Reilly, The Art of SEO, 2nd Edition: http://shop.oreilly.com/product/0636920019091.do