Sharp skills for IoT

Image: Pixabay

Image credits: Pixabay

Internet of Things (IoT), even though new, has captured the attention of professionals in a wide variety of fields of interest. The concept of IoT revolves around the inter-connectivity of Devices that are embedded with sensors, software, appropriate network connectivity and latest electronics within it; to create and collate an array of information exchange and making this entire grid of Devices responsive.

Interestingly enough, IoT encompasses the independent technologies and brings everything under one roof. So, there is no such thing as an ‘IoT Engineer’ (yet). During my research in IoT over the past few months, these are some of the things which I have come across, that are considered to be a ‘valuable set of skills’.

Embedded Systems Design

This is where we start digging deep, essentially we are starting to build computers from the scratch again. In other words, we are re-inventing the wheel. Having knowledge and ideas on how to build an Embedded System that can measure, perceive and communicate with other devices no matter how independent they can be – would be a valuable skill. Imagine a bed that can sense your sleep pattern, notify the alarm, open the curtains to let the sunlight in when you wake up, while it starts the coffee maker and plays songs from your playlist while heating up the water for the morning shower. Based on the interface & dependency factors, the system should be able to communicate. Circuit design is one of the most important things that acts as a baseline for IoT. Since, PCB (Printed Circuit Board) designers are adopting 3D printing, the convergence is a boon to many IoT manufacturers. So, knowledge of any of the above goes a long way in the field of IoT.


We talked about how IoT is about responsive devices in a grid; however, they are also predominantly resource-constrained. IoT networks differ from traditional wired computer networks where the TCP/IP protocol suite is being used; even though IoT devices have temporarily adopted the open standards of TCP/IP, they will be moving towards wireless communication and short-range wireless personal network (WPAN) technologies such as Bluetooth, which consume less power and less data. Lately, Mesh networking – which relies on an inexpensive decentralised architecture, is being considered as a commendable option currently. In addition to that, a possibility of a new protocol/standard could be designed – which means that knowledge in networking concepts and areas where wireless connectivity solutions (hardware & software) will play an effective and major role in the IoT.

Programming & Artificial Intelligence

Networking or rather communication cannot be established without adding some intelligence to the embedded systems, this intelligence can be added to the devices or the chips with programming. Choosing the right programming language is always a tough decision in IoT; Besides Python, Rust, B#, Parasail, Arduino programming languages – commonly used in building sensor and automation projects, open source environments such as Node.js, is becoming the language of choice for IoT. The early IoT devices are run by rule-driven programs/apps such as IFTTT or Tasker; AI that could pass the Turing Test would be required for complicated decisions.

Machine Learning & Analytics

The key concept behind IoT is to interconnect things, this we would be able to do it by Mesh Networking, which we discussed earlier. Imagine a scenario where a manufacturing unit/machinery in a factory senses which of its parts are faulty, and to which extent the unit or component could work and how it can impact the production; for such scenarios, data sensors play an important role, and Machine Learning helps predict the outcome by reviewing, analysing and identifying the patterns from these devices, keeping mesh networking in the backdrop, these sensors would generate immense amount of data that should be interpreted. That’s where Big Data comes into picture.

Big Data

We are moving towards a world where every bit of information is important, may it be for forensics, may it be for error detection, or even improving a system by predicting its patterns as discussed earlier. Organisations tend to collect data that is relevant while sifting the redundant data, and for this to work – Big Data skills would be required to improve the functionality of the IoT devices. In a way, Machine Learning and Big Data are interlinked and they strive towards streamlining the functionality of the IoT devices.

Information Security

