Put The Internet To Work For You
Luis Serrano

Put The Internet To Work For You

This is an article about technology, but you don't necessarily need to be an expert to read (and understand) it. On the contrary, if you don't know what an API is, I strongly suggest that you keep reading this. Why? Well, because you're going to wish somebody had explained this to you years ago, and hopefully you'll start thinking about the things you could do with that knowledge.

Okay, so you've heard about the Internet of Things, right? If you haven't, you're either a monk living in some remote little village, completely disconnected from the Internet (and thus, from the world), or you haven't been reading at all for the last 2 years. Anyway, let's skip the mysterious circumstances that kept you in the dark, and let's quickly shed some light on what it means. Internet of Things, or IoT, was the most repeated buzzword in 2014. It means connecting devices (things) to the Internet in a way that they can talk to each other to achieve different goals and perform tasks.

To name a super basic real life example, you can have a sensor (a device, which is indeed a thing!) measuring the amount of humidity of your plants' soil at home, so when it reaches a point where some action is required, it can do something about it. That something could be: a) sending a notification to your mobile phone (another device) so you can leave everything you were doing and you run to water them, or b) to make the device water the plants itself, thanks to some super cool set of hardware you had set up to that end, because you're an electronic hacker, how's that.

That is actually not a made up example -it actually exists and some people have that at home. But that is just a scaled down way of thinking about IoT, because it's so much more. The possibilities are endless, and, you know what? it has been possible to do great, awesome, incredible stuff before it was called the Internet of Things. Yes, if you removed the last two words in that expression, what you have left is "Internet". It was pretty awesome way before we thought of adding wi-fi to our plants.

So, coming back to the APIs. What about them? Well, my friend, that is really the point. APIs fuel the IoT, but they have enabled us to do all the magic since a long time ago (have I said that already?). In my opinion, they have been underrated, underexploited and even sadly ignored specially -but not only- by non-technical people for years.

API stands for Application Programming Interface. Now, I would understand if you haven't jump out of your sit yet. I mean, let's face it, it's not a super duper marketing name conceived to provoke instant excitement on those who hear the expression, but hey, be patient here, I am revealing the secrets of the Internet for you so give me a break! Again, I am willing to illustrate the nerdy term with a real life example, a little bit more useful than the previous one.

Let's say you have a business. You provide a service, for example, printing services. You have your local store, a set of nice plotters, printers... and well, stuff that prints, right? Let's have a quick look at your workflow. Some customer gets into your store, he/she gives you a pen drive and asks you to print a PDF document called mysupercoolCV.pdf (people, huh?). Anyway, you take the USB device, plug it into your computer, you look for the document, you open it, then you send it to the printing queue, you wait till it's printed, then you hand back the USB to the customer (be nice, eject it first), and finally you give him/her the oh so very nice document in shiny/mate sheets of paper, still hot from the oven. Time to get your money, because you worked hard for it, and also because ink isn't free, is it? Well, the customer pays you those 20 or 30 cents and off he/she goes.

But that is not all you do, you print all kinds of stuff: documents, photos, envelopes, templates, you name it! Also, you can print pictures in mugs, cushions (really?), fabric (jumpers, t-shirts, hats, caps, etc), rubber seals, etc. When you get a special order, meaning something you can't do at your store because you don't have the equipment, you may rely on external providers. So if someone wants a picture of her pink chihuahua on a cushion (why? because she can!), you receive the picture using the same super fast workflow described above, you store it on your computer and you tell the customer to go to hell, or to come back in a couple of days when the order is ready for pickup. You might ask her to pay for the item upfront, or she might pay once it's done. My experience when printing chihuahua pictures is that I was asked to pay for the service later on, when I sent someone to pick it up for me -because I have a reputation.

