Firefox OS (Boot 2 Gecko) Simulator - Runs on Windows, Mac and Linux
people.mozilla.org
people.mozilla.org
I know I can use whatever I want, but I want them to a) obviously continue to allow me to use whatever I want, and b) tell me what way they think I _should_ do it.
To see a example workflow for developing a application: https://developer.mozilla.org/en-US/docs/Apps/Tutorials/Weat...
I'm just comparing a beginner developer experience for iOS/Android/Firefox OS.
iOS -> download Xcode, install, new project, build and run.
Android -> download Android SDK installer, install eclipse plugins, install eclipse, install current SDK, create new device for emulator, create new project, run on device.
Firefox OS -> ??? google "html5"
I would like to see them field a framework along with their OS. Even if it just means partnering with an existing framework. Make it a 1st class citizen on the OS so you don't need to include your own copy of all the .js files.
If that's not possible, even a simple "here are frameworks we like for Apps: x,y,z Games: j,k,l" would help set people on the right path.
"This is a basic template that includes jQuery, require.js, volo, Mozilla Marketplace libraries, and other helpful things. A game template and others will be available soon."
It's called Mortar and can be downloaded here: https://github.com/mozilla/mortar/
I will link the same guide I gave you before, read it because it will teach you the basics you'll need: https://developer.mozilla.org/en-US/docs/Apps/Tutorials/Weat...
Edit: While I'm at it, I might as well link a introduction to the basics of developing Open Web Apps since it might be new to some people: https://developer.mozilla.org/en-US/docs/Apps/Tutorials/Gene...
We just released a new version of mortar on Friday, with all new templates that should be easier to use. I'll be updating the tutorials soon.
The developer hub will be the place devs go to learn about building apps for Firefox OS. We know it's just HTML5, but we are also aware there are many other questions regarding app development, so we fully intend to fill those gaps. It's not quite as simple as "just" building an HTML5 site.
EDIT: Forgot link to developer hub: https://marketplace.firefox.com/developers/
>download Android SDK installer, install eclipse plugins, install eclipse, install current SDK, create new device for emulator, create new project..
It is easy to forget once you have done it, but that is a pretty daunting process for a newcomer.
In reality the web side will evolve, starting with editing some existing files in notepad-- much lower barrier to entry. Not to mention that they will have the established webdev community to draw on.
Oh, come on. You're seriously joking, right?
How about paying the $99 fee, otherwise you won't see it in action on your own phone? How about figuring out how to issue and install those damn certificates for your phone? How about learning Obj-C, a programming language that's only used on Apple's OS X and iOS? How about having to own a computer running OS X to be able to do anything?
This doesn't even factor in the cost of learning yet another UI framework. My first mobile app was built for Android (because I don't have any OS X computer) on top of PhoneGap, because I only wanted to display a bunch of simple dialogs and item lists and I couldn't be bothered to learn Android's flavor for UI. And I already know HTML and Javascript.
Making an app for any platform has a learning curve. If you know Objective-C, learning iOS programming is an easy jump. If, as in your case, you know HTML+javascript, making a PhoneGap / Firefox OS app will be an easy jump. If you learned Java in school, Android will be an easy jump. If you know none of these they're all going to be approximately equally difficult.
# Cost:
iOS - $600 Mac Mini + $300 iPod Touch + $99 developer account
Android - ~$350 PC + $300 Nexus 4
Firefox OS - ~$350 PC + $300 Samsung Galaxy S2 (?)
iOS is a bit pricier to get started on. No question.
# Provisioning and Certificates:
Yeah these are some annoying bullshit. I agree 100% on this point.
The thing is, my workstation is Ubuntu. I feel comfortable with it, all my tools are here within reach, its setup is streamlined to get out of my way, etc...
To develop for Windows or for iOS, I have to go out of my way and use another environment in which I don't feel comfortable.
I don't get why Microsoft and Apple don't release cross-platform SDKs. I don't really care about XCode or Visual Studio, I just want a bunch of tools with which I can compile and publish projects from the command-line. Actually, I only care about publishing on my own personal phone and I don't really need an emulator either, as my own phone can substitute for that (provided it has a way to get some logs and stack-traces back). Apple makes this especially difficult, since you can't (legally) run OS X in a virtual machine (this was true last time I checked and the VMWare instance I managed to setup was extremely unstable).
So that's why I brought up the OS X argument. Monetary cost is not the only cost. Google did a smart thing with Android, because even though you have to endure Eclipse, at least it doesn't pull you out of the environment you use daily.
Also, developing with HTML and Javascript is even more kickass, because you can start mocking / messing around with just a browser like Chrome or Firefox with Firebug installed or something similar.
If I was at Facebook, I would be paying -very- close attention to this project. It's in their interest to get an independent mobile platform out into consumer hands, and I'd be surprised if they aren't already devoting developer time to the project. The harder challenge will be getting handset makers and carriers to support the new environment, and that's where a backer with big pockets could come in handy.
Google must be kicking themselves.
Announcement for simulator: https://hacks.mozilla.org/2012/11/announcing-the-prototype-f...
Github repo for simulator: https://github.com/mozilla/r2d2b2g
That's probably the easiest way.
A little more information about availability from Wikipedia:
"At Mobile World Congress 2012, Mozilla and Telefónica announced that the Spanish telecommunications provider intended to deliver "open Web devices" in 2012 based on HTML5 and these APIs. Mozilla also announced support for the project from Adobe and Qualcomm, and that Deutsche Telekom’s Innovation Labs will join the project. Mozilla demonstrated a "sneak preview" of the software and apps running on Samsung Galaxy S II phones (replacing their usual Android operating system). In August 2012, a Nokia employee demonstrated the OS running on a Raspberry Pi.
Firefox OS is compatible with devices including: Otoro, PandaBoard, Emulator (ARM and x86), Desktop, Nexus S, Nexus S 4G, Samsung Galaxy S II, and Galaxy Nexus."
You are far better off running Android in VirtualBox. It's small, really fast, and works like it should.
https://developer.mozilla.org/en-US/docs/Apps/Apps_for_Andro...
In other words, Mozilla is already dealing with plenty of devices today. I'd expect that, in the majority of cases, if an app works well in Firefox for Android, it will work well on Firefox OS and vice-versa. After all, the whole point is to enable apps that are portable to any device/browser combination that implements the relevant APIs.
I feel a little dirty for owning this thing.
There are some differences between B2G Desktop (used by the Simulator) and Firefox today, not to mention the ability to check out Gaia (the user interface of B2G). My hope is that everything needed for the Simulator will roll into Firefox at some point.
I know you were likely kidding, but I thought I'd try to clarify where the Simulator fits in the development process for people building targeting Firefox OS.
(I'm the product manager for the Simulator, among other things)