Hydra: Rendezvous-Enabled Text Editing
Tokerat writes "It's incredible what some people dream up. A recent post on MacSlash brought this little gem to my attention, and I have a feeling some of you fellow /.ers will be screaming to get your hands on this: Hydra is a Rendezvous-enabled text editor, which allows several people to edit a text document at the same time. Imagine doing some extreme programming with this, with one person writing code and another following the first and correcting their mistakes & making optimizations simultaneously? It already works with Apple's Project Builder, supports syntax coloring, and the ability to manage access on a per-document basis. Future improvements will include support for RTF and much tighter integration with Project Builder. It looks to me like these guys are really on to something here."
For the sake of completeness, in Xemacs, the command is:
M-x make-frame-on-display
If at first you don't succeed, skydiving is not for you
Although it is not used for programming, the wiki is an excellent method of collaborative editing. Take a look at the wikipedia. There are lots of other wikis around on the web. The great thing is that you don't need any special software, just a browser.
It works. One of the surprising results was that you don't actually need to 'pass the keyboard' explicitly: you wait for the other person to stop typing, a bit like you wait for someone to stop talking. If the rare case that you both start to type at the same moment, it still works out usually. The funny part is that you can see each other's typos in real time. It's a bit eery but fun to show around. :-)
We've speculated that using this with VoIP would make it even better, but it worked out pretty well. The shared account was in Finland, by the way; I logged in from Germany and it was still fast enough for interactive typing (ping between 50ms and 100ms).
I daresay it's not the same as face-to-face pair programming, but it's still pretty cool. And the morale is: Don't wait for Hydra! Use Unix tools today!
(We have not yet, I should note, found a way to make this work for collaboration between an emacs and a vi person-- that's a topic for future research... :-) )
You can also join via an IP address, for those times that you are not on the same subnet.
What, me worry?
Our php programming class has just started using this. It is going over pretty well, and easily works with the 20 students in the class all working on the same document. The teacher can pose questions to certain people in the group, who can then type the answer directly into the document.
This is one of those applications that can really show off what OS X can do. It's not only what's possible technology wise, but how simple it is to set up and use. It took all of 10 seconds to use Apple Remote Desktop to copy the Application to 24 machines in the room.
What, me worry?
Now there's an argument which will have people lining up to try XP.... Sometimes people should just think about what they're about to say before saying it.
I don't see things in black and white; I see the gray. Heck, I actually see in color, which makes things more difficult
This Rendezvous editor looks great for "a bunch of macheads sitting at a meeting"...but Until Rendezvous is extended to more platforms and actively used, this is useless for most people- I serve as 'editor' of a large manual, and nobody else in the group of about 12 has a Mac(I use Lyx/Latex for the manual...and that makes getting edits in from people is a total PITA.)
something Jabber based would be much cooler, since there are clients for everything...and it'll work over a WAN, the internet, etc...not just a local LAN...which means we could have a collaborative worksession, despite Everyone in the club being spread out across New england and lower canada.
That said, I can't find any info about any editors that actually use Jabber yet, though...
Please help metamoderate.
This guy is just trying to bait somebody so that he can scream... "nuh uhh... Apple the OS from Xerox" Meanwhile, he doesn't realize that Xerox was compensated for the code Apple used, and that Apple totally re-invented the technology that Xerox had in the labs. He makes it sound like Apple had an instant GUI once the transaction was made. (For those that don't know, the IP that was purchased from Xerox amounted to little more than a window with a few icons in it. The windows didn't scale (at least not on the fly, they didn't overlap, there was no desktop, there was no trash can, there wasn't even drop down menus! Apple invented all that! Regardless, this guy is implying that Apple hasn't invented anything, which simply isn't true.
And GNU doesn't consider the APL to be truly Open Source, but all that idealistic chatter is pretty much besides the point. Open or not, it's still a pain in the ass to have Macs and Windows and Linuxes all run side by side on the same network.
Actually, to be fair, gnu.org believes that the APSL is Open Source, just not Free Software. But then, so are a lot of other licenses for programs most of us would have no problems using and working on.
As for your contention about Mac, Windows, and unix being difficult to make work together, it really depends. For pretty much ages these have all supported various protocols which would allow collaboration, mostly tcp ones we know and love (ftp, http, etc). The native formats are at issue, but there has always been software available for interoperability. Now I understand Mac OS X comes with SAMBA, as does Linux. So whereas I understand nfs and afs on Windows is not what one would like, the other two in teh mix have come to the plate with software that lets them work with Windows.
Here's an old paper on a way to handle rollback and undo: A Framework for Undoing Actions in Collaborative Systems
It's been tried with a group-modified version of Emacs (DistEdit).
1) Reduce your font size
2) I use a TiBook most of the time, and I don't need a page that big
3) Even when I'm working on my desktop (2048x1536), I don't run huge browser windows
4) Many browsers interpret stylesheets and tables slightly differently, and getting that layout to look correct in all of them is nigh impossible
5) Fixed it, so you can stop complaining.
.@.
There is more to QuickTime than Sorensen. And Apple was the first company to include video playback that's as easy to use as editing a text doc.
/LOT/ of development effort went into QuickTime (and QuickTime VR etc.)
A
Why yes, I AM a rocket scientist!
Well, the twist with Rendezvous and iChat is that you can sit down, open your laptop, have your Mac automatically connect to the nearest wireless network and automatically discover ever other iChat client on the network. No IP addresses, no entry of nicknames; it automatically discovers everybody else on the local network. Not only that, but it's rediculously easy to do the same thing yourself, or anything you like using it; Apple's libraries are supposed to be top notch from what I hear. I'm rather surprised nobody's written an iChat client for Windows/*NIX yet, as it should be trivial to use Apple's code and write a small program that would handle this.
:) /rant
None of this is incredibly new or even groundbreaking in itself. The main feature is that it's so simple and easy to use that you can put it together in combinations that nobody would have even thought of putting them together, or that they wouldn't have put in the effort to get it to work. I have a Epson inkjet that I share from one computer to my main one. I was impressed to click the checkbox on the sharing computer in the other room, sit down in front of my main computer and begin printing without ever touching a configuration setting anywhere in the OS. Like I said, nothing groundbreaking, but it makes everything that much easier to use, and gives me one less thing to worry about. Which I appreciate.
My English teacher once told me that two positives don't make a negative. Two words for her: Yeah, right.
Dude, you're wrong all over the place.
p
FireWire: http://www.pcmag.com/article2/0,4149,848866,00.as
ColorSync: Implementation is half the battle, but they didn't invent color matching. They made it work transparently.
QuickTime: QuickTime is more than just a codec. It's a time-based media framework that is unlike anything that came before it. Sorenson is just a piece of the puzzle, like M-JPEG and Cinepac.
How about network autodiscovery and physical networks that anyone could use? (AppleTalk and LocalTalk).
Or simple and obvious multiple monitors? Plug another video card in and get a bigger desktop. In 1987!
Perhaps you're blinded by the hatred you have for something that is pretty trivial in the scheme of things.
.@.
Apple invented Firewire. They may have invited industry input, but it was their initiative.
Apple invented ColorSync. Similar things may have been done before but that is irrelevant. Did Honda not invent the Insight? I mean the Model-T came first and they are both cars.
Finally, repeat after me: "QuickTime is not a codec." QuickTime is a system for dealing with time-based data. It can store text, images, video, etc. It can even store objects with motion information. It can contain hyperlinks and even SWF content. Sorrenson is one of many codecs available for use in storing movie data in the QuickTime format.
Besides these three there are things like HyperCard, QuickDraw, etc. Both of those were many years ahead of their time. Clipping wasn't done until QuickDraw. Look at HyperCard then look at Director and Flash. Look at Revolution. Look at the web itself.
Lets have another. Looc at MacTV. Now look at all these "media PCs" being merketted as innovative. The MacTV is many years older than any of these. Give gredit where credit is due. There is nothing substantially different (given the technology of the time) between these media PCs and the MacTV.
Also, don't forget the innovations in the Newton and the Pippen. Apple has innovated more than most modern hardware or software manufacturers with a fraction of the income.
t'nera semordnilap
woops -- re: MS NetMeeting being frozen at NT4: it's available in Win2000 after all.
je ne suis pas un fou
Of course, this also means the two programmers have to be on the same LAN segment. Rendezvous doesn't route.
Actually there's a "connect via Internet" option where you can connect to anyone with an IP address and the right port open. I was very skeptical at first, but it works beautifully. We've been testing it out all morning. Unfortunately, I'm seeing what appears to be a filesize limit... I tried to open up a 1000+ line file, and I didn't get the entire file open... very strange, and sad... I hope they fix it soon.
I make these: http://beatseqr.com
Rendezvous basically allows all "nearby" copies of Hydra to find each other without any intervention from the users. So, it saves a config step and, especially with wireless networking, becomes a very convenient way to set up networks in general.
If you're really confused about what Rendezvous is, try substituting the words "Universal Plug and Play" or "Zero-conf networking" for Rendezvous and see if it helps...
Clear, Dark Skies
No, there were multiple wheel mouse vendors that predated them. MS was the first one to popularize the wheel mouse, and to get it working well with lots of apps.
May we never see th
Yeah, tons.
- Sun: NFS
- Sun: NIS/NIS+
- Sun: NSS/PAM
- Intel and others: USB
- AMD and others: Hypertransport
- Sun: Java
Yeah, there's a lot of Sun in there, because I know their stuff better, but come off it. Companies invent stuff all the time, it just doesn't always turn into a viable product, and it doesn't often show up as a unique, identifiable thing.Hell, everything in linux was invented by someone; the free software people sure as hell didn't think of it. ;)
Speaking as the Debian maintainer for screen, I can tell you that multiple displays showing the same window works fine in any recent version (3.9.x).
This is a one-up to such a system. This allows people to do the editing at the same time, and one person's edits affect the other's document and vice versa. I think this might be a nice addition to a CVS system where is someone has a file checked out, you can open it "with" them and do work, and this pretty much resolves any conflict issues CVS needs to deal with.
CAn'T CompreHend SARcaSm?
I've seen alot of negative comments here about Hydra being Mac only. There is talk of making Hydra open source, perhaps you should contact the Hydra team and express intrest in porting Hydra to your favorite OS? If they do make it open source it's surely going to be because of intrest in the project and, as stated on their page, it surely will be a large undertaking due to the fact that it's written entirely in Objective C and Cocca. Unfortunately this means a complete re-write will be needed, but you didn't have anything to do this weekend, did you?
Also, if you want to get active about making Rendezvous a reality on more that just the Mac (which is what Apple and Zeroconf are hoping for), Zeroconf.org is a good place to start, and there is a SourceForge project devoted to Zeroconf on Unix and Linux as well.
CAn'T CompreHend SARcaSm?
Unfortunately, I'm seeing what appears to be a filesize limit... I tried to open up a 1000+ line file, and I didn't get the entire file open
Ah, maybe not.. I may have been experiencing some other phenomenon that caused that... possibly a VPN issue unreleated to this... oppologies to the authors of this software... it does not appear to be malfunctioning.
I make these: http://beatseqr.com
Oh yeah another thing - who the hell programs in Objective C?
Only the people who know the difference..
why doesn't Cocoa offer Java and C++ direct integration
There's a tremendous impedance mismatch between Cocoa and C++. It's quite feasible for Obj-C apps to use legacy C++ code, but writing cocoa apps in C++ would be rather horrific.
Have a look at this link if you want to read about why Obj-C beats C++.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
Because C++ is not sufficiently dynamic. The Cocoa runtime needs to invoke dynamically determined methods on arbitrary objects. Objective C does this very easily, Java can do it with a bit of coaxing, C++ not at all.
How to solve most of our problems: 1.Lots of nuclear plants. 2.Cure aging.
I haven't read *every* comment to see if this was already mentioned. But I saw some people disappointed that it 'only supported rendezvous' .. Please note that this application allows you to just join a session by specifying a host/ip as well, so it's not JUST rendezvous enabled.
Cheers,
-JD-