31 March 2008

Spring 2008 Reading List

It's been awhile since I logged some book reviews.

Some are worthy of far more than a short blurb. Others have been omitted because they were not noteworthy enough or I've just plum forgotten and will write them up in a future post. In addition to a house overflowing with books, I typically check out 3-4+ books from the local library per week. In fact, in the days that I have compiled this list, I've finished 3 more books.

Oh well, I will simply have to comprise another post with the omitted titles. But, for now, here is a roundup.

Recently completed

  1. Jesus for President by Shane Clainborne, Chris Haw — an incredible book that follows in the vein of the remarkable Politics of Jesus by John Howard Yoder, and more recently, The Myth of a Christian Nation by Greg Boyd. But written for a younger and culturally hip audience with the hardcore theology, but phrased in a much more pleasing comprehensive language. It's about how the Jesus story has been corrupted with the taint of Empire. and how Christians need to make Jesus their president. They can begin by claiming their own holidays and heroes, who served in the call of Christ, not in service for Empire conquests. Even the design and layout of illustrations is a spectacular work. One of the graphic designers (who has quite a bit of experience in designing magazine layouts) I work with simply marveled at the book's illustrations and layout style, and was compelled to pick it up and take home to read. I will have much more to write on this one. Definitely, it is one of those sorts of books that you purchase, read (and reread), and then purchase again after giving to another.
  2. The World Without Us by Alan Weisman — What would happen in the world if the humans just disappeared? In each fascinating chapter, Weisman takes the reader on an imaginary journey. From islands of plastic particulates floating in the ocean to abandoned island hotel resorts where one can get a glimpse of how it would play out.
  3. Glut: Mastering Information Through The Ages by Alex Wright — I could never imagine that a book about the Dewey Decimal system would be such a page turner. Well, not the Dewey Decimal system itself, but the human practice of collecting and organizing information. Glut spans the entire arc of history and each chapter was a treat.
  4. A Power Governments Cannot Suppress by Howard Zinn — Howard Zinn's writings are eye opening. This is a collection of shorter Zinn essays, mostly reprints from magazine articles.
  5. Deer Hunting with Jesus by Joe Bageant — A wonderful book that I could easily relate to. Though I don't originate from rural Virginia, like Bageant the theme of having my feet in two distinct worlds is quite familiar to me. The working man's version of Thomas Frank's What's the Matter with Kansas, and is a superior book in my estimation.
  6. The Shock Doctrine by Naomi Klein — The Lords of Wall Street and financial barons of the day have joined in a chorus, telling readers and listeners that Klein needs to "grow up" and economics debate are over her. While I agree that the "shock (and awe)" metaphor is strained, I don't see the critics picking apart the historical accounts of neoliberalism champions saddling up with barbaric autocrats to implement and enforce extremely unpopular economic policies. Though she's been slighted for her depiction of Milton Friedman, a bigger target for Klein is "End of Poverty" golden boy Jeffrey Sachs, who is painted in unflattering tales. Klein's missive is more hit than miss, though many will just tune it out instinctively, without ever addressing the evidence displayed.
  7. The Myths of Innovation by Scott Berkun — Berkun numerates the fallacious thinking on inventive thinking. In a nutshell, the lies we've swallowed: the myth of epiphany, that we understand the history of innovation, that there is a proven method, people love new ideas, the myth of the "lone inventor", good ideas are rare, the best ideas win, and finally, that innovation is always good.
  8. Thank you for Arguing by Jay Heinrichs — The rules of the ancient but timeless art of rhetoric, framed in today's cultural context. Heinrichs employs TV sitcom references to serve up debate lessons. While younger readers might not know who Eddie Haskell or other historical pop culture allusions are, "Thank you for Arguing" is a wonderful book and I've begun a third reading.
  9. The Bloody Shirt by Stephen Budiansky — For a short period after the conclusion of the American Civil War, democracy for all (men) was restored to the southern states, and freedmen were elected and appointed to political offices. Soon, however, the "defeated" Confederates responded with a campaign of terrorism to recapture their land from the clutches of an "inferior race" and their "carpetbagger" apologists. As America moved forward, and Democrats came back into power, the plight of those unshackled grew increasingly irrelevant. Within a decade, the condition of freed slaves became as wretched as the previous days of slavery. Here is another take on Budiansky's work, from one who celebrates the "glorious and successful struggle of my ex-Confederate ancestors to overthrow a multiracial liberal democracy right here in America".
  10. Justice in the Burbs: Being the Hands of Jesus Wherever You Live by Will Samson, Lisa Samson — A look at suburbia and social justice.
  11. Lies My Teacher Told Me by James Loewen — The 2nd edition, a decade later, of a book that illuminates how Americans are ignorant of history. Some highlights of the more egregious errors in your high school history books. And some words on how and why it is this way.
  12. The Blind Side: Evolution of a Game by Michael Lewis — Lewis is a fabulous writer, able to wrap a story and theme together, so much so that it reads like a page burner novel you simply cannot put down. And in the telling, the human faces exposed from the narrative, reveal even more about life. Oh, I didn't even mention that the subject of the book is the evolution of importance of the tackle (specifically, left tackle protecting the quarterback) position in football, interlaced with the story of a young phenomenal recruit named Michael Oher.
  13. Here Comes Everybody by Clay Shirky — The digerati are celebrating Shirky's latest as a Web 2.0 paean. Indeed, it is an interesting read, peppered with illustrations on how internet technology and push button publishing have enabled organization efforts that would simply be impossible in a pre-internet world. To some, this is not a startling revelation, but for others, it's earth shattering news. The examples Shirky relates are instructive, but there is not much in reasoning or speculation over what fruits are going to be borne from these breakthroughs. It's over a decade now, since the world plugged in to the world wide web, and still I don't think we have any clue about the long term ramifications.
  14. Legacy of Ashes: The History of the CIA by Tim Weiner - A historical look at the CIA, from inception to current times. The CIA would have had greater success had it simply tossed darts at the wall. Even the few successes (like Afghanistan) sowed the seed for more epic future failures.
  15. Pagan Christianity by Frank Viola, Mike Barna — The Barna/Viola manifesto against the organized church has caused an eruption of blog speak amongst church traditionalists. Basically, Barna/Viola argue that just about everything about contemporary church practice is rooted not in Jesus, but in Roman/Greco pagan rituals. Church buildings, paid clergy, professional staff, dressing up, etc.… are in the crosshairs. Church was pure when it was conducted as "house church" as early Christian performed it. Barna/Viola are as guilty as those they criticize by lifting a whole lot of meaning out a few bible verses, but my gauge is that they are more on the mark than dissenters give due.
  16. What Orwell Didn't Know edited by Andras Szanto — A collection of essays inspired by George Orwell's Politics and the English Language. Each essay is authored by a different author and the book concludes with a reprint of Orwell's famous essay that sparked these writings.
  17. Red Letter Christians by Tony Campolo — A "Red Letter Christian" is someone "who's really into those verses in the New Testament that are red letters" (some bibles highlight the words of Jesus in red). Campolo explains why he is a Red Letter Christian. A good read, though overly wonkish in parts.
  18. Into the Wild by Jon Krakauer — The story, recently made into a movie, of a college graduate giving it all up to go into the Alaskan wild. The book mirrored the movie, with additional background on the characters, along with the author's own reflections on the tale.
  19. Whistling Past Dixie by Thomas Schaller — A wonkish look at the U.S. electoral landscape, with a central theme that Democrats need to write off the South and focus on western states, where many are ready to flip the Democratic column. Schaller contends that the election of George W. Bush in 2000 was the culmination of the Republican Southern Strategy, resulting in the first swearing in of a Southern conservative. According to Schaller, Democrats need to counter with a "Non-Southern Strategy" and run against South Carolina like conservatives target Massachusetts. Early chapters explore some voting history, as I have pointed out here in previous articles, on how the electoral maps today look like a mirror image of those after the civil war (up until FDR was elected in 1932, based on coalition between Northern and Southern voters that held until Civil Rights). During the period between 1868-1932, the only time a Democrat was elected was when a third party candidate effectively split the vote.
  20. Dreaming in Code by Scott Rosenburg — See my review here.
  21. unChristian: What a New Generation Really Thinks about Christianity... and Why It Matters by David Kinnaman, Gabe Lyons — What do young people think about the Church? The Barna group has done some studying on this, and the results are not pretty. By large margins, younger Americans see Christians as judgmental, gay bashing hypocrites. Not for their sacrificial love, which was the central message of Jesus.
  22. Cracking the Code by Thom Hartmann — Thom Hartmann, one of the few talk radio hosts I can actually listen to, shares his thoughts on cracking the "conservative" code. While I've enjoyed previous books by the author, this title is a disappointment for me, as the fluff to signal ratio is lopsided on the wrong side.
  23. The Age of American Unreason by Susan Jacoby — Jacoby laments the tide of ignorance, anti-rationalism and anti-intellectualism that has infected America. We've been dumbed down by a culture of infotainment, and there will be a price to pay for this embrace of stupid. I think Jacoby overlooks and trivializes benefits of technology, but unlike the drivel slobbered by Andrew Keen and Lee Siegel (see below), there's quite a bit of substance here, and well worth the read.
  24. Heroic Conservatism by Michael Gerson — George W. Bush speechwriter makes the case for the "compassionate conservative" brand of Republicanism. Gerson believes conservatives must latch on to social issues like AIDS relief, poverty reduction and ending hunger around the globe. He professes his like and respect for George W. Bush but disdains prominent Republicans for their unenlightened vision, and even writes how he urged Bush to dump Donald Rumsfeld. Gerson is a gifted writer, but I get the same vibe as when I read Peggy Noonan (or other presidential speechwriters, left or right), that he's been whiffing too hard on his own flowery wordage. He trots out arguments about moral high ground, oblivious to the criminality and corruption (or even the charges of such) in the administration. He flogs a straw man in addressing "liberals" but is reliant upon simpleton rhetoric to defend his own cause.
  25. Death by Suburb: How to Keep the Suburbs from Killing Your Soul by Dave Goetz — A friend recommended this title to me, and after I completed it, I informed him that it was narcissistic tripe full of pointless handwringing. He was taken aback, and yes, I was a tad too harsh. But please, if you desire to read something along the subject line, Justice in the Burbs would be a better selection.
  26. Against the Machine: Being Human in the Age of the Electronic Mob by Lee Siegel — What a whiny piece of irrelevancy. Siegel decries the internet and its takeover of a realm he once enjoyed near monopolistic role in. Mr Siegel, I'm sorry you can't find a time machine to scoot back to 1994, where there weren't millions willing to do your job for free. Yes, granting everyone a voice in the forum means there's a lot more garbage to wade through. But it also means there is more gems and treasure to be found. Welcome to the 21st century.

