Apply HN: Favor – PhoneGap / Wordpress for IoT Development
For those not familiar with IoT or device development, currently software is written to work with a specific type of hardware. If your device is using a specific accelerometer, your software will be written to work with that sensor. If you want to change the sensor your product is using, you need to update the software as well. This means software can't
* be written easily as re-usable components
* isn't easily testable
* no separation of concerns
* difficult to debug (is the issue in hardware or software)
This is the first issue Favor is addressing. With Favor, the hardware has a simple config file which describes the hardware and how to interact with it. You then write your business logic using Favor to accomplish whatever task needs to be done.
Favor is an open-source javascript library, hopefully simple to use and accessible to a wider base of developers who may have never developed hardware before.
You can check out the library at https://github.com/favor/it or a demo hello-world video on youtube https://www.youtube.com/watch?v=bHKyFJ41amA
Keen to hear feedback, still in the very early stages of this.
5 comments
[ 3.1 ms ] story [ 17.3 ms ] threadI know little about IoT -- explain how the language is abstracted? (last I worked on Arduino it was Processing/C++ I think). Does Favor compile down to the languages that are used, or how does this work?
To get users, instinct is to get your stuff in the hands of hardware bloggers / stores like sparkfun and hope that they start using it. Is that your plan?
I remember my Arduino days working with Processing, and not fondly. This is why I've gone with javascript. It offers a large body of developers the opportunity to get familiar with IoT without learning a whole new language. Though some will need to learn how to read a data-sheet, I've tried to make it as simple as possible to just plug the data-sheet details into the `init`,`get` and `set` methods so time isn't spent on that low-level getting data stuff.
I've actually seen a decent amount of installs on NPM (though I'm not sure how reliable that is) in the first month with no marketing. It is still currently a beta or even alpha level. I'm working on getting a few real projects working with it first, and I've been going to meetups to talk about it (but not presenting yet, just trying to gather interest).
Hardware bloggers and stores are definitely a great opportunity. I have some more interesting stuff coming down the pipeline which I think would capture their interest.
This is just the first step in a much larger model of how to develop and work with IoT (and devices).