You might be wondering when am I going to get to the point, because this boring story about people doing offline stuff is making you yawn so hard that you can't even see the screen anymore. Again, be a darling and be patient, I am JUST about to get there, alright? Gosh, people these days, they want everything for yesterday! And speaking of that, thank you for bringing up the subject, most customers won't go to your little store to have their printing jobs done. Maybe some small documents, or some pictures from an official form, but not the other stuff. Because they walked all the way to your place to ask you to do something, and you're telling them that they have to do it again in a couple of days. And maybe by then, the product won't be ready and they'll have to come back yet another time. Dreadful. Plus, they don't know how the product will look like in the end. So chances are that a) they won't buy it from you at all, choosing some online service with an enabled preview of the outcome instead or b) maybe they'll ask you to do it but they won't show up to pick it up -so you'll pay for it, if you didn't ask the customer to pay upfront.

Yes, yes, I am also getting tired of writing, but we're getting there, I promise! I just need you to understand a real case scenario first so you can follow me when I add the mighty Internet (of Things, optionally) to the story. Now, how can we improve your business? First of all, what's the amount of printing jobs you need to do to make real profit? You're paying the rent for your store, you probably live in a house that you have to pay for as well, there're bills, maybe employee salaries, etc. So anything you can do to make more money is good, right? Let's say you're super good at marketing, and you have lots of ideas. You offer deals, you do some advertising, that eventually (and hopefully) gets more customers to get into your business and print more stuff. But there's a limit there. You're just you, with the help of your employees if you have any. But how much your business can grow just by getting a few more customers each day? And how does it translate in terms of physical work? I mean, you and your crew can be fast, but in the end you're human beings and you have a limit. Besides, if printers are all busy, you have to wait before proceeding with the next order, right?

Okay, let's start connecting the dots here. I mentioned a few things that are key to understanding your awesome business transformation plan. I am finally going to tell you what an API is using that awfully long story you've just read -I am glad you're still here-. An API, technically speaking, is a set of tools and actions for building software applications. According to the Wikipedia:

In computer programming, an application programming interface (API) is a set of routines, protocols, and tools for building software applications. An API expresses a software component in terms of its operations, inputs, outputs, and underlying types. An API defines functionalities that are independent of their respective implementations, which allows definitions and implementations to vary without compromising each other. A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together.

Software, as you probably know, is that nerdy thingy that a computer executes to do stuff, mainly used to automate processes. So, if it was Greek to you, let's think of your business as it was an API. You offer a number of services, right? Then you get a customer, who asks you to deliver one (or more) of those services for him/her. By doing so, that customer is triggering a series of actions he does not need to worry about, patiently waiting till you're done and he/she gets the results. So, your business is the API in this example, and you expose actions that the API can provide, either by itself alone or by communicating/connecting with other APIs (i.e.: that external provider I mentioned previously).

Remember when I told you before that the customer could go to any online printing company instead, and buy that chihuahua cushion from them? Well, it was the same procedure -just faster. The customer would go to a website, click on the "print terrible chihuahua pictures anywhere!" button, and trigger the same actions, totally transparent to him/her. The outcome, however, would be the same -although he/she would certainly be asked to pay upfront.

So, you might think: "Finally I understand it! I will create a website and get orders from people online, so they don't have to come and pick them up, plus I can be paid upfront! Thank you, it's an awesome idea!". Shut up. No, it's not that. I mean, hell yes, get a website now, it's 2015, for Pete's sake. Going the API way is SO much more, although of course you could want to consume the API yourself as well.

What does it mean for you to create an API? it would mean enabling your business to take orders from a potentially huge number of sources. It would be like creating a digital copy of yourself, and this new entity could attend millions of printing orders from anywhere without the real life you doing any actual physical work. So, what is it that you do? You print stuff. You either print it at your store, or you contact external providers when the job is too big and/or you don't have the time/equipment/will/stomach to do it yourself. So, you hire a nerd (that would be someone like me) and you tell him, hey, this is the list things I offer (your services), and these are the external providers I sent the orders to. Every service has a price, and every external provider has a cost. With that information, the software wizard will create a program that will reside somewhere in the Internet. Any person, apart from you, including other business, can send you orders using that software. They will get a chunk of the profits in exchange, so for them it means making money thanks to you. For you it means making money thanks to them. Win-win situation, right?

