
picked up a few books from the library this afternoon. one of them was the mythical man-month by mr. fredrick brooks - an all time classic on the human elements of software engineering. but wait a minute, do i not already have this book somewhere on my book shelf? sure i do. mine is a 1982 reprint of the 1975 first edition (the one on the left). i had it for quite many years and had read it cover-to-cover. the one on the right is the 1995 edition that i borrowed from the library today.
i read through the first two chapters this evening and was still amazed by the messages in this book which were written over 30 years ago. the tar pits, the optimistic programmers, the interchangeable men and months, the gutless estimations, and the myth about adding more resources to a late project will improve the schedule - aren't they all sound so familiar even in the today's environment?
while technology has certainly improved and matured in a much more rapid rate since the 80s or even from a year or two ago, the overall development of software engineering processes or disciplines has lagged behind. come to think of it, is it really that much different from managing a software development project today comparing with 2, 5, 10 or even 20 years ago? sure there are differences and improvements but certainly don't think they are that dramatic or far-reaching changes. agile software development certainly is a good practice today but the concept existed in the 90s in a slightly different form or shape. remember rapid application development (RAD) back in the PL/1 or C days?
today managers of software projects face many similar difficulties and challenges as described by mr. brooks in his book. the ugly truth is it doesn't seem like we are much better off today after all these years. so exactly what happened or what didn't happen? did technology help or make the situation worse? should we focus more on process improvement or maturity? or does it all come down to the "human elements" of the whole software development ecosystem which include you, me and many others?
read this book or re-read this book. would like to hear your view ...
