Mashup University 4: Intro To Mashups

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

2 comments

Comments 1 - 2 of 2 previous next Post a comment

  • SRINI Srini N 2 years ago
    Instructive. Tnx.
  • SRINI Srini N 2 years ago
    That rings a bell! In our Young Orators' Club we used to have a speaking exercise called 'Twin Topic'. Two disparate tpoics like 'Ice Cream+Archaeolgy' or 'Bicycle+lampshade' were given for the speaker to connect seamlessly and speak upon. So we had 'mashup' as early as in 1975 or so !
Post a comment
Embed Video
Edit your comment Cancel

27 Favorites & 6 Groups

Mashup University 4: Intro To Mashups - Presentation Transcript

  1. Cross Entropy Reduction for Image Analysis Using Simulated Annealing and Fast Artificial Neural Networks Mashup Camp IV, Mountain View CA
  2. Introduction to Mashup Development John Herren Developer, Consultant, Masher-upper Mashup Camp IV, Mountain View CA
  3. My Current Gig
  4. Wikipedia Says
    • Mashup (music), a musical genre of songs that consist entirely of parts of other songs
    • Mashup (video), a video that is edited from more than one source to appear as one
    • Mashup (web application hybrid), a website or web application that combines content from more than one source
  5. Do you have the mashup gene?
    • Did you repurpose your toys as a kid?
    • Do you still?
    • LEGO maniac?
    • Do you embrace the web as the ultimate maker's platform?
    • Are you frustrated until you figure out how things work from the inside?
  6. Do you have the mashup gene?
    • Did you mourn the loss of Don Herbert?
  7. Mashup Characteristics
    • Combination
    • Visualization
    • Aggregation
  8. Combination
    • Use multiple data sources
    • Join across dimensions
    • Subject + Time/Place + ...
  9. Combination Example
    • Input: Bands I like + Where I live
    • Data Sources: Eventful.com + Yahoo! music search
    • Output: nifty mashup
  10. Visualization Example ChicagoCrime.org
  11. Visualization Example ChicagoCrime.org
  12. Aggregation
    • Group your data and take a measure
    • Sum, Avg, Min, Max
    • Create information from the data
    • Which becomes new data itself
    • Use algorithms as a substitute for creativity!
    • Classification, prediction, clustering, NLP
    • Uncover hidden aspects of your data
  13. Aggregation Example
  14. Why Mashup?
    • Perfect prototyping platform
    • Hobby
    • Business
    • Embrace recursion
    • Embrace recursion
    • Profit! - Fulfill the underpants gnome prophecy
  15. Step One
    • Collect data sources. Use APIs to find
      • Restaurant reviews
      • Crime statistics
      • Books about alpaca farming
    • What's an API?
      • Hotlinking 2.0?
  16. Step Two
    • Make a mashup (duh)‏
    • Bootstrap a niche
    • Exploit the long tail
  17. Step Three
    • Profit!
      • 15 minutes of blogosphere fame
      • Monetize traffic with ppc/cpm ads
      • Affiliate programs
      • Sell advanced features or memberships
      • Sell it as software
      • Early acquisition
      • Your dream interview
      • Win a Sun Microsystems 8-core 32GB RAM Sun Fire T2000
      • (insert liquidity event here)‏
  18. Case Study
    • Yahoo! News Tag Soup
    • Yahoo! interviews
    • Tagcloud.com
    • Crazy press - Wired, TechCrunch
    • Mashup Camp I
    • Under the Radar
    • Crazy Growth, VC’s
    • Deadpool
    • ?
  19. The Mashup Pyramid GUI Tools Code Libraries APIs Data Feeds Platforms
  20. Data Feeds
    • RSS
    • ATOM
    • Demo
  21. The Mashup Pyramid GUI Tools Code Libraries APIs Data Feeds Platforms
  22. APIs
    • Dynamic data feed
    • Specific to the data service
  23. Feeds How-to
    • Two turntables and a microphone
    • APIs and a scripting language
      • Easy to prototype
      • Easy to deploy
      • Scripting language is rarely the bottleneck
    • Two simple steps
      • Request-Response*
      • Iterate over response (result set)‏
  24. Response Handling
    • Usually XML
      • SimpleXML: $rss->channel->item[0]->title;
    • JSON
    • Serialized Data
      • $results = unserialize(file_get_contents($url));
    • YAML
  25. SOAP
    • Not really simple
    • Not really object access
    • Not really a protocol
    • But there is hope
  26. SOAP in PHP
    • $client = new SoapClient("AmazonWebServices.wsdl");
    • $params = array(
      • 'keyword' => 'alpacas',
      • 'page' => 1,
      • 'mode' => 'books',
      • 'tag' => 'jhherren',
      • 'devtag' => 'YOURAPIKEY');
    • $result = $client->KeywordSearchRequest($params);
  27. XML-RPC
    • Easier than SOAP
    • Supports typing
    • Uses system.methodSignature instead of WSDL
    • Popular with blogging apps
  28. REST
    • Representational State Transfer
    • Don't need extra layers
    • URI as resource
    • CRUD operations: GET, POST, PUT, DELETE
    • Stateless, cacheable, layered
    • (easier)‏
  29. RSS Example
    • In Python:
    • import feedparser #by Mark Pilgrim
    • rss_url = "http://feeds.feedburner.com/Techcrunch"
    • feed = feedparser.parse(rss_url)‏
    • for entry in feed.entries:
      • print entry.title
  30. AJAX & Browser-Side
    • Asynchronous Javascript and XML
    • a.k.a. XmlHttpRequest
    • Client side
    • XML, JSON, ...
  31. The Mashup Pyramid GUI Tools Code Libraries APIs Data Feeds Platforms
  32. Third-party Libraries & Frameworks
    • Check the API providers first!
    • Web Frameworks: Django, Ruby on Rails, Zend Framework
    • Yahoo! code libraries
    • Google AJAX Search API
  33. Zend Framework Example <?php require_once 'Zend/Service/Flickr.php'; $flickr = new Zend_Service_Flickr('MY_API_KEY'); $results = $flickr->tagSearch(&quot;llama&quot;); foreach ($results as $result) { echo $result->title . '<br />'; } ?>
  34. The Mashup Pyramid GUI Tools Code Libraries APIs Data Feeds Platforms
  35. GUI Mashup Tools
    • Graphical widgets
    • Boxely
    • Adobe AIR
    • SnapLogic
  36. The Mashup Pyramid GUI Tools Code Libraries APIs Data Feeds Platforms
  37. Mashups Platforms
    • No server needed
    • Graphical building tools
    • Think MS Access for mashups
    • Google Mashup Editor
    • Yahoo! Pipes
    • Boxely
    • Popfly
    • Dappr
    • Kapow
    • Facebook
    • (you really have no excuse now)‏
  38. Mashup Tools
  39. Browser Based Authentication
    • Login to the service, not the mashup
    • Provides anonymity, but not safety
    • Yahoo! BBAuth
    • Google AuthSub
  40. The Mashup Pyramid GUI Tools Code Libraries APIs Data Feeds Rich, Easy Flexible, Low-level Platforms
  41. Pain Points
    • Latency & Scalability
    • API limits, abuse & metering
    • API versioning
    • IP, copyright, licensing
    • Reliability & SLA
    • Monetization
    • Privacy, security, identity
  42. My Predictions
    • More mobile mashups
    • More AI & datamining to supplement “user generated content”
    • Microformats catch on and get aggregated
    • OpenID catches on
    • “ Attention Capital”, “Attention Management”
  43. The Reality
    • Twitter
    • Facebook platform
  44. New Predictions
    • Increased competition among mashup platforms
    • iPhone, iPhone, iPhone
    • Microformat spam
    • The big players will implement OpenID
  45. Resources
    • Programmable Web
      • http://programmableweb.com/
    • Yahoo Developer Network
      • http://developer.yahoo.com
    • Google Code
      • http://code.google.com

jhherrenjhherren, 2 years ago

custom

12049 views, 27 favs, 3 embeds more stats

Slides from John Herren's Introduction to Mashups s more

More Info

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Go to text version
  • Total Views 12049
    • 12039 on SlideShare
    • 10 from embeds
  • Comments 2
  • Favorites 27
  • Downloads 604
Most viewed embeds
  • 8 views on http://jhherren.wordpress.com
  • 1 views on http://www.digitalistic.com
  • 1 views on http://creator.textcube.com

more

All embeds
  • 8 views on http://jhherren.wordpress.com
  • 1 views on http://www.digitalistic.com
  • 1 views on http://creator.textcube.com

less

Flagged as inappropriate Flag as inappropriate
Flag as innappropriate

Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

Cancel

Categories