Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Programming Books Media Book Reviews IT Technology

The Bug 273

Trevor Stow writes with the review below of Ellen Ullman's The Bug. "The Bug is about a programmer, Ethan Levin, at a software start-up in the mid-1980s, tracking down one particularly irksome bug in his own C code. The longer this bug eludes Ethan, which his co-workers start calling the 'The Jester,' the more destructive its effects on his personal life. The Jester is this story's villain, one that can't talk, eat, get tired, or be reasoned with." Read on for the rest of Trevor's review.
The Bug
author Ellen Ullman
pages 368
publisher Doubleday
rating 8.5
reviewer Trevor Stow
ISBN 0385508603
summary A programmer 's life unravels as he struggles to find a bug.

In fact, The Jester seems to have an impish intelligence of its own, laying dormant for weeks somewhere deep in the libraries of the company's ground-breakingly new GUI front end. When it does surface, it's usually during a sales presentation, causing a complete system failure: garbage on the screen, frozen keyboard. It's enough to frighten any and every potential customer. For a start-up still living on venture capital funding, this is a bad thing.

As if the stakes weren't high enough, our hero, Ethan, isn't exactly a well-rounded Renaissance Man. He has a single friend at the office, and they barely talk. Otherwise, Ethan is irritable, distant, and often loses himself in his own logic-gated thoughts. He suffers moments of mild panic where he doubts his own competency and frets over not having an advanced degree. Plus, his fellow coders are a petty, snide-commenting bunch; meetings degrade into profanity-laden shouting matches, passing the blame, etc, all of which spurs Ethan to work harder. He autopilots through dinner while reading a Unix manual, works from home, and falls asleep in his clothes.

None of this leaves room for Ethan's girlfriend, Joanna. At the story's beginning, she goes to India for a month with her male friend Paul. Ethan can't go, citing the importance of his work. Paul's wife can't go either. We see where that's heading.

Ethan's life begins to unravel. He associates his personal problems with The Jester. Once that damn bug's squashed, he tells himself, the rest of his life will stabilize into some happier space.

The story's narrator is Roberta, who speaks to us from the early 2000s, remembering her job as the QA tester who worked most closely with Ethan. Roberta does have an advanced degree, in linguistics, but jobs in academia are scarce, and what else do you do with a degree in linguistics? At first, Roberta dismisses the programmers as a gruff, dismissive pack of dorks, just as they dismiss her because she can't code. A frosty wall separates the two sides of the product development team: those who write the bugs, and those who find them. In her evenings, Roberta composes poetry and suffers her own anxiety over abandoning a higher education for a plain job in IT.

Eventually, though, Roberta learns to program in C, and that's where The Bug shines brightest, touching on some sparkling insights: the nature of life, the nature of time, the cold beauty of code, and ourselves, living side-by-side with computers that are not, alas, alive. Stuff that will stick with you.

However...

I was disappointed with the book's end. If you program for a living (as I do), you will see parts of yourself in Ethan. But hopefully, you aren't Ethan. Even if you have no friends, no girlfriend, nothing, you still might play video games or watch TV or something (read?). Ethan, it seems, makes no effort to find even brief happiness. His life is joyless. And that's probably why I didn't like the ending. The book builds so well, keeps a quick pace, with smart dialog, rich characters, suspense, and very high stakes: I felt the pay-off could have -- should have -- been much grander.

Ellen Ullman, who also wrote Close to the Machine, was a programmer in the 80s. I caught her interview on NPR, where she explained that Ethan's story and The Jester were very loosely based on her own pursuit of a bug while working at Sybase.

You'll probably enjoy The Bug, even if you don't like computers and write poetry for a living. It's adult fiction and feels contemporary without trying to be 'zany' or 'hypercharged.' It's not a funny book, but rather a calm, wise walk into unexplored story matter, with lots of interesting bits to think about.


You can purchase the The Bug from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

This discussion has been archived. No new comments can be posted.

The Bug

