In the two months since our departmental library was augmented, I’ve read through around eighteen of the seventy five books recommended by Joel Spolsky. I’m pleased with the pace of reading, but I have to admit that I haven’t gained as much from some of the books as I would have if I were actively attempting to study them. During “Making the Technical Sale” for example, I found myself spending more time sleeping then reading – even though it’s one of the books I can probably learn the most from, having no direct sales experience… maybe it was just a stressful week in work. Other books, such as “The Tipping Point” by Malcolm Gladwell, were page turners that caused me to miss my bus stop.
Throughout this process, I’ve been picking books off the shelf pretty much at random. I’d take a look at the availability list on the company intranet and then examine the amazon reviews, finally picking something that intersects on the curve of positive customer feedback versus catchy title. Once I’d read the easy choices that caught my attention, I was left with a lot of books that all looked good, but didn’t really differentiate from each other in any way that would make me want to choose one from another. At this point I turned to the mercy of the joelonsoftware forum for advice.
The stand-out recommendation (before the discussion descended into a critique of NASA’s ability to manage software engineering projects) was “Peopleware” by Tom Demarco and Timothy Lister. During the didactic process I had zoomed into the tree-level view of reading lots of interesting books, while the forest-level concept of a “Management Training Course” had blurred to the edges of the picture, I had essentially started working on lots of little problems while taking my mind off the main goal – criticially analyzing how each book applied to a management position.
In hindsight, “Peopleware” is an obvious recommendation. The world is saturated with parodies of bad management, from the pointy haired boss in Dilbert and David Brent from The Office, to the pure sociopathic malice of the boss in Office Space; this book is a successful attempt to categorise and alleviate the fundamental problems that managers cause or exacerbate within their organizations.
The authors keep a light and humourous style which never degrades into a malcontented rant, and they positively emphasise the role of management as a supporting tool to allow workers to complete their roles both more effectively and in a manner that gives the employee a sense of job satisfaction. The school of self-serving, ego-boosting, megalomaniac management is drawn out into the limelight without too much malice. Some interesting soundbites:
- Provide employees with a spacious, a noise-free, and well-lit environment. – This is absolutely fundamental to anyone working in a position where they need to use their brain. The books site numerous studies done on how the ability to work in a quiet, adequately spacious, and well-lit environment significantly boosts productivity and reduces stress and error.
- Realise that expenditure on personnel is an investment, not an expense. – Companies need to actively encourage their employees to grow their skills, knowledge, and abilities. Skimping on training, fundamental tools, or rewards for performance stifles employee morale and prevents intrapreneurship.
- Allow employees to set their own estimates. – An employee willl work harder to meet his own targets, as they see it as a challenge to themselves. This also improves their ability to estimate tasks. An employee will not work harder to meet an unrealistic target from someone else, particularly someone who is removed from the problem, or unskilled in the area involved.
- Allow employees to pick the people on their teams – Allowing employees the opportunity to work with people whom they are friends with, or whom they want to learn from motivates them to justify the responsiblility that is given to them. I think most engineers will agree that it’s much easier to work with someone you get on well with.
- Aim for standardised measurements of quality, but don’t make it the be-all and end-all. – If you aim for a certain level of CMM, don’t turn down challenging problems that could negatively impact your CMM level. Techies in particular love a challenge, and the chance to learn a new technology or tackle a difficult problem is very rewarding in itself. And the opposite is true; Working on dull projects negatively impacts employees.
So, is this book of any benefit to the lowly developer? If you have ever been in a position where a person or process made your work more difficult, then this is the book which will allow you to objectively influence the situation to your benefit. Every manager should read this once a year, and every engineer with a poor manager should discreetly place this book on their desk.