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

Best Software Writing I 102

Posted by timothy
from the so-says-joel-all-rise dept.
meryl (Meryl K. Evans) writes "Having been in process management in a software organization for over ten years, I've seen too many articles and books on the topic that worked better than Valium for putting me to sleep especially since they have no side effects. You know that Joel Spolsky is one of the best writers on the topic of software. However, in this book he stands aside and lets others demonstrate that he isn't the only one who can write about software in English and captivate you." Read on for Evans' review.
Best Software Writing I: Selected and Introduced by Joel Spolsky
author Joel Spolsky, editor
pages 328
publisher Apress
rating 8
reviewer Meryl K. Evans
ISBN 1590595009
summary 29 essays by multiple authors covering a range of development-related topics.
Joel on Software fans won't be disappointed in the selection of authors as they deal with the concepts Spolsky writes about on his site. Some readers may be expecting a book solely on software development. Even Joel goes beyond this. Some folks might be disappointed that most of the articles, blog entries, speeches, and essays are available somewhere on the Web. I only recognize a few of the authors and their articles, though, so I would've never known about the others had I not found this book.

The essays cover a wide range of development-related topics. They include coding style, outsourcing programmers, dealing with Excel as a database (gag, gag), using social software (and the things that are right and wrong with these shared spaces), emerging digital rights, and defining the two-phase commit process a la Starbucks. A few of them are nothing but comics. The one on Windows search will knocks readers out of their chairs laughing, at least it did me.

The book also contains business-related essays that address a few problems affecting many companies -- namely team compensation and forced overtime which often spills over the weekend. Joel introduces every essay and includes notes clarifying abbreviations, names, or terms that you most likely know. But other people who would benefit from the book may not -- cut Joel some slack for providing these notes.

The manager benefits from the book because she gains insight into the developer's perspective, which could help her become a better leader. The developer benefits because many of the issues covered can affect him no matter what language he uses for development. If you belong to neither management nor development, the best way to decide if the book is for you or not is to review the table of contents and reviews. If you find only one or two interesting possibilities, search for them online instead.

I'm one of those who belong to neither group. My software organization background has been along the lines of an analyst and process manager. Even I find that most of the essays are enjoyable or educational. Only one or two lost me.

While most of the content is available on the Internet for free and all of you can find it, the book is worth the bucks. It's nice having a collection of high-quality writing related to software and the business in one place instead of trawling the Web for it. Furthermore, you get an opportunity to read offline -- if you manage to tear yourself away from the monitor every now and then at least; I read most of the book while traveling on an airplane. The flight flew by, thanks to the book. I appreciated and absorbed the essays better by reading them in the book than I would have had I read them online.


You can purchase Best Software Writing I 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.

Best Software Writing I

