Ideal World / Real World
A major project on which I've been working for the last ten months has just gone live, so I've had some time recently to take stock of things, do a bit of R&D, and catch up on some reading. I've been considering how to go about things better in the future, and to this end have just finished a couple of very different books concerned with the software development process.
O'Reilly's Extreme Programming Pocket Guide is a handy wee summary of the approach (only 81 pages), depicting a near-utopian development shop where everybody is happy and projects come in under budget and on time. It got me quite fired up actually, and some of the concepts described are interesting, but deep down I just know this would never happen in the real world - too much politics, too many personalities at play in the workplace IMHO.
And this is where the second book I've been reading this week picks up - The Career Programmer - Guerrilla Tactics for an Imperfect World provides useful suggestions how to deal with the aforementioned politics and personalities, in the pursuit of spending more time happily coding and developing your skills and career. Both books are well worth reading for any professional coder, as together they provide a bunch of useful advice how to make the life of a developer less stressful.