I believe it's fair to say Firefox OS SDK will get better. I suspect we'll see interesting things happen just because it is primarily JavaScript+HTML5. There are a half dozen (or more) projects to make it possible to make Android and iOS apps in JavaScript, and they're popular, despite having dramatically less support and tooling available (as much as I hate Java, and I really do hate Java, Android Studio almost makes it tolerable).
I haven't seen the Firefox OS SDK yet, though I plan to check it out, and pick up some kind of dev phone soonish, but I would bet that it's at least on par with some of the early JavaScript+native frameworks cropping up lately. Stuff like Ionic, React Native, etc. All of those are new and sloppy and don't have settled toolchains, etc. But, the desire to work in JavaScript instead of ObjC or Java is pretty strong for many people, as evidenced by the huge quantity of people doing it despite it probably being more effort than coding in the standard language of the platform.
I think it's kinda like desire paths: https://en.wikipedia.org/wiki/Desire_path
JavaScript is the path a lot of people want to walk for making mobile apps. Firefox OS is the first to make it the primary way to develop apps for the platform. I suspect the application developer uptake will be very rapid; probably more rapid than previous platforms, and more rapid than the actual user uptake. This is a platform that allows you to use your existing web development skills right out of the box...and there are a lot more web developers than Java or ObjC developers in the world.
It has been possible to write fully native (not webview wrappers) Windows Phone apps in HTML and JavaScript for the last four or so years, but web developers didn't really adopt the platform (and those that did primarily used C# and XAML). You can scoff that it was something to do with Windows Phone OS's abysmal market share but then I don't see how you would be able to draw a different conclusion that FFOS will fare any better.
1. I had no idea you could make native Windows Phone apps in HTML. This may be a failing on my part for having less than zero interest in Windows Phone (though I find my dislike of Microsoft has faded quite a bit, as they've embraced more openness and more fair dealings with the rest of the world).
2. I don't think we mean the same thing when I say "the primary way to develop apps for the platform". I googled "how to develop windows phone apps" and followed the trail to the most obvious seeming instructions, and found this in the Microsoft Dev Center:
"When you create a new project, you also make the following selections:
Your preferred programming language - Visual C#, Visual Basic, or Visual C++."
So, if JavaScript+HTML5 is a good, and "official", way to make apps for Windows Phone, somebody needs to tell Microsoft, because they don't seem to realize it.
"Get started with Windows Runtime apps. You can write a Windows Runtime app in a variety of languages, such as C# or C++ with XAML, C++ with DirectX, and JavaScript with HTML/CSS. Now you can easily create apps for Windows devices and Windows Phone from a single project."
Taken from https://dev.windows.com/en-us/getstarted
Free trainings and ebooks:
http://www.microsoftvirtualacademy.com/training-courses/deve...
http://blogs.msdn.com/b/microsoft_press/archive/2012/10/29/f...
I like JavaScript just fine for what it was originally designed for.
Web OS and Windows Phone support for JavaScript are a living proof people don't really want to.
This has played out in many other markets, including desktops and servers, where higher levels of abstraction won mindshare over time as technology (both hardware and software) advanced to make it feasible. When I started using person computers (8 bit machines), software of any seriousness was written in assembly. The next generation (16 bit machines) brought good C and Pascal compilers, and applications built with those tools. Only now are we seeing serious talk of replacing C/C++ with something else for systems programming (maybe Rust, maybe Go, etc.).
Being right but at the wrong time is just as bad as being wrong. Maybe WebOS was right, but at the wrong time...maybe apps made in JavaScript five years ago weren't snappy enough on a phone. Maybe the tooling wasn't there. Maybe the VMs weren't good enough. Maybe they are, now.
I don't know. But, Mozilla has shown itself capable of taking on the biggest companies in the world with open web technologies, and holding their ground tenaciously. I believe they have the clarity of vision and the technical chops to pull it off.
Finally, I just want a Firefox phone. So, I may have rose-colored glasses. I think Firefox is the bee's knees, and I think Mozilla truly represents one of the most positive forces for good in technology today. I want Firefox OS to win. If it can't win, I want it to be a serious contender.
There are zero switching costs associated with a browser. It costs nothing to download and run Chrome, Firefox, Safari, IE, etc... The switching costs associated with phones is obviously much higher. Mozilla has to win ground in the mobile OS wars before they can even think about defending it.
Not trying to be a downer, I would like a viable mobile OS to break up the current duopoly, especially one that really embraces the web. I just think Mozilla has a hell of a fight ahead of it and it can't win it on merit alone.
Not true at all, actually; I was doing this back in 2009 on Palm's webOS platform as one of the first wave of devs with early SDK access.
IMO, webOS' adoption of HTML5/JS apps as "native" was too ahead of its time, and unfortunately early enough where the intersection of hardware of the time and browser JS performance left it looking pretty janky compared to IOS and Android. Still, I loved developing for the platform in spite of everything that happened around the OS.
All that said, I'll probably give FFOS a shot as a development target in the near future.
It was definitely ahead of its' time.. I didn't stick with it long, as the browser became very dated, very quickly.. but overall it is still one of the better devices I've used (aside from HP's choice for a janky proprietary charger).
While I really like a lot of where the current Android has gone, I think some choices are just difficult for power users.. for more than 2 email accounts (let alone 5+) the gmail interface truly sucks... some of the flyover buttons (like new message) are just awkward, and some of the other apps are weird too.
The experience in google maps seems to be getting worse with time and more use as well. Hangouts as a replacement for google voice is cumbersome and incomplete... I think of this era of android to be akin to Windows Vista at release... some great ideas, but half baked... Hopefully it gets better not worse.
I haven't used iOS on a regular basis enough to comment there. I prefer JS + HTML for apps, it's not a bad idea all around... It (webos) was one of the earlier places for node development (before it got really good).
You can totally write FirefoxOS apps in Notepad if you want to. It is just HTML, CSS and Javascript (and a JSON manifest that tells the OS where the entry point for your app is).
This might sound funny, but considering Moore's law and where we currently are on that exponential curve, making a fully virtual OS will be the next step in the PC evolution. You shouldn't have to write low level interrupts or accept that apps need full root access anymore.
In case you haven't noticed, the exponential curve has already started to level off. Moore's Law is done. Every incremental improvement from Intel offers smaller and smaller improvements, as transistor sizes run into fundamental physical limitations imposed by quantum mechanics and thermal and battery-life constraints impose limitations on the amount of power a chip can use. Combine that with fact that RAM speed stopped scaling about a decade ago, and the conclusion is clear. Moore's Law isn't ending. It's already gone. As far as desktop application developers are concerned, Moore's Law ended about a decade ago when single-thread performance plateaued.
Yes, we have more and more cores, and more and more cache. But the cache is only there to make up (poorly) for the fact that RAM speeds haven't scaled. And more cores don't help, because most desktop applications don't parallelize easily beyond ~2 threads. Yes, the user is able to run more applications at the same time, but each individual application is still running at about the same speed.
In Firefox OS, an OS designed from the start with the idea of JS/HTML apps? I don't know, we'll see, I guess!
http://developer.android.com/tools/sdk/ndk/index.html
> If you write native code, your applications are still packaged into an .apk file and they still run inside of a virtual machine on the device.