So, while I was at the beach this week, I finally finished “Peopleware – Productive Projects and Teams” by Tom DeMarco and Timothy Lister. As I read through the book, I kept having these moments where I thought that the two authors were walking with me through my days at work. There were some major themes that were threaded throughout the book, and I think we all need to keep them in mind. This is a summary of the starred sections, underlined bits, and notes that I took while reading. Keep in mind that these are short clips from the book. The book goes into much greater detail and explains the arrival at each of their points. Also, this is a summary of the points that the author has made, and are not necessarily a reflection of my position, opinion, or belief.
- Managing the Human Resource
- Development is not a production line, and the people who do development work are not replaceable parts
- Most times, when management talks about productivity, the actual result is getting more out of each dollar spent, not each hour worked.
- The quality standard of the Client and the End user is typically much lower than that of the Developer. The Client needs to pay for development time, and is willing to sacrifice quality for time to market.
- Taking the time for high quality means less defects, and higher productivity.
- The development team, who takes pride in their work, will typically set a standard of quality that will result in productivity gains that will offset the increase in cost.
- Parkinson’s Law – Work expands to fill time allocated for it. Complete silliness. Organizational busy work expands to filled your time. It is the job of managers to remove that busy work.
- The Office Environment
- Comments like “I get my best work done in the early morning before anyone else arrives”, or “in one late evening, I can do two or three days work”, or “I’m staying home to get some important work done” mean that the office is not conducive to productive work.
- Research at IBM has shown that 100 square feet of space, 30 feet of work surface, and either enclosed spaces or 6ft walls per person is optimal for optimal performance.
- Developers who think that their workplace is acceptably quiet are one third more likely to deliver zero defect work
- Thirty percent of the time, people are noise sensitive (they are working alone) and the rest of the time they are noise generators
- Flow is a condition of deep, almost meditative state achieved during single-minded work time that provides a gentle sense of euphoria and minimizes the passage of time. “I was in the zone, and looked up and it was 3 hours later!”
- It takes an average of 15 minutes of undisturbed quiet time to enter flow time.
- What matters is not the amount of time you are present at work, but the amount of time you are working at your full potential (flow time).
- We need to ask ourselves “Does a phone call that will interrupt someone warrant the interruption, or can I send an email that someone can deal with at their convenience?”
- Methods to drown out noise, like background music, occupy the right brain, which is used less during cognitive thinking. But it also diminishes the creative processes of coding, which decreases the “Aha!” spark of creative leaps.
- Other environmental features, such as windows and outdoor spaces, have been shown to significantly increase focus, performance, and productivity.
- The Right People
- Most hiring mistakes result from too much attention to appearances and not enough to capabilities
- Sometimes dress codes are just a way for managers to demonstrate they are in charge
- A good manager knows when to shake up the local entropy and let their developers be themselves
- Good ways to analyze possible candidates is through a portfolio, code samples, auditions (such as a presentation on a specific topic), and aptitude tests. Aptitude tests, however, are more suited for short term hiring and self assessments.
- By the time the person leaving documents everything, the new person starts, gets their PC, the team helps get them up to speed, a new hire or turnover will cost the company between four and six work months.
- Turnover engenders more turnover
- The best companies are not noted for their similarities, but for their differences. People stay at these kinds of companies because there is a widespread sense that you are expected to stay.
- Retraining is a common feature of companies with low turnover.
- Big M Methodologies are an attempt to centralize thinking, and remove decisions from the development team. They typically encourage people to build documentation rather than do work and have resulted from paranoid defensive thinking and to try to cover every possible scenario. Small m methodologies are a basic approach one takes to getting a job done, and leaves tailoring the methodology to the development team.
- Convergence of method is a good thing. But Big M Methodologies are not the only way to achieve convergence. Better ways to achieve convergence of methods are training, tools, and peer review among other methods.
- The Hawthorne Effect – people perform better when they are trying something new. The change itself was not as important as the act of changing
- Growing Productive Teams
- A jelled team is a group of people so strongly knit that the whole is greater than the sum of the parts. They don’t need to be managed in the traditional sense. and they don’t need to be motivated. They have momentum.
- The purpose of a team is not goal attainment but goal alignment.
- You do not build a jelled team, you try to grow one
- A jelled team is easy to identify – it has low turnover, a strong sense of identity, a sense of eliteness, joint ownership of the product, and obvious enjoyment in their work.
- Teamicide – You cant make teams jell, but there are things you can stop doing that prevent teams from jelling: defensive management, bureaucracy, physical separation, fragmentation of people’s time, quality reduction of the product, phoney deadlines, clique control
- A great way to get a team to jell is to give them a small victory, such as creating a spaghetti dinner together
- Follow an Open Kimono attitude – trust the people that work for you
- If you have decent people under you, the easiest way to improve their chances is to get out of their hair and out of their way.
- Visual supervision is almost useless for development workers
- Skunkworks projects are a corporate form of insubordination that if used properly could benefit the team and the organization
- Some companies have the right chemistry for growing jelled teams. Some elements that create the right chemistry are: making a cult of quality, providing lots of satisfying closure, building a sense of eliteness, allowing and encouraging heterogeneity, preserving and protecting successfully teams, providing strategic but not tactical direction
- It’s Supposed to be Fun to Work Here
- It is part of the human condition to provide order to Chaos. It is the job of a good manager to break up and parcel out small packets of chaos to each of their direct reports.
- Ways to re-introduce constructive chaos to the workplace are: pilot projects, war games, brainstorming, provocative training experiences, trips, conferences, celebrations, retreats
- Free Electrons – Free spirits with perspective and maturity are given a loose charter to explore cutting edge projects in the best interest of the company, and then get out of their way
- Holgar Dansk – the Sleeping Giant – sleeps in your organization too, waiting for too much entropy, too little common sense, and will wake up and step in to save the day… as long as you let them.
- Son of Peopleware
- Motivational accessories, the inspirational posters and coffee mugs, are belittling and humiliating and do more damage than good.
- Sustained overtime prevents well jelled teams as well as lowering the actual productivity of your individual developers
- A well-knit team, one where there is trust and safety and no competition, will foster peer coaching between its members to transfer knowledge across a range of topics. The learner and the teacher will be interchangeable without threat.
- Internal competition can be a cause of Teamicide as well. Some sources of competition are: annual salary or merit reviews, management by objectives, praise for extraordinary accomplishments, awards, prizes, performance bonuses, performance measurements in any form. These sources must be counteracted to prevent the feelings of competition.
- Process Improvement methodologies, such as Carnegie Mellon’s Software Engineering Institute (SEI) Capability Maturity Model (CMM), are Big M Methodologies reborn. Focusing on the Key Process Areas(KPA), but turn off the institutional score keeping.
- People truly hate change. They are not rejecting a particular change on its merits, they are rejecting ANY change.
- You should focus on converting the “Believers but Questioners” of the change.
- The fundamental response to change is not logical, but emotional.
- An expense is money that gets used up. An investment is the use of an asset to purchase another asset. Training should be considered an investment, not an expense.
- Experience gets turned into organizational learning when an organization alters itself to take account of what experience has shown. This can happen by instilling new skills and approaches in its people, or by redesigning itself to operate in a different manner.
- Middle management is where the organizational learning happens. Removing middle management layers will ensure the loss of organizational learning, but holding on to middle management doesn’t make learning more likely to prosper. Middle managers must communicate with each other and learn to work together in effective harmony.
- The ultimate management sin is wasting people’s time.
So… what do you think of the ideas that the authors present? Which do you agree with? Which do you disagree with? Leave me some feedback and let me know what you think.