DEV Community

Cover image for How I chose my Code Editor

Posted on

How I chose my Code Editor

My first love

I'm a student and as such, I'm always looking for what's best for learning. The first time I wrote .html, I used Notepad++, great and small but very powerful editor. I really love it but has limitations. So why I used it? Because my notebook was a Sony Vaio Win7-Starter 32-bits with 2GB RAM. Power wasn't a great stuff and Notepad++ was the perfect option.

My second love (and the lover)

Eventually, I moved on to a bigger laptop and instead of looking for the old code editor, I was making a course in Coursera and saw the instructor used Sublime Text. I downloaded and loved it. Beautiful and light, what a powerful combination! I said to myself, still love it.

Later that year, when I sign up at Github something called my attention: a code editor made by Github team, let's give it a try I said and it was so beautiful, I was willing to forget Sublime and move on with my life. I'm still running Atom for certain projects directly related to Github but, again life is strange and I switched again.

My current(s) Code Editor(s)

I started FreeCodeCamp and saw this show -Daily Programming- where the developer worked in some kind of cool themes and where I fall in love with Atom was in those times. My love with Atom was certain, secure, rock solid...or that was my thoughts.

I started to talk beautiful things about Atom and how cool was to work with it until a friend appears from nowhere and introduce in my life Visual Studio Code. Don't get me wrong, I love Atom and Notepad++ (yes, not so fan of Sublime, sorry not sorry) but VSC is a thing from another world. I really (REALLY) like to work with it and is lighter than Atom and have all the cool stuff Atom has and...I can't decide until today which one is my code editor.

Decide what's the best thing for you

Until today, I don't know what is going to be my last choice but one thing is certain: you have to decide what's best for you, regardless what people and reviewers and YouTubers and other devs tell you. This is not a direct advice from me, it's an opinion built with many errors and bugs. The most secure thing is that I'm mistaken.

I would like to know your Code Editor history

Discussion (51)

etcwilde profile image
Evan Wilde

IDE days

Started with eclipse, felt bulky and slow. Switched to qtcreator, which worked quite well for a while, but still felt like overkill.

Lightening up

Then I switched to lighter editors. First came sublime, then atom. Sublime was nice. Atom was like a slow Sublime. Neither were thrilling, but both were better than Notepad++, which is what people were recommending.

Magic editors

Then, in my second year of undergrad in university, I saw my professor using vim effectively. It looked like magic. There were so few keys involved, with the ability to do so much. It was beautiful. So, I sat down and learned vim.

Then I started my masters. My supervisor is on the emacs side of the vim-emacs religious war. He showed me may interesting features with emacs, and it too had the appearance of magic. So I learned/configured emacs to my liking.

Now, I use both vim and emacs simultaneously. A lot of the packages in emacs are better written and are more efficient, but I prefer the vim workflow. For my research, nothing can replace org-mode. You can write your ideas, implement the sql queries, r functions, or python snippets, directly in your document, and have the results output directly into the document too. It's like an ipython notebook, for any language. It's really a great setup for that purpose.

I hate the navigation in emacs. Moving characters and words is fine, but moving between window panes is a nightmare. For my bigger/multifile projects, I like to use vim + tmux, which are also integrated into my window manager. So, the continuity of my setup is vim-centric, so it feels better than emacs.

So, basically, vim and emacs, almost equally.

vergeev profile image
Pavel Vergeev

I've been doing small CS problems when I realized the IDE was an overkill. Switched to Vim because all the cool kids were doing it. Three years later, I still use it for practically all of my web apps.

maxart2501 profile image
Massimo Artizzu

Switched to Vim because all the cool kids were doing it.

That's a quite bad reason. If you're feeling ok with it that's good, but maybe you're missing out.

vergeev profile image
Pavel Vergeev

Okay, it's just about a week now. Today I switched back to Vim.

VS Code is a good editor, but it didn't give me anything a terminal couldn't give. And I really missed the close integration with my terminal.

That said, that was an interesting experience, thank you for the idea.

vergeev profile image
Pavel Vergeev • Edited on

That's a quite bad reason.

I know! :D

maybe you're missing out

I've actually tried other editors, but I don't feel like I've given them enough time. Today I'm going to setup the VS Code and use it for a week or two just to see if things will become easier to me.

jakevossen5 profile image
Jake Vossen

Vim for me too. After learning it and installing a couple of modules it becomes very powerful and easy to use.

nelruk profile image
Nelson Author

Didn't try that but seems pretty pragmatic and reviewers love it. I'm going to leave it for practice later :)

michaelhonan profile image
Michael • Edited on

I swear to god, I used to change text editors like I did clothes.

My perfect code editor journey:

  • Notepad ++
  • Sublime Text
  • Netbeans
  • Sublime Text
  • Visual Studio Code


  • Sublime Text
  • Atom
  • Visual Studio Code
  • Atom
  • Visual Studio Code

