Log in

No account? Create an account
Previous Entry Share Next Entry
Collaborative Editing
A long time ago, I posted an "Open Letter" to the CodingMonkeys, who created SubEthaEdit, an application for real-time collaboration, available only on OS X. After that letter, I had a chance to talk to one of the Developers of SubEthaEdit in a collaborative document hosted on the SubEthaEdit server, Dominik Wagner.

In that chat, we discussed a number of things about why I was interested in SubEthaEdit, and why I felt that releasing the code would most likely be a good thing for the application and the development team. I mentioned that if another application came out which were able to perform the same functions on other platforms, it would really be a SEE killer, given that Macs only corner less than 5% of the market. Nonetheless, the response was that SubEthaEdit would remain a Mac only product for the forseeable future.

Someone else recently asked a similar question on the mailing list for SubEthaEdit, the response to which is available in the gmane mailing list. The response is the same there as it has been the whole time: We have no reason to offer source to our product, as we hope to make money off it in the future.

I have many reasons why this upsets me, not the least of which is the fact that I am upset easily by anyone who doesn't do things my way. (There is more truth to this comment made in jest than many realize.) More importantly to the project, I personally feel I would be able to benefit significantly from an application that did even part of what SEE does in a cross platform way. So, after my first talk, I created a project and recruited some bright people to help me out on it, working towards creating something that would start to mimic SEEs capabilities, integrating what other projects had done before me.

I didn't get very far, not the least because this is not a trivial problem, and I got bogged down in implementation details. However, the release of SEE 2.1 has me itching to work on this again, especially as my other pet project (an interactive IRC RDF query bot) is in a stable, relatively documented release state, meaning that I can let it sit and other people play with it for a while.

So, this is announcing the restarting of work on the FortyTwo project, with a goal of creating a bare bones collaborative editor for use cross platform. The current prototype will be using Python and wxPython, which are available on Windows, Mac, and OS X. The goal is to create a completely open system such that any application which can be sufficiently hacked can support a bare minimum of editing functions.

I've already got a wiki set up: Accessible at http://crschmidt.net/mywiki/FortyTwo, with some links to code and research, as well as other projects. In addition, there's an IRC server on irc.freenode.net, in #collabedit. There's SVN, too. I've got some ideas on how to get things done, and if you're interested in participating, or just sitting around and watching, please stop by. I've let the project group I had atrophy, and that was a mistake I don't plan to make again. I feel a burning desire for this application, and come hell or high water, I will get it done.

  • 1
Wow. Chris, fighting head on with the developer of one of my favourite applications.

I'm very intrigued as to how this will go...

Eh. Not fighting. It turns out that way just because I find non-OS apps to be so... limiting. But I still think that they have very valid points as to why they want to do it the way they do, I just don't think it's the right thing for the people who are using the application.

"Power to the people, through the code." -- Salon

I want SEE everywhere. They want it where they can make money off it. I'm a socialist - money sucks ;) (Except when I'm looking at my paycheck, at which point I'm a libertarian.)

I put hours of my work into applications for other people. To see other people who aren't willing to give up on profits in order to make something more usable for other people bugs me because of who I am.

Their application will always be better. It will be better engineered, it will be better designed, it will look and work better. But it will still always only work on OS X. If I can design something that works even a quarter as well for the other 95% of the world, I'll be quite pleased with myself.

I'll probably never stop using SEE. But I may be able to use something else as well.

That's a fair argument, however Coding Monkeys probably have another reason for not porting to other OSs... Rendezvous (sorry, "ZeroConf" to everyone outside Jobs' reality distortion field) simply isn't implemented well enough on anything but OS X (yet...)

Rendezvous, ZeroConf, whatever you want to call it, has nothing to do with the argument though. (Also, the code that runs it is released open source by Apple.) There's almost nothing in the program that requires rendezvous. Most of the important bits are transmitted in BEEP - Block Exchange Extensible Protocol (or something like that), which is completely seperate from Rendezvous, which only finds the original services.

I can write something that mimics what SEE does for Rendezvous (at least, what I would consider useful): I actually did stuff like that for playing at one point. (Using pyzeroconf.)

In any case, I'm not asking for an application to be released by them for any other platform. Hell, I'm quite aware of how difficult it would be to rewrite code from OS X to other platforms: Apple makes UI easy. (This is why so many apple apps are considered "Pretty" in comparison to Linux.) I don't want support, I don't want any change other than an open look at what their code does so that other applications can learn from it and create their own. However, like I said, I understand, even if I disagree with, the idea that they want to keep their collaboration code under wraps so they can make money with it. I just feel differently.

I like the idea of releasing applications under GPL, at cost: Here, you can have our GPL application, but you'll have to buy the app from us. Same thing that X-chat on windows does: here's all the code, do whatever you want with it, but if you want Binaries, you'll need to pay us $20 bucks. I like that idea, but I can't attest to whether it's a strong business plan or not.

I'm an open source hacker. I want the tools I'm using to be open source. When they aren't, I do my best to find a replacement. This is my goal at working with others who feel the same way to find a replacement.

So... uh... as someone who doesn't speak geek... what does it DO?

Heh, I skipped that part, I guess:

SubEthaEdit lets more than one person edit a file at the same time. Theoretically, it lets as many people as want to edit it at the same time. Kind of like a wiki, only all the changes are real time.

It's useful for debugging: you can look over someones shoulder as the code, even if you're 100 miles away. It's useful for working on documentation: someone else can pick up and add the details you left off, or help you fill in an outline.

All in all, it's just a really useful tool to let you edit the same document as someone else.

I actually don't care so much about open-source as open protocols. As far as I'm concerned, CodingMonkeys can keep the code closed as long as they publish the protocol in enough detail to let other applications interoperate.

I see the goal of an open source collab editing program as leverage to force CodingMonkeys to open their protocol. We'll all be better off if each editor can talk to the other editors, instead of fragmenting the marketplace. Plus we get the benefit of development effort on their servers.

And if they choose not to open their protocol, we've got a fully open-source alternative. So while it may not be quite as nice as having everything interoperate, we still get our collaborative editing on other platforms.

I wish I had the time to help with this. I'd love to try to work on it with a serious web-architecture approach (shared editing of web pages), using RDF, etc.

But I don't really, so I'll just cross my fingers. :-)


Sure, i would love to have subethaedit code!

Subethaedit is already free thou, so quit complaining.

If you dont like how its only available on the mac only, accept the fact that mac developers are better off. Furthermore, the app is written in cocoa...which i donno if you have tried to use on a windows box, but it is rather fruitless.

Go bitch at Microsoft, they are an easy target for your aimless ranting.

Blake Teitelbaum


  • 1