Comments Filter:
  • by Neil Blender (555885) <neilblender@gmail.com> on Thursday September 15, 2005 @02:40PM (#13568907)
    From the publishers of "Worstest Book Titling 3".
  • Articles online (Score:5, Informative)

    by nemexi (786227) on Thursday September 15, 2005 @02:40PM (#13568918)
    Links to the essays in Best Software Writing can be found here: http://brevity.org/misc/bestswi.html [brevity.org]
    • I've actually read most of the essays listed in this link. The book is over 300 pages, and I know that there is no way all the essays can add up to that much. I wonder how much has actually been added to the print edition.
      • I have the print edition. There's an intro by Joel for each essay of about 1 page. The book itself isn't that big... I read it in a few days. It is, however, an awesome book, and I would recommend it unconditionally to just about anyone who's interested in software engineering.
    • Thanks for the list. I was very glad to see Why's (poignant) Guide to Ruby [poignantguide.net] on the list.
  • by kelzer (83087) on Thursday September 15, 2005 @02:41PM (#13568923) Homepage
    Not everyone is a fan of Joel's. This reviewer obviously is. It would be interesting to get a more objective viewpoint.
    • You do realize that Joel didn't write any of these essays, right?
    • by pudge (3605) * <slashdot@nospAM.pudge.net> on Thursday September 15, 2005 @04:37PM (#13570027) Homepage Journal
      Here's a review I wrote of this book for The Perl Review [theperlreview.com], issue 2.0:

      There's a lot of good writing in the world. Some of that has to do with software. So hey, why not put some of it in a book?

      Therein lies the apparent purpose of The Best Software Writing I, brought to us by software bloggerexpertpundit Joel Spolsky. Beyond that broad categorical relationship, it's hard to see how everything in the book relates, either to each other, or to the reader.

      I like tables, but I don't buy a book with various articles written about tables. If I want to build a table, I buy a book on building tables. If I want to look at antique tables, I'll buy a book about antique tables. I won't buy a book about tables and hope it has something I am interested in.

      I don't want to say this is a bad book, because that might imply the content is bad, and hardly any of it is. Some of it to me is quite boring--which highlights my main problem with the book--but most of it is quite good.

      The opening chapter by Ken Arnold on why languages should enforce strict whitespace use at the compiler level was useless. And the final chapter, by "why the lucky stiff," which attempts to teach Ruby with a few short guidelines and cartoon foxes, had me skimming the pictures before gratefully reaching the conclusion.

      But in between there was some really good stuff, including Paul Graham's OSCON 2004 keynote address about what makes a great hacker, Raymond Chen's piece on why Windows retains backward compatibility for broken apps, and danah boyd's article about social software. There's an insightful piece by Clay Shirky about how to encourage good discussion and discourage bad discussion online, a perceptive article by John Gruber about how the browser's location field is the new command line, and an amusing PowerPoint presentation outline by Aaron Swartz about why you shouldn't use PowerPoint.

      And you know they are good, because each piece has an introduction by Spolsky, telling you not just how good they are, but that Spolsky thought of it first. Some of the articles even refer back to Spolsky, which is nice, in case you forgot how great he is. Not that other people don't engage in similar practices: the last three pieces I mentioned above are related to me, in that Shirky favorably mentions Slashdot (where I work), and Gruber and Swartz are my acquaintances, and that's a big part of why I singled them out for mention. It just seems to me that Spolsky shines the light far too much on himself, to make the book almost as much about himself as the writing.

      What's especially odd is that this book couldn't appeal to people who are not already into software, who don't already know who some of these people are, or who are familiar with the issues they are writing about. They won't get any of it. Yet the book is littered with footnotes from Spolsky explaining things like "iTunes" ("Apple's online music store") and "dev" ("Dev = developer = an actual computer programmer").

      Which brings me back to the point of the book. It's not for non-software people, and it is not for software people, including those who enjoy this sort of thing so much that they already read it when it went online.

      So what is the point? I don't know. Maybe it is just to make more of a name for Apress, by saying they published a book by known software bloggerexpertpundit Joel Spolsky.
      • I figured him explaining some obvious stuff was so that you could hand a bookmarked section to a manager and not have them get too lost.

        I agree it's a bit havy on the Joel aspects, but I really liked a lot of the articles (although I have a rebuttal for that whitespace guy, who I consider 100% utterly wrong).

        • by pudge (3605) *
          Yeah, that's why I called it useless. I posted on his web site about it [artima.com] too. Here's my comment:

          Premise 1: For any given hardware, there are one or a few common coding operating systems.

          Premise 2: There is not now, nor will there ever be, an operating system whose benefit is significantly greater than any of the common operating systems.
          Premise 3: Approximately a gaboozillion cycles are spent on dealing with OS variations.
          Premise 4: For any non-trivial project, a common OS is a good thing.
          Conclusion: Think

          • Those aren't parallel. There could be operating systems and programming languages with much greater benefits than those we currently/commonly use. Linux vs. Windows. Python and Ruby vs. C. How many significantly better-than-normal ways are there of formatting programs?
            • Those aren't parallel. There could be operating systems and programming languages with much greater benefits than those we currently/commonly use. Linux vs. Windows. Python and Ruby vs. C. How many significantly better-than-normal ways are there of formatting programs?

              According to whom?

              And there's your answer.

              Q.E.D.
              • According to whom? And there's your answer. Q.E.D.
                WTF??!! Are you trying to say there are no quantifiable differences in benefits? Quantifiable, as opposed to opinions. The few I can think of - C for bare metal, perl if you want to parse and spit reports, SQL if you want to deal with databases. I can't believe you think that all OS's and all languages are the same in performance. That's just dumb.
                • Are you trying to say there are no quantifiable differences in benefits?

                  No. I am saying I can quantify the benefits of a language style as easily as you can quantify the benefits of a language or OS.

                  I can't believe you think that all OS's and all languages are the same in performance. That's just dumb.

                  Well, it's a good thing I never stated or implied that, or else I'd feel bad right now!
              • Well, according to you. Can you name a C coding style that according to you gives you significant gains over the standard K&R style? That's the question posed in the article. Could you fill out one of those forms at the end of the article? If so, here's a good place to do so.

                To knock an argument because of its form is only valid if there are no important arguments for which the form is actually helpful. For example:

                • Premise 1. For chargeable things (cell phone, PDA, pager) there are only a few m
                • Well, according to you. Can you name a C coding style that according to you gives you significant gains over the standard K&R style? That's the question posed in the article.

                  Maybe, maybe not. But what I do know is that I could give just as strong a defense that we do not need multiple OSes or programming languages. And don't fool yourself into thinking I can't.

                  Aha! The same form, and now we have ASCII trumping EBCDIC, which was a good thing

                  Straw man. I never implied that the form was wrong because it
      • Joel has already published 2 other books with Apress. His book on User Interface design wasn't half bad.
    • I am not a fan of Joel's. I respect his writing. Who he is has no influence over my review of the book and he didn't write the book.
    • Joel does make comments at the start of each article, some are inane to be sure - but the majority are pretty solid an interesting articles from a wide variety of people across the software industry. If you pay attention to Slashdot you'll probably have read a lot of them, but there were some I had not seen before that I found pretty thought provoking.
    • There's a somewhat less fawning review at http://www.larkware.com/BookReviews/best.html [larkware.com]
    • You dont have to be for this book. I dont think he has a single article in it.

      Btw: there is an essay in there by Rory Blyth, if you dont think it is funny you have never worked in the real world. But the great thing is, the essay is a blog post. you can read it here.
      http://neopoleon.com/blog/posts/434.aspx [neopoleon.com]
  • by kianu7 (886560) on Thursday September 15, 2005 @02:43PM (#13568945)
    When is the hindi translation of the book going to be available so that we can all enjoy it?
  • by Anonymous Coward on Thursday September 15, 2005 @02:43PM (#13568948)
    For the last time, Slashdot book reviewers, a summary is NOT a review!
  • Amazon Link (Score:3, Informative)

    by op12 (830015) on Thursday September 15, 2005 @02:48PM (#13569002) Homepage
    Referrer-free Link: http://www.amazon.com/exec/obidos/ASIN/1590595009/ 104-8120704-9951931 [amazon.com]

    Even $17 seems like a lot for something you can find for free on the internet.
    • But how many of us have computers in the bathroom?

      Oh, wait, this is /.

      Chip H.
    • Strange (Score:3, Interesting)

      by imsabbel (611519)
      Do you think advertising for amazon for free (as they dont have to pay the normal referer, thus increasing their profits) will give you a moral highground?

      I rather give (the provision part of) the money to somebody who searched out the link than to multibillion corporation.
    • Some people prefer the dead tree version. I know it's difficult to comprehend not wanting to stare at a screen all day.
  • I had read a good portion of it before, but some of the stuff is always good to reread. And, on occasion, if someone is standing in my cube and we happen to be talking about forced overtime... (ugh)... then it's a lot easier to hand them the book, flip it to ea_spouse's article, then tell them that they should someday go and find it and maybe read it once they find it.
  • That's why I get a receipt, it's like a session token saying that I am owed packet 123 (drink) for having sent request ABC (cash + order).

    ---Throwing the golden wrench of reason into the complex machinery of life since 1979.---
  • by Shamashmuddamiq (588220) on Thursday September 15, 2005 @03:02PM (#13569149)
    You know that Joel Spolsky is one of the best writers on the topic of software.

    Good lord! Is writing on the topic of software really that bad?

    Oh wait, that's your opinion. ...and oh wait, this is Slashdot.

    • Wait, I feel a disturbance in the net... it was like the blabbering half-baked opinions of two hundred thousand 14 year olds, suddenly silenced... ...oh wait, Slashdot's gone down...

  • by jasongetsdown (890117) on Thursday September 15, 2005 @03:10PM (#13569205)
    "the best way to decide if the book is for you or not is to review the table of contents and reviews. If you find only one or two interesting possibilities, search for them online instead."

    Uh, thanks. This is my first time here in the scary world of b00ks (as opposed to books).

  • oh dear (Score:2, Funny)

    by KFowler (915146)
    "The one on Windows search will knocks readers out of their chairs laughing, at least it did me" I sure hope you used protection. It looks like you might have already caught grammatical SARS.
  • IT conversations have a recently recorded interview with Joel in which he tells about the book. Great stuff.

    IT Conversations's interview with Joel [itconversations.com]
  • I enjoyed reading his earlier book "Joel On Software", but I think you will learn far more from...
    "Analysis Patterns" by Martin Fowler
    "Patterns of Enterprise Application Architecture" by Martin Fowler.
    "Design patterns : elements of reusable object-oriented software" by Eric Gama et al

    And for database stuff I would recommend
    "Agile Database Techniques" by Scott W. Ambler
    • Better books to learn from are:

      Development:
      Executable UML by Mellor and Balcer and
      Executable UML:How To Build Class Models by Leon Starr
      The older Shlaer-Mellor books are valuable as well.
      Software Requirements by Wiegers

      Management:
      Peopleware by DeMarco and Lister
      Slack by DeMarco

      Data:
      An Introduction to Database Systems by Date
    • Thanks for the recommendations. Wish more people would provide comments like yours. And I was simply stating what a majority of people say about him... that he is one of the best. It doesn't mean I think so, but he does have good stuff. Again... he didn't write ANY of the essays here... so it's not about his writing.
  • Yeah, but (Score:4, Funny)

    by Anonymous Coward on Thursday September 15, 2005 @03:26PM (#13569355)
    I've seen too many articles and books on the topic that worked better than Valium for putting me to sleep especially since they have no side effects.

    Yeah, but books and articles about programming won't bring you down nicely from a three-day coke binge. Believe me, I've tried...

  • I heard Joel spolsky talk about this book on itconversations.com [itconversations.com]

    The first thing I had to ask myself is:
    Why doesn't somebody just list the URL's of all the articles somewhere so I can download everything?

    If any of you know these essays, how about url's?
  • I liked the book (Score:3, Interesting)

    by richieb (3277) <richieb@@@gmail...com> on Thursday September 15, 2005 @04:37PM (#13570033) Homepage Journal
    Here is my mini-review [blogspot.com]

  • The manager benefits from the book because she gains insight into the developer's perspective, which could help her become a better leader.
    ...he's using the female genre as a generic way to describe managers (no bias intended ?)
  • by Chitlenz (184283) <chitlenzNO@SPAMchitlenz.com> on Thursday September 15, 2005 @07:17PM (#13571430) Homepage
    I picked it up on a whim while shopping for managed DirectX books at borders the other day after picking it up (literally) and reading though a few of the essays. This one's full of not only good observations about software development, BUT also has several good articles about geeks in businesss, and how they interact with the dreaded non-technical management types.

    This is worth the money just to pick up and have someone rationally present alterantive viewpoints. For instance, I would LOVE to have a company adopt the no-bonuses policy coupled with salary advancements and promotion as an alternative. In every company I have ever worked for, bonuses have caused huge amounts of turmoil and I agree with the premise that everyone would be happier (and more creative) without the kind of intellectual sword of damacles a late or missing promised bonus program can cause in an IT shop. I watched a Peoplesoft shop come very close to falling apart after management decided not to pay promised bonuses one year, and I think that while this is in every way a problem of management, I agree with the essay's author that fault or not the whole process becomes a huge demotivator in place of an intentioned boost.

    Again, the above is just one example from one essay in this volume. Agree or disagree with the points of view contained in the book, but the act of thinking about the problems that are presented here are going to happen along the course of most projects anyway, and I like to take things head-on.

    I understand most of the articles are available online, but I this is one technical book that is actually fireside readable (IMHO) so I picked up the dead tree edition.

    Highly recommended to IT folk

    -chitlenz

  • Yoda, is that you?

    (and I think your code blows)

  • by RingDev (879105) on Thursday September 15, 2005 @11:58PM (#13573103) Homepage Journal
    I bought and read this book, I have been meaning to write up a full review, but never have the time, so here is a short jist. It was a waste. The few gems on social software design and humorous cartoons are the only redeming quality. Joel's intros are fine, but his choice in articles is pretty poor.

    The worst part is that the only article that actually dealt with software development/design/writing is a 2 page jib at microsoft about their window search system interface. The rest is mostly filled with management info that has nothing to do with software writing. There were three or four articles on performance metrics for 'knowledge workers' that all said the same thing ("They suck"). There was one delusional article that talked about how only Python coders were real coders and all other coders are fake pansies. That same author talk about how to recruit "hackers" (ie: Python coders). His basic jist was to offer a work environment just like your mother's basement and the uber python coding hackers will beg you to let them work for you.

    A better title would have been "Mangerial info and other crap from people loosely related to computers: Final Volume"

    -Rick
  • In Soviet Russia, Best Software Writing you!
  • A review of a software book my a "process manager"? Puh-lease. Go sharpen your head.

The meat is rotten, but the booze is holding out. Computer translation of "The spirit is willing, but the flesh is weak."

Working...