The Biggest Obstacle For Hypermedia Adoption Is The Cognitive Load Of The Average API Designer
16 Jul 2015
Those in the know with hypermedia, often express their frustration when it comes to the overall progress of hypermedia adoption, and the bespoke approaches of many API designers. while there are many hypermedia skeptics who just don't buy into the concept, I think there are many out there who would be willing to to apply common hypermedia patterns in their work, but face many challenges.
I'd put myself in between those willing participants, and those in the know. I get the the concepts at play, but I wouldn't say I know what I'm doing. I am working to apply Siren, one of the leading formats, to my curation API. In my work, I do not struggle with a willingness to do it, I struggle with my high cognitive load.
According to practioners, cognitive load theory is borken down into three types:
- Intrinsic - The effort associated with a specific topic
- Extraneous - The way information or tasks are presented to a learner
- Germane - The work put into creating a permanent store of knowledge, or a schema
I suffer in all three of these areas, and I know many other people do, they are just not willing to admit it--I have no problem admitting to what I do not know, or do have time to learn. My cognitive load is extremely high, and I know almost everyone in the API world is in the same boat. Hell, everyone is potentially in the same boat, when it comes to Internet technology.
There are some aspects of cognitive load I don't think we can solve 100%, we are just in an age of information overload, but I think there is some responsibility that hypermedia need to own.
As I read more about cognitive load theory, I find that it "... has been designed to provide guidelines intended to assist in the presentation of information in a manner that encourages learner activities that optimize intellectual performance". I know my own hypermedia education has been stunted by hypermedia practitioners expectation of me to "just get" the concept (maybe this is my perception), and "just do it"--get up to speed man!!. I often feel like many of them (not all) are unwilling to provide educational materials that bridge where I am currently in my API design knowledge, and share working examples and prototypes that I can reverse engineer.
As I continue on my own hypermedia journey, I will work to provide more of these education materials, and open source all of my API designs so others can learn from. I'm starting with Siren, but will be tackling other formats like Hydra, Collections+JSON, and beyond. Join me in providing materials (if you are a hypermedia practitioner), and if you are trying to learn more about hypermedia, please let me know what challenges you face, so I can help provide bridges.