Comments Filter:
  • by Anonymous Coward on Monday June 30, 2003 @01:02PM (#6331848)
    At that frazzle point the guy would have either contacted the local gdb guru,just rewritten the damn thing, or documented it as a known issue and blame it on hardware.
    • by Scurrility Extempore ( 685637 ) on Monday June 30, 2003 @01:05PM (#6331879)
      ...documented it as a known issue and blame it on hardware. You work for Microsoft, don't you?
    • by botzi ( 673768 ) on Monday June 30, 2003 @01:24PM (#6332031)
      ...or documented it as a known issue and blame it on hardware.

      Yeeeah.... I can see it:
      <from the doc>
      ...there's a nasty bug with the GUI, but stay calm, it only represents itself when you're using a monitor, as long as any terminal of any type isn't connected to the PC, it won't bother you....
      </from the doc>

    • by Frymaster ( 171343 ) on Monday June 30, 2003 @01:39PM (#6332153) Homepage Journal
      if you have debuggery problems like this, you should meditate on my maxims and arrows

      debuggery - maxims and arrows

      1. be hostile: your application was your friend - your baby. you gave it life. well, no longer. now your application is your enemy. do you admire the intricate house of cards you have built like hiram abif? don't. you have a glue gun now and you are going to do a little explaining about who is boss here! your app is taunting you - it's thinking "what does a chemical/analogue hack like that have that i don't?" well, i'll tell you: an index finger. suitable for hitting the "del" key. make this crystal goddamn clear!
      2. kludge everything! the debug stage of the development life cycle is all about kludges. we call it klop - kludge-oriented programming:

        kludge foo = new kludge(specialCase bar);

        you've written that. the debugging phase comes at the end of a project. ie the part closest to the deadline when clueless suits and moneyment[1] confuse line count with product. the pressure is on. the company is on the line. are you going to walk into the glass tower and pitch to the vc's about how yr going to have to go back to the uml's and rebuild x? good luck! can i have your job when you're done? get the tape, get the staples, get the glue.

      3. blame others: teamwork is just a code word for being the shepherd to a flock of scapegoats. if you were smart, you'd have been working on cultivating a culture of accepting blame early on in the cycle. this is espescially effective if yr building a client/server thingy. establish early on that most of the failures are on the client(server) side. whichever one you're not writing.

        make yourself documentation czar if possible - then abuse the position to retroactively assign blame to other team members ("the docs explicitly state that we use roman numerals" - "gee, i don't remember that" - "well tough. get coding").if you set it up right you can build an army of debugging minions to do your kluding for you while you, uh, write in your blog...

      4. redefine feature sets. the client is a clueless little doughboy who can't tell his ass from his operating system anyway. he's been flaking you on the spec-n-req all year. turn those tables! if a feature is buggy, yank it. if there's a complaint, reference the client to some vaguely-related advisory somewhere (trust me, he won't read all the way down). if he complains say "in light of advisory x we strongly adivse against implementing _______ (feature). a work around may be possible at a future point and we are more than willing to calculate the billing for that additional work now."
      all that and echo will solve all yr debuggery problems.
    • At that frazzle point the guy would have either contacted the local gdb guru,just rewritten the damn thing, or documented it as a known issue and blame it on hardware.

      This isn't always possible. A bug that can't be reliably duplicated is difficult to pin down in a debugger, and a bug that you have no idea of the root cause of can't just be removed with a code rewrite - you don't know which block of code to rewrite.

      The hardest part of debugging is identifying where the problem is. Once you know that, you
  • by Jonsey ( 593310 ) on Monday June 30, 2003 @01:04PM (#6331867) Journal
    I know the end of the book: Either the bug gets squashed, or he does. Or maybe dumbledore... wait, no, no main characters die... He comes back from the future to fight a new terminato----hulk... Wait, I'm lost again.
  • Spoiler? (Score:3, Funny)

    by ivan256 ( 17499 ) * on Monday June 30, 2003 @01:04PM (#6331868)
    Can somebody tell me what the ending is? I'm too busy writing code to read it.
    • Re:Spoiler? (Score:5, Funny)

      by HaeMaker ( 221642 ) on Monday June 30, 2003 @01:15PM (#6331962) Homepage
      Yea...

      He uncomments:

      work();

    • Can somebody tell me what the ending is? I'm too busy writing code to read it.
      Well, it's based on somebody's experience working for Sybase. Why don't you run some of their products and see for yourself?
    • Can somebody tell me what the ending is? I'm too busy writing code to read it.

      On Error Resume Next
  • by Anonymous Coward on Monday June 30, 2003 @01:04PM (#6331871)
    ...for the Disney/Pixar movie treatment if you want a "happy kitty, fluffy bunny" ending.

    The end of the book goes deeper than you suggest.
  • by binaryDigit ( 557647 ) on Monday June 30, 2003 @01:05PM (#6331881)
    A person as nerdy as he is and he has a girlfriend. How is that even remotely possible? And this girlfriend is apparently attractive enough to get someone to cheat on his wife with her, pure fantasy I tell you. This book loses all credibility on this one point alone. Plus, anyone who's THAT much of a geek and takes THAT long to find a bug, isn't someone I have a lot of respect for and would really care about anyway.
    • Well, if he's using gdb to track it down it's not THAT unlikely...
    • . Plus, anyone who's THAT much of a geek and takes THAT long to find a bug, isn't someone I have a lot of respect for and would really care about anyway.

      So you're saying that our entire value as human beings is how well we can debug code? I can understand how someone with your attitude would have trouble with seeing how someone could get a girlfreind....

      • So you're saying that our entire value as human beings is how well we can debug code? I can understand how someone with your attitude would have trouble with seeing how someone could get a girlfreind....

        Take a chill pill dude. My post was a joke (thank god at least one moderator got it). It plays on all the stereotypes of an uber-geek. When I first typed it, I placed a winky at the end, but then I thought, "nah, why make it sooo obvious". Judging by yours and others posts though, I guess I subtlety

      • So you're saying that our entire value as human beings is how well we can debug code


        No. Notice how he said geek? A geek who takes that long to find a bug isn't someone to have a lot of respect for. Just like how you wouldn't have too much respect for a doctor who couldn't tell the difference between a burn and a cut.
    • by binaryDigit ( 557647 ) on Monday June 30, 2003 @02:01PM (#6332344)
      I'm amazed at the responses I've been getting. My post was a JOKE (of course since I'm responding to myself, those individuals won't even get a chance to see this). Didn't you all notice how it plays on all the stereotypes of the average uber-nerd? Didn't you notice that it plays on the EXACT same themes as the story itself (defining ones own worth via ones work, how nerds view themselves and their co-nerds, etc).

      Note to self, subtlety is not the best approach on /.
      • It's not a question of subtlety not working on slashdot. (although it's true that subtlety probably doesn't work most of the time on this site)

        No, the problem is that there was no way to tell that you were joking. It reads as completely serious, if a little non sequitor. This is frequently a problem with written communications, as I'm sure you're already aware.
      • by f97tosc ( 578893 ) on Monday June 30, 2003 @03:33PM (#6333224)
        I'm amazed at the responses I've been getting. My post was a JOKE

        Sorry, you can't joke about everything. Joking with nerds about their lack of girlfriends is a no-no. You really hit a sensitive spot.

        Tor
    • by swillden ( 191260 ) * <shawn-ds@willden.org> on Monday June 30, 2003 @02:11PM (#6332440) Journal

      Plus, anyone who's THAT much of a geek and takes THAT long to find a bug, isn't someone I have a lot of respect for and would really care about anyway.

      I see you've never met up with any seriously nasty bugs.

      I worked on tracking one down, once (I didn't succeed; another engineer with 20+ years of experience was put on it, and although he didn't either, he got enough of a clue that a third guy with a heavy hardware background finally nailed it). It turned out to be caused by a subtle hardware bug (hooking together two devices with different edge-triggering criteria) that by itself wouldn't have caused any problem, but interacted -- occasionally! -- with a tiny bug in a driver, where the driver was attempting to work around a documented flaw in the ethernet chip it was controlling. That *still* wouldn't have caused a problem, but the embedded operating system we were using could, under certain circumstances, use zero-copy packet handling. The result was that incoming network packets would sometimes get overwritten by newly arrived data while the original packet was still working its way up the TCP/IP stack, or waiting for a thread to get around to processing it.

      The appearance of the bug depended on a zillion details, and it went for a long time without being noticed because one of the required conditions for appearance was a heavily-loaded network, so it wasn't until we got around to installing the system at a very large client site that it even cropped up (because of some other required conditions, lab-based stress tests had never revealed it). Exacerbating the problem was the fact that our system was designed for high availability, with each processor paired with a redundant "standby" system. In many cases the active board would fail and operations would be silently taken over by the standby board, further hiding the bug.

      That's the worst bug I've ever chased. I was the fourth engineer assigned to it and the first to find a way to reproduce it with some level of consistency (about 20% of the trials). The guy before me was the one who managed to demonstrate that what appeared to be a whole class of random failures was actually (probably!) one problem. By the time it was finally cracked, it had taken six programmers six months, with at least one person assigned to it full-time for the duration.

      I said that was the worst one I've ever chased, but I've seen plenty of other really nasty ones. The worst are caused by compilers that generate incorrect code or hardware problems, but I've even seen some really nasty ones that were entirely in my code, as well. Like a subtle bug in a set of B-tree routines I wrote years ago. A year passed between the time that one first showed up and the time I nailed it.

      Bugs that are intermittent (and rare), never show up under a debugger and hide somewhere in the middle of tens or hundreds of thousands of lines of code can be extremely hard to track down.

    • Well, some attractive girls prefer geeks. It's the attention to detail, the ability to think clearly, the expression of individuality, the drive/motivation, the expression of the creative urge to create something from nothing, an even god-like authority to breathe life into a once-dead piece of metal. While attractive girls who have these qualities themselves and can do these things themselves certainly don't look on in breathless admiration, we also could not settle for someone who did not themselv

  • by pytheron ( 443963 ) on Monday June 30, 2003 @01:06PM (#6331889) Homepage
    When it does surface, it's usually during a sales presentation, causing a complete system failure

    Common theme: Sales Presentation. Most sales-drones I've ever seen look and act like Jesters anyway.. certainly the promises spewing from their powdered faces seem utterly fantastic and comical at times

  • by PetWolverine ( 638111 ) on Monday June 30, 2003 @01:07PM (#6331897) Journal
    Plus, his fellow coders are a petty, snide-commenting bunch

    Forgive me, but when I read that, I thought this: /*Yeah, sure, this code will work. *snicker*/
    • by vaxer ( 91962 ) <sylvar@NOSpAm.vaxer.net> on Monday June 30, 2003 @02:32PM (#6332653) Homepage
      /*Yeah, sure, this code will work. *snicker*/

      Shouldn't that be /*Yeah, sure, this code will work. *snicker* */ ?

      There's your bug -- you never closed your snicker emote asterisk.

      Ben
  • subject (Score:5, Funny)

    by Anonymous Coward on Monday June 30, 2003 @01:07PM (#6331899)
    > based on her own pursuit of a bug while working at Sybase.

    Plenty of source material then!
    • Re:subject (Score:4, Funny)

      by Anonymous Coward on Monday June 30, 2003 @01:25PM (#6332043)
      Please read the slashdot terms of use. You are only allowed to make those kind of jokes about Microsoft. Please keep this in mind in the future before you make a negative comment about anybody else.
    • Sybase == Microsoft (Score:2, Informative)

      by Black-Man ( 198831 )
      I guess u missed the part of Microsoft and their 'arrangement' with Sybase in the mid-90's where the basically stole their code which then became SQL Server?
  • won't read it (Score:5, Insightful)

    by noah_fense ( 593142 ) <[moc.liamg] [ta] [namehthaon]> on Monday June 30, 2003 @01:08PM (#6331910)

    I personally won't read it because the last thing I want to spend time on when I get home is . . . more work related reading material.

    I don't want to read "about myslf", but rather about something much more entertaining that I don't experience every day.

    -n
    • by fobbman ( 131816 ) on Monday June 30, 2003 @01:23PM (#6332022) Homepage
      "I don't want to read 'about myslf', but rather about something much more entertaining that I don't experience every day."

      Give Penthouse Letters a try.

      • If you're going for fiction (or fantasy), why not? Have you taken a look outside lately? Yeah, I didn't think so...
  • Sounds dumb (Score:5, Interesting)

    by JakusMinimus ( 49854 ) on Monday June 30, 2003 @01:11PM (#6331933) Homepage Journal
    I write code for a living (wow big surprise huh?) and I can be as anti-social as the next guy (or gal, hey they do exist) but there comes a point when you simply move on to something else, only to come back with a vengeance when your subconcious clues you into the nature of the problem. Also, the bug sounds more supernatural than realistic. Sure I haven't read the book but judging by the description I'd just as soon pass over it.
  • by da3dAlus ( 20553 ) <dustin.grauNO@SPAMgmail.com> on Monday June 30, 2003 @01:12PM (#6331941) Homepage Journal
    "Jester's dead. Yee Haw!"


  • One word.... valgrind.

  • Plagiarism! (Score:5, Interesting)

    by Anonymous Coward on Monday June 30, 2003 @01:16PM (#6331974)
    Do not read this book. It is a plagiarism of
    Moby DICK. They just replaced some of the names.

    The Bug = The DICK,
    Roberta = Ishmael,
    Ethan = Cpt. Ahab.


    Just like Tanya Grotter! Melville WILL sue!
    • Maybe so, but the thought of a bunch of programmers walking around saying things like "shiver me timbers" sounds pretty cool...
    • Do not read this book. It is a plagiarism of Moby DICK. They just replaced some of the names.
      The Bug = The DICK, Roberta = Ishmael, Ethan = Cpt. Ahab.
      Just like Tanya Grotter! Melville WILL sue!


      The real threat here isn't that Melville will sue (he is dead, after all).

      The problem here is that, if your analogy is true, that means that the great-grandson of Ellen Ullman will become a new-age euro-trash remix artist calling himself "Bug", after his great-grandmother's famous antagonist by the sam
    • by delcielo ( 217760 ) on Monday June 30, 2003 @02:04PM (#6332381) Journal
      Toward thee I scroll, thou unconquering but all-destroying fail; to the last I grapple with thee; from Bill's heart I stab at thee; for hate's sake, I spit my espresso at thee.

  • Another Bug!!!!! (Score:3, Informative)

    by PaulK ( 85154 ) on Monday June 30, 2003 @01:17PM (#6331981)
    Now, if she'd write about the infamous dupe [slashdot.org] bug, that'd be FAR more realistic. :)

  • Any ideas where can I find a book that's 'zany' and 'hypercharged'? That sounds pretty sweet.
  • To review the review (Score:5, Interesting)

    by knobmaker ( 523595 ) on Monday June 30, 2003 @01:22PM (#6332019) Homepage Journal

    It's difficult to review fiction well. The reviewer has to tread a delicate line between failing to give enough information to engage the reader, and giving too much information, so that the reader's experience may be spoiled to some degree. In this review, the error seemed to be on the side of too much information-- the stuff about the unsatisfying ending. The reviewer might have profitably left that stuff out, and based his thumbs-down on less revealing matters.

    Still, in this case, the reviewer seems hampered by what appears to be a bad case of literary fiction. Or so it appears. If that's the case, then there's not much point in criticizing the book's plot, since in literary fiction, plot is usually secondary to other concerns. No professional reviewer would ever make the mistake of criticizing an attempted literary novel on the basis of the ending, since in such a work, the plot would be subordinate to character development or the artful use of prose.

    Of course literary fiction is most often judged on whether or not the thematic content appeals to the reviewer (as it apparently did in this case). Which is why so many literary novels about the angst of academic life get glowing reviews. Yuck.

    • by ralico ( 446325 )
      It's difficult to review fiction well

      This does seem to be the case, but it really shouldn't. Anyone who paassed college freshman english lit and who does not possess some memory lapse of the time should be able to evaluate literature on several grounded factors:
      Some criteria most reviews cover such as:
      who are the protaganist(s) and antagonist(s)
      What is the conflict (person v person, person v nature, person v self)? What is the plot?
      What is the setting?
      What is the point of view?
      Other criteria se

    • Or so it appears. If that's the case, then there's not much point in criticizing the book's plot, since in literary fiction, plot is usually secondary to other concerns.

      Because they made the plot suck on purpose, it's invalid to point it out? Bah!


      I think the point of the review on Slashdot is to help us decide whether or not we want to read the book, not to conduct an academic exercise.

    • knobmaker attempts to pass himself off as a learned master of literary analysis, but unfortunately he's just another Slashdot wanker with too much time on his hands.

      ;^)

  • I read this book. (Score:5, Interesting)

    by eclectic_echidna ( 586735 ) on Monday June 30, 2003 @01:23PM (#6332021)
    A book that I actually read.

    The mood is dark, but not too cypherpunk. I can almost hear the florescent lights buzzing through the whole book. Very harsh and simplified.

    The descriptions of the team meetings and the QA vs. DEV rants rival Dilbert's distopia.

    Buy it for the few sex scenes, and watch out, the PHBs are in their too, not just the 'jester'.

    Also, there net admin is so raw. Bring her on!
  • by Junks Jerzey ( 54586 ) on Monday June 30, 2003 @01:25PM (#6332048)
    I'm a software developer during the day, and I also work on side projects in the evening when I have time. But there's no way I'm going to bring computer programming into every possible leisure activity. There's some incredible fiction out there, both classic and recent.

    I think there's something to be said for being more well-rounded.
  • What gives? (Score:5, Interesting)

    by Entropy248 ( 588290 ) on Monday June 30, 2003 @01:28PM (#6332072) Journal
    Why is everyone describing the bug this guy is tracking down and commenting on it as if it were a literal problem to be solved? In order to make the metaphor clearer, the reviewer would have to pound you over the head with CowboyNeil's inbox!! Let's examine the plot summary. A guy has an unsolvable problem that always embarasses him. Doesn't anyone else's metaphor detector go apeshit on this description? And I'm not an english major... And I've never read the book... It must be /. == You failed to confirm you are a human.
    • A guy has an unsolvable problem that always embarasses him. Doesn't anyone else's metaphor detector go apeshit on this description?

      I don't get it. Is he looking for the matrix or something?

    • A guy has an unsolvable problem that always embarasses him. Doesn't anyone else's metaphor detector go apeshit on this description?

      Every unsolveable problem has a solution. It's called natural viagra.

    • Re:What gives? (Score:3, Insightful)

      "A guy has an unsolvable problem that always embarasses him."

      Sounds a bit like there's a problem with the metaphor itself. To non-geeks, the computer bug metaphor is going to be less than interesting. To real geeks, it's just too difficult to consider a computer bug as being something truly unsolveable. I think most of us have fought with obscure, insane bugs, and we've conquered them and become stronger coders in the process.

      (A personal case was finding a bug in the newsreader tin that used fclose i

  • Quick fix.. (Score:5, Funny)

    by robbo ( 4388 ) <slashdot@NosPaM.simra.net> on Monday June 30, 2003 @01:29PM (#6332076)
    #include <signal.h>
    #include <stdlib.h>

    void handler(int arg) {
    char command[1024];
    sprintf(command, "/sbin/reboot");
    system(command);
    }

    int main(int argc, char ** argv) {
    signal(SIGSEGV, handler);
    ...
    }
    • by Anonymous Coward
      The code you have written is violating a Microsoft patent. The pattent covers "rebooting of a computer to fix an unidentified or unfixable bug." You can not use this code without paying royalty. Also, having a helpdesk instruct you to reboot your computer to fix a problem has been patented by Microsoft. ALL YOUR REBOOTS ARE BELONG TO US! MUHAHAHA.....
  • by brundlefly ( 189430 ) on Monday June 30, 2003 @01:32PM (#6332098)

    I don't think (from reading this book) that she's quite made the leap to writing fiction. The characters were wooden and stereotyped, the problems with "the code" overly dramatic and in the end sorta phony, and the plot was a stretch at best. She was trying to create a tension where none really exists naturally. (A Bug? Big deal, fix it. I do that 20 times a week or more.)

    I hope she continues to work on her fiction, because given how talented she is at expository prose and given her deep understanding of the geek existence, she has real potential. (Close to the Machine was excellent!) But for now I would much rather read a writer who learns geek (c.f. Neal Stephenson, William Gibson) than a geek who learns to write fiction. YMMV.

    • She was trying to create a tension where none really exists naturally. (A Bug? Big deal, fix it. I do that 20 times a week or more.)

      Ever been assigned a bug so hard to track and understand that it took you a month or more to fix it? That also has visibility to folks in the upper managesphere? There is a lot of tension when you can't just "fix it."
    • by ebh ( 116526 ) * <ed.horch@org> on Monday June 30, 2003 @03:06PM (#6333009) Journal
      a tension where none really exists naturally

      In 1983 I was working on the firmware for a combination port selector and stat MUX. Two weeks before we were to ship, a bug appeared that intermittently crashed (what we would now call) the NIC.

      This was a startup, in a time and place where there was no payroll insurance. In addition to the usual crushing startup pressure, if we didn't ship, the company didn't get paid, so we didn't get paid.

      It took four of us the full two weeks to find and work around the bug. We were finally convinced it was a bug in the CPU, because swapping two adjacent independent load-one-register-from-another instructions made the problem go away. We ended our final push, having been up for over 72 hours, by leaving at 6:30am for the three-hour trip to the customer site with two sets of new EPROMs for the units they already had on site.

      If you've never experienced tension like that, I want to work where you work!

  • Salon.com... (Score:5, Informative)

    by daVinci1980 ( 73174 ) on Monday June 30, 2003 @01:33PM (#6332100) Homepage
    did an interview [salon.com] (get a salon day pass) a while ago with the author. Very interesting, and gave some snifty insight into the book. (And the fact that she never fixed the bug that the book was roughly based upon.)

  • Books like this? (Score:5, Insightful)

    by mszeto ( 133525 ) <mszeto&scompton,ca> on Monday June 30, 2003 @01:37PM (#6332130)
    I see a lot of people saying that they won't read this book because 'they program for a living and don't want to take it home' or other such arguments...

    I beg to differ - I think its great that a book has such an interesting premise and such a fresh view on literature. I've never seen anything like this, and will probably be picking this book up.
  • by code_rage ( 130128 ) on Monday June 30, 2003 @01:38PM (#6332135)
    Since my local bookstores do not have it in stock, I have not read it yet... (I broke down and ordered it on-line).

    But I'll go out on a limb here and guess that The Bug is not just in the computer. Some of the characters are also trying to debug their personal lives. Sorry if that is off the mark or just too obvious. But some of the comments about "I don't need to read about work" might be missing the mark.
  • Damn! (Score:2, Funny)

    by grasshoppah ( 319839 )
    Shit! You mean that System.exit( 1 ) wasn't supposed to be there??
  • by nurb432 ( 527695 ) on Monday June 30, 2003 @01:55PM (#6332270) Homepage Journal
    Sounds vaguely like something I read long ago, something about a whale and a obsessed fisherman.. :)

    Ah, the classics never die, they just get a bad sequel..

  • by eGabriel ( 5707 ) on Monday June 30, 2003 @01:58PM (#6332301)
    On the one hand, it sounds interesting because it is about a programmer, and I am a programmer, too. On the other hand, why would I want to take all of the awful things that I fret about every day, and have them fed to me in what is described as a humorless novel about someone who is the manifestation of all of my inner fears.

    I am reminded of that scene in This Is Spinal Tap, where the band is standing around Elvis's grave. "Really puts things in perspective." "Yeah, too much! Too much f**king perspective!"
  • by JoeCommodore ( 567479 ) <larry@portcommodore.com> on Monday June 30, 2003 @02:02PM (#6332351) Homepage
    THE LAST BUG

    "But you're out of your mind!"
    they said with a shrug,
    "The customer's happy,
    what's one little bug..."

    But he was determined;
    the others went home.
    He spread out the program,
    deserted, alone.

    The cleaning men came,
    the whole room was cluttered
    with memory dumps, punch cards,
    "I'm close..." he muttered.

    The mumbling got louder,
    simple deductions,
    "I've got it! It's right,
    just change one instruction!"

    But it still wasn't perfect,
    as year followed year.
    People would comment,
    "Is that guy still here?"

    He died at the console
    of hunger and thirst;
    the next day he was buried
    face-down, nine-edge first.

    The last bug in sight,
    an ant passing by.
    It saluted his tombstone,
    and whispered "nice try."

    Author unknown. Circa late 1970s
  • by Greyfox ( 87712 ) on Monday June 30, 2003 @02:13PM (#6332469) Homepage Journal
    But don't you see! It's not that he derives no joy in his life. He has attained nirvana, basking in the pure, white light of the code he has created. All other happiness is nothing but an illusion cast by the demons of the flawed organic mind. We should all cherish him as an enlightened one, no longer tied to the useless aspects of this world!
  • Yeh, it is dark. But I have known at least
    a couple of Ethan Levins in my 20 years of professional programming experience. They're not common, but not uncommon either.

    For anyone who actually wrote C back before automated heap checkers, extreme programming, web- and script-based development, and other joys of the modern programming life, this book rings disturbingly true.

    I have recommended it to my mom and other folks who don't understand what I do for a living.
  • by egomaniac ( 105476 ) on Monday June 30, 2003 @02:36PM (#6332694) Homepage
    My first name is Ethan. It's a very unusual name, to the point where I'm completely unaccustomed to anyone else sharing my name. Sure, I've heard of a few other Ethans, but I've never actually met one. So whenever I heard the name "Ethan", that's me.

    ...Ethan isn't exactly a well-rounded Renaissance Man. He has a single friend at the office, and they barely talk. Otherwise, Ethan is irritable, distant, and often loses himself in his own logic-gated thoughts.

    ....

    But hopefully, you aren't Ethan. Even if you have no friends, no girlfriend, nothing, you still might play video games or watch TV or something (read?). Ethan, it seems, makes no effort to find even brief happiness. His life is joyless.


    It's really weird reading something like that when my brain keeps wanting to associate the name "Ethan" with "me".

    Authors, please name all main characters -- particularly those with serious personality flaws -- David. Davids are used to sharing their name with millions of other people. The name "Ethan", on the other hand, should only appear in Penthouse Letters, when describing studly guys with twelve-inch cocks servicing four women at once.

    Thanks, I'd really appreciate it.
  • by thrice ( 253465 )
    Anyone who codes for a living will find a bit of irony in reading this book. First, if you are reading the book, then you more than likely do have a life and won't suffer the same fate as Ethan.

    For me, the book was a very good/quick read and slammed home the importance of stepping away from the machine and living life. Work to live, not live to work... right?
  • The Jester is this story's villain, one that can't talk, eat, get tired, or be reasoned with

    It can't be bargained with, it can't be reasoned with; it doesn't feel pity, or remorse, or fear! And it absolutely will not stop, EVER, until you are DEAD!
  • by limbostar ( 116177 ) <stephen&awdang,com> on Monday June 30, 2003 @03:22PM (#6333138) Homepage
    I'm reminded of "The Last Bug" by Jim Owen:

    But you're out of your mind
    They said with a shrug
    The customer is happy
    What's one little bug?

    But he was determined
    The others went home
    He spread out the program
    Deserted, alone

    The cleaning men came
    The whole room was cluttered
    With memory dumps
    I'm close, he muttered.

    The mumbling got louder
    Simple deduction
    I've got it, it's right
    Just change one instruction.

    It still wasn't perfect
    As year followed year
    And strangers would comment
    Is that guy still here?

    He died at the console
    Of hunger and thirst
    Next day he was buried
    Face down, nine edge first.

    And the last bug in sight
    An ant passing by
    Saluted his tombstone
    And whispered - Nice try!
    Note that "face down, nine edge first" is a reference to an IBM puch card reader which had those words printed on it ("place cards face down, nine edge first"), the 'nine edge' typically being the lower edge of the card where the row of nines were.

We are each entitled to our own opinion, but no one is entitled to his own facts. -- Patrick Moynihan

Working...