- Brooks’s law: Adding manpower to a late software project makes it later
- Parkinson’s law: Work expands so as to fill the time available for its completion.
- Hofstadter’s law: It always takes longer than you expect, even when you take Hofstadter’s Law into account.
- Clark’s law: Sufficiently advanced cluelessness is indistinguishable from malice.
- Lewin’s equation: B=ƒ(P,E). An individual’s behavior is a function of both their personality and their environment.
- Fast, good or cheap. Pick two.
- “The bearing of a child takes nine months, no matter how many women are assigned.” – Frederick P. Brooks
- Flitting doesn’t work, nor does sitting tight
- Attention economics
- Don’t write a functional spec
- Start-up metrics for pirates
- The Zombie Function: micromanagers create zombies
- Death by risk aversion
- Fail fast, fail cheap (re: tactics, not the overall business).
- Beware of future creep
- To create change, you need to reach out to those who don’t already agree with you.
- The 18 mistakes that kill startups
- 85 operations rules to live by
- Things that get in the way of good software:
- Competing interest (departmental)
- Political infighting
- Lack of audience clarity
- Fuzzy strategy
- No vision for success
- Aspects of good software
- Functionality: does it do what I need?
- Correctness: does it do it correctly, without a bunch of bugs?
- Learnability: can I learn it quickly? Is the manual good?
- Efficiency: does it let me do what I need without long workarounds?
- Usability: is it user-friendly?
- Intuitiveness: does it feel natural?
- Flow/enhancement: does it keep me fully engaged where the world drops away?
20 things I believe in as a technologist
Posted by – March 22, 2010