On the other hand, I think IoTs with web interfaces aren't a bad idea.
I think it is. The internet-of-things does not need to suffer from massive power consumption and hard to implement on the micro-controller scale protocols.
It needs something much more along the lines of encrypted UDP than that it needs to use 'web technologies'. Imagining a stack made on 'web technologies' running off power harvested over a relatively long period of time is painful.
[1] http://www-ccs.cs.umass.edu/shri/iPic.html (images also mirrored at http://cc2.savs.hcc.edu.tw/~chuavv/smallest/iPic/ipic.html )
It's also a pretty cool tool for adding UIs to software you code locally. Embedding a HTTP server is simple in most languages, and for some cases, a web interface will be much simpler than building an equivalent from "native" UI components.
--
Incidentally, one of the best demonstrations I saw of that was in the book Land of Lisp. The book teaches you Common Lisp by guiding you through writing a few games. At some point, you end up embedding in your game a very simple HTTP server - and suddenly, you get to have interactive graphics (via SVG) without the author having to teach you lots of stuff about some random UI library.
It does, but this is not the reason. Browsers have grown to contain a stellar collection of networking APIs (compared to the rest), and IoT devices depend on talking to each other. Indeed, the people at Mozilla working on this stuff know more about the nitty-gritty of the low-level than about standard Web development. The API is for the users.
The problem is that now, we should move on, and use something else than a browser. Maybe it involves inventing an alternative to html, or making all application networking p2p. Not talking only about bitcoin. Also, html is so much focused on TCP, and not on real time networking.
I'm not dismissing the web, but to me it seems that it's the only decent standard to do things, and there's really nothing else.
Maybe I'm missing out on a big chapter of the history of computing, but I don't recall Open Source done via webapps until very recently. Most of the things browsers did were things that mattered only to businesses - like easier software updates, and much more control over the customers and their data. And the latter reasons are why web technologies are popular today.