The heart of every technology is Information Security; since IoT devices exchange an immense amount of data, and process the information between multiple devices – Privacy & Security become a major concern. The security of IoT and the vulnerabilities that they contain have been discussed several times at Security Conferences such as BackHat, DefCon, NullCon, etc. Security analysts have been finding vulnerabilities ranging from buffer overflows to command injections, from plaintext and hard-coded password to a vulnerable AP connection. The demand for VAPT and Security Analysis professionals is ever increasing day by day. Moreover, IoT is moving towards a Mesh Network as discussed previously, and one weak link in the chain can compromise the entire grid by opening up doors where there is a peep hole. A minor vulnerability in a thermostat that could leverage the attacker’s privileges, can open the doorway to the home/office’s smoke/fire alarms – when the alarms are activated, they would open the (access control) doors by design, which would pose a serious threat to the data within the organisation or the safety of the residents in an apartment complex. A few months back, Jeff Voas from NIST has released a publication that helps researchers understand IoT and its security challenges. The publication can be found here.

UI/UX Design

While Information Security is the heart of every technology, UI/UX Design (User Interface/User Experience) is how we can perceive or form a first impression of the device(s). A seamless design, that can interconnect multiple devices or options to create a smooth UX, with a minimal learning curve can change the way an end user can perceive ‘Things’. Considering that there would be a plethora of devices in IoT, having a different app or UI does not make sense to the end user who would have to re-learn every time a new device in added to his/her IoT. Adding on to that, IoT devices are cruising towards eye or hand gestures and even voice inputs; for such devices “it is critical to consider the aesthetics of the gestures or voice commands”. So, designers should start venturing into the deeper technological/hardware aspects, towards a world of sensors and holographs; to come up with a great UX. Designers who can encompass all of this, would prove a valuable asset to the field of IoT.

Cloud Computing

The idea of IoT is inter-connectivity, where in the machines are linked to web and constant data flows through it, thereby making it work on a real-time basis. In a world where every “thing” can be assigned with an IP address, cloud computing acts as a huge brain. Earlier, we talked about Big Data and how IoT would generate volumes of data for use. Data storage of this data would have to be considered and managed efficiently; in a way, “cloud computing and IoT are tightly coupled”. When data of this size that is easily captured, it also has to be re-worked upon to make it consistent and valuable to the devices and the entire infrastructure; that is where the ‘huge brain’ comes into picture. The data is transformed to be productive at real-time and assists in making decisions while optimising the inter-connectivity, especially with cloud providing the virtual infrastructure that is scalable – would assist organisations in accessing the applications/data on demand. Knowledge and experience in Cloud Computing Platforms such as AWS (Amazon Web Services), Microsoft Azure, Cisco IoT Cloud Connect, Salesforce IoT Cloud, IBM’s Watson, etc. can help the business grow.

© 2012 Ajan Kancharla

Managing The Cloud

The idea of having almost an empty HDD with just the OS and a couple of other useful applications while we have the data on the cloud, accessible to us at any point of time, ubiquitously, is something that many would go for. Its like having a house on wheels that’d follow us wherever we go, may it be the south pole or the Sahara Desert or even the moon. Fascinating isn’t it?

Cloud Computing gives various opportunities for all kinds of organizations with different ways of obtaining services and provides benefits that includes flexibility, usability, disaster relief as well as cost reduction. The cloud covers a huge array of services and delivery models ranging from in-house virtual servers to software accessed by multiple organizations over the internet. Many enterprises have been moving their organizations to cloud computing and the economy has driven many firms to consider cloud-based services. When companies start considering cloud, most of them just look at the benefits of the cloud and ignore or side line the most important factors before they shift to a cloud based service. And the important factor that companies need to consider is the ‘Risk Management’. Companies need to understand that the infrastructure wouldn’t be there in their hands once they go on to the Cloud. There would be a huge change in the way the entire organization/business runs, an end of an era in a way. The cultural shift should be monitored and the consequences should be well planned and managed. Once a business goes onto the cloud, the entire business runs on the network connectivity. The data transmission increases many fold and there should be more than a person to manage the entire network service and its performance. If the network fails, the accessibility to the data, applications and resources would also vanish. So, its important to have a backup plan. A really good relationship with the connectivity providers would be an added advantage and that would help for the speed of the resolution.

Moving the business to the cloud is not giving up our managerial role, its more like a shared responsibility. The cloud provider also becomes a partner of our success stories. If the risks are well managed the rewards are tremendous.

