Programming for IoT is usually a polyglot (multiple languages) effort since the Internet-of-Things (IoT) is a system of interrelated computing devices that are provided with unique identifiers and the ability to transfer data over a network. The choice of programming-language depends on the capability and purpose of the device. IoT encompasses a variety of devices including edge devices, gateways, and cloud servers. The most popular languages in IoT are Java, C, C++, Python, Javascript, Node.js, Assembler, PHP, C#, Lua, R, Go, Ruby, Swift and Rust