The end of a love story, after 11 years together. Atom :-(
Tags: vscode, productivity, discuss
Published: 2022-07-19 09:26:41

It's been 11 amazing years with ups and downs, where we enjoyed each other's company and had a lot of fun facing together new experiences.

And now, it's (almost) over.

On December 15, we will say goodbye.

You know.. It's hard to leave behind a love story :-(

Especially, when it involves a trustworthy "partner" that doesn't cheat on you and is always there to make you happy whenever you need it.

On December 15, **GitHub plans to turn out the lights on Atom.**

EOL.

I started using Atom in 2011, the year it came out.

It was released as a free and open-source, deeply customizable, yet easy-to-use code editor. And I loved it.

![Atom text editor](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/veh3089n6hnela7o1d2c.png)
 
Back then there wasn't much wiggle room to handle code written in multiple languages within the same interface.

Atom was designed by Github to accommodate the needs of every developer thanks to its built-in package manager that lets you install different language interpreters and plugins like autocompletion features and so on.

![Atom package manager](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r84zw1pt7ibw3ewsc12p.png) 

Moreover, you could directly tweak the UI and features to your liking with HTML, CSS, and JavaScript.

It quickly gained popularity, but **hasn’t had any significant feature updates**, except for maintenance and security patches. This is why **its popularity dropped**, as you can see from the Google searches from 2011 until now:

![Atom Google searches](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2liz2l40cut1d0rrgp6i.png)
 
So, here I am, flirting around with yet another code editor (hoping this time it will last forever). Before revealing its name, let me explain one thing...

## Prerequisites before choosing a text editor

As you might know, I am a **professional backend developer** and I'm also **learning Vue.js**. I write production code daily and I have very little patience towards slowliness of my working tools.

So I had a list of prerequisites:

- There must be shortcuts to language-specific syntax
- Good integration with git flow
- A precise linter that flags stylistic errors and suspicious constructs while typing the code
- A near-perfect syntax highlighting with .erb, HTML, Javascript, CSS files
- Easy navigation between files
- Go to Definition through a simple click/key-binding
- Should be an actively maintained code editor

## What code editor did I choose?

The story went like this...

![code editor](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xfkoe3re98m81c5kbay8.png) 

Well, Atom was developed by Github, and Github was acquired by Microsoft in 2018. By transitivity, I realized that if GitHub turns out the lights on Atom, it will focus on Microsoft's proprietary software (Visual Studio Code).

So, I did a little research.

How is Visual Studio Code adopted by the community?

By 2016, VsCode ranked 13th among the top popular development tools on Stackoverflow. It reached the #1 spot according to the [2019 Developers Survey](https://insights.stackoverflow.com/survey/2019), with 50% of 87,317 respondents using it.

![2019 Developers survey](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/szznem8p4ns63c1d9q6j.png)
 
I was almost convinced.

After an internal battle between my mind and my computer (a 2021 Mac Mini) that lasted several weeks, I decided to give it a try...

And fuckity fuck.. there we go!

![My computer with Vscode](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/f4bfl87ji42ccfll2027.png)

Am I liking it? Yes.
Is it fast and reliable? Yes.
Does it meet all the prerequisites? Yes.

**So, Visual Studio Code has become my official editor as Ruby backend developer on a Mac computer.**

Our kids will be amazing :-)

Now, I'd like to give you a few suggestions.

## How to set up Vscode for maximum productivity

The extensions I'm using are...

- `Material Icon Theme`: shows icons near each file in the tree indicating the type of source code (html5, js, ...)
![Material Icon Theme](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/795iq2c9bdeliymo354l.png)
 
- `Live Server`: easy to start local webserver that reloads automatically when you update the code (particularly helpful when coding frontend)
![Live Server](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/bs9fa1lwobu198ta9clm.png)

- `Vetur`: Vue syntax highliting
![Vetur](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qsdpc7pj9nb5jo9myg91.png)
 
- `Rails and Ruby`: Ruby on Rails support for Visual Studio Code

![rails support on vscode](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cekpb5cs1fzl4z3ctvdi.png)
 
What's your favourite IDE? Let me know in the comments.

Bye,
Matt