Re:Tessel: The end of web development as we know it
by est on Monday September 30, 2013 @02:08AM
(#6468039)
Javascript is fundamentally not suitable with embedded systems. Its string is basically UCS2 literals. To deal with byte streams you have to use this beast http://nodejs.org/api/buffer.html
Re:Tessel: The end of web development as we know it
by ssafejava on Monday September 30, 2013 @03:42AM
(#6468276)
Yes, you can use Node Buffers (which are not that bad), or JS native Typed Arrays (which are also not that bad but a little clumsy). Yes, in embedded systems, that might be really important so it can get clumsy.
It's not the best tool for the job. It's also not the worst tool for the job, and it's an extremely popular language. If it brings more people into the hardware space (which is its expressed goal), it will be a success.
Re:Tessel: The end of web development as we know it
by cbsmith on Monday September 30, 2013 @03:35AM
(#6468252)
> fast (much faster than Python)
Wait... when did we get to the point where things that were faster than Python were deemed "fast"?!
And of course, "fast" isn't the right term for embedded systems. The right term is "efficient". In embedded terms, Java barely qualifies as passable, let alone Python.
Re:Tessel: The end of web development as we know it
by kybernetyk on Monday September 30, 2013 @03:59AM
(#6468318)
Yup, and by fast in embedded people usually mean real time. Latency is far more important than bandwidth in that context.
Javascript is a good programming language, in that it's expressive, fast (much faster than Python), and more importantly it runs everywhere. No ecosystem can grow without developers, and the success of Node.JS clearly shows that developers like a system they can dive into without much prior effort, using skills they already have.
Tessel allows web developers to use skills they already have to do new things. How could that possibly be a bad thing? Just because Javascript has '==' and '===' and both 'null' and 'undefined' and {} + [] !== [] + {}? I swear, everybody seems to have seen the 'Wat' talk and thinks they're now experts on Javascript development.
Javascript, like many languages (even PHP!) can be written in a 'good' way and a 'bad' way. Thankfully, it's not very hard to write in a good way and it lends itself very well to I/O bound applications like webservers. Embedded devices, depending on the application, could also be very I/O bound, waiting on sensors, cameras, wifi, etc.
Javascript is actually one of the fastest interpreted languages in existence and thousands of new programs are being written in it daily. It's easy enough for a total beginner to use yet powerful enough to port Unreal Engine 3 to it. Get over your biases and recognize that JS brings with it something that Haskell, Scala, etc., will never be able to match: large numbers of ready developers.