Google Open Sources Wave Protocol Implementation
eldavojohn writes "Certainly one of the most important steps in adopting a protocol is a working open source example of it. Well, google has open sourced an implementation of the wave protocol for those of you curious about Google's new collaboration and conversation platform. It's been reviewed, skewered and called 'Anti-Web' but now's your chance to see a Java implementation of it. The article lists it as still rapidly evolving so it might not be prudent to buy into it yet. Any thumbs up or thumbs down from actual users of the new protocol?"
It clearly can't be anti-web.
Google is definitely taking the right step in open sourcing Wave. Now, if only I could get an invite to participate in the Wave beta....
Too confusing. Requires a browser. Won't run on my iPod. Lame.
The CB App. What's your 20?
here from 4 days ago
I realize that this is Slashdot and a certain amount of technical knowledge is assumed, but I don't necessarily keep tabs on every little thing Google says or does. So would someone care to explain, even very briefly, what the hell the Wave protocol is for? Even a few words in a sentence in the summary would have been appreciated.
I for one feel bad for the helpless telecoms. They have done everything in their power provide nothing but exceptional service to customers over the past 30 years, including protecting our privacy and investing in infrastructure ~/sacrasm. Regardless of 'infringing' business models, we should be rejoicing the opportunity to compliment the current, and broken, communication model. By providing an alternative protocol with specific functionality it's not replacing current technology, simply enhancing it. Let's just hope it's not a product of the PR machine.
What a variable name...
return org.waveprotocol.wave.protocol.common.internal_static_protocol_ProtocolWaveletDelta_fieldAccessorTable;
waits for "lips move, but I can't hear what your saying" jokes
It seems to be a different approach to the same problem, with Croquet using distributed synchronization of computation rather than synchronized distribution of updates.
a neat idea, for collaborative brainstorming or throwaway conversations perhaps, but i hope that nobody is planning on using this for any communication that is mission critical, in it's current form anyway.
just like "clouds", "waves" do not reside on your computer, but rather *out there* somewhere, that you can *probably* get access to if:
-the service is up and functioning properly
-you have the required hardware and software
-there are no connection issues between you and the server
if your internet goes down, suddenly you've lost access to even internal communication at your office, as well as all archives and logs of past communication. Without local storage, you cannot do efficient search and retrieval of your own information.
there are serious privacy issues as well, no doubt google will be surfin the "waves" looking for terms to market to you, but perhaps it is more shady than that even. google has agreed to censorship in foreign markets over the years, does it really make sense to let them hold onto your data in this way?
then again.. it's cool technology, and now that it's being open sourced, it means feasibly you can run your own "waveserver" and mitigate the issues above somewhat.
I almost pissed my pants reading those anagrams. That was a truly epic troll post.
BSD is for people who love Unix, Linux is for people who hate Microsoft.
I think that every web developer that misses this out, will pay it hard.
Experts say that true innovations are hard to detect. I would say, keep an eye on this, or you will regret it.
I read the description on wikipedia. I do not see where this replacement for email and IM has accomodations for SPAM control. Can anybody give a synopsys on how WAVE will protect me from unwanted commercial solicitation?
Anyone know how on earth Google expects to make money off of this thing? It looks amazing, but how do you make money off of this if it's open sourced, free, and took a ton of development time to build (and presumably support in the future)?
If you can read this... 01110101 01110010 00100000 01100001 00100000 01100111 01100101 01100101 01101011
First of all, anyone who has not yet seen the video of the presentation, I recommend you to do that.
I'm usually the first guy who worries about privacy when using Google's systems and I do not buy easily into new fads. However this time I think Google is on the right track.
I can easily think of tens and tens of use cases for the waves. You can aggregate news, RSS, e-mail, IM, twitter, blogs, forums and comments all into one place and not have to worry about having to open up five different clients and find tens of different sites every time you want to drop a comment. But this is not the main thing that will make Wave popular. Wave will become popular, because it is independent of Google. Every company, every ISP and even every small group of people who might not even want their waves to leave their LAN can set up their own wave server. The protocol is open. I do not know about you guys but this time I have pretty high expectations.
At the risk of sounding off-topic, that "Operational Transform (OT)" in the protocol is too close to "Operating Thetan (OT)" for my comfort.
But, I wanted socialized health insurance!
yes, but does it run on Linux?
80 CC D8 AF AE D3 AB 54 B7 2E CE 67 C7
Wave is surely an interesting concept and application, but if there's any web app that just makes you want to scream for a native implementation, it's Wave. There's no way even the fastest web browser running on a Quad core or Octo core with 8 gigs of RAM will leave you satisfied with the experience. Just as I typed that, my browser froze in Slashdot.2.0 for like five seconds.
Why is Google spoiling good concepts by tying them to the browser exclusively? They just need to develop for the three major platforms, Windows, Linux and OS X. And open source it so that the enthusiasts of other OSes can port them. And they can still have a web implementation for people on other platforms or those who do not want to install a native app.
This space for rent.
but what good would that do you, if it's an ever changing document, like a conversation between multiple people?
like a mail server, you can have this installed inside your organization, so any exisiting backup strategy /protection strategy will work.
and off-course, run this "off-line" (withouth internet access).
-Woof woof woof!
Unlike something like Google Mail, offering a single user access to the Google Wave experimental servers just doesn't make sense at all. This is a collaborative tool. The magic is in working on waves with others.
The people at Google are pretty smart. I've been following Wave progress in the news and on blogs, but so far no one has answered this question.
I'd say Wave and Jabber are in similar situations in this regard. Both are open (even sharing the same protocol partly) and people do run their own Jabber servers, but as with Jabber there are already entrenched server vendors and service providers for communication and that's a lot of momentum to overcome
Jabber is a nice open IM protocol. So it's interoperable, but other than that what big advantages does it have over Skype, MSN, etc? Wave OTH is a totally new concept and, if people like it, and if the entrenched players do not provide it, they will lose users pretty fast. Also you can easily implement a wave robot that basically acts as a proxy to wave for your IM of choice (so long as the IM protocol is public or has been successfully reverse engineered)
I wonder how Microsoft will call it's clone of Wave... Bang? aLive? Sharepoint?
"I can not bring myself to believe that if knowledge presents danger, the solution is ignorance." Isaac Asimov
I received a Wave sandbox invitation 8 days ago and since then I have been spending a lot of time writing test robot extensions, installing them on Java AppEngine, and then inviting my test robots to participate in new waves I create.
Very cool. Very fun. Huge time sink. You know how it goes :-)
I would like a completely local development setup, but I don't know if it is worth the effort right now. Installing new versions of a robot on AppEngine is very quick, as is creating a new Wave in the sandbox - about a 90 second cycle to test code changes. I set my logger for DEBUG, and keep my AppEngin console log viewing page open -- not a bad setup.
I hope anti-web is a compliment -- this trend for replacing the OS with a comparatively limited browser, drawing commands with HTML widget hacks*, IP with XML over HTTP over TCP over IP**, local file storage with cookies and clouds***, etc, is really quite depressing...
* woo, html canvas! It's just like a native canvas, but 1/10th the speed, and you can only use javascript, and only in some browsers! yaaaaay!
** woo, web sockets! Just like native sockets, except crippled, and you can only use javascript, and I'm not even sure if any browser even theoretically supports them yet! yaaaaay!
*** woo, google gears! Just like native storage, except less flexible, and still only javascript, and you need to download a third party add-on! yaaaay!
I wonder how long until people start thinking "hey, the browser could be more efficient if we focus on the core parts, the 'kernel' if you will... and javascript would be more efficient as some sort of 'binary' (with other languages that could be translated into this 'binary' by some sort of 'compiler')... maybe we could even give these 'binaries' access to some sort of high-performance 'local file system' through some 'standard library'...". And then oh joy, people realise that rather than move the industry forward, they've been walking in circles, and the core concepts of computing haven't really advanced at all since the 60s...
I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
Can anyone comment on how the Google wave protocol deals with spam? Does it have a method for dealing with the problem, or is it vulnerable in all the same ways that SMTP is vulnerable?
As an end user, you can invite other *humans* to participate in Waves that you create. Waves can contain text and multimedia.
When I write a test robot, I install it on AppEngine (I use the Java version, but the robot support libraries are also available in Python). I can then create a new wave and invite my robot, just as I would invite a human participant.
My test robots watch for new invites or changes to the text in waves, perform some processing on that text, and then add their own 'blips' to the end of the wave.
I have been thinking about the web applications that I have developed in the last 10 years, and thinking in particular about which ones could be implemented on the Wave platform.
Would it kill you to add a few words to the summary to describe what you're talking about? Christ, you probably don't document your code either.
I swear to God...I swear to God! That is NOT how you treat your human!
What, it requires a user interface? Screw it if it can't run on my elevator controller chip! Who needs printf anyways?!
(I can't believe I'm making C standardization (in-)jokes... I should go out more often)
The installation was easy (on OS X) but it does not do much. You can run OpenFire, install Google's open source wave protocol project, and run server + client scripts. The client script lets you create new waves and add other participant IDs.
However, when I try adding my robot that is running on AppEngine as a participant, I get an error on my local server. It looks like I need to re-install everything on a public server so my app on AppEngine can communicate back -- but, I am not sure what the problem is.
Hopefully, if I wait a few days, the community may publish examples of creating local waves and invite robots on AppEngine to participate.
LOL, wut?
1. Create new way to communicate on the web
2. Open Source it so anyone can run it
3. ???
4. Profit!
Common Sense
I don't have access to wave itself, just the video. My understanding is that, for one, email is not needed for wave at all (it is designed to replace it by providing richer functionality). Also, after you register on a single server, you can participate in a wave on any server: that is what they call "federations". Wave servers talk to each other to make this happen. I suspect (and hope) that inviteableness (for the lack of a better word) is an account-wide setting. You should be able to choose among rejecting all invites, whitelisting and/or blacklisting invites, or welcoming all. So wave would allow you to have a collaboration-only account via whitelisting or an email-like account via accepting all invites and having a robot (a technical term :) to do the Bayesian filtering for you. I, for one, cannot wait to start auto-rejecting spam by invitation reason alone.
This demo text client is pretty spartan. I can't wait to get my hands on the HTML5 client. I was able to get this running on Debian Lenny on EC2 pretty quickly. I got two instances to talk to each other across the Amazon net and I could invite people from the 2nd instance to participate on the 1st instance's waves. So the fundamental server stuff seems to be working. Has anybody tried this out with ejabberd?
Use Google-WAVE and you embrace the dependence on WEB-SERVICES and eventually all the tasks on the devices you buy will be available only through "pay-per-use". You've been warned.
GOOGLE, ORACLE, MICROSOFT and IBM have all been intending to confuse all computer/mobile internet device/PIM/smart phone users into a state of dependence of web-services through VERY SUBTLE steps. THEY LURE with the WORM(office, maps, sketch, wave, voice), WE WANT THE WORM, WE EAT/install the WORM, and voilà VENDOR-LOCKED-IN CATCH! But the LURE for it sounds like a miracle tincture to heal everything that ails you...we must have it:
Google Wave is "a personal communication and collaboration tool" announced by Google at the Google I/O conference on May 27, 2009.[1][2] It is a web based service, computing platform, and communications protocol designed to merge e-mail, instant messaging, wiki, and social networking.[3] It has a strong collaborative and real-time[4] focus supported by robust spelling/grammar checking, automated translation between 40 languages[2], and numerous other extensions.[4]
The subtleties of forcing people to go web-service are there. The younger generation know only the web browser/twitter/QQ/MSN/SKYPE. WAVE is asking everyone to move from the simplicity of thunderbird for email and firefox for browsing, open office for editing docs/spreadsheets/etc..
to the complex jack-of-all-trades WAVE. If it's too good to be true, then it probably is.
I choose not to use WAVE. GOOGLE and MS are both too big now. They control too much of the world's knowledge. They must be kept in control by limiting our use of their product. For example, you can use their search engines and MS/GOOGLE can display their advertisements, but THAT's all you want.
Don't install their office products on your device. Don't use their mapping products on your device. Just use/install simple open-source software on your device. This will reduce everyone's probability of being "vendor locked-in" to one alternative(risk of dependence to one-sole company GOOGLE/MS).
It's so important for people to understand how "vendor lock-in" is so evil. It's so important for people to understand that GNU/Linux and all it's flavors provide alternatives to "vendor lock-in" NOW. Whatever happened to the "one tool, one job" philosophy? This wave stuff seems to add complexity everywhere. It's adding complexity in the maintenance of the server. It's adding complexity in the maintenance of the devices that connect to the server. If WAVE breaks, everything breaks. Not a nice situation to be in. Worse even, if WAVE asks us to pay for using it then we won't be able to use our devices for anything. LINUX is becoming almost essential for digital freedom.
SEE THE LIGHT PEOPLE!
-Google and Microsoft will eventually reach a point of no return in terms of complexity. Move to simpler Do-It-Yourself strategies if these techie big boys don't get their act together.
-Create your own ways of collaborating together in order to further increase your independence from IBM/MS/ORACLE/GOOGLE in your lives.
-Constrain your google/baidu/yahoo/bing/QQ internet diet: view anything with advertisements via the browser, but don't install stuff via the browser as a general rule of thumb. This will make the internet experience safer with no chance of vendor lock-in from the big IBM/MS/ORACLE/GOOGLE/FLASH/ADOBE/MOVIE COMPANIES/MUSIC COMPANIES.
First of all, it's been done already. Obviously google couldn't use the standards already in place.
It hasn't and Google does. Wave is based on XMPP, but extended to do stuff that hasn't been done before.
Am I the only one who wonders if this might be the true precursor to the Metaverse?