To start the new year, I figured it could be fun to look back and share all the different code editors I’ve used so far professionally, as a student or just for fun. Note that I didn’t have many screenshots from back then, so I did my best to find ones that illustrated the state of the tool when I was using it.
As a Kid
I started coding quite young. Back then my process was to randomly stumble into different languages and tools with no real direction beyond just trying to build stuff.
I learned the basis of programming using QBasic running on DOS. No syntax highlighting. White on blue. The struggle was real. I also remember clearly how confusing it was to me that
Later on I was gifted a book on VB and gave it a go. It was a very different experience from QBasic, and it was quite exciting to create UIs by dragging components around. I built many toy projects with this and learned to stop using
At that point in time, the internet started to be a more mainstream topic, and I really wanted to be building websites. So I picked up Macromedia Dreamweaver and WYSIWYG’d my way to my first site.
At that point I was part of a few programming AOL chatrooms and heard that Frontpage could interesting, so I picked it up. I remember thinking that it was just like Dreamweaver except worst and giving up on it after a few weeks.
After some time building small sites, I got the impression that Real Programmers™ used HTML and not WYSIWYG tools, so I picked up an editor to change actual code and not just drag and drop components. It was very different for sure and I built monstruosities with it, but I really liked it and I managed to ship quite a lot of sites!
I’m counting this one as a code editor!
I wrote quite a lot of code directly on my Casio TI-83 during classes where I should have probably paid more attention. Note that the screenshot is non actual, I couldn’t afford the much conveited silver edition.
I used to create some Flash animations for fun. The next step for me at the time was to learn ActionScript in order to make games. I never got really good at it, but I had fun with it even if I never shipped a completed game.
As a Computer Science Student
When I was a bit older I got into a 5 year computer science / software engineering school.
Emacs was the editor installed on some of my engineering school’s machines, so I picked it up and survived to tell the tale. I’m pretty sure I only used 5% of its capabilities, so I’m not really able to judge, but it did the job and made me feel like a hacker.
I spent quite a while writing code on paper at school. We even had exams where you would fail if your C code on paper would not compile. Good times.
Overall I think that it was a good way to force yourself to think before writing code and I would recommend anyone to try… but maybe only with pseudo code.
I bought my first MacBook and started using TextMate because many of my schoolmates were doing the same. I think this is one of the editor that really holds a special place for me. The UI was smooth & clean, it could do a lot but wasn’t overwhelming. I also spent a lot of time watching Ryan Bate’s Railscasts where he used Textmate to explain how to use Ruby and Ruby on Rails.
This one was my main go to editor for quite a long time and only gave it up after giving up on seeing TextMate 2 get released.
When working with KDE, I used whatever was available and it happened to be Kate! I have to admit that I don’t remember much from this one aside from the fact that it was there and had syntax highlighting.
I did quite a lot of Java at school and during my first internships, so it came along with using Eclipse. After a bit of time in TextMate and Emacs, this felt like a bit much, but I got used to it and used it for years when working on Java projects. I never got used to the amount of ressources it was using though.
At one point I worked at a company where I couldn’t install anything on my machine without a very very long and complex process to follow… and I wasn’t going to code with NotePad! To solve this, I ended up finding an editor that wasn’t blocked because it was so lightweight. I don’t think I met many people who used this one, but to this day I still have very fond memories of my time using it.
After some time working with Java, I decided to give Netbeans a try to see how it would fare versus Eclipse regarding ressource consumption. It was slightly better, but had other tradeoffs so I ended up using Eclipse the most.
I briefly gave game development a try using Unity. It was quite interesting, but at that point I decided to try to make a career in the web and not video games, so I didn’t pursue for this for very long.
As a Professional Software Engineer
Moving into my career as a software engineer, I kept using Eclipse & TextMate. I also tried a lot more than I shared here, including PhpStorm or Aptana, but I don’t think I spent enough time with them to even mention.
Since I’ve heard a lot about it, I gave NotePad++ a try for an ASP project, but I wasn’t a big fan and dropped it in favor of Visual Studio fairly quickly.
I worked in the Microsoft ecosystem for a bit (C#, .NET), so I used Visual Studio with ReSharper and really liked it. The tooling by Jetbrains made a huge difference in developer experience, and despite how much I disliked .NET, it made the whole thing enjoyable.
Visual Studio Express
I had a nice experience with Visual Studio, but I didn’t necesserally wanted to pay for it. I also thought I would be fine with only a subset of its features, so I used Visual Studio Express for a while. It was an alright tool, but when working outside of the Microsoft ecosystem I felt like it wasn’t as good as the other options available.
This never was my main editor and I mostly used it on servers without any UI before I started getting into Vim.
I started using Sublime around 2010, mainly because the “search & replace in project” feature of TextMate was so clunky. It was pretty good and I did use it for a while, alternating with TextMate. However I never really got into it and I ended up abandonning it for Vim.
Since I was using Ruby quite a lot, I figured I would give this IDE a go. It was pretty interesting to see everything possible, but it felt like a bit much and took away from the simplicity that drove me to Ruby after a few years using Java… so I stopped using it and went back to TextMate or Sublime when coding in Ruby. I also like the idea of a “general” code editor much more than one made for a specific language.
For the past ~10 years I’ve stuck to mostly the same tools. I did try Atom and VSCode, but by the time they were available I was already too deep into Vim. It was doing everything I wanted it to do, so I never felt the need to switch.
In 2012 I had been coding for a while and got a bit tired of constantly learning new code editors & IDEs. To address that, I picked up Vim hoping it will be a good tool for a very long time. So far I’m still very happy about it and I managed to get it to do everything I wanted except iOS development. I will sometimes try a new editor but I always ended up coming back to Vim and maybe adding a few plugins to get the new features I found interesting in said new editor.
For the record I’m not a complete purist and actually use MacVim. Back then it was an easier transition out of TextMate and I got used to it so I never saw the upside of switching to.
I’m building iOS apps, and despite my best effort using Vim, XCode clearly remains the best developer experience for this task. Because of this, I learned how to use it and now I find it pretty good, especially when working with SwiftUI previews. It might be stockholm syndrome, I’m not sure.
For iOS development, I don’t think I’ll be able to get away from XCode so this one is here to stay.
For everything else, I’m looking more and more at Neovim. I would still get to leverage my knowledge of Vim and its ecosystem, but also get to enjoy more advanced customisation with Lua among other things.