Save 50% on all oreilly's ebooks and videos (today only)
shop.oreilly.com
shop.oreilly.com
Other than that, I often read on the (crowded) subway ride to work. Carrying a 600 page book is often a pain in the ass, compared to the lightweight feeling of my Kindle.
On the other hand, I completely relate to the pleasure of the physical page. I also enjoy very much watching my collection of books slowly expand on my shelves.
I wish there were a model where buying a physical copy of the book would entitle you to the digital one or vice-versa. I think both have their advantages in different situations.
However, when I'm searching for something precise, a google search / help documentation usually suffices. When I'm reading a book, it's generally in search of more deep understanding or just the process of learning in general - i.e. more long-form learning. For the latter I would still prefer printed.
It's still not quite up to the standard of flipping back and forth in a book, but it's tolerable. I've also changed my reading flow to make a lot more bookmarks of interesting parts of the book, and use search more. Given the other advantages (portability, price of books) it's a solution that's working out really well for me, and allows me to read a lot more technical books than I would if I had to lug them about in print form.
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.
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.
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
Another thing: this particular sale is about freedom from DRM. Safari is a joint venture between O'Reilly and Pearson. Pearson is on that list of SOPA supporters. It also feels encumbered to me, and I don't feel like I'm supporting the authors much if I read them.
https://en.wikipedia.org/wiki/Safari_Books_Online http://www.blogworld.com/2011/12/22/a-huge-list-of-companies...
I think it might be a good complement to buying eBooks but I don't think I'd read more than a couple chapters without getting it in a format that I can read without being logged into their website.
Thanks for posting the collective book...I think I need to get it now :)
Programming Python http://shop.oreilly.com/product/9780596158118.do
and
Learning Python http://shop.oreilly.com/product/9780596158071.do
Not sure where I fall with these books in terms of skill and knowledge. Looking through the table of contents for Learning Python I recognize everything and know what they are, but don't have a great masterful grasp of most of the stuff but I am afraid too much of it will be stuff I already know. On the flip side, Programming Python might be too advanced for me.
EDIT Seems Programming Python is mainly geared towards Python 3.x but I'm still using 2.6.
Don't let that stop you from buying a book you like.
I also have Programming Python, but I mainly use that for reference on some advanced topics. I hate the hundreds of pages it spend on GUI programming though...
I also strongly disliked the author's choice of examples. In particular, the examples for metaclasses and decorators were repetitive and un-Pythonic. If you want private member functions, you're probably better off using a language like Java that supports them rather than trying to hack them in using one of the several ways explained in the book.
If you can handle the length and the trailing off of example quality near the end, it's a solid and comprehensive coverage of Python the language. In terms of the 3.x/2.x split, "Learning Python" covered both comprehensively. The differences aren't huge, and it's mostly just a matter of the example code being adapted to work in one or the other.
The book is divided into several parts: Part III "Tools, Platforms, and Projects" and part IV "Practicums" give you an overview on project patterns and structure, and this alone was worth it for me.
"C# 4.0 in a Nutshell" http://shop.oreilly.com/product/9780596800963.do
Australia-based Joe Albahari who wrote it is the author of the free 'LinqPad' tool.