- Focusing Your Practice
- Avoiding Automated Performance
- Contributing to Open Source Projects
- Beta Testing
- Pair Testing/Programming
- Adopt "Parallel Thinking"
- Search for Bugs in the Wild
- Learn "Systems Thinking"
- Teaching and Writing
- Participating in Conferences and Workshops
- Develop Your Cognition Skills
- Finding the Time for Practice
Learn "Systems Thinking"
If finding bugs in the wild isn't your thing, try practicing systems thinking. I encourage you to get a copy of Jerry Weinberg's Quality Software Management Volume 1: Systems Thinking. It's not too heavy a read, and it points to more material on the topic if you really get into it.
Systems are everywhere, just waiting for you to identify them. If you can train your mind to quickly identify different systems and to notice interactions within the systems, you'll be more effective as a tester. At a recent workshop, James Bach related a story of how, while standing on a street corner waiting to meet someone, he spent time identifying the different systems around him. You can practice by identifying systems while waiting in traffic, walking through malls, sitting in restaurants, and certainly at home and in your relationships.