This article was originally published by Alibaba senior technical expert Wu Xiang in Alibaba intranet. It is now published under the authorization of Alibaba Middleware.
Recently, we upgraded our Java IDE from Eclipse to IDEA. During the upgrade process, I studied IntelliJ IDEA and did some research on it. I understood why IntelliJ IDEA (commercial) has a better reputation than Eclipse (free), and I would like to share some personal thoughts on it with you.
After reading this article, you will learn about the importance of the Creative Flow and ergonomics, because they can make you stronger. This article mainly covers the following topics:
Since 2012, IntelliJ IDEA has been rapidly rising. In 2016, it captured 46% of the market share of the developer market. According to a research in 2018, the market share of IntelliJ IDEA increased to 55.4％, winning the throne of the Java IDE world. Martin Fowler, renowned author, software consultant and speaker, speaks highly of IntelliJ IDEA on his blog. IntelliJ IDEA also achieved 98% customer satisfaction, which is extremely high.
According to global researchers, its success is attributable to the following two factors: successful product features and marketing strategy.
Successful Product Features
Successful Marketing Strategy
I assume most of you are already very familiar with the features of IDEA. So I am not going to elaborate on them here. Now, let us unveil the true reasons for its success.
To my understanding, the fundamental reason for its popularization and rise is that it follows two important design philosophies:
Every aspect of IntelliJ IDEA is designed with ergonomics in mind. IntelliJ IDEA is built around the idea that every minute a developer spends in the flow is a good minute, and things that break developers out of flow are bad things. Every design and implementation decision considers the possibility of interrupting developer's flow and seeks to eliminate or minimize it.
I personally find this quote very beautiful.
"Creative Flow" or just "Flow" is a state of mind where you feel evenly attuned, and focused on the task at hand.
When you are in a Flow state, you feel completely absorbed in your activity, and you forget about time and space. Flow state is an optimal state of consciousness.
After studying this design philosophy, I cannot help imagine how wonderful our products will be, if they can bring users into and keep them in their Flow state. They will help our users efficiently complete their tasks, and significantly improve the production efficiency.
IntelliJ IDEA claims that they use ergonomics in the design of the IDEA: "The capable and ergonomic IDE for JVM".
Ergonomics is a science that focuses on the study of how to enhance human comfort, and reduce fatigue and discomfortness through product design. This concept is very important in home design and human engineering to help you feel more comfortable, increase the efficiency, and reduce the pressure.
Here are two typical examples of ergonomics:
Customer service headset
Without customer service headsets, customer service personnel will have a much more difficult time.
Zipper carton box
The quality and ergonomic zipper design of Yiside zipper carton boxes are the best in the industry.
Inspirations of ergonomics on software design:
For more information, see the fifth article on the references list.
If you want to experience an ergonomical design, IDEA shortcut keys and the no-save-button design will help you understand what ergonomics means.
Our team believe that the IDEA growth engines: outstanding design concepts, extraordinary user experience, open community, and the parallel business model of the community version and the commercial version. It is available as an Apache 2 Licensed community edition, and in a proprietary commercial edition. The evolution circle of IDEA is to attract more users with better product experience, and to attract more talents to develop better products by using profit contributed by users. What I learned from IDEA is that our products must be subject to people-centric design.
I will integrate the design concepts of flow state and ergonomics into the design of our technical products, and I look forward to presenting our achievements soon.
Here I would like to share two flow state IDE plug-ins with you:
1. Hot code replacement tool: JRebel
A hot deployment plug-in that helps developers modify Java files of a running project and dynamically reflect changes into running projects. Click to learn more
2. A must-have development and testing tool: Cloud Toolkit
Helps developers more efficiently develop, test, diagnose, and deploy applications. This plug-in allows you to easily deploy your local application to any machine. Learn more about Cloud Toolkit at https://www.alibabacloud.com/help/doc-detail/98551.htm
Wu Xiang, Alibaba Cloud senior technical expert. Wu Xiang has been serving as an architect of Alibaba Cloud Settlement Platform for many years, and is the founder of the tbbpm workflow engine. Wu Xiang was responsible for commercialization of cloud products from scratch. In recent years, he has been responsible for middleware development of Alibaba systems such as stores and details.
Alibaba Clouder - November 12, 2019
Nick - May 7, 2019
ClouderLouder - July 7, 2020
Alibaba Clouder - December 2, 2016
Apache Flink Community China - August 2, 2019
Alibaba Developer - December 24, 2019
A secure environment for offline data development, with powerful Open APIs, to create an ecosystem for redevelopment.Learn More
Accelerate software development and delivery by integrating DevOps with the cloudLearn More
Alibaba Cloud (in partnership with Whale Cloud) helps telcos build an all-in-one telecommunication and digital lifestyle platform based on DingTalk.Learn More
Web App Service allows you to deploy, scale, adjust, and monitor applications in an easy, efficient, secure, and flexible manner.Learn More
More Posts by Alibaba Clouder