Feeling queasy about explaining APIs to your grandma 👵 or a non-technical client 👔? Lemme help you out!
Before we start, I’d like to ask you a fe...
For further actions, you may consider blocking this person and/or reporting abuse
What a great post Rémi!
I always kind of knew the role of an API but didn't grasp the concept enough to explain it in simple terms. You did it brilliantly. I really liked the lamp metaphor. It goes straight into my mental models.
Thank you Jim for the kind words!
Just to add a bit more as a good to know: Your electricity provider do care about the design of your lamp. If your lamp returns current to the grid (I will spare you the wave-function math behind) it damages it. Electricity providers use Fourier transforms to evaluate how much your appliance is damaging the network and they charge you money accordingly. Fortunately, this problem mostly concern the industry field.
That's interesting! Didn't know 1) electricity went back to the grid 2) that it harmed the grid 3) that providers were charging you for it. There's a lil' something to learn every day on dev.to. 🥳
I'll dig on Fourier too. I've its transforms but it's remote from my usual interests so it's kinda hard to grasp at first (so I guess I won't write an article on the subject anytime soon! 😄)
Awesome article on the part of standardisation.
I think it should be more of in the form of contract(API documentation).
Which both parties has to agree upon to use the API.
Therefore if either parties breaches the contract.
The repercussion is it won't work or behave abnormally with a valid reason by either parties on why the contact is breached.
No one will enter a contract if it is not favorable for both parties to be in a partnership to work together.
Yes, the contract was (and still is tbh) an API concept I found difficult to understand. May be because a lot of public APIs have a very loose understanding of contract breach (ie no backward compatibility). But again, not-so-well-known APIs upon which a lot of hardware is built fell into the contract category.
Your explanation is 👌 Max and made it much more graspable to me.
Actually, it took me a while in working with a frontend developer that made me realise the importance of it.
I found out later that either you create your own contract by yourself or you could use existing template contract like OpenAPI Specification to facilitate and make your life easier for API development.
Yes yes, Swagger is awesome. I've only beginning to use APIs that use Swagger, and it's neat.
Didn't realize it was a contract, though 😅. But now that you pointed it out, this seems obvious!
Hahaha check out Postman, It's a godsend and allows you to import OpenAPI files into Postman to make your life in creating APIs easier.
I believe the new release of Postman allows you to create your OpenAPI specs as well.
Great piece Remi. A friend of mine produced this video when we were on Best Buy's Open API team years ago. The idea was to produce a really simple and effective explanation of the attributes of open api's that make them so powerful. There's a little bit of the 'lies told to children' thing happening, but if you need to actually explain API's to your grandma, it's pretty great.
Check it out: youtube.com/watch?v=7r7QpIDEI_o
Will check it out! Thanks for sharing Joshua!
Great post. Feel free to use open source API testing tool: Hoppscotch to spin up these APIs on-the-go directly from your browser window and get to know about how APIs behave when requested at client side.
hoppscotch / hoppscotch
👽 A free, fast and beautiful API request builder used by 100k+ developers. https://hoppscotch.io
Great work Remi. Excellent metaphor. Keep up the brilliant writing, love your style
Thank you John for the kind words!
Nice way to explain API's! Thank you!
Good job Rémi 🚃 !
Thanks Tom! 😉
Thank you for the information, and the great metaphor 🤙
A SET OF UTILITY METHODS USED TO COMMUNICATE TO EXTERNAL SOFTWARE LIBRARIES? CAN BE CALLED DIRECTLY OR VIA HTTTP ENDPOINTS IN MOST CASES
Perfect! Thank you!