Thanks to long weekend and more quiet time in last couple of days (Happy 140th Birthday, Canada!), I managed to read something else than Ruby-ism/Rail-ism. Among others, I finished the Dreaming in Code by Scott Rosenberg, a book promising to explain why software is hard.
It is pretty tough question to answer. The way this books tries to address it is following the story not very well known open source project named Chandler through it's beginning over period of 3 years. Chandler was - and still is - developed by the OSAF - Open Source Application's Foundation, founded (and financed) by Mitch Kapor, who was before the founder of Lotus Development Corporation and designer of the "Ur-spreadsheet" Lotus 1-2-3.
During last two weeks I have been reading and playing a lot with Rails. Now I am in the state where I think I started to "get it" and understand how things work under the surface. Which means I am ready actually start using the framework for real work and become proficient as I get my hands dirty.
To get to this state, absolutely essential and by far the best book is the classic one - Agile Web development with Rails co-authored by the original Rails designer and one of the Pragmatic Programmers. Like other books, the first part is sort of step-by-step code tutorial, which leads you through creation of a Rails application, shows you how you access data, create UI, use scaffolding, etc etc. Unlike other books, this does not stop there and the second part of the book is an excellent coverage of Rails internals - ActiveRecord, ActiveView and templating system. Very well written and offering great balance between covering important features without becoming reference manual.
There are few technical books which you enjoy first time you read them, remember the experience and keep coming back. One of such classic books is The Pragmatic Programmer - from journeyman to master - by David Thomas and Andrew Hunt. If you have not read it, get it, it is worth every cent. Since the book was written - ages ago, back in 2000 - it did not loose anything of its freshness and value - which one cannot say about most of technical books written earlier than 2-3 years ago. Inspired by the success of their initial creation, Dave and Andrew started the website and continued writing whole Pragmatic Programmer series of books.
Since yesterday, I made nice progress in solving my issues with content creation for PRS500 and it's readability. There are several ways how to proceed:
The simplest is to download Book Designer. It is free for non-commercial use and current version 5.0 Alpha does the job very well. It allows you to load source in text, HTML, Lit, PDF, PalmDoc (prd/prc), rb and few other formats and process them into native LRF format - plus few others I do not really care about. The result is nice, readable LRF file with three sizes, nicely formatted, with metada. As added benefit, because the author is Russian, the program does not assume that English alphabet is the only one in existence and allows to select encoding. The result is quite good - most of the extended characters from Czech/Slovak are there, some are missing and displayed as space (namely ř,ě,ľ ...) but it is readable. What is maybe better option is that with English as language and default encoding, the software "downscales" the extended characters to closest English pairs: ř -> r,ě -> e - which results in familiar computer Czech/Slovak. I am very comfortable with option 2, and will work on getting correct font for #1.
After few weeks, I have got back to actually using my PRS500 again and I have finished the books loaded on the device. When I have connected the reader, first the CONNECT software as well as the PRS500 downloaded the updates. The firmware in reader is up to version 1.0.02.0130 from 1.0.00.21081 and should bring longer battery life and stability improvements. It better does, because so far the battery life is nowhere in the proclaimed range of 7000 page turns ... Time will show.
Same as last few weeks, I have spent most of the weekend reading. Unlike the weekends before, this time I was actually reading a book, not source code. It was nice change ...
I have picked this small book with title Computers Ltd in Ottawa Public Library last Friday, while returning some books on CD. Written by David Harel of Weizmann Institute of Science, Rehovot, the book is trying to explain what computers cannot do. It speaks about complexity, P / NP problem and other fundamental limitations of what we can and cannot do with our favorite toys. This book is nice proof that even on such complex and abstract problems it is possible to find very nice and readable presentation - without sacrificing the precision. It reads as novel and thanks to very short format, it is an excellent complement to quiet Sunday afternoon. Recommended.
I have picked it two days ago in Chapters - Code Craft by Pete Goodliffe. Somehow similar in topics covered as the Rapid Development or From Coder to Developer - but newer. Divided into 6 parts:
Part I - At the codeface - defensive programming techniques, naming, formatting, commenting, error handling
Part II - The secret life of code - code contruction tools, testing and debugging methods, building
Part III - The Shape of the code - code design, architecture, source code growth and decay over time
Continuing from here.
Ch-7: Digging into the source code
In this chapter, Mike describes the tools that work with, around or towards source code: Idlasm, Reflector and FxCop. The book is written for Visual Studio 2003, so some references are slightly outdated - but there is one utility that stands out and is still more useful than ever: Lutz Roeder's Reflector. It is part of the Visual Studio 2005 (albeit in older version that you can get on the Web site).
I have got my eReader on 30th December, so after few days of playing with it, here are first impressions. I managed to read one book and played with it quite a bit, but I am still learning.
The quality of the display and "electronic paper" look and feel is great. It actually looks like paper, not like screen. The non-glossy texture surface has same visibility from every angle and it really reads like paper. I have no problem with the speed or lack of it - the page turn takes about 1-2 seconds, switching to full black and then redrawing is kind of cool when the page text "emerges" from the page. The picture is perfect, steady, does not strain the eyes, perfectly readable in sunlight. It is the best feature of the reader.
One of the most successful presents this Christmas was five copies of the same book. Not just some kind of a book. Our daughter got five copies of the book she authored as a surprise. How can this happen ?
I was toying with an idea to try out self-publishing on-demand printing company that would allow you to create and publish book without spending hundreds or thousands of dollars as investment - sort of "pay as go" plan. The only way how to do it is create the the printable book yourself and find publisher that can do print on demand. Most companies that I found were selling packages in price segment $800 to few thousands of dollars, which included professional assistance in book creation: proofreading, editing, graphics design etc. One company however, offered exactly what I needed: a service that allows you to upload content file, design the cover and order as little as single copy - or as many as you need. No setup fees, publishing packages or minimum orders. See www.lulu.com for more detail. So we have decided to give it a try. It was an easy decision because manually printing the color pages and paying for binding would cost about 3 times more as was the price on Lulu.