Currently in the queue

  1. American Gods by Neil Gaiman
  2. Kingdom of the Gospel by George Eldon Ladd
  3. The God Delusion by Richard Dawkins

3 March 2008

Software is Hard

When Dreaming in Code was first released, it sparked my interest, but I shelved the idea after reading a few online excerpts. Its content seemed to be a rehash of my own career experience, thus I concluded that it would be bereft of any insight. However, when author Scott Rosenberg offered a free paperback version to anybody who would post some feedback on the book, I took him up on the offer. When I returned home from attending to some errands on Saturday evening, a package was lying on a chair in my den. Within 24 hours, the content of Dreaming in Code was digested and as promised, here are my nuggets of contributory feedback.

Ostensibly, Dreaming in Code is a tale about an ill fated group of software developers and their quest to create a revolutionary personal information manager (PIM), a calendar/email software package that didn’t suck like Microsoft Outlook. Mitch Kapor, of Lotus 1-2-3 fame captained an all star development squad that Rosenberg was given access to and tracked over a period of 3+ years. Intertwined with the tale of Project Chandler, is a general glimpse at the history of software development and how paradoxically, as computing machines grow more powerful, new expressive programming languages that abstract machine instruction have flowered, the complexity of building software has not diminished and is just as difficult as it ever was.

