Tonight on the Tonight Show with Jimmy Fallon
@deviantintegral
of @lullabot &
@beautyhammer
of @fourkitchens
Drupalcon Austin, June 3 2014 - Case Studies
To succeed, we need a non-blocking technical architecture.
The two biggest components are:
Setting the correct resolution for semantics is important.
Addresses volatility in trends and interests - gives you flexibility
The joke: smallest atomic unit of funny.
Show elements:
Supporting elements:
We ended up with a Semantic content model...MOSTLY
At its core: An OOP API built on Drupal services.
BUT...it was more than that
IF decoupled development needs a lynch pin - Why not make it your API?
episodes?id=15
You might get something back like this:
{
"episodes": [
{
"type": "episode",
"episodeNumber": "15",
"name": "Jimmy and Justin",
"season": "1",
"airDate": "2014-03-05T00:00:00-05:00",
"guests": [ {"id": "123"},{"id": "124"} ],
"merlinId": "",
"images":[
{
"id":"642",
"description":"Scenes from the Tonight Show with Jimmy Fallon.",
"orientation":"portrait",
"emphasized":false,
"isGif":false,
"url":"http://tonightshowpath.com/files/images/2014/02/05/img_20130309_140147_1.jpg",
"bitImageStacked":"http://tonightshowpath.com/files/styles/bit_stacked_resized/public/images/2014/02/05/img_20130309_140147_1.jpg?itok=NUKlRWNu",
"detailImageSmall":"http://tonightshowpath.com/files/styles/detail_image_small_portrait/public/images/2014/02/05/img_20130309_140147_1.jpg?itok=ApiJp4Od",
"detailImageMedium":"http://tonightshowpath.com/files/styles/detail_image_medium_portrait/public/images/2014/02/05/img_20130309_140147_1.jpg?itok=WakkI2CC",
"detailImageLarge":"http://tonightshowpath.com/files/styles/detail_image_large_portrait/public/images/2014/02/05/img_20130309_140147_1.jpg?itok=3s6NWs-A"
}
]
},
An API call to a semantic resource looks something like this:
guests/124
{
"id": "127",
"name": "Britney Spears",
"headshotImage": [{
"id": "123",
"title": "Slim Shady image",
"description": "Jimmy and Justin do Eminem image",
"orientation": "landscape",
"emphasized": false,
"isGif": false,
"bitStacked": "http://path.image.com/app2/img/144x81xS/scet/episode/6/9/3/6/9/rok_504_sm.jpg",
"androidLdpi": "http://path.image.com/image2.png",
"androidMdpi": "http://path.image.com/image2.png",
"androidHdpi": "http://path.image.com/image2.png",
"androidXhdpi": "http://path.image.com/image2.png",
"androidXxhdpi": "http://path.image.com/image2.png",
"iphone": "http://path.image.com/image2.png",
"iphoneRetina": "http://path.image.com/image2.png",
"ipad": "http://path.image.com/image2.png",
"ipadRetina": "http://path.image.com/image2.png"
Decoupled
Strong Asynchronous Workflow
Fast and Looming
Please, and thank-you! We'd love to hear what you think.