Over the past decade, the popularity of Python as a mainstream programming language has exploded. Notable advantages of Python over other languages include, but are not limited to;
- It is a very simple language to learn and easy to implement and deploy, so you don't need to spend a lot of time learning lots of formatting standards and compiling options.
- It is portable, expandable and embeddable, so, it is not system dependent, and hence supports a lot of single board computers on the market these days, irrespective of architecture and operating system.
- Most importantly, it has a huge community which provides a lot of support and libraries for the language.
It's about this last point that this post attempts to discuss.
The Internet of Things is a big deal today. Some consider it to be a buzzword,others say it's a phase while many others, large industries included, stand by their belief that it is going to be a game changer. However, when all is said and done, the Internet of Things has no classical definition, and as a result, its meaning is about as uniform as philosophical ideologies. Because the Internet of Things paradigm has its hands in a lot of pies, the semantics of it are largely dependent on your perspective. For me, the recipe for the Internet of Things is very simple. A 'thing', which could literally be anything, is fitted with an embedded system which connects it to the internet, in other words, it has its own IP address. This thing may now interact with other things, remote or local over the internet. The possibilities made possible by this infrastructure are used cases for At this junction, IoT occupies a place of importance in Wireless Sensor Networks, Data Analytics, Cyber Physical Systems, Big Data and Machine Learning. It is also very focused on real time analytics and processes. So, for the development of an IoT solution, one would need a programming language which spans these diverse fields, while being lightweight and scalable at the same time. I wonder which programming language can do that?