В контексте IoT имеет смысл выучить ASM, C, RTOS.
А ваш вопрос, в контексте IoT, конечно... Купите себе плейстейшн и рубитесь в майнкрафт.
IoT - маркетинговая хрень.
Есть embeded, который сливает данные. Куда и как - пофигу. Если ему вообще надо сливать.
Есть бэкенд, который с этими данными работет.
Есть фронтенд, который создает UI.
Ну и чтобы не быть голословным:
![ad3a32dfb62d45ee9f74f4a997cd16d6.png](https://habrastorage.org/files/ad3/a32/dfb/ad3a32dfb62d45ee9f74f4a997cd16d6.png)
Часть на AVR, часть на ARM. Сервер на питоне, фронтенд - ангуляр. Стройка еще идет и часть модулей подключается-отключается в процессе. Объект - два строения. Основной канал - RS485. Часть по радиоканалу, часть по вайфаю, часть по ethernet