A Pragmatic Philosophy
Why spend your life developing software unless you care about doing it well?
Think! About Your Work
Turn off the autopilot and take control. Constantly critique and appraise your work.
The Cat Ate My Source Code #
Provide Options, Don't Make Lame Excuses
Instead of excuses, provide options. Don't say it can't be done; explain what can be done to salvage the situation.
Software Entropy #
One broken window, left unrepaired for any substantial length of time, instills in the inhabitants of the building a sense of abandonment—a sense that the powers that be don't care about the building. So another window gets broken. People start littering. Graffiti appears. Serious structural damage begins. In a relatively short space of time, the building becomes damaged beyond the owner's desire to fix it, and the sense of abandonment becomes reality.
Don't Live with Broken Windows
Don't mess up the carpet when fixing the broken window.
Stone Soup and Boiled Frogs #
It's time to bring out the stones. Work out what you can reasonably ask for. Develop it well. Once you've got it, show people, and let them marvel. Then say "of course, it would be better if we added…."
People find it easier to join an ongoing success.
Be a Catalyst for Change
Most software disasters start out too small to notice, and most project overruns happen a day at a time.
If you take a frog and drop it into boiling water, it will jump straight back out again. However, if you place the frog in a pan of cold water, then gradually heat it, the frog won't notice the slow increase in temperature and will stay put until cooked.
Don't be like the frog. Keep an eye on the big picture.
Remember the Big Picture
Good enough soup #
The scope and quality of the system you produce should be specified as part of that system's requirements.
Make Quality a Requirements Issue
Great software today is often preferable to perfect software tomorrow. Know When to Stop
Your Knowledge Portfolio #
An investment in knowledge always pays the best interest.
- Serious investors invest regularly—as a habit.
- Diversification is the key to long-term success.
- Smart investors balance their portfolios between conservative and high-risk,high-reward investments.
- Investors try to buy low and sell high for maximum return.
- Portfolios should be reviewed and rebalanced periodically
Building Your Portfolio #
- Invest regularly
- Manage risk
- Buy low, sell High
- Review and rebalance
Invest Regularly in Your Knowledge Portfolio
- Learn at least one new language every year.
- Read a technical book each quarter.
- Read nontechnical books, too.
- Take classes.
- Participate in local user groups.
- Experiment with different environments.
- Stay current.
- Get wired.
You need to ensure that the knowledge in your portfolio is accurate and unswayed by either vendor or media hype.
Critically Analyze What You Read and Hear
- Know what you want to say. Plan what you want to say. Write an outline.
- Know your audience. (WISDOM acrostic)
- What they Want?
- What is their Interest?
- How Sophisticated are they?
- How much Detail they want?
- Who do you want to Own the information?
- How can you Motivate them to listen?
- Choose your moment: Understanding when your audience needs to hear your information.
- Choose a style: Just the facts, large bound reports, a simple memo.
- Make it look good: Add good-looking vehicle to your important ideas and engage your audience.
- Involve your audience: Get their feedback, and pick their brains.
- Be a listener: Encourage people to talk by asking questions.
- Get back to people: Keep people informed afterwards.
It's Both What You Say and the Way You Say It