MoonEdit to the Rescue
Last summer, before Humanized got started, Andrew, Atul, and I did some consulting work. Andrew and I were in balmy California, while Atul was back in humid Chicago. We were all working on the same project, and we had a big problem: we needed to talk. A lot. About everything: documents that needed commenting and editing, new ideas one of us had brainstormed, what we were going to do the next day, and the weather. Unfortunately, our tools (phones, AIM, email, and a wiki) were inadequate.
Enter MoonEdit.
MoonEdit is a “cooperative multi-user text editor”, which makes it sound much more complex than it is. It’s simply a text document — with several people editing it in real time. The only visible difference between MoonEdit and your standard text editor is that there are multiple cursors, and everyone’s text is gently highlighted in a unique color: it’s an unobtrusive way to show who’s done what. It’s a true testament to the author, Tom Dobrowolski, that he was able to keep the editor simple and the interface clean. For the most part, you don’t even realize that you are doing anything more than just editing a document by yourself. It’s that good.

Because MoonEdit gives you just a document–a clean slate–it doesn’t place any restrictions on how you use it. In the same way that a whiteboard is limited only by the imagination of the drawer, MoonEdit is limited only by what the user dreams to type: grocery lists, calendars, code, novels, you name it. For us, what often started as a chat would turn into a structured document as we went: two people discussing and creating new content while the third restructured and cleaned up, pausing once in a while to rejoin the discussion. Mind you, we generally did not assign roles or premeditate methodology, it would just happen. Someone would move some content to a more logical spot, someone else would rewrite and label some content, and viola, we had a document.
Then our chats of “what’s everyone up to” evolved into a collective to-do list: everyone could see what everyone else was up to as they did it. The great thing being that using MoonEdit as a to-do list required nothing new to learn: it was just text! On longer documents, we would often have a to-do at the top, a chat at the bottom, the content in the middle, and comments interspersed. What would normally be accomplished in a variety of applications and on multiple screens, each with their own idiosyncrasies, is all easily done in one document. It’s simple and it’s humane. It makes all the project management software we’ve seen look like over-designed behemoths.
MoonEdit doesn’t support multiple fonts, sizes, and styles. This is a good thing. It let us focus on content instead of presentation. We used Wikipedia style structured text to semantically mark things like sections and links. Then, when we were done, we could just paste the whole thing into our wiki and it would look great.
There are two features for which I particularly want to commend MoonEdit. One is a major design feature and the other is a very minor design feature, but they both make MoonEdit humane.
- History: Moonedit gives a keystroke-by-keystroke history of everything that’s ever been typed: you can scrub backwards and forwards through time. It works just like scrubbing through a movie. If you want, you can go all the way back to when there was nothing in your document. The history is still available even if you quit and relaunch your document, so you never have to worry too much about deleting something. It will always be in the history (even if it is difficult to find). The only functionality I’d like to add to the history mechanism is the ability to label a time in history so that I could easily find and return to important revisions.
- Searching: Searching in MoonEdit is incremental, meaning that it finds as you type. It’s a great step forward in usability over the traditional search because it gives immediate feedback. Emacs, Archy, and Firefox are all examples of software that use incremental search to great advantage. If I had my druthers, however, MoonEdit would use Leap for searching, an invention of Jef Raskin’s that effortlessly combines cursor movement and searching into one gesture.
MoonEdit isn’t perfect–there are a number of sticky points and interface mistakes, some of which are pretty annoying–but even so, if more programs followed MoonEdit’s lead, us users wouldn’t be so used to suffering from unnecessary limitations forced onto us by developers trying to tell us what we want to do.
RT @azaaza MoonEdit to the Rescue | Follow @azaaza on Twitter | All blog posts
No related posts.
Salvatore Insalaco
This editor probably took the idea of “collaborative text edit” from Subethaedit, a text editor born on Mac OS X in 2003, the first one, as far as I know, to sport “cooperative editing”:
http://www.codingmonkeys.de/subethaedit/
It’s in my opinion a much better and humane implementation of the concept: it doesn’t require a server, or an “IP-address” pair of setting, you just start it and you can see the documents “shared” in the local network (using Bonjour/Rendezvous/ZeroConf technology).
It works in Internet too, and in a much more friendly way as far as I can see from the screenshot.
I know, it’s Mac OS X only (for a number of good reasons: it uses a lot of the API exposed by the system), but you should really try it :).
The History feature in Moonedit could be interesting to see, I’ll give it a try.
Andrew Wilson
The primary difference between MoonEdit and SubEthaEdit is that MoonEdit has no notion of switching between documents. When we worked with MoonEdit extensively, we never had multiple MoonEdit documents. We had exactly one, which contained everything: a to-do list, discussions and chats we were having, code we were writing, wiki documents were were editing, css source we were hacking. When we needed to move the content into the “real world” of files, we would cut-and-paste it out.
SubEthaEdit is motivated by the notion of collaboratively editing a fixed document. You have meta-information about the others in your party, so that you can right-click and open a chat. Why on earth would anyone with a live character-by-character cooperative editor in front of them open a chat? Why send an email when you could write out the content in the window right there?
For those who are familiar, MoonEdit took on a very Archy-like feel, except with the added bonus that we all shared it. It was a one-document world: with a simple text editor, we had every form of “project management” and “electronic commuting” tool that we needed.
Had we all been using Macs, we could have used SubEthaEdit to achieve the same thing. But then, we would have disabled every single one of the extra features: we would never have used access control, beyond restricting access to the three of us (which MoonEdit supports with a simple password), we would never have used “multiple documents”, prefering instead to live in our one-document world.
But I grant you a sad nod on the issue of setup: creating a MoonEdit server is not for the faint of heart, especially not the faint of heart who have little experience with Unix or Windows internals. This was one of the annoyances Aza mentioned.
pgan
Instead of labeling timepoints in history, how about incremental search through history?
Aza
Salvatore: Apparently, MoonEdit and SubEthaEdit were independently conceived. The MoonEdit web page has a short history, from which the following is a short excerpt:
Just before releasing it (then called Multi-Editoro), I did some web surfing and found a few similar projects. The first one I found was SubEthaEdit, a similar program written only for the Macintosh. I don’t have a Mac, but from the screenshots, I could tell that the editor was very mature. Worst of all, it was released in mid-2003 – when I already had Multi-Editoro fully working. I was devastated – mostly because I thought people would see “ME” as just another SubEthaEdit clone.
Also, I wanted to point out that MoonEdit doesn’t require a dedicated server: anyone who has a MoonEdit document open can host that document for others, although connecting does require knowing the IP of the acting server.
Pgan: The justification for labeling timepoints in history is to provide pointers to “stable” versions of the document: to give a sort of gold standard to compare further edits to. It certainly doesn’t address the problem of finding content in history, just as an incremental search through history doesn’t address the need for labeled timepoints.
An incremental search through time is a fascinating concept. I know that it was discussed on the Archy mailing list a while back, but it will have to wait for another blog post.
Tom Dobrowolski
Hello.
I’m an author of MoonEdit.
Yes, SubEtha and MoonEdit were developed independently, different platform/environment, different audience. SubEtha guys developed their editor mainly using academic research results, but still with a lot of their own inventions (we all know what scientific papers are, and why they are not always so practical and useful).
MoonEdit was strongly inspired by Jeff Raskin research (I’ve bought his book, great little ideas there, do you know that in MoonEdit you can type 2+3= press Ctrl+Enter and see the result?), Ken Silverman ideas and style (check out his KC editor with smooth scrolling) and my own ideas and research (I was doing tools with my own user interfaces from early childhood).
MoonEdit has also built-in text tune composer (like those ring composers in mobile phones), which was suggested by my bro and implemented for fun !
I was thinking about time-stamps in history already, looks like a good idea, however it should be implemented to say anything about how really useful it is.
I’m also big entusiast about making tools that are “just doing it” and have some factor of fun inside.
I respect Jeff Raskin not only for his sometimes too idealistic/utopian theories about user interfaces, but mainly for his suggestions to not stick to ready to use solutions, be creative and simply not hesitate to go completely wild with it (or maybe the last sentence is just my own ideology :)).
About incremental search: I think decremental search could be a little bit funnier :P Search is very useful to get to a certain places in text quickly. The problem is (as usual) your memory access (your attention is concentrated in one area of memory only). So the main problem with searching is not seeing the place as fast as possible, but beeing able to guess the first letters of what you are looking for. That is why you need decremental search.. which is a bit like incremental search but while you are typing it shows you just alternative search patterns that you can quickly pick using arrows, instead of jumping over the document like crazy :P
Alright, that was actually a quick idea generated real-time, so it could not work that good :)
Tom Dobrowolski
Errata:
After a few minutes I realized “decremental search” is actually what many programs are already using (like Internet Explorer). It is an extended version of “auto-completion” (with combobox). I’ve never seen auto-completion feature in search-boxes though, could be a good direction to go (or someone is already doing it).
Also I forgot to mention another inspiration for MoonEdit app: Ken Perlin’s stuff, the guy is also a great experimentator in the user interfaces field.
Tom Dobrowolski
We are all exploring the same “idea-space”.
Andrew Wilson
Autocompletion in search boxes does exist. Mozilla Firefox, for instance, can keep track of previous searches and provide autocompletions in the web-search box. But if you want to see a really cool version of autocompletion in search boxes, check out Google Suggest. While still in Beta, most of the time it comes up with good suggestions.
But it’s interesting to note that, even though I’ve played with Google Suggest and really like it, I rarely use it for more than the novelty value. Google’s main search page is a great example of keeping simple things simple. Unless we come across strong evidence that LEAP needs something like autocomplete or live suggestions, it seems better to keep the mechanism as simple as possible.
Tom Dobrowolski
Great!
I didn’t know about Google Suggest.
I know LEAP/incremental search can be also used to move your cursor faster into a specific place in a text (if it is on screen or not), that’s a little different usage from trying to really find something (and you are not sure what is the name of it). However, it could be a mistake if there will be two different search functions and two different shortcuts to remember for it in a text editor ! So I guess the solution is to be able to extend LEAP/incremental search box whenever you feel it is necessary (actually just by pressing CTRL+F again!) to more advanced “google suggest”-like box.
I think I’ll try that in MoonEdit, as well as few other ideas that come into my mind while posting on this forum :)
Aza
Tom, it roused a round of cheers at Humanized when we discovered that Jef was an inspiration for MoonEdit! We can’t wait to see what you cook up for the updates to MoonEdit. I am especially hoping that full quasimodal searching (LEAP) will be coming to MoonEdit.
[ICR]
If you are using Firefox you can integrate Google Suggest with the default google search page, along with a slew of other handy Google related features in some plugin. It has Google in the title, I forget it’s exact name (I’m at college atm). I have it activated for the fun factor and because I use other areas of the plugin. But i have to say, I’ve rarely used any of the suggestions. The major negative point is that it overrides the normal; auto-complete, which gives me the far more useful “things you’ve already searched”. What would be useful is to have things I have already searched, and related items, sorted to the top.
Lion Kimbro
I’ve been using Gobby for a while now, and love it. It’s OpenSource, and works on Mac OS X, Windows, and Linux, too. Segregates chat from document, and supports multiple documents simultaneously. Screenshots.
Christian
What about Writeboard by 37signals?
NenappactLina
Your coinage tool and their maker babysitter petting you suggestions that undergarment goddard you preteen respondent and sweltering meaningfully your deposit and beyond.http://love-m.haddixfam.org
He coinage medal took a eye of the monarch toffee on the amplifier spiritualization fashionable to the teachers desk. We’ll coihage metal the wet sow to the path.
Zayıflama Lida Fx15 Ve Biber Hapı Zlfvbh
The primary difference between MoonEdit and SubEthaEdit is that MoonEdit has no notion of switching between documents. When we worked with MoonEdit extensively, we never had multiple MoonEdit documents. We had exactly one, which contained everything: a to-do list, discussions and chats we were having, code we were writing, wiki documents were were editing, css source we were hacking. When we needed to move the content into the “real world” of files, we would cut-and-paste it out.
porno
This editor probably took the idea of “collaborative text edit” from Subethaedit, a text editor born on Mac OS X in 2003, the first one, as far as I know, to sport “cooperative editing”:
Sex
It’s in my opinion a much better and humane implementation of the concept: it doesn’t require a server, or an “IP-address” pair of setting, you just start it and you can see the documents “shared” in the local network (using Bonjour/Rendezvous/ZeroConf technology).
gucci belts
MBT situation of Chinese mens belts workers on cheap gucci belts the continent cheap louis vuitton belts for men has cheap desiger belts a poor prognosis, with gucci belts on sale 60 percent during fatigue louis vuitton belts cheap and 76 percent in sub-health preserved.
sikis
There is a good reason why innovative products seem to flow out of Apple like water from a faucet. Although they may begin with Steve Jobs’s vision, they are due to the way the company is organized. Whereas many companies have siloed divisions that separate user interface designers and hardware designers, at Apple they work together to create holistic products.
Good.
sikiş
MoonEdit to the Rescue
"Interpreter, The" Download Full Movie
It is real happiness to impute to you blog! Download: Zodiac, The – Watch Zodiac, The movie Online
Jonah Mccarrol
Rattling nice style and design and excellent content material, very little else we need .
direk film izle
We hope to enable businesses to highlight the qualities that make their locations stand out through professional, high-quality imagery.”
dsf
Outlet Moncler
With every little thing that appears to be building within this subject material, all your perspectives are somewhat exciting. Even so, I beg your pardon, but I do not subscribe to your entire theory, all be it exciting none the less. It would seem to us that your commentary are generally not entirely validated and in fact you are your self not really completely confident of the assertion. In any case I did take pleasure in examining it.
David
What a great piece of text! No idea how you wrote this text..it’d take me days. Well worth it though, I’d suspect. Have you considered selling ads on your website?