[spoiler=the why on atom:2osuxz7a]
"belltown" wrote:
"EnTerr" wrote:
@belltown, i have a question - of all things, why Atom?
Considering there is a better, smaller, faster IDE and its name is VSC (Visual Studio Code).
Why? Mostly for historical reasons. I'd been using Visual Studio for most of my development, as well as Notepad++ for some BrightScript coding. I was looking for a cross-platform editor when I was thinking about playing around with Linux. About that time, I discovered VS Code, and tried out one of their first preview releases. I wasn't very impressed. Some functionality I was looking for just wasn't there yet, and it didn't offer much in the way of extensibility -- although it does now. Shortly after, I gave up on VS Code, and my Linux forays.
More recently, after upgrading to Windows 10, and encountering numerous hassles with it that impeded my ability to get work done, I decided to give up on Windows development entirely in favor of Linux, except when absolutely necessary. So I needed another editor. I'd never revisited VS Code after my initial experiences; however, I'd been hearing a lot about Atom. Atom seemed to offer what I needed in an editor and was highly customizable. There were already other Roku developers using it who seemed happy with it. The issues that others have complained about (executable size, memory consumption, load times, etc) have not been a factor at all for me.
It seems that VS Code has come a long way since the early preview release I tried out. If I were looking at starting with VS Code or Atom today, I could easily see myself seriously considering VS Code. I may even go back to trying it when i get some free time and see if it offers anything I need that I can't get from Atom.
[/spoiler:2osuxz7a]
Thank you for the thoughtful answer!
On my side, the story goes like this - the beginning of 2016 i was wondering if there is a multi-platform IDE that would be more acceptable for BrightScript dev than Eclipse - and also why is it that over a year since RokuCo was hiring IDE developer, nothing had materialized (add another year now and still nothing has happened). In particular, there is nothing like an integrated debugger?! You know - breakpoints/suspend/continue/step, stack and variable browser - or poor man's version of that.
Back then i looked around and there were only couple of serious candidates - Atom and VSC. Atom has been around for 1.5 years, VSC was new kid on the block, with 2 months or so since release. Ans so i started doing some "due diligence", kicking tires and such.
Atom was quick to disappoint. Yes, it's produced by GitHub, so direct shot to fame - and it generated a lot of buzz with the Node.js crowd because (shocker) it was written in Node.js. But the more i tried to like it, the less reasons i saw. First, it is a bloatware - the download was massive, seems GitHub had bundled the EMACS of the 21st century. Then starting it is a Royal Event in itself, every time - seems like pouring layers upon layers of molasses into my RAM. I looked on the Net and saw the same - people complaining about the glacial responsiveness of Atom - and others explaining to them that
- that it's because of using HTML DOM and CSS
- that it's slow because of using Node and Chromium
- it's because of NPM dependencies management (loading 11 versions of node-Temp, 9 copies of Underscore.js, 8 different of Async and so on)
- Should keep Atom running as a background app to improve performance
Hmm - but that's not i want - i don't want to "warm up" my computer in the morning and then "keep the engine running" to be able to work (WTH - this is just a fancy text editor/IDE - not a nuclear reactor!). I don't need to understand the reason really - I just want the IDE to get in my way as little as possible. If i wanted something bloated, greedy and slow - i can as well succumb to Eclipse, no? What's the advantage - that the IDE can be programmed in CoffeeScript/JavasScript instead of Java?
VSC OTOH was much springier. I read it still uses Electron (Node.js) and Blink (Chromium fork of WebKit) but somehow that does not slow it down. It opened promptly and with a simple interface. And what impressed me most (unjustly so) was that it immediately recognized and highlighted the syntax of a .BRS file open - right out of the box, no plugins. All that remained (ha-ha) was to write Roku deployment extension and a debugger. I actually dug further and writing a debugger is quite doable - except not a personal priority for me, i am more the print and "wolf fencing" kind of guy.
I am still trying to quantize my gut feeling about Atom and i guess it is about "bad smell" - i am suspicious about symptoms of software decay (bloat and rot).