© 2012 Ajan Kancharla

The Design of SIRI

(This article has been sitting on my desktop for ages, haven’t found the right place to post it. Now, I do.)

When the iPhone 4S launched in October, I expected a whole new makeover for the new iPhone. Many techies were already following various sites to get as much information as possible about the look of the new iPhone before it was launched at the WWDC and when Apple proudly displayed their new technology, there were mixed feelings about the iPhone 4S.

A look at the Apple’s page on Siri with a tag line that reads “Your wish is its command” is sufficient to pique the curiosity of any person.

Apple proudly says “Siri on iPhone 4S lets you use your voice to send messages, schedule meetings, place phone calls, and more. Ask Siri to do things just by talking the way you talk. Siri understands what you say, knows what you mean, and even talks back. Siri is so easy to use and does so much, you’ll keep finding more and more ways to use it.”

Many of us already know the 4 Million record break sales that Apple had in the first week of the launch of iPhone 4S.

So, besides the sales and statistics how does Siri work?

Was there a computer that was on par with Siri’s standards?

The answer to the second question is a variable ‘Yes’, and ‘No’ its not ‘Chitti’ from the movie Robo. In the January of 2011, IBM released Watson to the general public, an AI computer system which was capable of answering questions that were asked in natural language. A computer system that they have been working on for close to 2 years. IBM describes Watson as an Application of advanced natural language processing, information retrieval, knowledge representation and reasoning, and machine learning technologies to the field of open domain question answering”. The system is built on IBMs DeepQA technology for hypothesis generation, massive evidence gathering, analysis and scoring. More on Watson and DeepQA at Watson was featured in the AI Magazine fall 2010 issue on Question Answering. Back to Siri.

Just like Watson, Siri is able to understand natural language and works on Information Retrieval Technology. In order for Siri to work simply it has to access the web for information that’s outside the domain of the iPhone memory. For eg., If you want Siri to text someone, it uses the information present in the phone and if you want to find a restaurant Siri uses Information Retrieval to retrieve data from the web. A simple form of IR (Information Retrieval) that we use everyday is the normal web search engine. Siri is based on “Cognitive Assistant that Learns and Organizes” short for CALO and DARPA’s PAL (Perceptive/Personalized Assistant that Learns). If we dig in deeper, we would be able to observe that every iPhone 4S’ Siri is different. Siri learns from its users, learns how they interact with the virtual world and gives them results that are suitable for that particular user. Siri also uses active ontologies paired up with CALO and PAL, when one of my friend’s posted a video where he talked with Siri in a thick Indian accent, Siri was able to understand perfectly and respond with the accurate results; I was amazed. The ontologies in use for designing such an AI service is truly remarkable. Siri is a speech interpreter and once the request is placed, it figures out the intent by using Active Ontologies and analyzes the request, then Siri proceeds to call the relevant partner API to gather suggestions. For eg., when we say “suggest me some good Indian restaurant for dinner” is interpreted using the domain ontology Siri has relating to restaurant, compromising a particular set of rules like domain specific vocabulary, rules of interaction, reviews from other APIs, it might even take in our current location to show the required relevant results. The best part, Siri is proactive, it controls the request and tries to question back to the user using seemingly open ended questions, that traverses its set of ontological rules, Siri keeps doing it till it has the exact objects to make the relevant API calls. However, Siri is not a search engine. It does use Information Retrieval Technology, the field is so vast to encompass just the basic search engine in it. Siri is an answer engine, which is meant to make interactions with a system inherently logical, hence more personal and meaningful. That is one of the reasons why each and every iPhone 4S’ Siri is different.

For now the ontologies in the innards of Siri are just restaurants, weather, sports, travel which have been integrated with various partner APIs like Yelp or Zagat. These help users in doing regular tasks and nothing fancy. This is the first version of Siri, some may call it Beta. Yet, looking at Apple’s history of how their products are technologically advanced, this particular technology that Apple acquired last year holds great promise for expansion to various domains and encompass wide variety of APIs.

© 2012 Ajan Kancharla