I've used Atom for the last several years and had been mostly happy with it. Over Christmas I switched to VS Code though and I don't think I'll be looking back. Code is faster and has a noticeably less lag. One of the reasons I moved was seeing new packages coming out on Code and leaving Atom in the dust.
For a month of Flutter I used Android Studio and found it a bloated and complex. I've since switched Flutter development to Code as well.
The Atom->VS Code keymappings really made VS Code stick for me. Usually when I get used to keymappings it's hard to get productive quickly with a new editor.
I'm a Senior DevOps Architect and publish most of my projects as open source. I have a wife, a son and a real life in Hamm, Germany. In my part-time I enjoy making games, music and acting. (He/him)
I used to tweak and configure commands and settings but it was too much work so now I try to learn the defaults (unless it's something I really don't like).
My case was that some weeks ago I started loving to code on my 4gb & 1.44Ghz laptop with no reason, I was used to use Visual Studio Code and Atom, but both of them are very laggy on my laptop so I started searching for a new editor and... I found Sublime Text!
It's the fastest code editor on the web!! No lags at scrolling or writing!
I felt in love since the first second I tried it!
I don't think JetBrains products are suitable for 4G RAM machines, it feels laggy even on my i5 8250U 8G RAM 512G SSD laptop.
When I need to do some web development on my 4G RAM Surface Laptop, I use Brackets which is quite feature-rich out-of-the-box for web development and has a far smaller memory footprint than VSC and Atom (not to mention those JetBrains offerings), although the responsiveness is only on par with VSC.
If I need to do some more general code editing quickly with the low-spec Surface Laptop (which is rare), I use the Caret Chrome App. Although Google officially stopped supporting the Chrome Apps on platforms other than Chrome OS, they can still be installed and used cross-platform with their direct download links in the Chrome Web Store. As I need to use Chrome to browse the web anyway, using Caret means it takes next to nil extra resource.
Hi @Mkenzo thanks for the heads up. I actually laughed when I saw the notifications and that there's a deleted comment. Don't beat yourself up just yet, although I will advise you to work on your dev ethic, or something like that, im not sure. The more you interact in dev communities, the more you'll understand.
I started learning Vim in october because apparently I had nothing better to do. It started out like a nice hobby, every few days I would open up a file, tried to move things around, delete stuff, learn a new command or something and it was nice until I said "Guess it's time to make my own vimrc". Oh boy. It turns out that it was way more entertaining than I was expecting.
The plugin hunting didn't last very long. I found a post about Vim that had a phrase that stuck with me "let sublime be sublime, let Vim be Vim", that was enough to convince me to not try and make Vim behave like Sublime text. But there was still one thing I wanted and that was a good fuzzy finder, and my friend google had the answer for that, fzf. FZF it's best thing ever, it's the only plugin that I would consider essential (even though Vim has a search feature already).
The real time sink was the keymap. It was so dificult to "get it right". I spent an afternoon (on a week day) browsing in github repositories looking for vimrc configs. I'm really happy with the "final result".
The next stage of the journey was trying to find a way of using Vim outside of a terminal. I tried a few Neovim frontends and other editors emulation. In the Neovim GUI department I gotta say that I really liked Onivim and nvim-gtk.
What I liked about Onivim was the integration with language servers, it enables features like goto definition and autocomplete like in VSCode. It consumes like half of the resources that VSCode requires it is still an electron app that takes quite a bit of RAM.
Nvim-gtk is my favorite way of using Neovim, is basically like a terminal except that it provides a few widgets that I appreciate like a file explorer, "real tabs" with a closing button, a plugin manager menu and other stuff. It's written in Rust so is cross-platform, and fast. The only thing that is a bit annoying is the fact that I can't make the cursor stop blinking.
And so now that I have a Vim setup that makes me happy I've decided to go back to Sublime text and see if can get some of that modal editing that I liked about Vim. So far I have tried the NeoVintageous plugin (If anyone wants to learn vim but don't want to use it yet that plugin is a good place to start). I have to say that is a good vim mode, but I stopped using it because it was missing some features and a few others do not behave like I would expect, is like that off by one error that you just can't fix.
Since modal editing is still posible within Sublime text I'm making my own keymap settings (I keep them here) in the form of a package so I can disable everything when I don't need it. The keymap is inspired by Vim but instead of trying to be exactly like Vim I remap Sublime's built-in commands to get a more consistent behavior. I don't get the composable commands that Vim has but I still get a little bit of the modal editing that I wanted.
You can use any editor for dart, using sublime text as code editor and a terminal/command line as you launch the app. But you don't get the debugger inside of the sublime text, therefore only vscode and intellij idea are the only options available.
I dont think vscode is lighter than intellij idea as it would increase the ram usage overtime. From 700mb~6GB when idle(no emulator).
I must say that I've never experienced the memory creep whilst coding go, python, vue and polymer.
Perhaps there is an issue with the dart/flutter plugins?
Once I'm more familiar with dart and flutter, I might go to sublime.
They're both heavy RAM usage. it's not about the electron, it's the OpenJDK Library that keeps the RAM growing. the DartVM is only 150~200mb while the flutter plugins is just 30mb~ less.
I am a JetBrains guy, but I use vscode and sublime for lightweight text editing.
I am currently playing with clojure and have decided to give vscode a chance as my main editor (mostly due to IDEA clojure plugin being pretty crappy IMO). I am not too thrilled. That editor feels just as slugish as JetBrains IDE-s, but doesn't offer nearly as much functionality.
Cursive is the one I didn't like. Maybe I missed something, but I found it almost impossible to actually type my code due to its super-strict and kind of broken pair matching engine.
Honestly, I don't understand the hype about switching IDEs. I've been on PHPStorm since I started web development professionally and used sublime for small scale projects before.
I tried VSCode occasionally, but found myself always switching back. All those features that Atom and VSCode list as hot new features have been in PHPStorm for years. I also tend to miss the double shift feature in other IDEs. Since Jetbrains provides free licences for open source projects, I can't find a reason to switch.
I still use sublime as a simple, fast text editor on the side, though.
IDE always focuses one Particular Framework/ Platform (For eg. You cannot work on Ruby on rails project in PhpStorm)
IDE contains most features already build in for that platform.
IDE always contains a single project file that lists the project code files and related actions
In a Code Editor,
Code editor doesn't focus on any specific Platform or framework. Code Editor can work across all frameworks (For Eg. VSCode can be used with Assembly programs that runs in Arm and also HTML Code that runs in a browser)
Code editor is bare bone and contains minimal features like syntax highlighting out of the box. Most Features are provided via plugin. Users, depending on the technology they work, should install necessary plugins
Code editor doesn't have a central project file as such (This feature is available via an extension anyway)
I've recently started using Intellij IDEA for Scala development, and it's quite nice. The RAM usage is really high but it has a lot of handly plugins for Scala making it a must have for me.
It's recent in terms of how long I've been coding... but my project last year was to switch from Sublime to VS Code. I guess that means I've officially been using VS Code for a year now. I couldn't be happier with it. I basically carried over the keyboard shortcuts from Sublime so I didn't have to learn anything new. It's prettier (IMPORTANT THINGS), the Git integration is 💯, and it has everything I need to successfully do my work!
Last year I worked with:
Atom -> VSCode -> Atom -> vim
No reason for me to switch back to Atom at one point other than my weird resistance to downloading VSCode on my Mac. VSCode is my favorite text editor and I love the built-in terminal. Atom is slow. vim has the potential to make me a little faster, which isn't correlated to being a better programmer, I just enjoy the speed and proficiency. I have some plugins, like a fuzzy finder and a cute terminal, but I still don't know what I truly need of vim quite yet. vim is already neat so I can't imagine dozens of plugins being necessary. Definitely creeping on plugins posted here.
Nice topic, Ben!
EDIT: Guess I should also mention that my switch to vim is going well so far 🔥
Education enthusiast. Ex Groupon Merchant Engineering, Engineering and Growth at Verbling (YC'11) and cram school founder in Taiwan.
Currently building Alchemist Camp.
I love the integrated terminal, too. Are you using wim via the vscode plugin or have you jettisoned vscode completely?
I use the plugin and have vim mode enabled a lot, but I often disable it for certain kinds of tasks. It's gotten to the point where vscode is the only terminal I use and it's where I do all my markdown editing, etc...
I use vim via the vscode plugin when I'm on my desktop, which is Windows. To be honest, I don't really get the same experience with vim in vscode like I do on my Mac with just vim. But I haven't messed around with the plugin much. Still prefer iterm2/ohmyzsh, but vscode is, like you said, better for certain tasks.
Top comments (95)
I've used Atom for the last several years and had been mostly happy with it. Over Christmas I switched to VS Code though and I don't think I'll be looking back. Code is faster and has a noticeably less lag. One of the reasons I moved was seeing new packages coming out on Code and leaving Atom in the dust.
For a month of Flutter I used Android Studio and found it a bloated and complex. I've since switched Flutter development to Code as well.
The Atom->VS Code keymappings really made VS Code stick for me. Usually when I get used to keymappings it's hard to get productive quickly with a new editor.
I can totally relate. I'm usually a IntelliJ-fanboy, but the keymappings-template for vscode really let me feel like home in it.
I used to tweak and configure commands and settings but it was too much work so now I try to learn the defaults (unless it's something I really don't like).
People don't realise how bloated Android Studio is until you use a lighter editor like VS Code 😄
Atom's speed (not it's extensibility, which I loved) put me off it and almost off of trying VS Code.
I'm glad I did though, over the last couple of years I gradually moved from Sublime Text to VS Code and I'm very happy now! Atom is but forgotten.
Honestly, the hardest part about getting moving in flutter development is getting the AVM going tbh... It's 2019 ffs!
Hello Ben,
My case was that some weeks ago I started loving to code on my 4gb & 1.44Ghz laptop with no reason, I was used to use Visual Studio Code and Atom, but both of them are very laggy on my laptop so I started searching for a new editor and... I found Sublime Text!
It's the fastest code editor on the web!! No lags at scrolling or writing!
I felt in love since the first second I tried it!
Well Ram and Processor speed is not the issue , try upgrading to a ssd , it makes all the difference.
It already has an SSD, but it's a tablet/laptop so it's not as fast as an SSD for PC.
Did you buy the license? If not how are popups. I'm also stuck on a 4GB machine
I used Sublime Text for a long time. For a while with the popups and then after purchasing a license.
They are fairly unobtrusive honestly, and it's a great editor.
I think by the time I can afford a license, I would have purchased a stronger machine 🤔 I'm still technically a student
If you are a student, JetBrains provides license for the whole suite for students.
jetbrains.com/student/
I don't think JetBrains products are suitable for 4G RAM machines, it feels laggy even on my i5 8250U 8G RAM 512G SSD laptop.
When I need to do some web development on my 4G RAM Surface Laptop, I use Brackets which is quite feature-rich out-of-the-box for web development and has a far smaller memory footprint than VSC and Atom (not to mention those JetBrains offerings), although the responsiveness is only on par with VSC.
If I need to do some more general code editing quickly with the low-spec Surface Laptop (which is rare), I use the Caret Chrome App. Although Google officially stopped supporting the Chrome Apps on platforms other than Chrome OS, they can still be installed and used cross-platform with their direct download links in the Chrome Web Store. As I need to use Chrome to browse the web anyway, using Caret means it takes next to nil extra resource.
Hi Mkenzo, I wouldn't share cheat/crack codes on a public website populated by developers who probably earn money from apps like that one.
;-)
As @rhymes mentioned, please don't share license codes for a product meant to be paid for.
I am so sorry. I am new at this platform. I don't have enough experience. Won't happen another time.🙏
Don't worry, welcome to devto!
Hi @Mkenzo thanks for the heads up. I actually laughed when I saw the notifications and that there's a deleted comment. Don't beat yourself up just yet, although I will advise you to work on your dev ethic, or something like that, im not sure. The more you interact in dev communities, the more you'll understand.
Okay Ben, but I'm gonna tell you the whole story.
I started learning Vim in october because apparently I had nothing better to do. It started out like a nice hobby, every few days I would open up a file, tried to move things around, delete stuff, learn a new command or something and it was nice until I said "Guess it's time to make my own vimrc". Oh boy. It turns out that it was way more entertaining than I was expecting.
The plugin hunting didn't last very long. I found a post about Vim that had a phrase that stuck with me "let sublime be sublime, let Vim be Vim", that was enough to convince me to not try and make Vim behave like Sublime text. But there was still one thing I wanted and that was a good fuzzy finder, and my friend google had the answer for that, fzf. FZF it's best thing ever, it's the only plugin that I would consider essential (even though Vim has a search feature already).
The real time sink was the keymap. It was so dificult to "get it right". I spent an afternoon (on a week day) browsing in github repositories looking for vimrc configs. I'm really happy with the "final result".
The next stage of the journey was trying to find a way of using Vim outside of a terminal. I tried a few Neovim frontends and other editors emulation. In the Neovim GUI department I gotta say that I really liked Onivim and nvim-gtk.
What I liked about Onivim was the integration with language servers, it enables features like goto definition and autocomplete like in VSCode. It consumes like half of the resources that VSCode requires it is still an electron app that takes quite a bit of RAM.
Nvim-gtk is my favorite way of using Neovim, is basically like a terminal except that it provides a few widgets that I appreciate like a file explorer, "real tabs" with a closing button, a plugin manager menu and other stuff. It's written in Rust so is cross-platform, and fast. The only thing that is a bit annoying is the fact that I can't make the cursor stop blinking.
And so now that I have a Vim setup that makes me happy I've decided to go back to Sublime text and see if can get some of that modal editing that I liked about Vim. So far I have tried the NeoVintageous plugin (If anyone wants to learn vim but don't want to use it yet that plugin is a good place to start). I have to say that is a good vim mode, but I stopped using it because it was missing some features and a few others do not behave like I would expect, is like that off by one error that you just can't fix.
Since modal editing is still posible within Sublime text I'm making my own keymap settings (I keep them here) in the form of a package so I can disable everything when I don't need it. The keymap is inspired by Vim but instead of trying to be exactly like Vim I remap Sublime's built-in commands to get a more consistent behavior. I don't get the composable commands that Vim has but I still get a little bit of the modal editing that I wanted.
Since I've got 12GB of RAM. I'll be sticking to Vscode/IntelliJ IDEA. I'm a dartisan/flutterian guy so I've got Vscode as my code editor for now.
But I would prefer sublime text for low RAM usage and non-electron apps. Haven't tried emacs or vim.
Yes, the flutter with emulators is rather heavy. I heard they are working on a more native emulator, which will be much faster and lower mems.
My (current) 8 year old machine with 6GB is just not enough for flutter.
That said, vscode is much lighter on resources than IntelliJ though.
You can use any editor for dart, using sublime text as code editor and a terminal/command line as you launch the app. But you don't get the debugger inside of the sublime text, therefore only vscode and intellij idea are the only options available.
I dont think vscode is lighter than intellij idea as it would increase the ram usage overtime. From 700mb~6GB when idle(no emulator).
Oh really, I might just give IntelliJ another go.
I must say that I've never experienced the memory creep whilst coding go, python, vue and polymer.
Perhaps there is an issue with the dart/flutter plugins?
Once I'm more familiar with dart and flutter, I might go to sublime.
They're both heavy RAM usage. it's not about the electron, it's the OpenJDK Library that keeps the RAM growing. the DartVM is only 150~200mb while the flutter plugins is just 30mb~ less.
I am a JetBrains guy, but I use vscode and sublime for lightweight text editing.
I am currently playing with clojure and have decided to give vscode a chance as my main editor (mostly due to IDEA clojure plugin being pretty crappy IMO). I am not too thrilled. That editor feels just as slugish as JetBrains IDE-s, but doesn't offer nearly as much functionality.
Have you tried Cursive with IntelliJ? cursive-ide.com
Emacs + Doom + Cider is also a very powerful environment - albeit a fairly steep learning curve.
Cursive is the one I didn't like. Maybe I missed something, but I found it almost impossible to actually type my code due to its super-strict and kind of broken pair matching engine.
I've used VSCode for ~2 years or so, but before that I jumped around from:
IDLE -> emacs -> Sublime -> Atom -> Sublime
I love VSCode though, so much faster than other Electron-based editors and so full featured!
Honestly, I don't understand the hype about switching IDEs. I've been on PHPStorm since I started web development professionally and used sublime for small scale projects before.
I tried VSCode occasionally, but found myself always switching back. All those features that Atom and VSCode list as hot new features have been in PHPStorm for years. I also tend to miss the double shift feature in other IDEs. Since Jetbrains provides free licences for open source projects, I can't find a reason to switch.
I still use sublime as a simple, fast text editor on the side, though.
PHPStorm is a full fledged IDE whereas VSCode is just an editor. You can't compare a full fledged IDE with code editor.
Agreed Vignesh D. Where is the line between an IDE and a text editor for you? I struggled with this question during a conversation recently.
In an IDE,
In a Code Editor,
I've recently started using Intellij IDEA for Scala development, and it's quite nice. The RAM usage is really high but it has a lot of handly plugins for Scala making it a must have for me.
I still use VS Code for almost everything else :D
It's recent in terms of how long I've been coding... but my project last year was to switch from Sublime to VS Code. I guess that means I've officially been using VS Code for a year now. I couldn't be happier with it. I basically carried over the keyboard shortcuts from Sublime so I didn't have to learn anything new. It's prettier (IMPORTANT THINGS), the Git integration is 💯, and it has everything I need to successfully do my work!
Last year I worked with:
Atom -> VSCode -> Atom -> vim
No reason for me to switch back to Atom at one point other than my weird resistance to downloading VSCode on my Mac. VSCode is my favorite text editor and I love the built-in terminal. Atom is slow. vim has the potential to make me a little faster, which isn't correlated to being a better programmer, I just enjoy the speed and proficiency. I have some plugins, like a fuzzy finder and a cute terminal, but I still don't know what I truly need of vim quite yet. vim is already neat so I can't imagine dozens of plugins being necessary. Definitely creeping on plugins posted here.
Nice topic, Ben!
EDIT: Guess I should also mention that my switch to vim is going well so far 🔥
I love the integrated terminal, too. Are you using wim via the vscode plugin or have you jettisoned vscode completely?
I use the plugin and have vim mode enabled a lot, but I often disable it for certain kinds of tasks. It's gotten to the point where vscode is the only terminal I use and it's where I do all my markdown editing, etc...
I use vim via the vscode plugin when I'm on my desktop, which is Windows. To be honest, I don't really get the same experience with vim in vscode like I do on my Mac with just vim. But I haven't messed around with the plugin much. Still prefer iterm2/ohmyzsh, but vscode is, like you said, better for certain tasks.