Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Promiscuous Drupal

2,920 views

Published on

A cheeky look at building Drupal web sites out of external web services. Drupal as a mashup engine? It can happen, but there are some important issues to consider.

Published in: Technology, Design
  • Be the first to comment

Promiscuous Drupal

  1. 1. Promiscuous Drupal Imagine a daringly racy subtitle Monday, March 23, 2009
  2. 2. http://www.flickr.com/photos/herzogbr/2274372747/ Monday, March 23, 2009
  3. 3. this is why we love drupal http://www.flickr.com/photos/herzogbr/2274372747/ Monday, March 23, 2009
  4. 4. this is what we make it Monday, March 23, 2009
  5. 5. http://www.flickr.com/photos/ladyada/3039492078/ Monday, March 23, 2009
  6. 6. Drupal as one tool among many http://www.flickr.com/photos/ladyada/3039492078/ Monday, March 23, 2009
  7. 7. Enlarging the Toolbox* • Spam Filtering (Mollom, Akismet) • Searching/Indexing (Solr, Google, Aquia) • Feed Generation (Feedburner) • Content tagging (Calais, TimesTags) • Authentication (OpenID, etc.) • Sending bulk mail (Mailchimp, etc.) http://www.flickr.com/photos/ladyada/3039492078/ Monday, March 23, 2009
  8. 8. Enlarging the Toolbox* Farm out services that... • Benefit from centralization (auth, ads) • Require expertise (bulk mail wrangling) • Demand massive processing or sample data (fast indexing, spam filtering, auto-tagging) http://www.flickr.com/photos/ladyada/3039492078/ Monday, March 23, 2009
  9. 9. http://www.flickr.com/photos/mr_diesio/2548025554 Monday, March 23, 2009
  10. 10. Getting Dangerous http://www.flickr.com/photos/mr_diesio/2548025554 Monday, March 23, 2009
  11. 11. Takin’ it up a notch • Posting links? Use Delicious. • Shoutbox/short updates? Use Twitter. • Photos and galleries? Use Flickr! • Video? Youtube, Blip.tv, etc. • Reviewing books? Amazon, Goodreads. • Comments? Disqus! • Blogging? Use Wordpress. http://www.flickr.com/photos/mr_diesio/2548025554 Monday, March 23, 2009
  12. 12. I… but… my forms! • You will never enter product information as accurately as Amazon. • You will never be as popular as Flickr. • You will never write a Firefox Plugin for Link Field. • You will never enjoy transcoding your own video. http://www.flickr.com/photos/mr_diesio/2548025554 Monday, March 23, 2009
  13. 13. Become the crossroads, or enhance native content http://www.flickr.com/photos/sidelong/542906832 Monday, March 23, 2009
  14. 14. Become the crossroads, or enhance native Link to content Content http://www.flickr.com/photos/sidelong/542906832 Monday, March 23, 2009
  15. 15. When does it work? • Common on social sites • Ever used Facebook? • News sites (CNN, etc.) • Personal Aggregators (FriendFeed, Tumblr) • External content is treated as something that lives out there http://www.flickr.com/photos/sidelong/542906832 Monday, March 23, 2009
  16. 16. How can you do it? • Good ol’ aggregator (it’s themable now) • Activity module (it supports views!) • DayLife API, NowPublic’s new service • Native modules (delicious, flick, etc.) http://www.flickr.com/photos/sidelong/542906832 Monday, March 23, 2009
  17. 17. Gobble up content Monday, March 23, 2009
  18. 18. Gobble up content Use external sources as your primary source Monday, March 23, 2009
  19. 19. Does this make sense? • How hardcore are you? • How badly do your content producers hate the node form? • External content is treated as something that lives in here. • Drupal becomes a presentation engine • Drupal becomes a… mashup? Monday, March 23, 2009
  20. 20. How the..? • Native modules • FeedAPI + Feed Element Mapper • Nodes become flexible wrappers • Lay your own pipes (we’ll see this later) Monday, March 23, 2009
  21. 21. Drupal PHP Apache MySQL Operating System Monday, March 23, 2009
  22. 22. Flickr Drupal Delicious PHP Google Apache MySQL Stuff Operating System Monday, March 23, 2009
  23. 23. Flickr Delicious Google Drupal Stuff Amazon Monday, March 23, 2009
  24. 24. Flickr Delicious Google Drupal Stuff Amazon Monday, March 23, 2009
  25. 25. Are you insane? http://www.flickr.com/photos/beaub/2424695862/ Monday, March 23, 2009
  26. 26. Maybe a little insane • Filtering the firehose (tagging helps) • Importing the Internet • 8192 auth methods (OAuth helps?) • Even Amazon goes down. • Magnolia (moment of silence) http://www.flickr.com/photos/beaub/2424695862/ Monday, March 23, 2009
  27. 27. Yeah, kind of insane. • Congratulations! You’re an integration specialist! • How much do you trust the Internet? • You can’t form_alter someone else’s site. • You’re assembling data streams instead of modules. http://www.flickr.com/photos/beaub/2424695862/ Monday, March 23, 2009
  28. 28. Monday, March 23, 2009
  29. 29. Rolling your own integration Monday, March 23, 2009
  30. 30. Doing it with Drupal • drupal_http_request() • PHP 5 - SimpleXML & JSON • drupal_write_record() • Expose your tables via Views • Wrap local vs. remote • (See “Building APIs That Rock”) Monday, March 23, 2009
  31. 31. If you release it... • Support the full API (or as much as you can) • Fail gracefully • Don’t force data into nodes • Cache data whenever you can • Don’t write a SQL query builder • PHPDoc, PHPDoc, PHPDoc! Monday, March 23, 2009
  32. 32. Don’t forget… • Respect API policies (Limits, Caching) • Don’t trust the data you get back • There are cutting-edge options • Custom Views queries (Flickr?) • In Drupal 7, remote fields • NowPublic’s Aggregation system Monday, March 23, 2009
  33. 33. Leveraging our Synergy • Drupal is a great tool • Its strengths can be weaknesses • Outsource services • Drupal can be a mixer • If you roll your own, think ahead Monday, March 23, 2009

×