Introduction: IoT

Wikipedia definition for starters:

"The Internet of Things (or IoT for short) refers to uniquely identifiable objects and their virtual representations in an Internet-like structure. The term Internet of Things was proposed by Kevin Ashton in 2009."

History of IoT:

Kevin Ashton (born 1968) is a British technology pioneer. He cofounded the Auto-ID Center at the Massachusetts Institute of Technology (MIT), which created a global standard system for RFID and other sensors. He is known for inventing the term "The Internet of Things" to describe a system where the Internet is connected to the physical world via ubiquitous sensors.

Prospects of IoT as stated by Leading Tech Players:

"It will be bigger than anything that's ever been done in high tech. It will change the way people live, work and play" - John Chambers, CEO of Cisco Systems Inc

"Up until 2012, the undisputed hottest topic in IT for several years in a row had been cloud computing. Then, big data stepped in and arguably stole the crown last year. For 2013, there's likely to be a new top dog: The Internet of Things." -Jason Hiner of the 'TechRepublic'

What's in it for future engineers?

Cisco has estimated that 50 billion devices will be connected to the Internet by next year, and 50 billion by 2020. IoT is expected to be a $14 trillion industry by 2020.
One of the biggest challenges for the expansion of IoT is of human resource. More and more companies will require skilled engineers who are trained in the field of IoT. This makes it a great opportunity for engineers who have knowledge of this domain.

Data Flow Diagram for IoT applications:

Data Flow Explained:

User Interface application
It is a user-oriented application with a GUI (Graphical user interface), that allows users to control or monitor IoT-enabled devices remotely over a local network or internet. For example: Mobile apps, web apps.
Network components
It includes all networking components, like routers, switches, hubs, etc. which help in transporting information to and from the User Interface Application to the IoT-enabled devices.
It is the computing machine which hosts the User Interface Application. In some cases, it may be the machines that control or monitor "the things" directly or is "the thing" itself.
Hardware control script
It is the programming language used to communicate between the server and the IoT-enabled device. Any programming language capable of communicating directly with controller hardware can be used.
The "Thing"
It is the IoT-enabled device which the end user can control or monitor, or a device which can simply share its information with other machines (M2M). More on this will be explained in the following lesson.