inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #0 of 95: virtual community or butter? (bumbaugh) Mon 19 Feb 07 07:42
permalink #0 of 95: virtual community or butter? (bumbaugh) Mon 19 Feb 07 07:42
The Inkwell is pleased to welcome longtime Well member, Scott Rosenberg. Scott Rosenberg is a writer and editor who cofounded Salon in 1995 and is the author of "Dreaming in Code" (Crown, 2007). He served as Salon's first technology editor, became managing editor in 1999 and served in that position through 2004. In 2005 he took a leave to write "Dreaming in Code" and returned to the company in 2006 as vice president for new projects. Before Salon he worked as a critic for the San Francisco Examiner for a decade, first as its lead theater critic (his work won the George Jean Nathan Award in 1989), then lead movie critic, and finally digital culture columnist. Before joining the Examiner he wrote theater, movie and book reviews for the Boston Phoenix. Christian Crumlish, who will lead the discussion with Scott, has been analyzing application interfaces since 1987, writing about the social implications of technology since 1992, and developing interactive experiences since 1994. He is the curator of the Yahoo! pattern library and he currently serves on the board of directors of the Information Architecture Institute. He has consulted with startups and Fortune 500 companies, including FedEx, Kodak, Visa, Sprint, Charles Schwab, Safeway, Sun, SanDisk, BEA, HTC, Aramark, MediaMelon, Syklist, and GoFish. He is the author of, most recently, The Power of Many: How the Living Web is Transforming Politics, Business, and Everday Life. Christian earned his bachelor of arts in philosophy from Princeton University in 1986. He is the host of the Blog conference on The Well, contributes to You're It! a blog on tagging, and presents other slivers of his identity in blog form at X- POLLEN. He lives in Oakland, California with his fiancée, Briggs, and his cat, Fraidy. What's up, you two?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #1 of 95: Christian Crumlish (xian) Mon 19 Feb 07 10:48
permalink #1 of 95: Christian Crumlish (xian) Mon 19 Feb 07 10:48
Hey, Scott! I know this book was several years in the making. (I remember when you announced on your Salon blog that you were taking a sort of sabbatical to research a book.) I'd love to start off with the genesis of the project: What was the original inspiration for the book? How did you pitch it to your agent? How did the book's concept evolve over time (if it did)? At what point in the project did the title occur to you? At what point in the writing did you feel like you knew what the lesson, or moral, or meaning of the book was turning out to be?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #2 of 95: Clamping down on the internets (scottros) Mon 19 Feb 07 20:34
permalink #2 of 95: Clamping down on the internets (scottros) Mon 19 Feb 07 20:34
Five questions in one! I'll try to work my way through, one post per question. First, though, let me just kvell a bit over my own trajectory here. I got my first real online experience on the Well 15, 16, 17 (?) years ago, reading lines of type slowly scrolling at 300 baud. So being here talking with folks about my first book -- it's good. Thanks to inkwell and to everyone at the Well for inviting me to do this. DREAMING IN CODE started, as I describe in the introduction, with my experience as one of the managers of Salon's initially ill-fated redesign project that launched in May 2000. It was the height of the bubble (in retrospect, it was clear that the bust was just beginning as we were struggling to deploy our project, in fact). We made the mistake of tying a total overhaul of Salon's design to a total revamp of its content management software, and then tying all that to several major business initiatives that had calendar deadlines. And the whole thing turned out to be a disaster on launch (though, after several weeks' chaos, we began to clear the rubble and ended up with a perfectly good content management system that we're still using today!). I'd become a father of twin boys six months before, so my memories of that era are filtered through a haze of vague euphoria cut with massive amounts of sleep deprivation. But I definitely felt stunned and bruised by my software-disaster initation: How could this happen? I figured I was just a writer, ignorant of the actual practice of software development and surrounded by people who were talented but green; so I did what I've always done in such situations -- I hit the books. I went and read Frederick Brooks' THE MYTHICAL MAN-MONTH and had the little epiphany that the kind of endless-delays-leading-to-train-wreck-deployment experience I'd been through was what people in the software field had been experiencing at least since Brooks' day, at IBM in the '60s. Even though there were plenty of mistakes we'd made out of our own ignorance and inexperience, knowledgeable veterans hadn't licked the problem, either. I'd toyed for years with the idea of some kind of book about programming and language -- I had a whole folder of code snippets in different languages, I'd been imagining something very artsy and fun but theoretical. But this problem struck me as a better book idea. I didn't want to write a how-to book (plenty of good ones out there already), and I'd always aimed my technology writing at the overlap between the circles of interested outsiders and generalist insiders. Even though most of my journalism has been criticism and columns, for a book I felt that the best approach would be a good old-fashioned narrative spine, cut with more essay-like background material. My initial thought was, I'd go find a half dozen projects and tell their stories and weave the narratives together creatively and use all that material as a way to look at why software is so hard, and what avenues people are pursuing today to make things easier. Around that time -- this would be fall 2002 -- Mitch Kapor announced the Chandler project: open-source, cross-platform, peer-to-peer, free-form personal information management. I'd long been interested in the whole PIM field, I'd written several Salon columns about it. I'd never met Kapor but I knew and admired his work. I thought, perfect, this will be my first project. Kapor was cautious at first but basically open. Once I started following the work on Chandler, in early 2003, I realized how insane my six-projects-in-one concept was: Too Much Information. One project was already pushing my limits. Multiple projects would be too much even for me to get my head around, let alone ask a reader to follow. And Chandler seemed like it had it all: an interesting cast of characters (with names at least some potential readers would have heard of, like Kapor, Andy Hertzfeld and Lou Montulli), an interesting problem to solve, an ambitious set of goals. I felt confident I could use it to get at most of what I wanted to get at. I was up front with Kapor and the rest of the people at the Open Source Applications Foundation about the change, and I think by then they'd seen enough of me to feel they could trust me to tell their story fairly. This was spring 2003, when the Iraq invasion was unfolding, so the joke became that I was an "embedded journalist" in the software team. I'm afraid that in retrospect it's a bitter joke, because both the Iraq fiasco and the Chandler project dragged on years longer than anyone expected or planned. But fortunately the parallel does finally collapse, since, as of today, unlike the U.S. adventure in Iraq, Chandler at least still holds the potential for a positive outcome. OK, that's a full essay just to answer the first question. I'll tackle the others more concisely in a next post...
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #3 of 95: Christian Crumlish (xian) Mon 19 Feb 07 22:53
permalink #3 of 95: Christian Crumlish (xian) Mon 19 Feb 07 22:53
go long if you like!
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #4 of 95: Scott Rosenberg (scottros) Tue 20 Feb 07 10:56
permalink #4 of 95: Scott Rosenberg (scottros) Tue 20 Feb 07 10:56
That's a dangerous invitation :-) As far as pitching it to my agent: this was 2003, in the trough between the bust of the old Web bubble and the rise of the new Google-fueled Web economy. So at that time the New York media world, of which book publishing is a subcategory, was pretty down on technology and technology books. I had to make a case that seemed transparently obvious to me -- that software runs our world and its problems are our problems. The good news is, my agent was (and is) both thoughtful and patient, and I worked for probably six months on the proposal -- first by myself and then with him. We didn't take it to publishers until around March 2004. The evolution of the concept I think I covered above. Once we had the proposal I really stuck close to it: I would tell a tale (about Chandler) to try to answer a question (why is it so hard to make software well?). I conceived of the title very early on, even before I connected with the Chandler project. It just seemed a great, pregnant phrase; it contains multiple meanings -- a dream communicated or expressed via code; the actual experience some programmers have of seeing computer code in their dreams; "dreaming" as thinking bold new thoughts and "dreaming" as the opposite of acting in a concrete way. The subtitle, on the other hand, took forever to nail down. I originally wanted something simple and declarative, like "Dreaming in Code: Why Software is Hard." But wiser heads -- mostly, that of my wonderfully talented editor, Rachel Klayman -- prevailed on me to use the subtitle to communicate to people that the book indeed tells a story, of people struggling with technology. One day I was idly scrolling through my RSS feeds and I noticed the title of Julie Powell's book, JULIE AND JULIA -- she was a blogger in the old Salon blogs program who'd cooked her way through Julia Child's cookbook, and turned that saga into a book. Powell's subtitle was "365 Days, 524 Recipes, 1 Tiny Apartment Kitchen," and that inspired me -- so thank you, Julie! (Only now I notice they've actually changed her subtitle for the paperback edition, to "My Year of Cooking Dangerously.") It just took a little time to fine tune the details to end up with "Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software." I document and explain those numbers in the book's endnotes, which are all online over at http://www.dreamingincode.com/endnotes/ To the last question, at what point I felt like I knew the "lesson, moral or meaning" of the book: For me, that's a more challenging question than it seems. I've spent most of my writing career as a critic and a columnist. I'm used to trying to derive lessons and meanings in 1000 words, and I think at times I've been pretty good at that. But for this -- my first book after two decades of full-time professional writing! -- I really wanted to do something different. The nonfiction narratives (and indeed the fictional narratives) that I admire most deliver their stories without any pronounced underscoring of "lesson, moral or meaning." The story stands as what it is and the readers come to their own conclusions. Of course the story's shape will point people more in one direction than another; but there's always room for multiple interpretations. That's what I hoped to achieve with DREAMING IN CODE: I wanted the story to illuminate a certain abstruse realm of human creativity, and I intended to leave room for different readers to draw different conclusions. Of course there are some broad and relatively obvious points: it's likely, for instance, that most readers of my book will conclude that one should be careful about starting a software project with too broad and vague a set of ambitions. But I'm finding, happily, that readers are identifying all sorts of other, less obvious, and sometimes conflicting, lessons in my text. That makes me smile; it tells me I might have managed to write something more complex than a 1000-word essay or column, something that might be worth a reader's twenty bucks. Of course it could also mean I just wasn't clear. But I'm optimistic that this is the valuable and interesting species of ambiguity, not the kind that just leaves you scratching your head.
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #5 of 95: Christian Crumlish (xian) Tue 20 Feb 07 15:34
permalink #5 of 95: Christian Crumlish (xian) Tue 20 Feb 07 15:34
That's a great answer. I think that is one of the rewards of longer-form writing, that the work makes its own connections in your readers' minds. You do not have to consciously explicitly place each nugget of goodness there for them to find. I asked about when you discovered the meaning not so much to reduce things to a moral but out of sense of curiosity about how the story hung together for you in the writing. By analogy to the only nonfiction book I've written (not counting how-to/manual type stuff), I completed a first draft before I really knew what the point of the thing was. Then I went back and rewrote it with those insights in mind. We were actually starting our books around the same time and I remember being envious that you had more time for yours (mine needed to be out before the 2004 election). But enough about me... Re the title, I think all those potential meanings come across, though for me the dominant one is the idea of a programmer working so hard that he (or she) is seeing code in their dreams, like the way one used to see tetris in the rivers of white space on a book page or on one's eyelids when falling asleep. Anyway, you've assiduously caught up with me, so I can no longer coast on my original spate of questions. So now I'll steal a question from our host Bruce. He said, "I'm struck by the interweaving of a more-or-less general theory of software development in amongst the OSAF and other test cases. It's in the end, a very rich book for this," and Scott I know that some readers have suggested that Chandler is such a special case that you can't generalize from it, or Chandler has failed so it's not a good case study, and so on Is there more to this story than "what happened to Chandler"?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #6 of 95: Paulina Borsook (loris) Tue 20 Feb 07 18:46
permalink #6 of 95: Paulina Borsook (loris) Tue 20 Feb 07 18:46
scott, when i heard you were working on this project, i immediately thot of 'the soul of a new machine' and 'the inmates have taken over the asylum'. did you read these are part of yr prepwork for the project? or avoid them, so as not to contaminate your own vision?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #7 of 95: Scott Rosenberg (scottros) Tue 20 Feb 07 19:59
permalink #7 of 95: Scott Rosenberg (scottros) Tue 20 Feb 07 19:59
[Paulina slipped while I was answering Christian, so I'll return to her question, but first, answering post 5, " Is there more to this story than 'what happened to Chandler'?"....] I certainly hope so! It's funny, I always knew that trying to do *two* things at once in the book -- tell a story AND answer a question -- was a risk. If I didn't play it right, it would just be a mess. And even if I did pull it off, inevitably the readers who loved the story might be bummed that I was departing from it to explore some history or background or theoretical question; and the readers who loved the history and the theory and the quest for answers might find the story a distraction. That Bruce and others have found the result rich tells me that there's some group, at least, for whom I hit a good balance. You know, even though this was my first book, I've been writing all my life, I'm 47 now (I was 44 when I got the book deal), and I was determined, at this stage of my game, to attempt something difficult -- not for stunt value, but to hold my interest and, I hope, a reader's. So it was always "more than just Chandler." The book is structured around each phase of the work at OSAF that I observed -- from choosing a programming language and toolset to building a back-end to designing an interface to figuring out how to manage the team and schedule the work, and so on. I tell the story of what happened at OSAF and then dive into the "more than" stuff: the history of that activity, some examples of other approaches, ideas people have had to solve that piece of the problem (and why those ideas have or haven't changed things for the better), and so on. In my chapter on reuse, for instance, I have a long discussion of the dream of a "Universal Snap-In Software Kit," exemplified in the work of Brad Cox, and I ponder why it is that software developers often seem to prefer to write new code from scratch. Or in my chapter on programming languages, I discuss the rivalry between the Perl and Python camps, with reference to the different personalities of those languages' inventors, and I use that as a way in to the whole programming-language-as-religion thing. I wanted the book to be an accurate and entertaining portrait of programming culture. Who are the people building the stuff our civilization runs on, and what are they like? Chandler gave me tons of great opportunities to go down those side paths. I have to say, there aren't too many actual readers of DREAMING IN CODE who've suggested that Chandler is too special a case to generalize from, etc. There's certainly a lot of comment out there on Slashdot and such from people who *haven't* read the book who just dismiss the OSAF team as a bunch of fools. But those who've read the book, I think, see that the Chandler developers are, for instance, wrestling almost from day one with the question of whether the client-based approach (their original choice) or a web-based application would be the best route. They were totally aware of these issues and grappling with them throughout. You can certainly criticize some of the decisions they made, but I don't think anyone can write off their story as irrelevant, simply because thy had so many problems. And, as I repeat whenever I get the opportunity, while Chandler is certainly not a success as of this moment, I don't believe it can or should be written off as a failure -- anymore than Mozilla should have been written off as a failure in the pre-Firefox days. It would have made a more conventionally "good" book if I had a story of triumph to tell. I think that's what a somewhat cranky reviewer in the Financial Times wanted: a code-slinging "Rocky" of some kind. For me, though, the difficulty and the incompleteness of the Chandler story -- while maybe less satisfying for the reader seeking a traditional payoff ending -- ended up being apt and true to the subject. Projects have problems. They take longer than planned. They face tough choices about scaling back their ambitions. This isn't atypical. This is the norm. This is reality. And I've always clung to the belief that reality is interesting. Trying to portray reality is worth one's time.
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #8 of 95: Scott Rosenberg (scottros) Tue 20 Feb 07 20:08
permalink #8 of 95: Scott Rosenberg (scottros) Tue 20 Feb 07 20:08
As for Paulina's question: "The Soul of a New Machine" certainly hangs over my project as an inspiration and something of a problem. An inspiration simply because it's such a great book, it's still fun to read, it introduced a whole generation to the idea that the story of computing is worthy of attention, it's not just plumbing, it's smart people struggling with difficult creative problems. A problem because, you know, Tracy Kidder basically lived with the people he wrote about, and he told the story in a kind of personal way that I was never going to be able to achieve here. So if people were expecting that from DREAMING IN CODE I was going to disappoint them. Also, it's 25 years later, our whole relationship to computing is way different now -- it's not a strange new world for us to be introduced to, it's part of our lives, and we know it as a tangle of problems that are *our* problems, too, not just strange dilemmas facing somewhat strange guys at companies in places like Route 128 and Silicon Valley. Anyway, yes, I reread THE SOUL OF A NEW MACHINE in 2001 or 2002 as my book was gestating in my brain, and then put it down and didn't look at it again. Alan Cooper's THE INMATES HAVE TAKEN OVER THE ASYLUM is a wonderful rant that I refer to in a couple of places in DREAMING IN CODE -- so yes, I read it, too. It's a great argument about the problems with software, and I went and had a great interview with Cooper after reading the book, but I found his argument difficult to connect with my narrative, and I tucked the interview away for possible later use. I'd still like to see if I can turn it into a separate Salon piece. He's got some fascinating insights, but I just couldn't figure out how to get them into my book, and I figured he'd already had the chance to present his perspective at book length!
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #9 of 95: Paulina Borsook (loris) Tue 20 Feb 07 22:09
permalink #9 of 95: Paulina Borsook (loris) Tue 20 Feb 07 22:09
yeah, i always thot kidder's book was interesting for some inobvious ways: - how do you write about technical stuff and make it interesting without heroizing everyone and making them larger than life? (the FT 'rocky' problem you refer to). i think kidder is guilty of this, but it makes for entertaining reading - and, if i remember correctly (i read that book LO so many yrs ago), the final product wasnt some amazing paradigm-smashing thing --- and DG is obviously not around any more. so, in its way, not that different from chandler. but kidder sort of cheater by making us fall in love with his team and their challenges... scott, are you noticing a difference between how the non-technical community vs the technical community is responding to your book?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #10 of 95: Christian Crumlish (xian) Wed 21 Feb 07 08:00
permalink #10 of 95: Christian Crumlish (xian) Wed 21 Feb 07 08:00
I love the digressions in the book, btw. The analogy may be strained but in an odd way they remind me of Moby-Dick, with its tangents on ropes, sailing, whales, weather, and so on. Early on in reading the book I had a moment of delight when I realized that you were systematically explaining most of the shared "folkways" of computer geeks, if I can call them that. After years in the geek blogging world I was aware that most of these metaphors and ideas and memes were commonplace among alpha nerds but completely greek to ordinary people. Here I feel like you have opened up an fascinating world to outsiders by explaining these things in humane terms. One thing that can make that sort of task difficult is the fact that once you learn something it's easy to forget what it was like before you knew it, or to empathize with people who have not yet heard of or internalized it. Teachers have to deal with this all the time. Was that a challenge for you, discovering the fascinating edge between what you knew and what your readers might not?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #11 of 95: Cynthia Dyer-Bennet (cdb) Wed 21 Feb 07 09:17
permalink #11 of 95: Cynthia Dyer-Bennet (cdb) Wed 21 Feb 07 09:17
(NOTE: Offsite readers with questions or comments may send them to <inkwell@well.com> to have them added to this conversation)
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #12 of 95: Scott Rosenberg (scottros) Wed 21 Feb 07 09:43
permalink #12 of 95: Scott Rosenberg (scottros) Wed 21 Feb 07 09:43
Paulina asked above about the difference between responses from technical and non-technical readers: Since the book has been out under a month now, most of the reactions to date are from the former. My hope of course is that over time the book will find its way to more of the latter. Technically-oriented readers are my early adopters, though! Inevitably among them there is a range of reaction, with a significant number of people who -- understandably -- are looking for answers, guidance, bullet-points or "take-aways." And DREAMING IN CODE is probably frustrating to them. I'm hoping that at least some will come looking for quick fixes but go away with a richer or more subtle understanding of their field. My dream for the book is that developers might read it and feel that their work has been represented faithfully and entertainingly enough that they might want to hand it to a relative or friend and say, "Here, read this if you want to understand what I do all day" -- or, "If you want to know why you sometimes see smoke rising from my forehead, this might help." Christian, I'm delighted that you mentioned "Moby Dick." No, I don't think Mitch Kapor is an Ahabic figure, he's quite the opposite in leadership style. But in mixing up storytelling and descriptive material I definitely had that model in mind. And I loved Melville's chapters on whaling at least as much as the ones that furthered his tale. In my English studies we called this the "encyclopedic narrative." It actually goes back to the epic poetry tradition. (Attentive readers will notice that I begin the book *in medias res*.) This is what I told Jim Fallows when he asked me (while talking to me about a piece he was writing about Chandler) whether DREAMING IN CODE was comedy or tragedy. I puzzled for a minute, then said, "Neither -- it's an epic!"
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #13 of 95: Scott Rosenberg (scottros) Wed 21 Feb 07 09:51
permalink #13 of 95: Scott Rosenberg (scottros) Wed 21 Feb 07 09:51
> Was that a challenge for you, discovering the fascinating edge between what you knew and what your readers might not? Definitely a challenge to make sure that my immersion in all things Web, which has been total since late 1994, didn't make it impossible for me to see things about software and the programming field through the eyes of someone to whom it was all new. Hard to know if I succeeded there -- I'll need to see how readers react. I do have a lot of experience, going all the way back to my Examiner days -- where, as I recall, I started out having to define the World Wide Web as "the graphical portion of the open global Internet" each time I mentioned it -- at introducing complex technical subjects to a wider audience. I've always tried to do so accurately but without talking down to people or simplifying to the point of meaninglessness. One problem I found in reading popular accounts of programming was that the resort to metaphor was sometimes so total that it crowded out actual understanding of the thing the metaphor was supposed to explain. We've seen this in writing about technology with stuff like "information superhighway." In descriptions of programming, you'd get people using construction metaphors and transportation metaphors and sometimes they'd get so elaborate they'd take on a life of their own and become distracting rather than illuminating. Of course if you're Neal Stephenson ("In the Beginning Was the Command Line") you can pull off as elaborate a metaphor as you want...
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #14 of 95: Ari Davidow (ari) Wed 21 Feb 07 10:03
permalink #14 of 95: Ari Davidow (ari) Wed 21 Feb 07 10:03
I've been looking forward to getting a copy of this book for quite some time, and this discussion makes me even more eager. One of the questions that comes up for me is whether the Chandler situation is similar to many humongous projects that never yield results. I'm thinking in particular of two Apple-IBM collaborations from about 10 years ago that churned through ungodly amounts of time and resources and were eventually dropped, or for that matter, the related issue of Apple's next version OS before Jobs came back and they purchased Next and just adopted that. So, are there generalizations out there? Say, if you try to solve to many problems at once you most likely end up solving none?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #15 of 95: Christian Crumlish (xian) Wed 21 Feb 07 11:12
permalink #15 of 95: Christian Crumlish (xian) Wed 21 Feb 07 11:12
So what did you learn from watching the Chandler team struggle with their grand vision? What surprised you? What expectations did you have going in and were they met or confounded?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #16 of 95: Scott Rosenberg (scottros) Wed 21 Feb 07 12:21
permalink #16 of 95: Scott Rosenberg (scottros) Wed 21 Feb 07 12:21
Ari, I think there are some big differences between Chandler and projects like the Apple/IBM/Taligent/Kaleida stuff (which was very much related to the effort to upgrade or replace the old Mac OS). With the latter, before you even begin to get to the technical and design issues, you had to face the fact that you had two big companies trying to steer the same boat, and their interests and cultures and wishes were inevitably going to clash. Paralysis ho! The Chandler team included some veterans of those efforts, in fact. Chandler has a single chief funder and a single project leader/visionary, so it doesn't face that sort of dual loyalty trouble. But for sure, the larger point is, be extremely careful with your ambitions. At one point in DREAMING IN CODE I quote Linus Torvalds' argument that one should never ever set out to solve a big problem or set of problems -- always start small, he advises. That's certainly one way to avoid trouble, but it's extremely difficult advice for smart, ambitious people to take! Christian, I went in without too many expectations, beyond the simple one of assuming that I was going to be observing talented, experienced people trying to do something interesting, where the outcome was not at all predetermined. I very consciously said to myself, at the start of my work, "Don't write the ending in advance!" You know, I've always been a deadline writer -- I used to write overnight theater reviews, where I had 2-3 hours to try to analyze some new play, judge the production and entertain my readers, and do that all to fit a certain number of column-inches that had been chosen *before I'd seen the play.* Under such conditions you develop a habit of thinking ahead -- how am I going to end this piece? where am I aiming the arrow of my lead so that the motion will carry me through to where I want to be at the end? Writing a book for the first time, I told myself, don't do that! You've got the opportunity, finally, to witness a story and watch it unfold without imposing an order or framework on it too early. Of course eventually that's what a writer has to do, but I was determined to wait as long as possible. If I was surprised at anything as I watched the work at OSAF, it was how this group of developers ended up reinventing and renegotiating so much of the process of their teamwork. I realized that software development is often like the movie industry in this regard. Unless you're at a place like Microsoft with its own vast army of developers and its own internal traditions of project management and team coordination, software development is remarkably like the movie industry: Trained, experienced people hop from project to project (or startup to startup), bringing their own ideas of best practices with them, and at the beginning of a project, there's a lot of work to be done just feeling out stuff like, how exactly are we going to collaborate? how do decisions get made? how are we going to measure our progress? who takes responsibility if progress isn't happening? So I think that any time you have a team that already shares an understanding of this stuff -- whether through corporate tradition or community-building or simply because the individuals have worked together before -- you're way ahead of the game.
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #17 of 95: Paul Bissex (biscuit) Wed 21 Feb 07 19:33
permalink #17 of 95: Paul Bissex (biscuit) Wed 21 Feb 07 19:33
Hi Scott, hello all. I just finished the book this week, but like Christian I've actually been looking forward to it for many years. In those years my own mix of work has involved more and more programming (and more and more Python, specifically), and the book touches on so many things I've thought about both as a programmer and as a writer that it's hard to know where to start. One thing I appreciated was that you didn't pre-empt earlier parts of your story based on later developments. Naturally, as I sat here in 2007 reading about OSAF's 2002/2003 plans to make a networked PIM, I thought, "They're not doing this on the web! They're doomed! Why isn't he talking about that?" You do talk about it, of course, but later, after walking us through those days when Ajax was a character in the Iliad, not a web technology. How hard was that to do? And if Chandler had met great success with a 1.0 release during the time you were writing, how might those early chapters -- presuming they covered roughly the same period in both our universe and the Chandler-wins alternative universe I'm positing -- have been different?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #18 of 95: Lena M. Diethelm (lendie) Wed 21 Feb 07 22:39
permalink #18 of 95: Lena M. Diethelm (lendie) Wed 21 Feb 07 22:39
Scott, your book was a great read for this non-programmer. I've got <lee> reading it as well but not sure if he'll make it to this discussion.
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #19 of 95: Ludo, Ergo Sum (robertflink) Thu 22 Feb 07 05:41
permalink #19 of 95: Ludo, Ergo Sum (robertflink) Thu 22 Feb 07 05:41
>At one point in DREAMING IN CODE I quote Linus Torvalds' argument that one should never ever set out to solve a big problem or set of problems -- always start small, he advises. That's certainly one way to avoid trouble, but it's extremely difficult advice for smart, ambitious people to take! What? and end history as we know it!! We need to keep smart, ambitious people busy with something or else we will really be in trouble. (Then, again, there were those signers of the Declaration of Independence. A fluke, maybe?)
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #20 of 95: Scott Rosenberg (scottros) Thu 22 Feb 07 08:52
permalink #20 of 95: Scott Rosenberg (scottros) Thu 22 Feb 07 08:52
Maybe. But if the signers of the Declaration of Independence had been programmers, it's possible that they might have gotten bogged down figuring out which programming language to use, which version control system and bug-tracker to adopt, and what framework to employ! Torvalds' advice is not necessarily one size fits all human endeavor; it's a caution in a particular field where big ambitions too often lead into a bog. Lendie: Thanks for the non-programmer accolade. I'm going to keep accumulating that sort of data :-) Paul: The whole "web app or not?" question as it relates to Chandler is fascinating; it could be a whole book in itself. I tried hard not to let hindsight govern the telling of the story; that would not only be unfair but, I think, less interesting. The bigger question for Chandler, and indeed all of us in the field, is whether the shift to Web applications -- which I'm a full believer in, and which I think is well underway and pretty much unstoppable -- is a somehow irreversible transformation, or whether it's simply a particularly violent swing of the client-or-server-side pendulum. The whole industry has cycled several times through periods when the orthodoxy was "do as much as you can in the client" to other periods when it flipped the other way. We have some very strong incentives today to do as much as possible in the browser. That's playing out now. But I do think at some point we're going to say, "OK, this is great, but what have we given up?" For instance, as I say in the book, I use Ecco as my PIM. One of the things that I love and simply can't give up (yet) is its fluid outlining, where you can pretty much just start typing anywhere in the interface. (Sort of like a spreadsheet.) Web-based PIMS have come a long way just in the time DREAMING IN CODE took to write (I was playing last night with Tiddlywiki -- that's a strange and fascinating warping of wiki editing and outlining!), but none of them can yet take in my data as effortlessly as Ecco does. Either we'll find ways to push Web apps further and further in that direction -- until they resemble client-side apps so fully that the difference becomes meaningless to the user -- or at some point we'll stop and say, "Hey, maybe a system that lets me work on the same data in a browser AND in a client is the best approach." (Gmail hooked into POP, which is how a lot of people I know use it, is one version of this.) And, you know, that's exactly what Chandler is now closing in on. Sometimes in the software world (and that of hardware, too, for that matter), if you miss your mark and come in to a market late, you're screwed. But if you fall *really* far behind, you turn out to be just in time for the next turn of the wheel. In a way that happened with Firefox; a Firefox in 2002 might've had a hard time. But it came along right at the moment when developers were starting to rely more on Javascript-y magic and AJAX and those things dovetailed with Firefox in a way that IE still has a hard time matching. So Firefox's "lateness" turned out to be a plus. In the same way, I think it's *possible* Chandler's rich-client with Web interface approach could fill a niche that no one even imagined in 2002 or 2003.
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #21 of 95: Lena M. Diethelm (lendie) Thu 22 Feb 07 14:49
permalink #21 of 95: Lena M. Diethelm (lendie) Thu 22 Feb 07 14:49
It's always interesting when there is 1 master (Kapor) and 1 funder (Kapor) vs. ventures that have to seek funding and are more fluid in the top most leadership. There were moments in reading DiC in which I began to think about Ted Nelson & Xanadu not so much because they are alike but because Chandler has had such a permeable time frame. Obviously Mitch & Ted are practically opposite personalities yet it's clear they both have specific passions they want to see realized. What do you think can keep Chandler from becoming Xanadu?
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #22 of 95: Paul Bissex (biscuit) Thu 22 Feb 07 17:03
permalink #22 of 95: Paul Bissex (biscuit) Thu 22 Feb 07 17:03
(Not to step on Lena's question, but Scott, I wanted to let you know that your book also inspired me to revisit other books on software -- on my desk now I've got _The Mythical Man-Month_, _The Pragmatic Programmer_, and Knuth's _Literate Programming_.)
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #23 of 95: virtual community or butter? (bumbaugh) Fri 23 Feb 07 08:59
permalink #23 of 95: virtual community or butter? (bumbaugh) Fri 23 Feb 07 08:59
I, too, have been looking over some of those things -- prompted by Scott's book club kind of thing. (Which I'd say more concerning if I were willing to go find a url right now, but about which perhaps Scott will speak and save me the trouble.) Two reminders, in my hostly role: o for more about our guest author, or to buy the book in order to join in, please visit http://www.well.com/conf/inkwell.vue/ o questions or comments from off-site readers may be e-mailed to inkwell@well.com for us to post here
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #24 of 95: Scott Rosenberg (scottros) Fri 23 Feb 07 12:41
permalink #24 of 95: Scott Rosenberg (scottros) Fri 23 Feb 07 12:41
It's great to hear that I've sent some developers back to their history! There's a lot there. The book club thing Bruce refers to is called Code Reads, on my personal blog at http://www.wordyard.com/category/code-reads/. It has been sadly neglected for several weeks because of the book launch but I intend to return to it very soon, hopefully even this weekend or early next week. It's less book-focused than article-focused, because it seems understandably easier to get people to read a shorter article than an entire book. As for Lendie's question about Xanadu: My memory of that project is a little dim, it's been years since I heard Ted Nelson talk about it, but my understanding is that he has always had a vision for a particular kind of hypertext environment that is in some ways richer and more complex than the Web (for instance, links are two-way), but that he's never been able to get past the chicken/egg problem of either (a) developing something compelling enough that people flock to it or (b) getting enough people to flock to something that's only partway there that the vision gets carried along by the flock. Chandler's issues have been quite different; I think Kapor is much more of a pragmatist, he understands what's needed to spark an adoption cycle, he just has yet to get Chandler close enough to that point. (This spring's release will be the next significant test.) The history of the Web's success vs. Xanadu suggests that people will gladly embrace a "just good enough" solution to a problem if it's easy enough and accessible enough and lets them play. When I saw the Web through Mosaic in summer of 1994 I didn't think, "Wow, that's great software," because, you know, it was pretty clunky at that point; I thought, "Wow, I can build my own page!," and then I thought, "If I can do it, tons of other people will too, and that will be even more fun." And that made learning HTML seem worth the (not so huge) time investment. So the lesson for software projects might be, show people how they can do something new and fun or useful, make it accessible, don't even think about making it perfect. The Web itself turns out to be a great platform for developing software that way, and that's one reason Web-based applications are so popular today.
inkwell.vue.293
:
Scott Rosenberg, Dreaming in Code
permalink #25 of 95: Christian Crumlish (xian) Fri 23 Feb 07 18:38
permalink #25 of 95: Christian Crumlish (xian) Fri 23 Feb 07 18:38
I'd like to ask you to talk a bit about the GTD (Getting Things Done) personal task / project / productivity system. I was just talking to someone yesterday about how there's a bit of a geek cult around this book and its methods....
Members: Enter the conference to participate. All posts made in this conference are world-readable.