Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
The career programmer : guerilla tactics for an imperfect world
Duncan C., APress, LP, Berkeley, CA, 2002. 211 pp. Type: Book (9781590590089)
Date Reviewed: Jul 11 2002

Most computer programmers today began their professional careers after being drawn by the potential personal gratification one feels after creating something that will work and be of use to someone.

Junior programmers would be hard put to imagine the great number and variety of problems that they will run up against in the workplace and that are unrelated to the difficulties of creating a program, such as communication with bosses and colleagues, the struggle for power, ever-changing technological policies, and company restructuring.

Even veteran programmers find that they spend a great deal of time and energy every day attempting to overcome these problems. This could seriously affect the development of their professional careers, regardless of their technical value as programmers.

Many programmers are unprepared to cope with situations in the IT companies of today. IT literature is not normally of much use, as it tends to simply offer books on popular methodology or manuals on how to use the different tools that appear on the market. Here, Duncan shares his thoughts, advice, and personal experiences, which are invaluable for both inexperienced and veteran programmers.

Chapter 1, “Welcome to Corporate America,” takes a look--with an excellent sense of humor--at the American IT Enterprise, and is equally applicable to European enterprises. It begins by pointing out some of the unexpected problems that programmers will encounter. Chapter 2, “Business is War. Meet the Enemy,” contains a detailed description of these problems, with special emphasis on unrealistic deadlines; vague definition of requirements; inadequate time for analysis and design; lack of time or resources for testing; poor company management; and internal politics.

In chapter 3, “Good Coding Skills Are Not Enough,” the author insists--including examples drawn from his own professional experience--on the need for a programmer to acquire skills other than the purely technical ones. This is the end of the first part of the book. If any student of programming decides to go on to the second part, he or she may be said to feel a true vocation for this profession.

Duncan begins the second part by explaining the best way to overcome each of the obstacles described earlier. Chapter 4, “Preventing Arbitrary Deadlines,” begins with the most important of all of them. Together with a detailed list of each and every stage of a programming process, Duncan explains the various techniques available to programmers to prevent them from losing control of the project they are working on.

Chapter 5, “Getting Your Requirements Etched in Stone” launches an in-depth study of how to develop communication skills with executives and other people responsible for the project. “The programmer who successfully delivers his software is most often the person who has good technical skills, good organizational skills, and is willing to use each when called upon.”

In chapter 6, “Effective Design Under Fire,” Duncan offers an amazingly clear insight into how a good programming project design should be developed, without worrying about the methodology that is applied.

Chapter 7, “Practical Estimating Technique,” considers a very specific aspect of programming project designs. Worthy of special mention is the part called The myth of the eight-hour day.

Chapter 8, “Fighting for Quality Assurance,” justifies the need for quality controls before the programs are handed over to the clients. He vindicates the creation of the post of tester as simply one more member of a programming team.

Chapter 9, “Keeping the Project Under Control,” draws attention to several tools that can help keep a programmer from losing the control of his or her project, including version control and optimization of work meetings.

In the final chapters, “Managing Your Management,” “Corporate Self-Defense,” and “Controlling Your Destiny,” the author expresses his opinions about the relationships and problems involved in communication with executives, colleagues, and the various work situations that a programmer may face.

Few IT books can be expected to survive the passing of time. Methodologies will become outdated and tools obsolete. Since this book deals with problems that are so much a part of programmers and their profession, it will be one of the survivors.

Reviewer:  Jose Lloret Review #: CR126254 (0209-0496)
Bookmark and Share
 
Software Psychology (H.1.2 ... )
 
 
Software Development (K.6.3 ... )
 
 
General (D.2.0 )
 
 
Management (D.2.9 )
 
Would you recommend this review?
yes
no
Other reviews under "Software Psychology": Date
Software design--cognitive aspects
Détienne F., Bott F. (ed), Springer-Verlag New York, Inc., New York, NY, 2002.  2000, Type: Book (9781852332532)
Jun 12 2002
Studies of the work practices of software engineers
Lethbridge T., Singer J. In Advances in software engineering. New York, NY: Springer-Verlag New York, Inc., 2002. Type: Book Chapter
Jul 17 2002
On the effective use and reuse of HCI knowledge
Sutcliffe A. ACM Transactions on Computer-Human Interaction 7(2): 197-221, 2000. Type: Article
Sep 1 2001
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy