Monday, July 31, 2006

Joel on Software, by Joel Spolsky

Joel on Software: And on Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and Managers, and to Those Who, Whether by Good Fortune or Ill Luck, Work with Them in Some Capacity, by Joel Spolsky

Joel on Software is a technical blog with topics such as software development, management, business, and the Internet; this book is a collection of some of the better essays. While he tends towards hyperbole and narcissism, Spolsky has a tongue-in-cheek style that I wish I had; a recent column, for instance, used a great quote: “Don’t fall for it. [Developers] also want M&Ms for breakfast and a pony.” Good stuff.

Probably due to the fact that the columns were written over about five years, Spolsky does tend to contradict himself. At one point he gives a rant showing a disdain for abstraction with which I don’t agree. (From his examples I think his real problem is with head-in-the-cloud architects and not abstraction itself, but it doesn’t come off with quite that message.) Later, though, he says that software design is extremely important which seems a very different direction. Another discrepancy is with bloatware; at first he makes very good arguments as to why it isn’t that big of a deal (as disk space gets cheaper and bandwidth becomes a commodity larger programs aren’t a problem; your annoying and useless gizmo is my must-have feature) but then later he laments the absence of a linker in .NET causing his software to be larger than it really needs to be. Hmmm.

A topic on which we don’t agree is interviewing. He likes candidates to write code during an interview and tends to use puzzle questions. To me, design ability is much more important than coding; good designers can always be taught to code while the converse isn’t always true. Puzzle questions while fun strike me as trivia questions; “How many gas stations are in LA?” is only useful the very first time a candidate hears it and the chances of catching someone that hasn’t seem slim. If you are going to ask trivia questions, at least make them technology specific to see how deep of an understanding someone has on a given topic.

Despite how it may seem from the preceding paragraphs, I agree with much of what Joel has to say. Daily builds, a commitment to testing, simple and clear documentation, and humor in the workplace are all important factors of a strong team. I’d recommend this book to any software developer or manager; even if you don’t agree with what Spolsky has to say you will at least think about it.

First Sentence:
Why do developers choose one programming language over another for a given task?

Sunday, July 23, 2006

Strange Defeat, by Marc Bloch

Strange Defeat: A Statement of Evidence Written in 1940, by Marc Bloch

Marc Bloch was an officer in the French army during both world wars, joined the Resistance after the German Blitzkrieg, and was executed by the Nazis in 1944. This short tome details his opinions about why the French were so unprepared for the war. His reasons are different from the classical ones; it wasn’t that they were overconfident in the Maginot Line but instead that the High Command was simply too stodgy and unimaginative to adapt to the obvious modernizations of warfare.

I’ve been told this is one of the classic historical texts of WWI, but I had a very difficult time finishing this. Bloch is clearly passionate about his beliefs and his patriotism is both obvious and admirable. However, this struck me as a ten page essay crammed into almost 200 pages. He makes his point about the incompetence of the military command quickly and then spends the rest of the book giving fact after fact after fact for illustration. I don’t disagree with his reasoning, but he had me at hello and plodding through the rest of the book was a chore.

One interesting point that he did make towards the end was that while the High Command should shoulder most of the blame for the French collapse, the trade unions are not without fault, either. He states that unions naturally want to do “as little as possible, for the shortest time possible, in return for as much money as possible. ... However legitimate that point of view may be at other times, it is cruelly out of place then the very existence of one’s country is at stake.” As I have a low opinion of unions and believe that with our modern laws they are largely unnecessary in this country, I found this passage both accurate and amusing.

First Sentence:
Will these pages ever be published?—I cannot tell.

The Best Alternate History Stories of the 20th Century, edited by Turtledove with Greenberg

The Best Alternate History Stories of the 20th Century, edited by Turtledove with Greenberg

The cover of the edition I have shows Lincoln in front of a Communist flag and Hitler wearing the Confederate battle flag. While this seems fitting give the title of the anthology, no stories found within deal with either image. An odd choice, but I suppose both images are fairly iconic for the genre. It isn’t the strangest thing about this volume, though; one of the stories here isn’t even an alternate history tale. The Death of Captain Future by Allen Steele is traditional science-fiction, with no point of divergence with our known history.

Regardless, there are a couple of good adventures here. Bring the Jubilee by Ward Moore is a classic tale about the Civil War and one I’ve been wanting to read for quite a while. Mozart in Mirrorshades by Bruce Sterling and Lewis Shiner was pretty good too; it tells of a world that has discovered how to jump between alternate realities and strips the new worlds of their natural resources. The Lucky Strike by Kim Stanley Robinson (describing the world as it would be if the Enola Gay had failed in its mission) is one of the weaker entries, riddled with clichés and a highly predictable ending.

