Making the Nordics programmable
create a community to bring API developers together to share best practices on all aspects of API development.
Overall I’m impressed with how much content you can squeeze into a half a day. The 25 minute presentations were long enough to convey details, but short enough to not get bored during the less interesting talks. Presentation quality was generally high with @mitraman definitely providing both the most interesting content and with excellent delivery. In his “journey into the terrifying world of hypermedia” he shares some thoughts about why hypermedia is hard and why businesses are not adopting it.
Although perfectly reasonable, I disagree with the default outset that consumers of APIs are end-user clients. Most, if not all (?), talks assumed the API consumer is some sort of user interface: a mobile app, mobile website, or website. For example, both @mitraman and @madsenevoldsen (who also talked about
HATEOAS hypermedia) discussed various levels of implementations of relations between resources where a lot of focus was placed either on 1) the developer using the API to develop a UI, or 2) automatically generated or adaptive UI clients.
I think we’re missing a large, and possibly relevant, discussion about hypermedias place in machine-to-machine APIs. In my current work, which is heavily related to the Internet of Things, consumers of APIs are not necessarily end-user applications. There’s an additional level somewhere in between the device (or service) and the client where lower-level functionality is sublimed by additional services. This is not only present in the IoT context. Another example that comes to mind is building, for example, recommendation systems which may operate on data from multiple sources.
For next time I would like to see the following:
- less focus on end-user clients and more about service-to-service, machine-to-service, or machine-to-machine APIs
- 10 or so years ago it was all about SOAP and WS-*, today it appears to be all about REST. What about Push and streaming APIs?
- better air circulation in the room when it’s packed with brilliant people :)