Free as in Books
As I've previously mentioned, my recent purchase of an Eee PC has resulted in an increase to the number of eBooks that I've been reading. This horrible new addiction has lead to a general shortage of reading material that comes in the format I need.
Here in Australia we're a tad behind the times, so I doubt we'll be getting the Kindle or any similar "buy books on the go" service any time soon. Besides, I still can't bring myself to pay full price for an eBook. Can you imagine paying US160 for Don Knuth's Art of Computer Programming series and getting 3 PDFs? I don't think so. How can I let guests know that Knuth is my homeboy if I don't have a huge boxset sitting on the shelf for all to see?
So where does that leave my insatiable thirst for PDF files? Well, it turns out that there are a number of decent eBooks available for free online, the only trouble is finding them.
Googling for "Free eBook" will bring up a number of bogus resources, mainly proxy sites set up to collect Amazon referrer fees or sites that are offering up copyright infringing material. Unless you have a specific subject or prior knowledge it is very hard to sift through the junk.
There are a few legitimate free collections of eBooks, some specialising in technical books, others in classical literature that has fallen into the public domain, but in general these sites are very hit and miss.
The real gems are found scattered over the web, sitting as a reference on someone's blog or a random website. In the technical space there are a few well known books that are well worth a read, such as Mark Pilgrim's Dive Into Python, and Domain Driven Design Quickly. These books are popular for a reason. Then you have books that are not so popular but are written by a well known author, such as Charles Petzold's .Net Book Zero: What the C or C++ Programmer Needs to Know about C# and the .NET Framework.
Sometimes decent reading material just falls into your lap while you're busy trying to do something else. Take Dr Paul Carter's PC Assembly Tutorial, for example. It's a fascinating refresher on x86 Assembly and broader topics such as name mangling and compiler linking, and it was a totally unexpected find on my part. I'm sure I was searching for Pokemon at the time.
At other times you can find something worth reading in an unusual place. Things that are not necessarily "books" can make for good bus fodder. The Sun ONE Architecture Guide is a good example. It is remarkably well written, and also available in PDF format. In fact, manuals and guidance can be a great source of reading material. The SVN book, OpenGL Redbook,
TFS Branching Guidance and TFS Team Development Guide are all available online for free, and are all worth a look (especially the OpenGL Redbook).
With a little effort and a lot of luck you're bound to find something that's work reading. Just be sure to avoid sites advertising "Fr33 3B00kz 4 J00". They may infact try to hack your gibson or something equally scary.
Hold Me Closer, Tiny Laptop
After moving jobs at the beginning of February this year I found myself in an interesting situation. For the first time in several years I was without a laptop. What was I to do? I had an old 14 Inch 1Ghz iBook G4 sitting at home that would need some serious TLC. It would need more memory, a new battery and some other fixes, some major, some minor. It would take too much time and effort to nurse the machine back to health, so I soon scratched that off the list.
I also had the option of borrowing my partner's Toshiba Satellite, but that was only viable during the University holidays, after which she'd need it for her post-grad degree. The semester was fast approaching, and while it did help out in the short term, it certainly wasn't a long term solution.
After giving it a bit of thought, I decided that a new laptop was in order. I started looking at several cool laptops, all in a 13.3 inch wide screen form factor and all around the AUD1500-AUD2000 mark. Bear in mind that I wasn't looking at a desktop replacement, especially considering my home setup (4 monitors, a quad core tower with 4 GB running Ubuntu 7.10 x64 and a dual core tower with 2 GB running Vista Ultimate x86) is more than adequate for my "sit in one place for hours on end" computing needs. I just needed something that would act as a big brother for my N95's internet connection (Oh how I love thee, X-Series), fit in my bag, be comfortable enough to use on a bus and let me code on the go, preferably without feeling like I'm carrying around a brick. After a few days I still hadn't made up my mind, and I was all but ready to give up on the idea.
Then I had a moment of weakness.
I came across a discussion on light weight laptops, during which the Eee PC was mentioned. Having apparently spent the latter half of 2007 under a rock, I couldn't remember much about the initial press from around the time of the device's launch, but a quick wander down Google lane fixed that problem. Over the course of the next few hours I scoured the prominent Eee PC wikis, consulted Wikipedia and read a few articles and reviews. After discovering how low the price point was (AUD500 at the time, although Austin are now selling them for ~AUD450) I simply had to have one.
The next day I walked into Myer in Perth, handed over my credit card and walked out of there with a black Eee PC with a 4 GB solid state drive and 512 MB of memory.
I have since upgraded the memory to 1GB (I actually bought a 2 GB stick, but ended up swapping it for a 1 GB stick from the Satellite after realising that I simply don't have the time to rebuild the kernel) and shoved an old 1 GB SD card (salvaged from when I bought a Mini SD card for my 6288, which has been sitting in a drawer since I bought my N95) full of eBooks in it.
I'm still running the default Xandros, but I did take the liberty of enabling "full desktop" mode. I've also installed the usual dev tools (vim, emacs, eclipse) so that I can get a coding fix on the run, but for the most part I'm running the base image. I even managed to hook it up to my N95, using the phone as a 3G/HSDPA modem, meaning that I can get on the 'net anywhere that has three coverage.
So now that I have a tiny, 7 inch laptop that can get on the 'net from nearly anywhere in the Perth metro area, has all the dev tools I need to be fairly productive and a full office suite, what do I actually use it for? Reading eBooks.
That's right.
Reading eBooks.
If you see a guy walking around the Perth CBD or waiting at a bus stop with an Eee PC in his hand, staring at the screen while remaining oblivious to his surroundings then there's a good chance that it's me. I've gotten through about twice as many technical books as I usually manage since buying the Eee PC, and that's just from reading while waiting around for or traveling on public transport. I honestly feel like I've gained 2 hours of productive time each day, which more than offsets the (already relatively paltry) amount that I paid for the laptop.
Historical Tomes
It recently occurred to me that I have a rather large collection of technical books. A few years back I acquired the cast-offs of numerous university lecturers who had moved on to bigger and better things (apparently functional programming and early OO research were no longer impressive points of discussion for dinner parties and barbeques), and from there my collection has grown.
Of all the books on my various book shelves there is one particular tome that immediately stands out. That book is the "American National Standard for Information Systems - Programming Language - COBOL". Yes, somehow I've managed to acquire a copy of the specification for ANS COBOL that was approved in 1985. It is the size of a phone book, handily bound and a surely a riveting read. It is a serious crime that its stunning narrative and dry wit have not ensured its place at the top of Oprah's recommended reading list.
Ok, so perhaps I am "enhancing the truth" (or flat out lying) somewhat. Yet, like a car crash, I can't look away. I am eager to begin leafing through its pages, trying to find some nugget of wisdom that will enlighten the masses and lead us all to the promised land. At the very least I'd hope for a few pages of semi-interesting text on a subject I know nothing about.
Or perhaps not.