As mentioned, as I read through Rosenberg’s account of Chandler development, it was easy to relate to my own past experience. My beginnings in the field date back to the “dinosaur days” — when I began my programming career, the department was titled “Data Processing”, not Information Technology, and my first manager still did his coding via punched cards, and was unfamiliar with the usage of a text editor — but now stretch into the 21st century where I earn a salary as a web developer. So I’ve been involved in many a software project, some successful, some not, and some that qualify as “death marches”. As I read, these are the significant thoughts culled from the material:

  • The Open Source Applications Foundation (OSAF) was staffed by some super smart minds. Kapor, creator of Lotus 1-2-3, along with heavyweights renowned from past glory at Apple and Netscape. Yet they all floundered and grew frustrated at the project pace.

  • Some of the technical architecture decisions made I found quite odd. Like picking Python, a scripting language, for developing a client application. Python makes perfect sense for a web application, server side tasks or as a package customization extension tool. For desktop software, at least at the time when the Chandler effort started, I can’t think of a single smashing success story where a scripting language was employed client side.

  • Also, from feedback elicited from developers by Rosenberg bore out that the Chandler programmers working in Python weren’t totally conversant with Python, and may have been writing Java (or other language) in Python. Consequently, they were nullifying the higher order advantages of a programming language like Python. And from my own personal history, I would never embark upon a major software construction project with lead developers not fluent in the project’s adopted language.

  • While Kapor fronted the money for Chandler, according to Rosenberg, he was very democratic about how the project direction evolved. It seemed that developers planned and plotted according to Kapor’s vision, but Kapor restrained from authoritarian edicts in lieu of an organic approach. Perhaps the project would have been better served if there was a definitive proclamation from Kapor on the form of the desired deliverable. Again, as staffers joined and departed, the project roadmap veered into the leanings and predispositions of the developer du jour. Granted, at the source code level, this is understandable, but when it applies to database platforms and other critical juncture type decisions, it’s too much twisting.

  • As Rosenberg noted, Chandler development occurred in a peculiar time window — after the dot com bust but before the Web 2.0 explosion of AJAX and cloud computing applications that Google and other wunderkind startups have been tossing our way the past few years.

  • Finally, I wonder how much of a factor of just plain “being hungry” is. While the Chandler team was devoted to their work, Rosenberg doesn’t portray them as working incredible stints of overtime and pushing hard to close the gap between releases. Not that I believe programmers should be devoid of a life and devoted 24/7 to cranking code, but it’s not unreasonable to expect stretches where the team lives and breathes code in pursuit of a milestone. In fact, looking back over past project experience, I remember fondly those periods. Sure, it’s a problem if such a state is to be sustained over more than a couple weeks, but it was a burning focus. And while I understand the idea of a software creator proving that the first time wasn’t some crazy fluke, it’s just not the same as the team of young arduous programmers working feverishly on a new startup, living off of a credit card. Or a young programmer, fresh out of school or self instructed, eager to prove his mettle.

