For consulting, though, I've built up a pile of expertise over the last two years. I've developed very strong skills for identifying and fixing performance problems, and this tool is just a way to make my life easier.
One possible approach I've considered is to open-source the tool. This has a few benefits and a few disadvantages:
- Benefit: this type of tool enters the broader developer eco-system. People start to recognize that focusing on single components is a bad way to solve performance problems.
- Benefit: other people can contribute to make the tool better.
- Con: competition. If other people are using the tool, then I end up with a fair bit more competition for the consulting services.