First Sentence (from the introduction):
What if...

Saturday, July 22, 2006

Jonathan Strange & Mr. Norrell, by Susanna Clarke

Jonathan Strange & Mr. Norrell, by Susanna Clarke

I ran out of books to read during a recent trip to China and not-surprisingly found that English-language texts are hard to come by. This one cost me ¥100 and I picked it mainly because of it’s length: over 1000 pages. Unfortunately, I was ready for it to be over after about 700.

This book is hard to describe, sort of a cross between historical fiction and pure fantasy. The premise is somewhat interesting: set in the early 1800’s with England at war with France, magic did once exist but there haven’t been any practicing magicians for generations. The characters of the title begin to rediscover magic and in doing so change the world. It was interesting enough, but seemed in desperate need of editing. It was very well written: snappy dialog and complete characters, but there was simply too much. For instance, there is a liberal use of footnotes which give backstory and “historical” anecdotes. Some of these footnotes, though, last for five or six pages, and that in the smaller footnote font! It was interesting enough to keep me reading through the end, but I don’t think I’ll be looking for the next tome in the series anytime soon.

First Sentence:
Some years ago there was in the city of York a society of magicians.

Plane Insanity, by Elliott Hester

Plane Insanity, by Elliott Hester

I’m beginning to think that degreed writers are a dying breed. This is yet another book that is mainly a collection of previously published anecdotes, and another winner. Written by a former flight attendant, the tales of the friendly skies presented here are both outrageous and hilarious. I read this on an airplane and apparently my laughter caught the attention of a flight attendant. She came over and told me that not only had she read it, but it was all true!

Hard to pick my favorite story, but Pass the Defibrillator Please is certainly one of them. Starting with a medical emergency, moving on to a fight between a flight attendant and a passenger, and ending with an lynch mob at an international airport—all during the same flight. The Passenger from Hell is another great one: a drunk traveler gets increasingly more out-of-control, resulting with him being met by an army of cops at DFW; a further twist on this one makes it nearly worthy of O. Henry. Between the longer, first-person anecdotes there are newswire reports about funny flight mishaps, with titles such as “NWA fires pilot who delayed flight when he didn’t like the meal,” “Growling woman tied to seat, ” and the priceless “Malaysia Airlines steward sentenced for biting off colleague’s ear.”

If you are looking for light entertainment to read while flying somewhere, pick this one up. You probably won’t be looking at your flight attendants in the same way by the end!

First Sentence:
Speed and altitude notwithstanding, flying in a commercial jet is not much different than riding in a Greyhound bus.

The Code Book, by Simon Singh

The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography, by Simon Singh

Tjhg ncgdpe ghahkpdmkleqco nslnqcqsqcha ocdmejn (ohancnqeaqpx jedpkocai hae peqqej vcqm kahqmej) qh ghbeja Djeqqx Ihhb Djcukox qh tsqsjcnqco qmehjeqcokp fskaqsg kpihjcqmgn, qmcn lhhy ohuejn cq kpp. K bhosgeaq klhsq ohben kab ocdmejn djhlklpx ljcain qh gcab k bjx qjekqcne phkbeb vcqm mcimej gkqmegkqcon. Ncaim, mhveuej, mkn gkakieb qh kuhcb qmkq vcqm k vepp-vjcqqea nqhjx beqkcpcai ahq hapx qme noceaoe lsq qme mcnqhjx ht ojxdqhijkdmx. C thsab qmcn k tknocakqcai jekb kab bcttcospq qh dsq bhva kq qcgen.

Ncaim bhen ka ewoeppeaq rhl ht gkycai k mcimpx qeomacokp nslreoq uejx kooennclpe. C’ue jekb klhsq qme VVCC Eacigk gkomcae, lsq aeuej lethje mkb ka kddjeockqcha kn qh mhv cq vhjyn. Qme nkge cn qjse thj Bcttce-Meppgka, BEN, kab JNK—kpp qejgn qmkq ghbeja nhtqvkje beuephdejn mkue eaohsaqejeb. Qmcn djhlklpx vha’q gkye ge k leqqej beuephdej, lsq C oejqkcapx mkue k leqqej sabejnqkabcai ht vmkq jekppx ihen caqh mqqdn.

What is this gibberish? For a book about codes, I thought it would be fun to encode my blog entry. I used a simple monoalphabetic cipher, so it shouldn’t be too difficult to decode—especially with the hints given by the embedded links! If you give up, !

First Sentence:
On the morning of Saturday, October 15, 1586, Queen Mary entered the crowded courtroom of Fotheringhay Castle.

Search This Blog