I don't understand this craze to use JS everywhere. It's not the best language for every job. The main argument seems to be 'if you know JS you can use it in product X'. If you're not competent enough to learn another language then are you competent to write good enough JS?
The community is one of the best development communities out there. Node + NPM have created an ecosystem with lots of contemporary tools that fall in line very well with the UNIX Philosophy. The few people that I've shown Node to have been surprised about how easy it is to use NPM and tackle dependency management.
> If you're not competent enough to learn another language then are you competent to write good enough JS?
I used to say that about Java Developers that didn't know C/C++. As I've grown, the thing I've realized is that the end user/customer/client doesn't care what you write your application in (Unless you're on a Government contract). They care if it works.
Many embedded projects these days do command and control via a small web server. So you've likely got a fair amount of JavaScript in your project anyways. The rest is often written in a combination of c and Lua. Lua might be a better language than JavaScript in isolation, but it might be better to avoid the cost of context switching your brain several times a day.
I think it's fine for rapid prototyping. It has WiFi and is positioned for internet-connected stuff. There are lots of people who use node.js and packages from npm to interface with internet services, so this gives them an easy way into working with an embedded device without a large learning curve.
AFAICT the Espruino and Tessel are slightly different. The Espruino's focus seems to be providing an ultracompact, low-power, very simple JS-powered Arduino, which (with physical adapter) could be used with existing Arduino shields. The Tessel seems to be focused more on the interfacing-with-the-internet side of things, with built-in wifi.
I think there's plenty of room for both, and it's exciting to see continued efforts towards making it easier to bridge the gap between embedded devices and the software world!
For the price, I still think that most developers are better off buying a BeagleBone Black for $45MSRP which can run a flavor of nix. The default "IDE" it ships with is cloud9, and has js libraries to control the pinouts, etc. JS fans can use this happily, or you can put nix on it, and just install Node.
I agree. Even the default distro that the BeagleBone comes with (Angstrom linux) has Node preloaded onto it, out of the box. And the power that thing offers for $45 seems almost impossible to beat.
The question I have for this is, why not just use Node with Firmata on an Arduino? Anyone give me the apparent weakness of that setup that makes this more preferrable?
I've played with Arduino and the #1 complaint I have about it is that in order to do anything I have to learn a whole lot about electronics. With Tessel you just plug a new module and npm install and you're good to go.
I think you aren't taking into consideration the differences between this and the competition. The Tessel is intended to be a powerhouse right out of the box. For example, 160MHz compared to <20MHz, and 32MB of flash and RAM compared to 32-256kB.
Well now that just ruins the fun of programming on a microcontroller. I like my little Arduino and Teensies because its low level programming, bare metal programming.
[+] [-] waterlion|12 years ago|reply
[+] [-] joeblau|12 years ago|reply
> If you're not competent enough to learn another language then are you competent to write good enough JS?
I used to say that about Java Developers that didn't know C/C++. As I've grown, the thing I've realized is that the end user/customer/client doesn't care what you write your application in (Unless you're on a Government contract). They care if it works.
[+] [-] egeozcan|12 years ago|reply
1) Node.js has a huge ecosystem and it's easy to use
2) JavaScript is known by many
3) JavaScript may not even come close to being a proper language for hardware programming but it is good enough for these kind of devices
[+] [-] thedufer|12 years ago|reply
[+] [-] bryanlarsen|12 years ago|reply
[+] [-] jffry|12 years ago|reply
[+] [-] gfwilliams|12 years ago|reply
There's also another JavaScript microcontroller crowdfunding at the moment: http://www.kickstarter.com/projects/48651611/espruino-javasc...
[+] [-] jffry|12 years ago|reply
I think there's plenty of room for both, and it's exciting to see continued efforts towards making it easier to bridge the gap between embedded devices and the software world!
[+] [-] mcescalante|12 years ago|reply
[+] [-] chabreck|12 years ago|reply
[+] [-] unknown|12 years ago|reply
[deleted]
[+] [-] jdn|12 years ago|reply
[+] [-] xutopia|12 years ago|reply
[+] [-] Ecio78|12 years ago|reply
[+] [-] topherjaynes|12 years ago|reply
[+] [-] bryans|12 years ago|reply
[+] [-] egeozcan|12 years ago|reply
[+] [-] bryans|12 years ago|reply
[+] [-] asd|12 years ago|reply
http://www.kickstarter.com/projects/48651611/espruino-javasc...
and one of these
http://www.kickstarter.com/projects/2021474419/flutter-20-wi...
[+] [-] Zergy|12 years ago|reply
[+] [-] quarterto|12 years ago|reply
[+] [-] MatthewPhillips|12 years ago|reply