Some people feel that there is no room for individuality on large teams or complex projects.
"Software construction is an engineering discipline," they say, "that breaks down if individual team members make decisions for themselves."
1. Serious investors invest regularly—as a habit.
2. Diversification is the key to long-term success.
3.Smart investors balance their portfolios between conservative and high-risk,
high-reward investments.
4. Investors try to buy low and sell high for maximum return.
5. Portfolios should be reviewed and rebalanced periodically.
Learn at least one new language every year.
Read a technical book each quarter.
Read nontechnical books, too.
Take classes. Look for interesting courses at your local community college or
university, or perhaps at the next trade show that comes to town.
Participate in local user groups. Don't just go and listen, but actively
participate. Isolation can be deadly to your career; find out what people are working
on outside of your company.
Imposed duplication.
Inadvertent duplication.
Impatient duplication.
Interdeveloper duplication.
orthogonal approach reduces the risks inherent in any development.
Diseased sections of code are isolated. If a module is sick, it is less likely to spread
the symptoms around the rest of the system. It is also easier to slice it out and
transplant in something new and healthy.
The resulting system is less fragile. Make small changes and fixes to a particular
area, and any problems you generate will be restricted to that area.
An orthogonal system will probably be better tested, because it will be easier to
design and run tests on its components.
You will not be as tightly tied to a particular vendor, product, or platform, because
the interfaces to these third-party components will be isolated to smaller parts of the
overall development.
Users get to see something working early.
Developers build a structure to work in.
You have an integration platform.
You have something to demonstrate.
Tracer Bullets don't always hit their target
Not meant to be used, only to practice building
Allows you to ignore: Correctness, Completeness, Robustness, Style
Assorted Advice
Useful Metaphors for the code base