Hearing a disturbance, the master programmer went into the novice's cubicle.
"Curse these personal computers!" cried the novice in anger, "To make them do anything I must use three or even four editing programs. Sometimes I get so confused that I erase entire files. This is truly intolerable!"
The master programmer stared at the novice. "And what would you do to remedy this state of affairs?" he asked.
The novice thought for a moment. "I will design a new editing program," he said, "a program that will replace all these others."
Suddenly the master struck the novice on the side of his head. It was not a heavy blow, but the novice was nonetheless surprised. "What did you do that for?" exclaimed the novice.
"I have no wish to learn another editing program," said the master.
> Sometimes I get so confused that I erase entire files
OT, but just this week my wife did something that really got me thinking about how far computers haven't come in terms of usability.
I heard her say "O crap" from behind her macbook, and out of habit I came to assist.
For some reason unknown to both of us, she had pasted the text of an email into a document called "thesis.docx", and then saved it.
The text was completely unrelated to "thesis.docx", which of course was not backed up.
Now, I love my wife deeply. And she is no fool. On the contrary, she is a graduate student.
Moreover, I completely understand how something like this can happen. We have two small children, and it was the end of the day. It is just too much to expect of the human mind that one should not say something one doesn't mean.
I felt guilty on behalf of my profession that this was the best we had to offer. Microsoft word on a macbook, and your penultimate version of a file is not backed up. It truly is intolerable.
So, while I have had some of my greatest highs using emacs macros, I somehow feel that the brilliant tooling made by developers for developers never quite percolates into userland.
I think the first assertion is simply untrue, and without it the rest is nonsense. You don't need to learn how to use multiple editors to do anything.
I suppose there are some languages/environments that are somewhat tied to certain editors (java and eclipse, C# and visual studio, objective-C and xcode), but that's not what is proposed here. It's a general purpose programmer's editor that anyone can use for anything. Are you really upset that it's being written? Why do you think you'll have to learn it?
If the master thinks that the human race has reached the absolute pinnacle of human/machine interfacing for text editing after just a few short decades of trying then he needs to go away and have a little sit down and a think about where he went wrong in life.
It's a fair point, but by this rationale no new DBs or PLs should be made. Most of these die off or become niche, the ones that really become fundamental are few and far between. This idea that we have to drop everything and go "learn" this new thing is bogus. Folks in tech often seem to buy into the hype of some new technology all too easily, riding the wave of excitement. So their shouldn't be any concerns, of "yet another editor”.
BTW, I'm not saying this won't be successful! It looks interesting and I am excited, GitHub does great work, but you keep it in perspective.
I was all ready to be skeptical and everything... but this could actually be amazing.
I currently use Chocolat for code editing, which is beautifully elegant and I love it, but there are 25 little tiny things that I really wish I could fix. I file issues, but the developers rightly have their own priorities. It's closed-source, but even if it were open source, I'm not about to learn how to use XCode and Objective C and figure out how to compile and whatnot.
But if Atom is ultimately just a big collection of straight-up node.js files, and anyone can go in at any time to change a line here or there -- and it's in JavaScript, so it couldn't be easier for programmers in general -- and there's no compilation step or anything -- then it's almost a fundamental paradigm shift for what desktop software could be.
It already makes me dream of a word processor I could hack like that, or a music player. Just by opening up a text editor. It's an inspiring thought.
> and there's no compilation step or anything -- then it's almost a fundamental paradigm shift for what desktop software could be.
> It already makes me dream of a word processor I could hack like that, or a music player. Just by opening up a text editor. It's an inspiring thought.
Not to rain on your parade or anything, but you can already do this with Emacs, not to mention that Emacs is free, open source software. Atom is not only not open source but their readme says it won't even be free after the beta.
Emacs has been around for almost 40 years, and because it's FOSS it will be around for at least another 40. Editors like Atom come and go.
It's funny you say that, because as the only full time-ish developer of Chocolat, I could really use a lot of help!
There's ~600 open issues, my personal todo list alone is several years' worth of work. Too much for one man.
---
People make too much of open vs closed source. The real distinction is individual-lead vs committee-written.
TextMate, Sublime and Vim are good editors. But they are also Allan, Jon and Bram. Writing an editor requires good taste, accumulated experience, and a certain disregard for users' feelings.
You need someone who cares about the editor. Without that, you get a program where everything is wrong, but nobody ever bothers to fix it.
This is however a blessing and a curse. If the author can't financially support themselves, the editor will die. If the author becomes a millionaire, the editor will die. Thankfully, I'm still poor.
Have you looked at Adobe Brackets? It's basically that, open-sourced today. Or look at node-webkit if you only want the app framework without the editor. The biggest downside I see right now is HUGE binaries (100+MB) because you're bundling a browser in your exe.
> But if Atom is ultimately just a big collection of straight-up node.js files, and anyone can go in at any time to change a line here or there -- and it's in JavaScript, so it couldn't be easier for programmers in general -- and there's no compilation step or anything -- then it's almost a fundamental paradigm shift for what desktop software could be.
> How I felt after that? I felt awesome. I had only installed Atom minutes ago. I didn't even had to think to fix my problem. All the knowledge I needed was already in my head! It was simple as editing a webpage. TL;DR: Atom allowed me to fix one simple problem – that I still encounter in most text editors nowadays – in seconds. What about yours?
You are so on-the-money about Chocolat. I love it except for the things that drive me crazy. I've been trying to love Sublime Text lately. Even though I see the benefits, I see the un-Mac-like-ness of it even more.
I'm with you. I'm an Emacs user, which ostensibly has a similar design philosophy (open source, with powerful extensibility from a full-blown programming language), but Emacs Lisp has a lot of baggage and is nowhere near as widely used as JavaScript. I also find the Emacs community disjointed and hard to navigate and participate in. Ultimately, assuming that the underlying design decisions of Atom are reasonable, its success will depend on the community that develops (double meaning intended) around it. It could be great.
I developed some packages for HomeSite in the 90s. When HomeSite was integrated into Dreamweaver and development ceased, I realized that I had wasted my time developing HomeSite packages and that I should never again devote my time to extending closed-source software. Emacs has served me well ever since.
There's real opportunity here for Github and I hope they take it.
Why is the basic workflow of the modern-day programmer split over multiple tools and over multiple systems?
Aspects of Github could be modularised and added to the editor while still keeping the underlying tool simple and this could change our user experience for the better.
Imagine flipping through your pull requests in the text editor and then seeing your friends comments and code reviews appear on top.
Imagine an issue being created on Github and the file(s) referenced instantly glowing.
This opens doors to thinking about the engineering workflow in a new holistic manner.
I am very excited about this, I love the Github team and this looks like a great tool.
My only question is -- why should I switch to this from Sublime Text? Are there specific use cases it handles better out of the box, or is it more of a modular base that will be expected to grow and outfeature ST2/3's seasoned plugin economy? I am very happy with Sublime Text now, but I would be willing to switch if either it gained a lot of traction, or could do stuff that I couldn't do with Sublime.
Good catch. I really shouldn't have any more of a problem with a desktop app tracking me than I do a web app but for some reason I do. I guess because I can always use Disconnect in the browser and I can't with Atom. I guess the fact that it is open about it is a positive thing, though.
Why should I care about a Google key-logger with a bundled text editor? Also, if github were a real player, they would do their own user tracking rather than giving Google their data.
The performance of a webapp with the accessibility of a desktop app. Not to mention that it's closed source. This is a tremendous step backwards.
Looking at the implementation of the open sourced packages is discouraging as well. It looks like they are using a Backbone inspired jQuery infested nightmare of clientside MVC.
Maybe my bitterness comes from the fact that I've already been down that road and it leads to a bad place.
Here's an editor that has deep Github integration, runs in the browser, and self hosts: http://www.danielx.net/editor
Imagine Linus had used that sort of license for git. There would be no github, no nothing. I don't get it. Take for free, build a million dollar business and then make your own stuff closed...
I've just had play around with the beta. It looks like it's using a version of CodeMirror 4 (as it has multiple ranges). Fairly fast but it doesn't match Sublime Text just yet
Initial impressions: it's early days but this thing is just oozing for customisation. The fact it's written in JS means writing packages is pretty simple compared to Python for ST; we're going to see TONNES of addons for it. I can already think of 2-3 I'd like to build.
The one thing that really excites me is how people getting into programming could start off with a pretty basic editor and add and write packages as they hone their skills, ending with something incredible powerful and tailored to them. In fact I'd really love to see a super customised starter version for children / beginners that acts as a learning aid as well as a text editor.
No doubt there's going to be haters in the vim / emacs / ST / insert favourite editor here camp but I really hope this works out for the Github guys (and I have a feeling it will).
> Initial impressions: it's early days but this thing is just oozing for customisation. The fact it's written in JS means writing packages is pretty simple compared to Python for ST; we're going to see TONNES of addons for it. I can already think of 2-3 I'd like to build.
This isn't why it's going to be popular for plugin development though. Sublime plugins are Python, which isn't that hard to learn.
Atom's plugins are worth looking forward to if the API is more extensive than Sublime. There is too much you can't do in Sublime Text plugin authoring.
A common thread or line of argument that I find when reading about new editors is their out-of-the-box ease of use compared to Emacs and Vim. For example, a quote from the Atom blog:
>Sublime and TextMate offer convenience but only limited extensibility. On the other end of the spectrum, Emacs and Vim offer extreme flexibility, but they aren't very approachable and can only be customized with special-purpose scripting languages.
It doesn't seem like they (and many others) are denying that Emacs and Vim are excellent editors. Why is ease of use such an important issue for text editors? Emacs isn't terribly difficult to use, but if my livelihood and the majority of my time is tied to what tools I use, then it's worth the investment of time. I don't think I've met an Emacs user who has put in the effort of learning Elisp and customizing Emacs to their liking ever deny the benefits of learning it in the first place. Yes, it's a pain in the ass initially. I quit Emacs twice before I became determined to stop whining and spend quality time learning about tooling.
There is no doubt that Emacs has a steep learning curve and perhaps that's because its developers have a higher expectation of its users. I would argue that these expectations are easily matched by the capabilities of a competent programmer.
It could be really great. I wonder if Jon Skinner knew, and said to himself "Welp, I might as well stop with Sublime". However, Sublime is (mostly) blazingly fast. I don't expect this from a node based app, especially in Windows. And: I didn't see it under Features, but Atom definitely needs the command palette from Sublime baked into core. Only if it's core, plugin authors will set their hooks correctly from the beginning. Or even better, there might be a flexible command api that exposes each plugin's commands from the start and can be extended too. -> edit: the readme says it has Command Palette. Great! Also, since the term is identical with Sublime Text, I wonder if there's more to it than inspiration.
Nice to see some innovate architecture for an editor but this product launch reminds me to product launches from Apple or Google: it doesn't matter what product or feature is shown, there is always tons of premature praise.
If an unknown third party came up with Atom it would have never gotten that attention.
ST3 is a very good product viewed from any angle and VIM either—it will be hard to beat these reference products. I love Node/npm and again the stack sounds great but I don't know if this stack will be much easier to extend than something like ST3 or VIM.
What I have seen from a product perspective on the Atom landing page does not blow me away, not at all. And it is wether free nor open source.
But it's from Github and that's reason enough to vote it up.
As was speculated in the other thread the beta looks like it will be closed, there's a "request and invite" form on the page.
Others noted that the source mentioned "free during beta", I certainly hope that's not the case and it's truly FOSS. Sublime Text development has slowed significantly recently and the community can't continue to drive it since it's closed.
Funnily enough, Sublime Text was born out of Textmate development slowing, and I can't seem to shake that vibe here too.
Usually if you don't see "free" or "open source" mentioned on the main page it means it's not going to be either of these two (or at least that it hasn't been decided yet).
[+] [-] tzs|12 years ago|reply
------
Hearing a disturbance, the master programmer went into the novice's cubicle.
"Curse these personal computers!" cried the novice in anger, "To make them do anything I must use three or even four editing programs. Sometimes I get so confused that I erase entire files. This is truly intolerable!"
The master programmer stared at the novice. "And what would you do to remedy this state of affairs?" he asked.
The novice thought for a moment. "I will design a new editing program," he said, "a program that will replace all these others."
Suddenly the master struck the novice on the side of his head. It was not a heavy blow, but the novice was nonetheless surprised. "What did you do that for?" exclaimed the novice.
"I have no wish to learn another editing program," said the master.
And suddenly the novice was enlightened.
[+] [-] gavinpc|12 years ago|reply
OT, but just this week my wife did something that really got me thinking about how far computers haven't come in terms of usability.
I heard her say "O crap" from behind her macbook, and out of habit I came to assist.
For some reason unknown to both of us, she had pasted the text of an email into a document called "thesis.docx", and then saved it.
The text was completely unrelated to "thesis.docx", which of course was not backed up.
Now, I love my wife deeply. And she is no fool. On the contrary, she is a graduate student.
Moreover, I completely understand how something like this can happen. We have two small children, and it was the end of the day. It is just too much to expect of the human mind that one should not say something one doesn't mean.
I felt guilty on behalf of my profession that this was the best we had to offer. Microsoft word on a macbook, and your penultimate version of a file is not backed up. It truly is intolerable.
So, while I have had some of my greatest highs using emacs macros, I somehow feel that the brilliant tooling made by developers for developers never quite percolates into userland.
[+] [-] ryanac|12 years ago|reply
------
Hearing a disturbance, the master programmer went into the novice's cubicle.
"Curse these search engines!" cried the novice in anger, "To find anything I must scroll through three or even four pages of results.
Sometimes I get so confused that I just give up. This is truly intolerable!"
The master programmer stared at the novice. "And what would you do to remedy this state of affairs?" he asked.
The novice thought for a moment. "I will design a new search engine," he said, "a search engine that will replace all these others."
Suddenly the master struck the novice on the side of his head. It was not a heavy blow, but the novice was nonetheless surprised.
"What did you do that for?" exclaimed the novice.
"I have no wish learn another search engine," said the master.
The novice packed his bags, left and went on to create Google, which gives him exactly the results he's looking for.
While his former master was left sifting through multiple pages of results on (insert other search engine here).
One day the master stumbled upon Google and the master was enlightened.
[+] [-] Gracana|12 years ago|reply
I suppose there are some languages/environments that are somewhat tied to certain editors (java and eclipse, C# and visual studio, objective-C and xcode), but that's not what is proposed here. It's a general purpose programmer's editor that anyone can use for anything. Are you really upset that it's being written? Why do you think you'll have to learn it?
[+] [-] dsilver|12 years ago|reply
[0] https://xkcd.com/927/
[+] [-] Wintamute|12 years ago|reply
[+] [-] beltex|12 years ago|reply
BTW, I'm not saying this won't be successful! It looks interesting and I am excited, GitHub does great work, but you keep it in perspective.
[+] [-] baby|12 years ago|reply
[+] [-] crazygringo|12 years ago|reply
I currently use Chocolat for code editing, which is beautifully elegant and I love it, but there are 25 little tiny things that I really wish I could fix. I file issues, but the developers rightly have their own priorities. It's closed-source, but even if it were open source, I'm not about to learn how to use XCode and Objective C and figure out how to compile and whatnot.
But if Atom is ultimately just a big collection of straight-up node.js files, and anyone can go in at any time to change a line here or there -- and it's in JavaScript, so it couldn't be easier for programmers in general -- and there's no compilation step or anything -- then it's almost a fundamental paradigm shift for what desktop software could be.
It already makes me dream of a word processor I could hack like that, or a music player. Just by opening up a text editor. It's an inspiring thought.
[+] [-] adamors|12 years ago|reply
Not to rain on your parade or anything, but you can already do this with Emacs, not to mention that Emacs is free, open source software. Atom is not only not open source but their readme says it won't even be free after the beta.
Emacs has been around for almost 40 years, and because it's FOSS it will be around for at least another 40. Editors like Atom come and go.
[+] [-] alextgordon|12 years ago|reply
There's ~600 open issues, my personal todo list alone is several years' worth of work. Too much for one man.
---
People make too much of open vs closed source. The real distinction is individual-lead vs committee-written.
TextMate, Sublime and Vim are good editors. But they are also Allan, Jon and Bram. Writing an editor requires good taste, accumulated experience, and a certain disregard for users' feelings.
You need someone who cares about the editor. Without that, you get a program where everything is wrong, but nobody ever bothers to fix it.
This is however a blessing and a curse. If the author can't financially support themselves, the editor will die. If the author becomes a millionaire, the editor will die. Thankfully, I'm still poor.
---
What are the 25 little things, by the way?
[+] [-] nilsbunger|12 years ago|reply
[+] [-] bruceboughton|12 years ago|reply
Because JavaScript is magically easier than any other programming language ever invented.
Even if this were true, it still wouldn't help an expert Objective C programmer with no JS experience hack on Atom.
Your bias is showing.
[+] [-] pdpi|12 years ago|reply
[+] [-] adito|12 years ago|reply
http://discuss.atom.io/t/atom-is-so-powerful-that-it-blows-m...
> How I felt after that? I felt awesome. I had only installed Atom minutes ago. I didn't even had to think to fix my problem. All the knowledge I needed was already in my head! It was simple as editing a webpage. TL;DR: Atom allowed me to fix one simple problem – that I still encounter in most text editors nowadays – in seconds. What about yours?
[+] [-] freshyill|12 years ago|reply
[+] [-] baddox|12 years ago|reply
[+] [-] ricardobeat|12 years ago|reply
[+] [-] coercer|12 years ago|reply
[deleted]
[+] [-] davexunit|12 years ago|reply
I'll fix: A proprietary (unhackable) text editor that only runs on OS X.
I imagine that web developers will drool over this.
[+] [-] subsection1h|12 years ago|reply
I developed some packages for HomeSite in the 90s. When HomeSite was integrated into Dreamweaver and development ceased, I realized that I had wasted my time developing HomeSite packages and that I should never again devote my time to extending closed-source software. Emacs has served me well ever since.
[+] [-] fafner|12 years ago|reply
[+] [-] kneath|12 years ago|reply
[+] [-] pbiggar|12 years ago|reply
[+] [-] lhnz|12 years ago|reply
Why is the basic workflow of the modern-day programmer split over multiple tools and over multiple systems?
Aspects of Github could be modularised and added to the editor while still keeping the underlying tool simple and this could change our user experience for the better.
Imagine flipping through your pull requests in the text editor and then seeing your friends comments and code reviews appear on top.
Imagine an issue being created on Github and the file(s) referenced instantly glowing.
This opens doors to thinking about the engineering workflow in a new holistic manner.
[+] [-] atmosx|12 years ago|reply
On the other hand, the more the better, but we have already too many editors around.
[+] [-] natural219|12 years ago|reply
My only question is -- why should I switch to this from Sublime Text? Are there specific use cases it handles better out of the box, or is it more of a modular base that will be expected to grow and outfeature ST2/3's seasoned plugin economy? I am very happy with Sublime Text now, but I would be willing to switch if either it gained a lot of traction, or could do stuff that I couldn't do with Sublime.
[+] [-] 8ig8|12 years ago|reply
http://atom.io/packages/metrics
[+] [-] Touche|12 years ago|reply
[+] [-] username223|12 years ago|reply
[+] [-] skennedy|12 years ago|reply
More data going to Google without opting in first? Bummer.
[+] [-] teraflop|12 years ago|reply
[+] [-] Yahivin|12 years ago|reply
The performance of a webapp with the accessibility of a desktop app. Not to mention that it's closed source. This is a tremendous step backwards.
Looking at the implementation of the open sourced packages is discouraging as well. It looks like they are using a Backbone inspired jQuery infested nightmare of clientside MVC.
Maybe my bitterness comes from the fact that I've already been down that road and it leads to a bad place.
Here's an editor that has deep Github integration, runs in the browser, and self hosts: http://www.danielx.net/editor
Maybe I just live too far in the future.
[+] [-] hodgesmr|12 years ago|reply
[+] [-] comice|12 years ago|reply
I can see a huge compromise in hackability - its core is closed source.
[+] [-] fs111|12 years ago|reply
[+] [-] jamesmoss|12 years ago|reply
Initial impressions: it's early days but this thing is just oozing for customisation. The fact it's written in JS means writing packages is pretty simple compared to Python for ST; we're going to see TONNES of addons for it. I can already think of 2-3 I'd like to build.
The one thing that really excites me is how people getting into programming could start off with a pretty basic editor and add and write packages as they hone their skills, ending with something incredible powerful and tailored to them. In fact I'd really love to see a super customised starter version for children / beginners that acts as a learning aid as well as a text editor.
No doubt there's going to be haters in the vim / emacs / ST / insert favourite editor here camp but I really hope this works out for the Github guys (and I have a feeling it will).
[+] [-] ytpete|12 years ago|reply
[+] [-] _zen|12 years ago|reply
This isn't why it's going to be popular for plugin development though. Sublime plugins are Python, which isn't that hard to learn.
Atom's plugins are worth looking forward to if the API is more extensive than Sublime. There is too much you can't do in Sublime Text plugin authoring.
[+] [-] marijn|12 years ago|reply
[+] [-] midas007|12 years ago|reply
But who's going to buy an editor that can't even open a 1 MiB file? http://discuss.atom.io/t/unable-to-open-files-more-than-1mb/...
Moreover, besides code posers and managers, who is going to throw away all their knowledge and time configuring the editor they were using?
[+] [-] mkhattab|12 years ago|reply
>Sublime and TextMate offer convenience but only limited extensibility. On the other end of the spectrum, Emacs and Vim offer extreme flexibility, but they aren't very approachable and can only be customized with special-purpose scripting languages.
It doesn't seem like they (and many others) are denying that Emacs and Vim are excellent editors. Why is ease of use such an important issue for text editors? Emacs isn't terribly difficult to use, but if my livelihood and the majority of my time is tied to what tools I use, then it's worth the investment of time. I don't think I've met an Emacs user who has put in the effort of learning Elisp and customizing Emacs to their liking ever deny the benefits of learning it in the first place. Yes, it's a pain in the ass initially. I quit Emacs twice before I became determined to stop whining and spend quality time learning about tooling.
There is no doubt that Emacs has a steep learning curve and perhaps that's because its developers have a higher expectation of its users. I would argue that these expectations are easily matched by the capabilities of a competent programmer.
[+] [-] Narretz|12 years ago|reply
[+] [-] fisherprice|12 years ago|reply
If an unknown third party came up with Atom it would have never gotten that attention.
ST3 is a very good product viewed from any angle and VIM either—it will be hard to beat these reference products. I love Node/npm and again the stack sounds great but I don't know if this stack will be much easier to extend than something like ST3 or VIM.
What I have seen from a product perspective on the Atom landing page does not blow me away, not at all. And it is wether free nor open source.
But it's from Github and that's reason enough to vote it up.
[+] [-] beefsack|12 years ago|reply
Others noted that the source mentioned "free during beta", I certainly hope that's not the case and it's truly FOSS. Sublime Text development has slowed significantly recently and the community can't continue to drive it since it's closed.
Funnily enough, Sublime Text was born out of Textmate development slowing, and I can't seem to shake that vibe here too.
[+] [-] spicyj|12 years ago|reply
[+] [-] spicyj|12 years ago|reply
<DouweM> kevinsawicki: is the actual core going to be OS?
<kevinsawicki> DouweM: not during the beta
<tyOverby> How is atom both invite-only and open source at the same time?
<avidal> tyOverby: the engine isn't open source (or at least yet)
[+] [-] krelian|12 years ago|reply
[+] [-] hswolff|12 years ago|reply
[+] [-] donretag|12 years ago|reply