And I've been using VSC ever since. I love it.

clickclickonsal profile image
Sal Hernandez

I started with Sublime when I first started to learn how to code. I checked out Atom a year later and switched back to Sublime a couple of days later because it was pretty slow compared to Sublime at the time. I tried out Brackets and didn't like it either. I tried Visual Studio the other day but it didn't seem all that, so I just went back to Sublime. :-)

A Sublime User

asynccrazy profile image
Sumant H Natkar

I have been working on MS stack for last six years and the only IDE available to me till now was Visual Studio, and can't complain because it's a damn powerful IDE.

But with release of dot net core I now have an option of working in VS code but enterprise apps need Visual Studio, but VS Code by no means is less powerful and the pox I have done so far in VS code have made me love it as an go to open source editor.

Also I just can't get enough of themes and icons provided in it.

jacoby profile image
Dave Jacoby

As a CS Freshman in the mid 1990s, I used the department lab with Solaris x86 machines and it's default editor, emacs, once or twice, but the problem I'm hearing about vim these days -- how do you get out of it? -- hit me, and I mostly closed the window and logged off.

But the learning labs were campus-provided, running real Solaris machines and CDE and was taught vi. Later, working as a student, I began to learn all sorts of additions and customizations to make it work for me.

First job out of school was in a Windows-centric environment, and we used UltraEdit, which introduced me to column-editing. It was a very nice editor and I think it's still available.

But it wasn't Free or free. In my next (and current) job, a staff position at a university, I started switching between vim on Linux and ActiveState's Komodo Edit (free not Free) on Windows and Linux. I could mount remote file systems and edit from Linux, and open new files by typing komodo file.txt at a bash prompt.

But later, I tried and eventually bought Sublime Text 2, which was my main editor for some time.

atom drew me away, with similar style and customization. Right now, I am liking Visual Studio Code, but there are features I miss, like printing (yeah, but sometimes I like to print, read, and plan, rather than diving in without a plan and hacking around), and sorting lines. When I need sorting, or want to edit a file on a remote machine, I go back to vim.

antonk52 profile image
Anton Kastritskiy

In school was forced to use Adobe dreamweaver. Then found out about sublime and been using it for about 5 years. The last year been using it with vim emulator and about 6 month ago switched to vanilla vim and happy with it

nelruk profile image
Nelson Author

A friend told me to use in my Vaio (mentioned in the post) the DreamWeaver. Being noob as I was, I did it. I think that made me hate so much AD although it's a good tool to work with.

antonk52 profile image
Anton Kastritskiy

I think it gave me a lot of dislike towards trying to fit to much into a single application. That is why after using it I leaned towards very plain editors which just do one job and do it well. However, I have not opened AD in many years at this point so it might be worth a shot to see how things progressed since

rrackiewicz profile image

Talking about editors is like one of those uncomfortable dinner table conversations at your parent's house. :)

I like to give everything a fair shake before I settle on anything and as such, I came to pretty much the same conclusion as you; VSC, as it stands right now, is in a sweet spot for me. However, it could very easily turn into a bloated, steaming turd if it evolves (devolves) beyond its lightweight, humble roots. Time will tell.

As many have commented below, I am also a fan of Vim, and my choice of whether I use VSC or Vim boils down to what I am doing. If I'm working a lot from the command line and doing some quick scaffolding or changes, Vim works great for me. For nose-to-the-grindstone programming, I feel more comfortable in VSC. I imagine that if I really took the time to up my Vim game, and learned more about customizing and extending Vim, I would use it more because the inner-minimalist in me appreciates a tool that gets out of the way.

Thank you for sharing.

nsvoid profile image
(Null Static Void)

I used Notepad++ for a long time. Before that I was using Notepad and having to remember to set the right text encoding so it would work on the server!
I moved to Comodo Edit when I ditched Windows. Komodo Edit has a lot of really cool tricks, but even on a modern laptop with 16gb of ram I found it would slow down and get glitchy sometimes.
Earlier this year it started crashing and causing problems. I followed the bug hunt on github for a while, but my patience grew short so I went to Atom. Atom is missing a few features compared to Komodo, but is much more stable. And I find the uncluttered interface easier to work with.
I may go back to Komodo someday. It's the editor I've used the longest (outside of VIM). But they need to re-architect or something. When one of their own guys admits it will slow down over time if you have multiple tabs open, that is bad.

davidhaile profile image
David Haile

I started my career using Brief! Brief worked really well for coding if and only if you had a keyboard with the function keys in two columns on the left side. Once keyboard layouts with function keys along the top were standard, Brief was no longer the king of the mountain. I used traditional command-line "vi" for years and years and still go back to it for some tasks where it excels. Sublime Text was my favorite editor for the last 2-3 years, but like you, I just discovered Atom and it works well with the Particle Electron build system. I haven't yet figured out the auto-code formatting with Atom like I could do with Sublime. I'm downloading the Visual Studio Code right now and will give it a try. My main computer runs Linux - Ubuntu 17.04.

