Why are so many companies hacking on atom recently? First it was MS, and now FB? Anything special about Atom that you don't get in something like Vim or Emacs? They're both open source, and very hackable.
>Anything special about Atom that you don't get in something like Vim or Emacs?
A majority of programmers actually wanting to use it.
While we might use Emacs and Vim in our echo chamber, the huge masses of programmers prefer an IDE or something like TextMate, SublimeText, Notepad++ etc.
The speaker was explicit about FB's preference for IDEs and IDE features, and their belief that these features make them more productive. So in that respect their internal majority has already spoken.
Not quite an equal comparison: Visual Studio Code uses only the very core of Atom which allows you to package a browser-based app in a native shell (sort of like Cordova/PhoneGap). Nuclide actually uses the entire Atom editor.
I agree; with vim as well, gVim isn't much help to those who still want to use a mouse / don't know the keybindings. Atom is really the most versatile open-source GUI text editor right now IMO.
Well, I think the OP's point is that it would be easier to bring Emacs/VIM up to acceptable GUI editor standards rather than build the whole thing from scratch, as a webapp no less.
> Well, I think the OP's point is that it would be easier to bring Emacs/VIM up to acceptable GUI editor standards
I've been waiting for this for literally a decade with emacs. It hasn't happened and I don't have the expertise to do it, so nowadays I exclusively use IntelliJ for the languages I can. I'm probably going to start using CLion with it as well.
There are lots of aspects of Emacs that I miss but I hope that IntelliJ can take them over with future iterations of the vestigial "IDE scripting console". They just need to put a lispy language in there like Clojure and bindings into the editor like Emacs Lisp has.
And it's not for lack of trying. The last major attempt was Sun Studio on the 90's/early 00's.
Emacs and Vim are like Lisp at this point: unicorns. Perfect, mythical creatures everybody loves to talk about. Meanwhile oxen like Eclipse, Visual Studio, Sublime, etc. keep chugging 90% of the world's code :)
And while bringing Emacs/Vim up to acceptable GUI editor standards might be possible (MacVim does an alright job of this), I'm guessing that a lot of the head Emacs/Vim people would be against it, and wouldn't want to merge it back into mainline. That would leave FB having to maintain their fork of it, and splitting mindshare, etc. Atom doesn't need that much work, and it's easier to maintain a plugin than an entire fork.
I work with someone who has gotten me thinking a lot more about what software I do and don't pay for. He pays for any software he uses "daily". The payments are either donations to open source projects, service fees, or software purchases.
I paid for Sublime - it's my favourite editor by far. There are ways for companies to support themselves while having their offering be open source though. And I think Sublime might need to eventually to compete
OpenSource often means easy to use without paying. It gives you choice to use but not pay. I am not against open source but most of the time people religiously screaming that this and that must be open source are the ones that never pay for software.
Oh and also replying to the guy above. Tell that to dozens of OSS tools that had to be supported by real companies because people were not that willing to donate. Look at grsecurity for example, tmux, and the other ones i do not remember that Stripe donated 100k to.
Open source makes a lot of sense for things developers use in common (i.e. language runtimes, compilers, libraries, etc.) because they can all "give back." This is entirely consistent with developers selling application-specific software to other people.
Atom is a graphical editor, unlike either Vim or Emacs. It's much easier for web developers specifically to work on, since it's built with web technologies, rather than vimscript. If I want to change the background color of the file browser pane, I can pop open an inspector, identify the element, and change my custom editor CSS, all within about 2 minutes. Its plugin distribution system also integrates directly into the editor - meaning I can browse for and install plugins from within the Atom itself.
It's much easier to provide a cross-platform rich UI experience with Electron/Atom. It's probably also easier to leverage existing developer skill sets (HTML, JS, CSS, etc.)
I remember Eclipse being forked a lot by various enterprise companies. I guess that's because it had very good extensible architecture. Many developers admitted it. May be Atom is in similar position? Today's fashion shifted from Java to JavaScript and tools are following.
I think they say in the video that they were developing them as Atom plugins from the outset - i.e. Nuclide isn't a piece of software on its own, Nuclide IS Atom.