Fee free to list all the "crap" points of JavaScript and make sure you include everything bad about html5 while you are at it.
Well, first let me point out that I said Javascript (and HTML5) are crap for
application development. As tools for enhancing webpages, they're a bit janky but ultimately usable (well, JS is, HTML5 still sucks,) but people keep trying to push them outside the environment for which they were intended.
That said, let's rip into this bitch. Anybody who thinks that dynamic typing is a good idea for large-scale development is insane. It's object-oriented but does not feature classes, which
A. means you have to do all your inheritance by cloning and altering existing objects like some mad geneticist, and
B. also fits into the "howling chaos of type ambiguity" model seen in JS in general. Objects in JS overall look like a terrible kludge to add object-oriented programming to a procedural language that someone did when OOP was the trendy new hotness in programming but didn't really care about the end result. All scripts share a global namespace. Variables are global unless otherwise specified. const is only implemented in certain browsers. And then there's the implementation madness seen in TheBilgeRat's video...
As for HTML5, it sucks because it's an attempt to turn something that was never, ever meant for application development into an application-development framework.
HTML was never intended for this. Standards zealots spent the entire '90s screaming at people about how HTML was supposed to be for organizing information, not doing layout or apps. It wasn't meant for layout, it wasn't meant for UI, it was meant for creating documents that link to other documents. And on top of all that, it's manifestly slower than Flash, which has been accomplishing the exact same things HTML5 tries to do since the mid-'90s. HTML5 is not a good solution for application UI because it's a hack on top of an entirely different thing. It's also not a good solution for application UI because it means having to drag in an
entire webpage parsing and rendering engine just to get buttons on a damn form, so
everything runs as slowly as the web browser does. It's just
dumb.
I have no real opinion regarding FirefoxOS... It just seems to me to be the most logical progression of technology, that's fine with me.
How is it logical? They're kludging a set of tools intended for one thing into being used for an entirely different thing. Just because I
can play my piano by means of exceedingly careful hammer whacks doesn't mean it's a good idea.
At the moments he most used platform in my household is iOS, but that will change as ARM CPU's get more powerful, and use less electricity, and the web browser will be the platform... With html5 as the "Hardware Abstraction Layer" and event driven JavaScript the common client language...
Oy, always with the "more horsepower makes stupid ideas not stupid anymore!" Yes, Firefox OS is slower than iOS
now, but just wait until ARM CPUs get faster! Then it'll be...
still slower than iOS, because
iOS will be using the exact same faster ARM CPUs! And the web browser will be the platform, just like it was going to be in 1995. Yeah, I've got news for you: the web browser will take over as a dominant platform when it's as fast as native applications and behaves and renders consistently on all browsers. Which will be
never.