Thursday, March 24, 2005

Early Access Programs

The first time I got in touch with the concept of EAP (Early Access Program) was after switching to IntelliJ IDEA back in 2001. Tools like TMate, SmartCVS, Yourkit, etc. have followed this approach as well. I know, the idea of letting people test your software before you release it is not new at all, but these EAPs are based on a different philosophy:
  • everybody can participate
  • participation is free
  • new builds are available almost on a weekly base
  • users report bugs and feature requests
  • bugs get fixed
  • users can vote on feature requests
  • users and developers comment on entered issues
  • forum for questions, opinions, and ideas
Looking at the relased versions of such tools, it becomes obvious that they do benefit from the community feedback and the interaction between users and developers:
  • robust with low bug rate
  • very high usability
  • many nice-to-have features
  • fun to work with
Therefore, I hope that many more tools will follow the JetBrains-style EAP pattern of software development.

But, of course, there is also a downside to using EAP software. Sometimes, builds are not very stable or a working feature is suddenly broken in a later build. I got burnt a few times developing with IDEA 5.0 EAP and finally decided not to use it at work anymore due to critical IDE features being broken which reduced my productivity significantly. From experience, my strategy is now "EAPs @ home - official releases @ work".

No comments: