Download - Wave Hackathon Intro
Wave hackathon intro
Jose Quesada,Max Planck Institute, Berlin
RuPy 2009, Posnan, Poland
• Jose Quesada, – [email protected],– http://josequesada.name– Twitter: @quesada
• Reasoning with the entire web:– http://larkc.eu
BASICS. THE TECHNOLOGY
• Each wave is an XML document. It can be rendered as html
• Uses html 5
• XMPP
• Operational Transformation (OT). It defines a set of operations, transformations, and the documents they can be applied to
HTTP vs XMPP
• REST– A mapping of CRUD operations on a RDBMS to:• GET• POST• PUT• DELETE
• Web frameworks isolate us from seeing http at work
Credit: Andres Ferrate, getting started with google Wave. O’ reilly
HTTP vs XMPP
HTTP vs XMPP
• Decentralization
• Presence– Presence data overhead
Real time possible. But this is not as big deal as it seems.
http://jasonkolb.com/weblog/2009/09/why-google-wave-is-the-coolest-thing-since-sliced-bread.html
WE
ARE
DOING
IT
If we are doing web apps over HTTP, we are doing them wrongWRONG
The wave protocol is free and open source. You can run your own wave server
Alternatives (other real-time frameworks)Tornado: extracted from friendfeedTwisterDiesel
COMPONENTS
Robots - gadgets
Robots are like participants
Credit: Andres Ferrate, getting started with google Wave. O’ reilly
Waves are embeddable
• In an application (example: desktop wave client)
• Web page (example: substitute blog post and comments)
Sandbox vs standard wave
• Standard ~ 100.000 users– You normally get invites– Quite a lot of activity
• Sandbox: lucky few• - not that many people to test your extensions,
but you can go to the standard wave for that
INSPIRATION
http://sites.google.com/site/gwaveextensions/extensions-list
Chatbots Conversion Games Groups Integration Language Polling Search / Aggregation Utilities Wave Management
http://sites.google.com/site/gwaveextensions/extensions-list
http://sites.google.com/site/gwaveextensions/extensions-list
RESOURCES
A Wave in itself: Wave Programming tutorials! https://wave.google.com/wave/?pli=1#restored:wave:googlewave.com!w%252BW779r_dkQ
Google Wavehttp://www.slideshare.net/monika7/google-wave-2063865
Google Wavehttp://www.slideshare.net/jrigerl/google-wave
Advanced Wave Presentationhttp://www.slideshare.net/bedney/wave-presentation-1933385
Making dodgy robots with Google Wavehttp://www.slideshare.net/guest3eb9a3c/making-dodgy-robots-with-google-wave
Google Wave Robot API - Marcel Prasetyahttp://docs.google.com/present/view?id=ajfcq4h4mvxw_0f9xph2cg
Wave extension In 5 stepshttp://jeez.eu/2009/10/11/creating-a-google-wave-extension-in-5-steps/
Reddit:Wave: http://www.reddit.com/r/waveApp engine: http://www.reddit.com/r/AppEngine/
For gadgets, step-by-step guide (in php!)http://jeez.eu/2009/10/11/creating-a-google-wave-extension-in-5-steps/
Wave Extension Design Principles
Make It Wave-y Make It Easy to Use Make It Easy to Install Make It Look Good Make It Useful — Or Fun!
(http://code.google.com/apis/wave/extensions/designprinciples.html)
Gotchas: Robot Wars
• Problem: Because you can invite more than one robot into a wave, you can inadvertently end up building a new version of Robot Wars. For example, one robot could reply to another one's changes and vice versa.
• Solution: give robots limited quota, so infinite loops will ultimately run out of steam.
SOCIAL ASPECT
Some A-list bloggers didn’t like it
Scoble: Google Wave crashes on beach of overhypeGoogle Wave’s unproductive email metaphors
But, early adopters/geeks are not the audience.
User experience improvements will make great extensions
• Pain points– You need to read through a lot of crap – It's hard to manage a long wave
• Spam: Nobody can enter if they are not
invited
Like twitter, it sits in an uncomfortable position
wavetiquette
• proper wave etiquette is still forming– When is it ok to delete posts?
– Should you edit your own response or respond to your response?
– Starting new waves versus resurrecting old ones (and how to politely point people to older waves)
Hack away2.5 hrs. Pair up
Let’s move to a place where we can walk around, see what others are doing, get back to coding
Come up with an idea. See blog post at rupy for step-by-step things to do
There’s a wave already started. Search for rupy
If you have no wave account, match up with someone who does
END
• Scale to the entire web
• Do reasoning with open word assumption
• Retrieval in real-time
• Go beyond logics
• Use cases:– Real time city– Cancer monographs for WHO– Gene expression finding
To follow:
• @enkido working on wave robot IDE, scipy• http://gist.github.com/raw/
150983/8b27179d9defbf5a1ac25e574c9e51ec2f981998/gistfile1.txt Tips from a hackathon attendant