If on the off chance that you are like me, you're an Instrumentation Engineer, "Jack of all trades" would probably be a very good description of your skills. The "Master of none" part though, is a bit iffy. It's in the four years that an Instrumentation Engineer spends studying his curriculum that he must convert the "Master of none" part to "Master of one". At least.
I can discuss diodes with my friends from the Electronics branch, I am able to contemplate compilers with those of the Computer Engineering affiliation and can also chit chat about chassis with those of the Mechanical inclination. But when things get too deep, I need to grab a cold one and wait for the storm of esoteric jargon to pass over. A few hailstones here and there are manageable, but the full blown blizzard is a bit too much.
One of these topics, till the recent past was "Cloud Computing". As the Tom to IoT's Jerry, it's pretty hard to actually pry them apart as they form the backbone of any connected application. So with a "When in Rome," attitude, I sat down to look at what the fuss was all about.
Essentially, cloud computing is divided into 3 broad categories, which are;
- SaaS - Software as a Service
- PaaS - Platform as a Service
- IaaS - Infrastructure as a Service
This diagram is pretty apt for showing what these three terms mean in a nutshell.
To explain in short, imagine that you are at a swimming pool, and you're looking at 3 kids who are swimming there.
The first kid is in the baby pool, because he can't really swim, so he's sort of wading around. he's happy being in the water, and also safe in the knowledge that something like a puddle that's a bit deeper won't kill him.
That's someone who uses SaaS or Software as Service.
The second kid is thrown into the deep end wearing nothing but his trunks by an over-enthusiastic parent. You observe as his head bobs around the pool as he does a perfect freestyle. He's been there for a while, so he knows his way around water twelve feet deep.
That's someone who uses IaaS or Infrastructure as a Service.
The third kid is floating around beside the freestyler, in a tyre and wearing arm wings. He doesn't know how to swim, but he can float. So he's fine while he has the wings and the tyre on, and he can be pretty much wherever the freestyler is, albeit with some constraints on movement.
That's someone who uses Platform as a Service.
What I'd like to concentrate on is the concept of PaaS or Platform as a Service.
PaaS is really for people like me, with an idea, a plan on how to execute it, and basic knowledge of the technologies that entails. PaaS is to IaaS what PlayDoh is to pottery. It gives you pretty much all of the application level facilities an IaaS offers, but in a nice pre-built package that you can customize. In this respect, SaaS is like buying a pot. You can't really say you made it, but you'll be using it.
Coming to IoT. The utopian concept of everything connected to everything, whose first steps have already been taken requires a constant back end operating on the cloud. Ideally speaking, an IaaS is the perfect option to start from scratch and develop your platform from the ground up. But, in my case, that would really need me to know quite a lot of things whose knowledge would suit a degree in itself.
Now what do I do?
That's where PaaS comes into the picture. PaaS is essentially a platform built to allow customization in the application and firmware side of things such as custom filters and algorithms for analytics and different qualities of service and export formats for M2M communication and visualization of data.
I've used quite a few PaaS offered by a number of providers, and it was pretty confusing to choose the right one. What with the different APIs, protocols, storage options and not to mention pricing, it's not a very easy task to know which one you should use unless you know exactly what you expect from a PaaS.
Top Comments