Posted on 07-25-2014
I'm preparing for my hypermedia panel with Mike Amundsen (@mamund), Mike Kelly (@mikekelly85), Steve Klabnik (@steveklabnik), Kevin Swiber (@kevinswiber), Jørn Wildt (@JornWildt), and Markus Lanthaler (@MarkusLanthaler), at API Craft Detroit next week. I wanted to go into the panel with a snapshot, and at least a minimal understanding of each of the panelists. This is kind of an all-star panel of hypermedia experts, so I need to at least bump up my understanding of what they are contributing to the API space, and who they are, beyond what I know from my own interactions with these API leaders.
As I do with all of my research, I wanted to share my work with you, my reader. Next up is Mike Kelly. I'm been tracking on Mike's work around HAL for a while now, I wrote about Amazon using HAL for their AppStream API, a while back. I'm eager to learn more about HAL, and what it brings to the API design process, and how Mike, and HAL size up against the rest of the panelists, and their offerings.
Here is the outline of my research into Mike's work:
Mike Kelly is a software engineer from the UK. He runs an API consultancy helping companies design and build beautiful APIs that developers love.
Title: Web Engineer at Stateless Consulting
Mission: I like using technology to solve interesting problems.
- Blog- http://stateless.co/
- Blog - http://blog.stateless.co/
- Blog RSS - http://blog.stateless.co/rss
- Twitter- https://twitter.com/mikekelly85
- Github - https://github.com/mikekelly
Mike brings the Hypertext Application Language (HAL) format to the hypermedia discussion. He's been at it since summer of 2011, so he's been a pretty strong advocate in the space for some time, applying his mad skills that are polished at his consultancy Stateless.co. Let's take a quick look at HAL, and what resources I could find to support it.
HAL - Hypertext Application Language
HAL is a simple format that gives a consistent and easy way to hyperlink between resources in your API. Adopting HAL will make your API explorable, and its documentation easily discoverable from within the API itself. In short, it will make your API easier to work with and therefore more attractive to client developers. APIs that adopt HAL can be easily served and consumed using open source libraries available for most major programming languages. It's also simple enough that you can just deal with it as you would any other JSON.
- Definition - http://stateless.co/hal_specification.html
- APIs - https://github.com/mikekelly/hal_specification/wiki/APIs
- Explorer - http://haltalk.herokuapp.com/explorer/browser.html#/
- Client Libraries - https://github.com/mikekelly/hal_specification/wiki/Libraries
- Google Group - https://groups.google.com/forum/#!forum/hal-discuss
- Hacker News - https://news.ycombinator.com/item?id=4950986
- Quota - http://www.quora.com/REST-software-architectural-style/JSON-+-Hypermedia-Using-HAL-in-Production
I'm not posting all of this information just so I can share my research, it is also because Mike is a leader in the API space, and I want to better understand the role he plays, while also helping you understand along the way. While I learned a lot through this process, I will also use it as a reference for my panel at API Craft, and for other stories I write in the future.
I've already added HAL as a tools in my hypermedia API research. I could spend days going through this research, but I also have four other hypermedia API experts to profile, so I'm going to move on to the others, and come back to my profile of Mike Kelly in the future to continue my hypermedia education.
comments powered by Disqus
Winning in the API Economy
|Download as PDF|
Latest Blog Posts
- There Are Four API Design Editors To Choose From Now
- Sales, Onboarding And Support In A Self-Service API World
- An API For Developers To Access Their API Account Information
- My Continued Support As Signer Of Oracle v Google Amicus Brief From EFF
- Join Me Tomorrow For A Panel Discussion On API Ecosystems At SF MusicTech
- I Will Review Your API On API Evangelist if You Add An APIs.json File Plus A Machine Readable API Definition
- Hey, Why Isn't This (API) Free
- Resource Base API Monetization vs. Experience Based API Monetization
- Tracking On The Red Flags For API Monetization
- Project Idea: Codenvy-Like Containerized Spreadsheets