jwalzak profile image
Jason Walzak

I like Sublime text quite a lot. It's much faster than Atom or VSCode.

I like VSCode a lot because it has font ligatures.

I like VIM because it's super fast, and learning how to use it can be fun.

delta_maniac profile image
Harikrishnan Menon

I started out with the classic notepad, I remember typing an entire page HTML calculator or something of that sort in it. Then tried sublime,atom didn't stick to any of those either. As a text editor my goto editor is vim until the recent advent of Visual Studio Code.
Vim on console, VSC for others and Vim Bindings everywhere!

gamesover profile image
James Moberg

I started out using Nick Bradbury's Homesite in 1995 (which was later acquired by Allaire, Macromedia and Adobe Systems.) It was last updated in 2003 and I used it until a couple months ago due to lack of Win10 support and outdated HTML support.

I also use NotePad++ and have evaluated Sublime, Atom, Eclipse, Brackets and Code. Many of them require you to create a "project" prior to editing any files... or you can't even type into an editor without first saving a file. Many editors also lacked flexible FTP access that I had grown accustomed to in Homesite.

I've since switched over to UltraEdit and I really like it. It's extremely customizable and I've been able to remap many hotkeys that I've grown accustomed to over the years, so I didn't have to fully reeducate myself to learn new key combinations. It's also portable which enables me to take a copy of my configured editor with me on-the-go.

washingtonsteven profile image
Steven Washington

I mainly use VSCode, but occasionally find even that's overkill when I just need to open and edit just one file, or even just copy and paste something. For that I use TextWrangler just to have a quick thing load, though even that's starting to show its age and bloat. On Windows I'd use Notepad++, but Mac has a bit of a hole there. TextEdit isn't powerful enough, VSC is too much and TextWrangler is just slow. Still looking!

stephanie profile image
Stephanie Handsteiner • Edited on

I started with Notepad (yes the windows one) in 2001, then I switched to Notepad++ in 2003, used that until 2010. In 2010 I bought a MacBook Pro and with that eventually switched to OS X macOS, I bought Coda and used it until they released Coda 2, which “didn't feel right any more“ and overall it was fucking laggy (at least on my machine). I decided to teach myself emacs.

Then I was lucky enough to receive a beta key for GitHub's product, which I now mainly use for projects connected to github, especially, since they started to implement GitHub further into the Editor. :)

For everything else I'm still using emacs and no, I'm not having carpal tunnels. :P

vidueirof profile image
Federico Vidueiro • Edited on

My first editor/IDE was Norton Commander Editor! Then I moved to Visual Basic 4... Visual Basic editor had really great stuff for that time, like code completion, debugging tools, documentation integrated, code generation and many other features (visual forms edition).
For ASP development I just used Windows Notepad.

After a dark era working with .NET (ASP/VB/C#) I move to C/C++, Java and PHP so I try from KDevelop to Eclipse passing through old Zend Studio (not the Eclipse version).

Nowadays I use VSCode for Node, PHP, and basic scripting like bash or dockerfile/docker-compose.
Android Studio (Intelli J) for Android development, and XCode for iOS as they are the easier/fastest way to get into development.
And last but not least VIM for a simple editing in command line while doing something else.

nelruk profile image
Nelson Author

Dear God, Norton! You must have all white hair xD (kidding)
Was it hard to code in Norton? I'm asking because of your change to VB4..

ethan profile image
Ethan Stewart

I used Notepad++ for my first intro to programming class in college, since it was just JS and the professor said we didn't need anything too fancy to build our small assignments. Used Netbeans for the classes that used Java and Emacs on the command line for my C++ classes. Also had one mobile app class where I used Android Studio. My first web dev job, I mostly used Textmate, except for the few weeks I used XCode to experiment with a couple concepts on iOS, but when I got my current job I started using Atom. I switched to a different team at the end of last year, where my new tech lead was using VS Code. I loved Atom but I liked the Git integration and several other features, so I tried it for a week, found I preferred it to Atom, and have been using it since.

martyonthefly profile image
Sylvain Marty • Edited on

Very interesting article, I've never thought about which code editor I prefer. In fact, I never stopped changing code editor because I change technology all the time !

I use IntelliJ in my current job because we are working with Spring MVC. It's a very cool IDE and I use it in my personnal project which use Java in backend. It's fast, simple and practical for developers.

But (yes, there is a but), I use Sublime Text to write Velocity code (template engine).

For my personal projects where the logic is writen with NodeJS, I use mostly Atom and VCS when I work with VueJS.

For the sysadmin part, I use nano because it's simple, fast and the shortcut are displayed natively (sorry Vim, I tried but I loose...).

So, I am not restricting myself with code editor that I prefer, I use the most adapted IDE for the situation ! :)

