Fog Creek Software
Discussion Board

Professional Software Development

Has anybody on this forum read this book by McConnell?

Was thinking about buying it but wanted to get others' opinions on the book before I shell out the cash.


Ron E.
Wednesday, February 11, 2004

Yes I did. (well except for the last chapter or two)

It isn't anything we haven't heard before. Here's the jist:

-Software Developers need better training. The profession should be more like engineering.

-Design before you code. It has a really cool chapter you can use to explain to your management why your SDLC needs an architecture phase. (it involves ancient egypt and moving big blocks, it was my favorite chapter.)

It was an ok read. Nothing required, but if you enjoy reading that type of stuff, it's cool.

michael sica (
Wednesday, February 11, 2004

oh, and he explains the training / career path he uses at his company. which is very similiar to what Joel has written about in the past.

michael sica (
Wednesday, February 11, 2004

Most project managers I know read his other books (I have read Code Complete 1e) and enjoy them. So my suggestion (without reading them first) is that it's probably pretty good stuff.

Li-fan Chen
Wednesday, February 11, 2004

I really dislike software development analogies to architecture and moving big objects around.  Redirecting the locations of enormous stones is hard and not easily changed. Redirecting bits and bytes is easy and can be experimented with.

Besides, before building things like bridges and skyscrapers and such, engineers generally try to become more experimentative by building a model, physical or computer generated.  This allows you to move "big blocks" around at a whim, which prevents you from having to do so later.  The advantage of software is that due to it's virtual nature, the model *is* the result.  This allows us to be more flexible in how and even when we design.

Oren Miller
Wednesday, February 11, 2004

You could relate the "model building" to the software field as prototypes and proof-of-concepts (code experiments used to see if you can do something before it goes into your architecture design).

In the book this thread is talking about McConnell states that Software is not "soft", it is very hard to change. To quote the book,

"Software was originally called "soft" because it was easy to change. For very small programs at the dawn of computer programming, this might have been true. As software systems have become more complex, however, this notion that software is easy to change has become one of the most pernicious ideas in software development."

The rest of the section/chapter explains it in more detail. It wouldn't be right of me to cut 'n paste the whole thing.

michael sica (
Wednesday, February 11, 2004

I have the book and personally I think it's terrible -- He makes a lot of unsupported arguments, such as giving examples of code gone wrong, and then weakly hinting that the licensing of software developers would have prevented it (and this is a recurring theme throughout the entire book). The book smelled entirely like "propaganda to support an agenda". I'm a huge fan of his other books, so this was a big disappointment.

Dennis Forbes
Wednesday, February 11, 2004

I don't know...the more I inherit projects from other developers that are hopelessly over budget, behind schedule and just plain non-functional, the more I think certification *might* be the way to go.

But the idea makes me very uneasy for some reason.

Thursday, February 12, 2004

I read Code Complete, not this book, and I thought he had a streak of arrogance.  He seems to think that everyone should write software just like he does.

Software is hard -- it takes all types to complete a project.  Forcing "standards" down people's throats does not encourage productivity.  He has some good points (though not any I haven't heard elsewhere), and he comes off as a bit of a control freak.

Thursday, February 12, 2004

No idea, but I certainly recommend the 'Rapid Development' book.

Buy Code Complete if you want to find out more about writing the actual code - sensible variable names, comments, layout, structuring etc etc.

The Rapid Development book is more about project management and the things which will affect a development schedule; it makes no assumptions about your tools and assumes that you or your developers actually know how to code. (E.g. daily build, estimates, design before coding, ect. You'll find articles same the same things in Joel's Archive).

The Software Project Survival guide is more of a "lite" version of Rapid Development. I wouldn't recommend this if you already have or are considering buying Rapid Development.

The last time I looked there were sample chapters available either on Amazon or Steve McConnell's site or his company's site

Thursday, February 12, 2004

"He has some good points (though not any I haven't heard elsewhere), and he comes off as a bit of a control freak.

All programmers are control freaks - I'm a control freak - if this piece of hardware doesn't do exactly what I 'tell' it to do then the user will have a big problem :-)

Johnny Moondog
Thursday, February 12, 2004

if anyone wishes to buy Code Complete, maybe you can wait for the 2nd edition of Code Complete which should be out sometime in March 2004.
but i agree Code Complete is a very good book

Thursday, February 12, 2004

----"the more I inherit projects from other developers that are hopelessly over budget, behind schedule and just plain non-functional, the more I think certification *might* be the way to go."----

Yea, certify them all, lock them up in the local loony bin and throw away the key!

Stephen Jones
Thursday, February 12, 2004

I've recently read "Professional Software Development".  Steve has strong feelings for his position on the issue of advancing the industry into a "professional status".  And he is in a position to publicly, and widely, express these opinions through his books and speaking engagements.

As to whether the original poster (or anyone else) should get the book... Well, that would depend on whether or not you are interested in Steve's position on the topic.  It doesn't matter where _you_ stand on the issue, just whether or not you're interested in knowing _Steve's_ position.

I was interested, I read it, I enjoyed it and I'm still thinking about the things Steve had to say.  Personally, I'm pleased with my purchase and the time spent reading it.  YMMV.

Thursday, February 12, 2004

Norrick, the reason "certification" makes you uneasy is that there's no connection between developers being good, and developers having to satisfy some external certification process.

That's the whole problem and it's a big one. I developed this insight one day when I was reviewing the certification exams some people had sat for what is supposed to be the professional body in Australia.

I was staggered at their incompetence, and yet I was told they were judged to be good by the standards applying to the testing, and now walk around calling themselves certified something or other.

The problem, always, is Who does the certifying?

Thursday, February 12, 2004

*  Recent Topics

*  Fog Creek Home