Career Programmer, The: Guerilla Tactics for an Imperfect World
| 2002-01-20 00:00:00 | | 211 | Programming
Conquer the problems that all professional programmers routinely face, regardless of language, operating system, or platform Improve your ability to deliver solid code, on time and under budget, in even the most uncooperative environments Master the self-defense techniques that you need to shield yourself, your project, and your code from corporate politics, arbitrary management decisions, and marketing-driven deadlines
Unrealistic schedules, unstable releases, continual overtime, and skyrocketing stress levels are legendary in the software development industry. Unlike traditional occupations such as accounting or administration, the software business is populated by programmers who are as creative and passionate about their work as musicians or artists. For most, it is a complete surprise when they enter the business world and find that internal politics, inept management, and unrealistic marketing drive the process rather than a structured and orderly approach based on technical issues and quality.
The Career Programmer explains how the individual programmer or project manager can work within the existing system to solve deadline problems and regain control of the development process. Care is taken to offer proven, practical, and hands-on solutions that are designed to work when confronted with the political and chaotic realities of the business environment. Issues are addressed from the points of view of both the programmer and project manager, and steps are shown in all perspectives, from large-scale teams down to projects with a single developer. For the individual programmer or project manager, the end results are less overtime, less stress, higher-quality software, and a more satisfying career.
`The Career Programmer: Guerilla Tactics for an Imperfect World is a gem of wisdom in a sea of dry, academic books on the software development process.`
&emdash;Bill `BanzaiBill` Lowry
`Not only does this remarkable book go over, in gory detail, every one of these issues (and many more), but it does so with an experienced view 'from the trenches' designed to empower us, the lowly developers, with the ammunition and knowledge we need to deal with these issues effectively, to become better software architects for it, and most importantly, to be able to defend our turf and our jobs. `
&emdash;Peter Bromberg, eggheadcafe.
Good Read for the Corporate Programmer
Let me start by saying that I was torn between 3 and 4 stars - call it 3.5. There's some very good content in here, but in my opinion, it gets lost in all of the words. I would have preferred if this had simply been a bit shorter and to the point. This is definitely geared toward people in similar situations to the author, i.e. a programmer working inside of a large company, maybe as a contractor, probably in the IT department. Since my career has been drastically different, I've had some similar issues, but many different ones.
- The sooner you realize who runs the show, the sooner you can come to grips with what to do with the information. Is your company run by the programmers? Then you won't have some of the problems that Christopher describes, but you will have others.
- The range of the book is fairly good, from QA, requirements, marketing, and management.
- There are good pointers in here about diplomacy and working with the other powers in your company.
What's not so good:
- The chihuahua jokes. They're just not funny and repeating them as a running gag makes them simply tiresome. If there's a third edition, I'd cut them out.
- It gets repetitive. There's constant talk about the fact that you love to write code and that's all you really want to do. You must also fight, fight, and fight for QA.
All in all a good read, just not a great one.
Perspective from one in the known
This book is nothing about programming skills. It is about the life as a programmer. I think this is a very good read.
Most likely one's career experience will be very different from other people's. It highly depend on the specific individual. Possibly no one approach works for every one.
Bare in mind that this is just one man's perspective. The good thing about the book is that it makes you aware of the things besides just the technical skills, in case you are not aware of those yet.
Although one could possibly get by ignoring these issues all together, chances are it will be in you advantage to know the `soft skills` very well.
I have enjoyed this book and it does not take much time at all.
Pragmatic approach to dealing with business people
This book does a few things well and trhen does them well again. It is humourous, readable and funny ,, oh and practical too. Some what a cross between Dilbert, How to win friends and influence people and the one minute manager series.
This book sets up its chapters to mirror a typical development project scenario from inception to delivery. Each chapter looks at managements needs verses developer needs and how to manage the process of ensuring both sides get what they want.
Chris Duncan rightly points out the coders tend be artists who want to code great code in a perfect environment with little regards to the financial relaities of business. He conversely points out that business people (who pay us to code ) have agendas based on making a profit (which keeps us in paid employment) and that neither side is wrong. His basic approach is, 'Developers live in a business environment dedicated to making money. business managers pay the bills, they call the shots. Get over it and learn how to become saavy enough to survive this reality'.
He also points out that business managers tend to set the development deadlines, decide on the scope, create the scope creep and then fire those who fail to meet their demands. He believes that is our fault as coders for not communicating in an understable way that business managers understand and can relate too. If we can become saavy enough to talk to them in ways they understand ($ and cents) then we have a better chance of managing our projects through to a successful, and non-burn out, completion while also maintaining a life along the way.
Using this as his base line he then gives a set of anecdotes, ideas, stories and humourous observations on the mis-communications that occur between managment (who pays for projects) and the coding teams (who develop the projects). It uses a commonly recognised cast of characters to show how various people interact and where the gaps are that cause long hours of coding to meet impossible deadlines and unstoppable scope creep can occur. he then gives some pragmatic ideas on how to avoid, plug, disarm or minmise these problem areas so both sides have a win / win situation.
What this book doesn't do.
1 - It doesn't attempt to give a magical cure for all develop project ailments in the corporate world, rather it tries to give guidence on the best way to deal with those ailments in a way that meets managmeents needs and avoids personal burnout.
2 - This book is not a book designed to make you a better project manager. It is a book designed to help you be a better coder working in the business world. Become more business needs aware and you will become a better coder. You may even get your life back.
3 - It does not espouse a new project development methodology and it does not give negative ways to sabotage, goof off or earn money for nothing. Rather it looks ways of lubricating the interactions between managmeent and coders so both sides get what they want.
It is funny, readble, accurate and disturbingly familiar (expecially the VDU through the fourth floor window scenario ,,. I am sure I never told my shrink about that particular fantasy).
So why a four and not a five? I worked in the Govt sector doing project development and unfortunately this book was of no use to me in that situation. govt managers ar not money minded and generally have no accountability so the ideas her present no leverege points that help in that situation. Had the book been called The CORPORATE Programmer: Guerilla Tactics for an Imperfect World, Second Edition (Expert's Voice) then the fifth star would have applied. Sorry chris but no one is perfect ;-)
Recommended reading for programmers new and old
Being a good coder has a lot to do with activities other than writing code. Don't get me wrong, I love learning about and experimenting with new products and technologies and my idea of the perfect day involves coffee, headphones, my code editor, and a good juicy coding challenge. In fact, sometimes I think it's the programming that's the easy part of this job. It's all the non-coding stuff that is so hard to master. This is what The Career Programmer: Guerilla Tactics for an Imperfect World, Second Edition is all about. This book is about improving every aspect of your programming job except the coding itself (actually, it might do that too.) The topics in this book are the things we tend not to talk about because we're always focused on learning about the next acronym.
Are you one of the many programmers out there who do it for fun? Maybe you're just considering getting into programming? Maybe you're getting tired of corporate life and considering options. This book will help you consider what you're doing and quite possibly cause you to make some positive changes in your career. Whatever your situation, why not make the most of it?
While I liked this book very much, I do think Duncan painted an overly pessimistic picture of the corporate world at times. That said, all his points were very valid, even those that were a bit over the top.
Check out the sample chapter on the Apress site to get a feel for the author's writing style. Just to give you a flavor for the book, here are a few of my favorite section/chapter titles.
- So You Thought You'd Just Be Coding All Day, Eh?
- Why People Run Businesses and Pay Programmers
- Taking Control of Your Time
- Preventing Arbitrary Deadlines
- Getting Your Requirements Etched in Stone
- Preparations for Effective Information Gathering
- The Myth of the Eight-Hour Day
- Controlling Your Destiny
Duncan tells it like it is (or, at least, how it can be at times.) His writing style is enjoyable and easy to read. And, there are more than a few Chihuahua jokes. One can never have too many of those,,. Highly recommended reading!
A realistic view of the world of programming as an occupational choice
Not a typical book from Apress but definitely appropriate for their audience, The Career Programmer teaches the highly skilled programmer the non-technical skills involved in getting a job or starting a career as a contract programmer. Contained within the pages of the book is a distillation of the stuff you did not learn in college but need to know to work in the real world. Some of the problems the author examines include working in an imperfect world with unrealistic deadlines and expectations, dealing with changing expectations, estimating techniques, keeping the project under control, getting a job versus flying solo, and how to do either. In the real world good coding skills are simply not enough to survive. You have to learn to deal with corporate politics. The Career Programmer, Second Edition is highly recommended to those who are or want to become programmers for a living.