Why I {heart} APIs
2013-06-20 07:55:54
My brother is trying to figure out how to sync his Google calendars with his Microsoft Outlook calendar and asked my advice. Being one of those techie guys I’m always being asked for advice for stuff I don’t really know about, but I was a big Outlook user for a long time. So long, in fact, that I’m kind of surprised that I didn’t notice when I stopped using it.
Almost all my email is on Google now. My calendar is completely on Google. And it’s not that I love Google, it’s that I love being able to check my messages and schedule no matter where I am or what device I’m using.
I start an email on my phone and then realize how ridiculous it’s going to be tapping out a manifesto on a tiny, virtual keyboard, so I put my phone down, open up my laptop, and my pearls of wisdom are already in Gmail so I can continue writing without missing a brilliant thought.
I can also delete it and it will be gone from my phone as well as my laptop when I realize I’m not nearly as clever as I thought I was.
But the reason I really like this revolution in how we interact with all this data is because I hate being stuck with a single way of doing things. Or maybe I prefer one way to do things, but I don’t want to be dragged along with the way everyone else wants to do things.
Take Netflix, for example. I watch movies on my laptop when traveling, and sometimes on my phone, too. When at home, I usually watch Netflix on the Wii or the Blu-ray player that has Netflix built in. And the thing is, it doesn’t matter which box I use, they all know where I stopped watching that last episode of House of Cards.
Personally I like the controls on the Wii more than the Blu-ray. The content is the same, but the search functions and the layout is a little different. Netflix doesn’t actually design these interfaces, they just give Sony and Vizio access to all the movie titles, and (if I log in) they can get my info. Then it’s up to the designer to, well, design the interface.
This goes back to my philosophy when I started my web design team back in the last millennium. I hired graphic designers who didn’t know a thing about web development, but they could make awesome pictures. Then I would hire programmers who didn’t know a thing about design, but they could get the nuts and bolts working.
There was a special person who knew a little about both design and development who would then tie the two bits together. That person didn’t decide what it would look like or hot it would work, but instead, was the mediator between the look and the function folks.
APIs are like that. Now you can have a killer designer get all sorts of functions (like where I left off watching a movie), all sorts of info (like what Netflix recommends I watch next), and they don’t have to know a damn thing about Cassandra databases creating eventual data consistency across the cloud. They just know that they ask for a list of movies and they get it.
So, back to John’s email and calendar problem. He’s fighting the Microsoft monolith in an era where his events are one thing, and the calendar he looks at those events is another thing.
He shouldn’t even be having to ask, “How do I sync my calendar?” because it isn’t about owning a database of events on your hard drive. He should be asking, “What cool calendar apps are there that will make it easier to see my professional calendar next to my kid’s schedules?”
It’s not, as so many people say in my business, about setting your data free. It’s about setting you free so you can get on with your life and stop having to be your own sysadmin.
You don’t have to love APIs; you don’t even have to know they exist. But you gotta love something that sets you free.