In case is not yet completely clear, let me again use a real life scenario, extending the previous story. Now your business can get orders from anywhere in the world. Your website uses your API (your software), and customers send you files they want printed over the Internet. Those files don't go to your printers' queue anymore (although optionally they might, if you wanted). Now, properly channeled by your software, they go straight to other business, that at some point decided to also expose their services to the Internet. So the chihuahua pictures won't make your eyes bleed anymore. That customer from a remote city sent some files, your software determined that they had to go to Provider X, it made the transaction, sent the order, and the result will be shipped to its owner. The nice box that the customer gets might even be branded with your business logo. Additionally, if some dude wants to make some money offering printing services himself, he can get your API, connect it to his mobile App or website, and send printing orders to you. That guy could optionally (for an extra price) get his brand in the product instead of yours (or the provider's). Your API, your rules.

What happens if you want to add a new service? No problem, you figure out the workflow for that new service, and you add a new action to your API. With no effort at all, you have enabled everyone using your software to also offer the service on your behalf. You can improve workflows, internal processes, you can change providers, but your software doesn't need to change they way it "talks" to those using it. They will send orders the same way, but you'll make it happen internally the way you see fit.

You can find all kinds of APIs out there. Not all of them are used to sell physical goods. Those websites and services you use often are, most likely, API enabled: YouTube, Twitter, LinkedIn, Instagram, Spotify, Paypal, Google Maps, Netflix, SoundCloud, Skype, Vimeo... They offer a wealth of actions through their APIs, letting you access/use their infrastructure as if it was yours. Even your government has (or soon will have) and API that let's you access all sorts of public data. You can access the WeatherBug API to find out how the weather will be like tomorrow and put it on your website's header (don't, that's so 90's!). You can enable your users to have real-time chats, you can tell them how long it takes for them to go to your shop using public transport from their current location, anything! And if you mix it with Social Media, well, please don't get me started because this post would never end. If you have a restaurant, you could offer a daily menu, and for those customers that liked your page, you could improve their experience by customising what they see: those dishes they like the most? Notifications can be sent when they're in the menu. They're allergic to something? No problem, those meals won't be available to them. They want take away food? Cool, they can access your web/app and order from there. You want more ideas? Well, get to ProgrammableWeb. At the time I wrote this post, they had 12,701 APIs ready for you to use.

APIs can talk to each other, and the only limit is your imagination. If you follow each provider's rules, you can create a whole universe of services and information. Some APIs are free to use, others are not. You can combine providers in a way that is also profitable for you. At the same time, you also become a provider and help others make some profit.

So, what do you think? Was it worth reading all of this? I haven't forgot about the Internet of Things. We've seen APIs, or services that are on the Internet, available for you to use. The Cloud, they call it. Well, if we add "things" to the story, really, it can add so much value! The main things, or devices, that you should really take care of for now are mobile devices. Think of them as something that (most) people always carry around. The door to your services, in their pockets, at all times. You could also create a mobile App for your local business (the physical store, that is). Someone could pop in, touch a NFC tag at your desk with his/her mobile, and the App would trigger an action: showing the pictures in the device, so the user could choose a few of them and send them to your printer's queue. Even pay with Paypal right there, before sending the order. Or if you had a restaurant, the NFC tag could make the mobile phone/tablet show the daily menu (with all the customisations for that person). Or you could sell credit to spend on your business and the NFC would be the payment method. So many things you could do right?

So, that's why I called the post "Put the Internet to work for you". Because, really, you can do that. It's been possible for a long time now -the API concept is not that new anymore-, but it's growing and improving. And now it's getting "things" connected. The sky is the limit, and I am glad I work in the software industry, because I am witnessing the future coming closer and closer, and I am part of it. What am I saying? The future is now... and we're all part of it.

要查看或添加评论,请登录

Luis Serrano的更多文章

社区洞察

其他会员也浏览了