Posts

Showing posts from December, 2017

Python and Flask RESTful API Tutorial

Image
Python and Flask RESTful API Tutorial Introduction         Machine Learning (ML), Artificial Intelligence (AI) and Deep Learning are getting popular and are being used almost in every domain and industry. In most of the places Python is the language being used for programming ML, AI and Deep Learning models as there are many Python libraries that support the requirements and the Python libraries have evolved over time and they are only getting better and better. To display the output data of the ML, AI or Deep Learning models or to pass input data to ML, AI or Deep Learning models using UI built on AngularJS or ReactJS or any of the other latest UI frameworks, there is the requirement of RESTful APIs to send data to UI and receive data from UI. This is where Flask comes in.         I was looking online for basic tutorials to learn Flask RESTful APIs and most of the posts I found were very old, dating back to 2013 or 2014 which do not even work with the latest version of Python.

IoT (Internet of Things) Tutorial

Image
IoT (Internet of Things) Tutorial Introduction         I was searching online for tutorials about IoT software development  and most of the blogs or links gave very minimal information about the end to end implementation of IoT. Hence I decided to come up with this blog post.         In this tutorial I will be using RabbitMQ as message broker. The reason I have chosen RabbitMQ as message broker is because we have a RabbitMQ cluster in Production that processes more than a million messages in a minute. I will be sending and receiving messages using the MQTT Protocol with a Simple MQTT Paho Client. I will also be using a Simple AMQP Client to receive and send messages which will give an end to end software implementation of IoT. You may be wondering what the abbreviations MQTT and AMQP mean and also what Paho means. To understand these please read on as I have explained them in very simple terms. So there are 2 Applications required to get the end to end functionality: Simp