I build software systems, trying to understand the various aspects of the systems including user requirements, technology, and how the team works together to realize the system that the customer asked for. I am actively involved with using and developing Patterns for software development. My particular interest is patterns involving the relationship between organizational structures and software architecture. Related to this, in March 1998 Ralph Cabrera and I led a workshop on Configuration Management Patterns at ChiliPLoP. I was Program Chair for PLoP 98.I am a member of the Boston AgileBazaar, a group of people interested in Agile Software Development.
I wrote a book on software configuration management patterns with Brad Appleton. The book has a pattern language for setting up a basic working environment that avoids many common coordination problems that teams have. The book is based on our experiences, as well as others in the software and patterns community.
Patterns provide a way to share software architectural knowledge, and are based on the work on patterns for (Building) architecture by Christopher Alexander. Some starting points to explore patterns:
- The Patterns WikiWeb
- Brad Appleton has written a good introduction to patterns
- If you are interested in writing patterns read this Pattern Language for Pattern Writing
- Some of my favorite books on Patterns
- The Publications section of my web site has some papers that I have written on patterns.
Software Development Resources
- Riskology Risk Simulator, a tool to evaluate project risks. From the Atlantic Systems Guild. The book Waltzing With Bears discusses risk management in more detail. management.
- Satisfice has some testing resources, including a test case generation tool. Testing.com also has some useful tools and other resources.
Misc Fun Sites
- beauté(code), an exhibition about beauty and programming, was at Artemesia Gallery in Chicago in July, 2002. The exhibit website is still active and is interesting.