Instantiate Podcast #9 Show Notes: Everything Old Is New Again
Date
| 08/07/09
|
Podcasters
| Shaun, John and Sherif
|
Google Wave

Google's Quote "Google Wave is a new tool for communication and collaboration on the web"
Developed by team in Sydney office - 50 people
Key Points:
- Shaun predicted it!
- What is it?
- Real-time collaboration platform
- Combines concepts of Email, IM, Social Networking, Wikis etc...
- Features:
- Real-time: (Can turn this feature on/off) - See what someone else is typing, character-by-character.
- Embeddability: Waves can be embedded on any website.
- Applications & Extensions: Developers can build their own apps within waves. They can be anything (from bots, games, apps etc..)
- Wiki-like functionality: Anything written within a Google Wave can be edited by anyone else, because all conversations within the platform are shared.
- Open source: The Google Wave code will be open source, to foster innovation and adoption amongst developers.
- Playback: You can playback any part of the wave to see what was said.
- Natural language: Google Wave can autocorrect your spelling, even going as far as knowing the difference between similar words, like “been” and “bean.”
- Drag-and-drop file sharing: No attachments; just drag your file and drop it inside Google Wave and everyone will have access.
- Gadgets: Any iGoogle/OpenSocial Gadget can be put in a Wave -allowing people to collaborate over it
- Wave Robots: (Extending Google Wave)
Like IM Bots, can interact with users and outside sources (mashups). Can essentially be your application running in a wave. Eg. an IDE?!
- Discussion
References:
- Official Website: http://wave.google.com/
- Launch @ Google IO Conference: http://www.youtube.com/watch?v=v_UyVmITiYQ
- Complete Guide to Google Wave
Yahoo Developer Tools
Discussion:
- YQL - What Is it?
- Similar to Yahoo Pipes, even curl from the command line (but without having to write your own hacky code) - Much more powerful
- SQL-like queries
- HTML Table example
- select * from html where url="http://instantiatepodcast.com"
Then use xpath to traverse through the DOM tree and get a DIV that does something:
select * from html where url="http://instantiatepodcast.com" and xpath="//span[@class='podcastHeading']"
- RSS Example:
select title, link from rss where url="http://feeds2.feedburner.com/InstantiatePodcast" - RSS with multuple URL's:
select title, link from rss where url IN ("http://feeds2.feedburner.com/InstantiatePodcast", "http://blog.sherifmansour.com/?feed=rss2" ) - YQL Cashes your results for you
- Get the response API Formats in JSON or XML
- Powerfull, yet simple.
- Google Developer Tools, Yahoo Developer tools in the background
- Social, Geo + Search API's
- As per this Technation post: http://www.technation.com.au/2009/04/17/yahoo-developer-network-events-in-sydney/ there will be some Yahoo Develop days in Sydney, the first being April 22nd... : http://upcoming.yahoo.com/event/2413704 with Christian Heilmann
Another example of investing in the platform, not the content? Yahoo trying to do both?
References:
- http://developer.yahoo.com/yql/console/
- http://www.readwriteweb.com/archives/theres_a_great_amount_of.php
App-engine in the cloud - Discussion: Everything old is new Again?
Discussion (Main Topic):

- First Pyton now Java (Celebrating 1 year of App-engine)
- Sun not happy about this, Not supporting the full Java API Stack (eg Threading etc...)
- Development in the cloud? - (Short Discussion) Can this work? Collaborative development?
Related to: Johns ite of the week
What does this mean for cloud computing in general? (Key Discussion)
- Going back in time? "Everything that is old is new again"
Thin clients are back? - (Thin) 80's - Mainframes and dumb terminals. Everything was developed for the mainframe
- Why? Clients didn't have much processing power, technology very costly
- (Thick) early 90's - Away from dumb terminals to personal computers with processing done on the client
- We didn't transfer all processing back to the desktop, but most of it. Share the load - client does some work, so does the server. Generally speaking - the database was in the server, and all processing was done on the client side.
- This is still the case today to some degree (eg Outlook)
- Network transfer overhead
- Added extra complexity in how applications are deployed (both client and server tightly coupled)
- Why? Share computing power - server does the storage of data, client does computations
- (Thin) very late 90's - Client now becomes a much smarter dumb terminal
- Borwsers & the Internet becoming more readily available and accessable
- Web applications start to take off - but web applications are essentially 'stateless'
- User interface went back in time - we could not get the rich experience as we could in the thick client state - but we tried (CSS/DHTML/JS)
- Tried to bridge this gap with Active X applets
- Lots of 'browser plugins' to make the experience richer
- Why? Could leverage off servers on the internet - Made deployments easier (didn't have to do client and server)
- (Thin) Recent Times - now - 'Smarter' clients - into cloud computing
- AJAX - Browsers becoming richer
- Is it me or does AJAX just seem to you like it was a fluke? Jessie James - Is it a bit of a hack? (not saying its a bad thing)
- Applications built with more of a 'statefull feel' over HTTP
- CSS and JS advancing
- Cloud-based computing
- Will we ever go back again to thick clients? is it a big circle? Are we due for another cycle back to thick? Will we ever go back? Are we going back a bit now?
- Discussion
- Next-generation apps hold a combination of both thin and thick clients - but evenly distributed load - Syncing
- Are we seeing this now with Google Gears? - mix of both cloud and local
- Adobe Flex - keeping it in the cloud, very rich experience
- Adobe AIR - mix of both cloud and local
- Local storage and server-side storage
- Internet reliable? The need for both online and offline? Will we every go 100% in the cloud?
- What does this mean for enterprises?
References:
- http://code.google.com/appengine/docs/java/overview.html
John's site of the week
Mozilla Bespin : http://labs.mozilla.com/projects/bespin/ & https://bespin.mozilla.com/
Related to the "key topic", Bespin is Coding in the Cloud!
- First thing you notice is how FAST it is to use... nice
- Has many features like:
- Code Highlighting (html, javascript, css so far)
- Ability to create your own commands
- File browser design stolen from OSX :)
- Collaborative functionality (prototype)
- VCS Capability - at the moment only with.... ???Sherif this sort of ended in mid sentence???
- Uses a web gui toolkit they've created called Thunderhead
* Video overview http://www.youtube.com/watch?v=qRmC49JTx8M
Similar to: http://etherpad.com/
Mozilla doings some great stuff like Ubiquity to be come part of the next FireFox release (TaskFox) http://labs.mozilla.com/2009/04/taskfox-prototype-ubiquity-in-firefox/
We might revisit some of the other cool stuff they are doing @ mozilla labs in the future...