Exploring Content API Options - March 23rd 2016
-
Upload
jani-tarvainen -
Category
Technology
-
view
190 -
download
1
Transcript of Exploring Content API Options - March 23rd 2016
Exploring Content API
OptionsJani Tarvainen, 23.3.2016
About me• Jani Tarvainen• Fully Stuck Developer• I do all kinds of things
• Current Corporate Affiliations• PS Consultant at eZ Systems• Principle Growth Hacker at Malloc Skunkworks
• Twitter: @velmu
Content APIs?• A way of accessing pristine, unformatted Content via an API• 99% of the time people think of JSON reads and REST
• Arguably a Content Marketing Buzz Byproduct• If you've got a REST API you'll make money
• Content vs. Data• Data is Collected• Content is Created
Content and presentation decoupled• This is new and awesome!• Or is it?• RSS Feeds and AJAX in 2005: http://www.nigelcrawley.co.uk/bbc/
• P.S. XML's not dead, it's different from JSON:• <para>Go ahead and try to create <em>mark up</em> like this in <link
target=”123”>JSON</link></para>
So what are our options?
Data Platforms• Some examples:• Ruby Grape (Ruby): http://www.ruby-grape.org• Spray (Scala): http://spray.io• Nodal (JavaScript): http://www.nodaljs.com• Maru (Elixir / Erlang): https://maru.readme.io• API Platform (PHP): https://api-platform.com
API Platform usage demo (with EasyAdminBundle)• https://www.youtube.com/watch?v=SJ805S7rdFw
Data Platform Advantages• Extremely flexible• High performance• Provide exactly what is needed• 100% Control• Can be used to aggregate Data and Content
Data Platform Disadvantages• Content Management is a complex problem domain• Very developer focused• Crafting solutions to generic problems that Content API / CMS solves• Stability of platform over 5-10 year span
Content Platform• Examples• Contentful: http://contentful.com/• Box Content API: https://developers.box.com/content-api/• Prismic: http://prismic.io/• Medium API: https://medium.com/developers• GatherContent: http://gathercontent.com
Contentful Usage Demo• https://www.youtube.com/watch?v=5JITUIFLq2c
Content Platform Advantages• Simplified content entry• Simple to purchase and deploy• Good developer APIs, SDKs and Documentation• Scales globally without actions• If the API does not work... you know who's to blame
Content Platform Disadvantages• No control, features can be removed at any point• Price can shoot up with large amounts of Content• No tools for layout management• Integrations (authentication, etc.) can be tricky• You'll (probably) need to do layout management somewhere
Content Management System (CMS)• Examples• Craft CMS: http://craftcms.com• Drupal: http://drupal.org/• WordPress: http://wordpress.org/• eZ Platform / Studio: http://ez.no/• Plone: http://plone.org
eZ Studio API and Layout editing Demo• https://www.youtube.com/watch?v=nIoGdyuiEnk
Content Management System Advantages• Sitebuilding essentials: Content management, permissions, layout
management, etc..• Tried and tested over decades• Extensible and able to integrate• Full control over installation (self hosted)
Content Management System Disadvantages• Usability mileage varies• Feature bloat: Forum, CRM, eCommerce...• Can be old and crufty• Development & hosting overhead (self hosted)• Tempting to see everything as Content (vs. Data)
Conclusions• Content Management is a melting pot of Content, Data and Control• One size does not fit all• Power is nothing without Control• Don't over-engineer
The end• Related Links:• Exploring Content API Options (video and Sway Slides)• The Content API Gold Rush• Open Source and the Content Creation Experience• Your CMS REST API should be WordPress Compatible• Popular Symfony components used by CMSes• Testing content editing with Sway