Code Time Data: Ranking the Top 5 Code Editors in 2019
TL;DR
- Visual Studio Code has used user experience and extensibility to become today's top code editor
- Sublime Text wins for performance for large projects
- Atom's GitHub integration and hackability have been challenged by VS Code's extensibility
- Notepad++ and Vim continue to maintain large but slowly declining user bases
The unfolding code editor wars and Microsoft Visual Studio Code's rise to the top
Since the launch of Microsoft's Visual Studio Code, the code editor wars have really been heating up. With so many options available, many of them free and open source, it's an incredibly competitive product space. Over the last three years, however, Visual Studio Code has rapidly grown its user base, built out a powerful developer ecosystem, and upended the code editor status quo.
VS Code's feature-rich yet straightforward user experience and powerful extensibility have overshadowed some of its obvious flaws. As a result, with the right combination of features, VS Code has shown what it takes to win the code editor wars.
VS Code's dominance is reflected in its title as the most popular developer environment, according to the Stack Overflow's 2018 Developer Survey:
But other code editors have gained sizable followings as well. Notepad++, Sublime Text, Vim, and Atom are popular with developers. But how do these code editors stack up against each other?
Framework for ranking code editors
If you're thinking about switching text editors, or if you're new to coding, we've weighed the pros and cons of the most popular tools and distilled our findings into a concise framework to help you with your decision.
We specifically compared user experience, performance, extensibility, and learning curve across code editors and assigned a grade based on the following rubric:
- A: Excellent, superior in all ways
- B: Good, has a few minor issues
- C: Satisfactory, lacking in several important areas
- D: Poor, significant issues or reasons to proceed with caution
- F: You've been warned
After comparing each code editor based on these metrics, we compiled the final results below.
Now let's break down each code editor for a more in-depth review.
1. Visual Studio Code
Visual Studio Code is a free, cross-platform, open-source code editor developed by Microsoft, initially announced back in mid-2015. VS Code has quickly gained significant popularity within the development community and is now the most popular development environment, used by 34.9% of the nearly 102,000 respondents in the 2018 Stack Overflow survey.
VS Code's out-of-the-box setup natively integrates features you would typically find in some of the more full-fledged integrated development environments. VS Code includes an integrated terminal, debugger, and source control, which supports Git by default. Even VS Code's built-in intelligent code-completion tool, IntelliSense, is surprisingly robust.
The activity bar provides quick access to these features, in addition to a search tool and a shortcut to the extensions marketplace. As a result, searching across an entire codebase and discovering new extensions is easier and more intuitive than searching in Atom or Sublime.
VS Code offers around 8,000 extensions, owing to its fast-growing community of contributors to its ecosystem. VS Code makes it easy to find, research, and install extensions straight from the editor's marketplace. The community of developers dedicated to building extensions and expanding VS Code is remarkably robust; VS Code had the most contributors of any project on Github in 2017. You can expect a bunch of new features and improvements in the next year, which are all documented in the public roadmap.
VS Code Key Criteria: biggest ecosystem means more developers adding to value over time
VS Code makes a few tradeoffs between performance and other features. Being an Electron-based app, VS Code can feel slower when compared to native editors such as Sublime Text and Vim, which open, load, and search files and projects more quickly.
If you're thinking about switching to VS Code, quickly finding keybindings and your favorite extensions makes for a smooth transition and a more manageable learning curve.
2. Sublime Text
Sublime Text is a proprietary, cross-platform code editor, initially released in 2008. Sublime Text is the third-most popular code editor, used by 28.9% of respondents in the 2018 Stack Overflow 2018, down slightly from 31% in 2016.
Sublime Text offers a more traditional code editing experience that emphasizes simplicity and ease of use. Unlike VS Code, the out-of-the-box setup does not include an integrated terminal, debugger, or source control. And if you're not willing to pay for the $80 license, Sublime frequently reminds you to purchase one, a nuisance in a world with plenty of free editors.
Sublime only offers around 4,500 packages and lacks a preloaded package control tool.
Atom and VS Code, both open source, are easier to extend, have built out large developer ecosystems, and are updated regularly. Whereas Visual Studio Code and Atom have thousands of contributors and a large team of maintainers, Sublime Text relies on a much smaller team.
When it comes to performance, Sublime Text edges out VS Code, Atom, and other editors. Sublime Text is well known for being lightweight, speedy, and responsive. If performance is your top priority, Sublime Text loads, manages, and navigates large projects incredibly well.
Sublime Text Key Criteria: performance for large projects
Sublime's roadmap and documentation can be a bit obscure and unpredictable. Even so, the community has built out a great forum to get you started.
3. Atom
Atom is a free, cross-platform, open-source, code editor developed by Github and initially released in 2015. Atom has attracted a sizable following, used by 18% of respondents in the 2018 Stack Overflow developer survey, up from 12.5% in 2016.
Atom, like Sublime, offers a more familiar code editing experience without an integrated terminal and debugger. Atom is, however, tightly integrated with Git and Github and provides seamless source control.
Atom Key Criteria: hackability and seamless Github integration
Atom offers around 8,000 packages, owing to its large community of developers and to the ease with which packages can be built and deployed. Hackability and usability are core to Atom's mission and design philosophy. Even so, Atom is approachable and straightforward; it's easy to get up and running.
Why has Atom struggled to compete with VSCode and Sublime? Despite its noticeable speed improvements over the past few releases, Atom still lags behind other editors due to its slow file loading and switching times. Working with large codebases, like the Linux kernel or the Android open source project, can cripple productivity.
4. Vim
Vim is a free, cross-platform, open-source code editor, first released in 1991. Despite its age, Vim was used by 25.8% of respondents in the 2018 Stack Overflow developer survey and 26.1% in 2016.
Used almost entirely through the command line, Vim is radically different. It's depends on the keyboard and shortcuts, which can be a power tool for experts, requires the longest learning curve.
Vim Key Criteria: for experts who prefer keyboard and shortcuts over UI
Much like Sublime Text, Vim is known for its top-notch performance. Having been around since the early 90s, Vim has had the attention from the development community needed to become a dependable development tool.
Vim is highly extensible and offers a whopping 17,000 plugins, but finding, installing, and managing extensions can be difficult. Without a central marketplace, users are responsible for either selecting a plugin manager or manually setting up each plugin, a stark difference from Visual Studio Code and Atom.
Vim has built an unbelievably passionate community and developer ecosystem, but the learning curve is frequently regarded as steep and raw. If you're up for the challenge, learning Vim will take significant time and patience.
5. Notepad++
Notepad++ is a free, open source code editor built for Windows and first released in 2003. Notepad++ rivals Visual Studio Code in popularity, used by 34.2% of respondents in the 2018 Stack Overflow developer survey, not far from the 35.6% in 2016.
Notepad++ Key Criteria: lightweight and basic for Windows
Notepad++ removes many of the more complex features of VS Code. It's far simpler, without too many bells and whistles, but lacks much of the elegance of Atom or Sublime Text. Notepad++ only supports close to 600 plugins, far behind the thousands of extensions offered by almost all the other popular code editors, and lacks an easy-to-use marketplace.
Most likely owing to the application's simplicity, Notepad++ is lightweight and fast. You'll notice feature limitations far before performance issues. To new users, Notepad++ is an easy-to-learn tool for your most basic text editing needs, if you're willing to overlook its outdated look and feel.
What's next?
There are many other development tools out there. Whether they're focused on a particular niche or mass-appeal, they're all fighting for attention and usage. VS Code has seen a meteoric rise over recent years, but how long will it maintain its lead? Will one of the existing top editors improve to upset the new king? Or will we see a newcomer rise through the rankings in years to come? One thing we know about the code editor wars—developers are sure to benefit the most.