Overall Satisfaction with Atom
Atom is used as a small scripting tool by mainly myself and a few others. It's a perfect tool for drumming up a rapid solution to any problem-- in our case, aws and infrastructure problems. It has enough tools and plug-ins to help you debug a script, but still remains incredibly lightweight and quick to deploy.
- Lightweight solution. Unmatched in the ability to drum up a script, test it, and deploy it until a more permanent solution is available.
- Adaptable to almost any situation. Need to do a SQL script? There's a plugin that will allow you to connect to your database or a sample one and run your code. General scripts can be run straight from the program instead of the command line with the "script" plugin. There are even scripts that will "beautify" ugly code for you to fix "that guy's" code.
- Should have account-based customization so that plugins sync across machines. Currently, you have to individually install each plugin/environment on every machine that you encounter, which can be incredibly time consuming and frustrating after the first time.
- The tool we use when we need quick fixes. Allows fast, reliable scripting to fix urgent problems in our applications.
- When applications grow from 5-10 files to 100's, they need to be migrated to a heavier-duty IDE. This can be cumbersome and quite annoying, but is necessary to maintain code integrity on such a large scale (since it cannot be done with the limited default toolset of Atom).
Atom was a program I was familiar with when starting at the company. VSCode, however, has grown in popularity since I've started, and I might switch over in a bit. At this point, it's honestly personal preference. Both platforms have a large user base and accomplish the same purpose in slightly different fashions. It's up to you.
Well suited for small, lightweight solutions to problems that need to be made quickly and effectively. My implementation was used mainly for infrastructure scripting and automation processes through python3 and Ansible. Not very good for large application programming, as it won't remember keywords/class names/method names very well and will often suggest wrong fields that would result in errors. Also not very good at catching errors, as it's meant to be lightweight and therefore doesn't have those indexing capabilities.