Rosenberg is a gifted writer — as I flipped through the pages, my head was nodding in agreement. But in this case, he’s speaking to a programmer already acquainted with the questions posed. I’m not certain that the material would appeal to the non-geeky. And there is little here that is new or noteworthy. The melding of the Chandler story and the 10,000 feet overview of software construction history shortchanges some questions that I would like to see explored in greater detail:

  • Study of successful project efforts. While the majority of software build efforts are plagued by cost overruns and missed project deadlines, there are plentiful success stories. What about Paul Graham and Viaweb? Microsoft Excel? Or the modern 3D Massively Multiplayer World of Warcraft game by Blizzard. What did they do differently? How much of “success” is due to being at the right time and place?

  • Small teams vs. large teams. Yes, large teams are burdened with the exponentially growing networked relationship tallies (aka Brooks Law), but isn’t there an inherent bias in our perception, given that if a small team (or lone maverick individual) fails, it’s not likely to draw notice, whereas a large team failure is a colossal misfortune of misapplied monies, wasted personnel, etc.… And are not small teams handicapped by a knowledge gap?

  • What about the psychology of computer programmers? This topic was briefly touched upon in the book, but it’s a rich one that merits more research. Is there a special “programmer” personality? From past reading, I remember tales of how programmers were recruited back in computer infancy days — how math wizards, those with chess playing aptitude, card players, puzzle aficionados, housewives, etc.… were sought as programmer solutions. But there wasn’t a simple formula that could be employed — just that some people had a knack for it and some didn’t. Or study on how to foster harmonious relations between the programmer and the non-technical designer.

  • What set of tools are needed to close the gap? Rosenberg discusses Microsoft legend Charles Simonyi and his Intentional Programming concept, but are there more practical, incremental steps that can be taken? What is the state of educational research on this topic?