It is often said that necessity is the mother of invention, and this was certainly the case on the cold winter day in February 2000 when JetBrains was founded. It had been nearly five years since the formal introduction of Java, and the tools market was already crowded with a myriad of development environments, all designed to provide a more convenient user interface for Java development. Although these early IDEs made it easier for developers to create applications, they delivered little functionality to alleviate the time-consuming tasks of coding or ensuring the consistency or excellence of design. As hard-core developers ourselves, we felt that the market lacked a satisfying development environment and we set out to create a tool that would assist professional developers to build complex applications.
Originally, we focused our efforts on restructuring code. As luck, or destiny, would have it, we were the first to make real progress in this area, and we became the first company to introduce commercial support for refactoring. The reigning IDE vendors took notice of us at this time, and soon afterward, all the major players were attempting to implement the technologies we had managed to bring to the industry forefront.
Later that same year, as the dot.com boom went bust and the overall quality of development tools for developers steadily declined, we saw a lot of ways we could improve on what others had failed to do. In January 2001, we introduced intelligence into the tools market with the release of IntelliJ IDEA, the first Java IDE that thinks like a developer. With more capabilities and functionalities than anything the market had ever seen, IDEA took the concept of IDEs and developer tools to a new level.
And we were only getting started! Once we began to effectively compete in the tools space, the most important thing for us was to ensure that future releases of IDEA continued to have the robustness and capabilities that developers wanted and needed. The best way to accomplish this was to allow the developer community to meet and directly interact with IDEAs developers: we introduced our Early Access Program (EAP), which lets developers not only test our pre-beta builds for bugs but also argue for and request features that we implement. This approach works very well and many of IDEAs most powerful features have come into being as a result of the involvement and contributions of community members.
Ever since the initial release of IDEA, we have continued to add new features and capabilities to IDEA that remain true to its founding spirit. For us, nothing has been more central to our development philosophy than intelligence and usability. Creating a tool that helps developers code faster and increase productivity is our forte. Although we are proud to be recognized by industry mavensIntelliJ IDEA has won virtually every major industry award over the past two yearswhat we value most is providing the industry with an intelligent IDE that developers have come to embrace. IntelliJ IDEA is now in its fifth generation, with the sixth currently in the works. I feel extremely proud of the work of our excellent development team, whose efforts I greatly appreciate. I express my personal thanks to all team members for their hard work.
It has been a pleasure working with the publisher and co-authors of this book to show how IDEA helps developers become better at building complex Java applications. Our objective was to bring to our readers a practical understanding of the many features of IDEA and how to unleash its full power. If you are familiar with IDEA, you will notice and appreciate that many of the new capabilities we added came directly from you. If this is your first time working with IDEA, or if you are simply curious to learn why so many of your colleagues swear by it, read this book and then try IDEA for yourself…you will wonder why it took you so long to quit doing things the hard way.
Develop with pleasure!