Archive for November, 2006
Tuesday, November 21st, 2006
Meme Time!
This is a list of the 50 most significant science fiction/fantasy novels, 1953-2002, according to the Science Fiction Book Club. Bold the ones you’ve read, strike-out the ones you hated, italicize those you started but never finished and put an asterisk beside the ones you loved
- The Lord of the Rings *
J.R.R. Tolkien - The Foundation Trilogy
Isaac Asimov - Dune *
Frank Herbert Stranger in a Strange Land
Robert A. Heinlein- A Wizard of Earthsea
Ursula K. Le Guin - Neuromancer
William Gibson - Childhood’s End
Arthur C. Clarke - Do Androids Dream of Electric Sheep?
Philip K. Dick - The Mists of Avalon
Marion Zimmer Bradley - Fahrenheit 451
Ray Bradbury - The Book of the New Sun
Gene Wolfe - A Canticle for Leibowitz
Walter M. Miller, Jr - The Caves of Steel
Isaac Asimov - Children of the Atom
Wilmar Shiras - Cities in Flight
James Blish - The Colour of Magic
Terry Pratchett - Dangerous Visions
edited by Harlan Ellison - Deathbird Stories
Harlan Ellison - The Demolished Man
Alfred Bester - Dhalgren
Samuel R. Delany - Dragonflight
Anne McCaffrey - Ender’s Game *
Orson Scott Card - The First Chronicles of Thomas Covenant the Unbeliever *
Stephen R. Donaldson - The Forever War
Joe Haldeman - Gateway
Frederik Pohl - Harry Potter and the Philosopher’s Stone
J.K. Rowling - The Hitchhiker’s Guide to the Galaxy *
Douglas Adams - I Am Legend
Richard Matheson - Interview with the Vampire
Anne Rice - The Left Hand of Darkness
Ursula K. Le Guin - Little, Big
John Crowley - Lord of Light
Roger Zelazny - The Man in the High Castle
Philip K. Dick - Mission of Gravity
Hal Clement - More Than Human
Theodore Sturgeon - The Rediscovery of Man
Cordwainer Smith - On the Beach
Nevil Shute - Rendezvous with Rama
Arthur C. Clarke - Ringworld
Larry Niven - Rogue Moon
Algis Budrys The Silmarillion
J.R.R. Tolkien- Slaughterhouse-5
Kurt Vonnegut - Snow Crash
Neal Stephenson - Stand on Zanzibar
John Brunner - The Stars My Destination
Alfred Bester - Starship Troopers
Robert A. Heinlein - Stormbringer *
Michael Moorcock - The Sword of Shannara
Terry Brooks - Timescape
Gregory Benford - To Your Scattered Bodies Go
Philip Jose Farmer
Tuesday, November 21st, 2006
Joel Spolsky, in his blog “Joel on Software” wrote:Dmitri Zimine has a hypothetical story of how interrupting a programmer for a two hour emergency request needed to close some sale can actually waste two weeks. “If Sarah spends just two hours thinking of her old project, she loses a day of productive work on the new one,” he says.Joel goes on to say,Agile development is supposed to be about agility. It’s supposed to mean that you can change plans quickly. It’s not supposed to be about rigid programming teams who are so slavishly devoted to their Two Week Plans that they can’t rearrange their schedule a bit to serve the needs of the customer. Dmitri’s conclusion, I’m afraid, strikes me as the very opposite of agile development. Agile is not supposed to be about swapping out one set of bureaucratic, rigid procedures for another equally rigid set of procedures that still doesn’t take customer’s needs into account.I think I’m going to file this one under “adventures in missing the point” or “All the facts? What’re those?”
I’ve never seen Joel say anything good that didnt promote his company’s bug tracking software, the consumate salesman in that regard. Agile development methodologies stand opposed to the old fashioned “waterfall” method. We all know that ____ rolls downhill, and the “waterfall method” of software development is a great example of that maxim in action. Agile development aims to take the big design up front and the long testing time at the end of the classic waterfall process and wrap them around a given sub-unit of the software; Agile methodologies attempt to bring manufacturings “Total Quality Management” processes to the software arena. Agile development will reduce, but not eliminate, the need for a dedicated testing group and therefore the number of licenses of bug tracking software that the testers would use to communicate back up the waterfall to the developers. And so, I come back around to why Joel displays a dislike for all things agile.
Why “adventures in missing the point”? Simply this: every agile project measures team velocity. After the team estimates the amount of work involved in finishing a given sub-unit of the project, that estimate is compared to the time that it actually took. Meetings, phone calls (blogging!) and other distractions will reduce the overall code-output of a developer: a given developer will never work a “perfect” day. Team velocity tracks the effects of these distraction and accounts for them when assigning work for a given iteration. The team may well be delivering a clean build that brings business value to the customer every 2 weeks, but their velocity will allow for a certain amount of “emergency” items to slide into place as they move along. If Joel knew agile development instead of simply attacking it, he’d have recognized this fact.