EDIT : some typos here and there...

ratnasambhav profile image
Ratnasambhav Priyadarshi • Edited on

I started with Python on Sublime text. Loved it's plugins and themes. Sometimes I would spend hours just setting it up.
Switched to Atom when I started learning web development. Saw it in a tutorial video and it looked beautiful. But it was too heavy for my laptop.
After an year or so of slow startup time of Atom, I tried out VS Code. Never looked back! Development experience has never been smoother.
Newer version of Atom have better startup times and I want to try it out now that I have upgraded my laptop. Maybe one day I'll reinstall Atom.

mortoray profile image
edA‑qa mort‑ora‑y

I wrote down the simple things I want in a text editor and surprisingly it's a hard combination to find. Too many editors are focused on bells-and-whistles and fail to provide basic functionality.

nelruk profile image
Nelson Author

I'm coding (or at least trying to) since 2013 and didn't find a perfect option. Looking your article, I guess this going take a while :thinkingemoji:

xowap profile image
Rémy 🤖

I've probably worked with all major editors out there up until 2012 and at least gave a try to most of those that came out ever since.

It turns out that I have quite a simple heuristic:

  1. Does IntelliJ's IDEA support the language/framework I want to work with?
  2. If yes, then use it. If no then roll and cry.
citizen428 profile image
Michael Kohl

Turbo Pascal with its builtin IDE is how it started for me in the early 1990s, followed by Turbo C.

After that Vim was my goto editor for quite a while, since I mostly worked on *nix system. I eventually switched to Emacs and essentially turned it into my OS. Nowadays I use Spacemacs, i.e. Vim inside Emacs with a very opinionated set of configs.

I do however often use IDEs at work since their more advanced features are very helpful for working with big code bases one is not overly familiar with.

tux0r profile image
tux0r • Edited on


I started with Notepad in the 90s, came over EditPad Lite and UltraEdit to Notepad++ not much later, tried GVim for a while, stuck with Sublime Text for a few years and finally made the switch to Emacs in 2012 which is where I still feel comfortable. I still have Sublime Text installed for certain regex things.

On servers, I usually have mg, joe or ed (yes, ed) ready, depending on what I want to edit and which server it is.

The problem is that I always feel like I'm missing something when I settle with one tool. I even gave Atom a chance just to find out that Webkit is a horrible code base for about anything. I tried Sam and I didn't understand it. I tried THE and it was disturbing. But at least I'm still believing that there is always a better way to solve all problems.

I wish I could like Vim, just for street credibility. But I don't.

leob profile image
leob • Edited on

I'm using a hodgepodge of tools, Webstorm for Javascript (Node/React/Vue/Ionic), Netbeans for PHP, Eclipse for Java, and VIM for general editing (I'm a longtime VIM user and use it frequently but I never considered it an "IDE").

To make it less confusing I defined more or less the same keyboard shortcuts (key bindings) for the various IDEs.

mikepolinske profile image
Mike Polinske

My IDE/editor of choice is Intellij IDEA. I too have tried many different editors. I did not like Eclipse at all. Coda has some cool features. Brackets also is nice. But for me Intellij offers the most "bang for the buck".

tiffany profile image
Tiffany White • Edited on

VS Code still cannot open. Multiple. Projects. It's been at least two years and this has not been implemented. And the extensions just aren't as plentiful as Atom's. I liked it a lot but its deficiencies are too much.

My first editor was TextWrangler on macOS. Today it is Atom.

leob profile image

So how does that work, you need to run multiple instances of VSCode, one for each project? In fact that's also how Webstorm (which I've been using over the last few years) works. Doesn't bother me too much, it's just like having each project opened in its own window which you can also see as an advantage.

sarbash profile image
Sergey Sarbash

My today's tools are Vim liteIDE (I'm doing coding in Go) and Kate. When I need to write some SQL/pgsql I take dBeaver and it does things pretty well.
Vim rocks forever.
When I need to change some things in my openwrt router (I've flashed openwrt myself to replace the stock firmware) I use it's embedded vi (through ssh).
My colleagues actively use VSC but I didn't touch it yet.
Thank you for the interesting story.

dhanush_ramuk profile image
dhanush 

Started my first programming with Turbo C, then onto visual studio as I was developing an app for windows platform , then I had an interest with python and now using sublime and pycharm.

apopescu profile image
Popescu Alexandru Constantin

Personally i prefer Sublime Text on Ubuntu, i've tried Atom but is so slow at startup and in general is much slower that Sublime. I use Ubuntu 17.04 and Sublime is just awesome.

maitreyav profile image
Maitreya Vyas

I also had a similar start. I currently love using VS Code.