Comics / Comics News

Firefox OS Is Not for Serious Developers


By Hervé St-Louis
January 26, 2013 - 18:54

firefox-for-twitter.jpg
I went to a Firefox OS for mobile phones event organized in Toronto to learn more about the new platform and left angry before the event concluded. Developers are not supposed to storm out of developers’ events angry and disillusioned. My PhD research is focused on mobile information architecture. I care a lot about mobile interfaces and the continuing competition between smartphone operating systems. As part of Semaphore Lab, the research cluster at the Faculty of Information (iSchool), University of Toronto, dedicated to inclusive design in the area of mobile and pervasive computing, I was keenly interested in discovering more about Firefox OS. Attending the App Day event in Toronto was a waste of time from start to finish. Here’s why.

Developers, Developers, Developers

People make fun of Microsoft’s chief, Steve Balmer’s infamous “developers, developers, developers” mantra but he understood that without developers, your platform will be a failure. Superficially, Stormy Peters, the director of developer engagement at Mozilla shares that view.  She writes that “developers will help bring the power of the web to mobile.” Specifically she argues that “developers are critical to the web and to Mozilla’s mission to make the web accessible to everyone. Hundreds of millions of people worldwide use Firefox to discover, experience and connect to the Web. A web based on open standards and open technologies. We couldn’t have done this without web developers.” No matter how lofty Peters’s words about developers are, they did not reach down the command chain to the Toronto event I attended.

Mozilla is a remarkable organization that seeks to promote open Web standards and offer decent alternatives to proprietary Web platforms such as browsers, email clients and now smartphone operating systems. When Google ventured in mobile platforms with Android, I wondered for years why Mozilla had not followed. In 2012, Mozilla did commit to offering an open source mobile operating platform that could compete with anything from Google, Apple, Microsoft and Rim. The first Firefox smartphone will be released officially in Brazil in February 2013 and more will follow in many other countries. Someone at Firefox was smart enough to get support for the platform from mobile operators. But part of the mix can only be completed once developers start developing for the platform and offer apps that users can download.

Firefox is competing against established players such as Apple, Google, Rim and Microsoft, but also smaller platforms with similar hopes of making a dent in the oligopoly of the smartphone business. However, Firefox is backed by a great brand and a history of being the alternative to oligopolistic Web-based technological solutions. Before Google’s Chrome OS came to be, Firefox was the only serious challenger to Microsoft’s Internet Explorer browser for years.

The Toronto event I attended was organized by Mozilla volunteer Regnard Raquedan. He had good intentions and really tried to make the day a better one for me, but ultimately he failed and I left after six hours in an almost twelve hours collaborative event. For the entire day, I had problems connecting to the guest Wi-Fi connection used at Mozilla’s office in downtown Toronto. After I pressured them, they delegated one of their tech admin to try and help me. One would think that a computer would not have problems connecting to a wireless network at Mozilla’s offices. My computer regularly connects to the wide University of Toronto network and similar wireless network in the city. I don’t usually have problems. In the end the only solution offered was to hand me an Ethernet cable to give me access to the Web. Given the mobile work involved and that I had to move frequently to attend discussions all day, it was impractical. The cable was too short. I ended up tethering my computer to my phone instead and used my own connection to work on my app at Mozilla.

What's in it for me?

The morning started with a somewhat passionate introduction by Mozilla project manager John Karahalis about why developers should develop apps for Firefox OS. He wasn’t very convincing at all. Karahlis’s focus was on the actual platform. He said that Firefox OS allowed developers to focus on developing one single app, instead of several ones for many platforms using Web development standards instead of native-oriented programming languages such as Object C and Java. The appeal of built it once and deploy everywhere has been used many times by many proponents and supporters before there was such a thing as Firefox OS. It’s amazing to hear the same old argument being made four years after Palm first started using them when they announced webOS at the Consumer Electronic Show in January 2009. webOS was touted as the perfect solution to bring developers familiar with Web-based technologies and architectures to the world of app development. Since, Rim, Microsoft and many others, such as third party platform development solutions such as PhoneGap and Sencha have also promoted the idea of Web technologies to developers. Yet, to this day, developers continue to develop natively for a variety of devices. Are all those developers, which I am one of them all idiots? When I developed ComicBookBin, I built it from the ground up for each platform it was intended to. To this day, no matter how complicated that work was, I maintain that it was the best decision I made at the time. To some extent, I’ll engage in cross platform development for the next versions of ComicBookBin because specifically, using Java for mobile apps is not a good experience. However, the iOS version of ComicBookBin will continue to be developed independently specifically for iOS devices, because for my users, it is the best solution possible.

However, Karahalis did not nuance what he meant by using HTML5, cascading style sheets and JavaScript for developing mobile apps. A lot of what Mozilla suggest developers do is to port their apps from existing Web apps or even Websites using an envelope around the app before deploying it as an app for Firefox OS. This is a different thing than using pure cross platform development to build an app for several mobile operating systems. It’s not so much a built it once, deploy often as it is a build it for the desktop and deploy it specifically for Firefox OS. That Firefox app is not cross platform with Android, Windows Phone or iOS. And this, as we’ll see below was the source of my greatest frustration at the Firefox OS App Day.

Rim once touted Adobe Flash as a similar means to repurpose existing Web apps into mobile apps. For some apps and services, such as Twitter, Facebook and YouTube, this makes sense. But in terms of architecture, thinking that a mobile app is nothing more than a compressed Website shows a lack of understanding of the information seeking and usage of end users on mobile phones. A lot of people forget that browsing a Website on a desktop and to some extent, a tablet is a different type of information seeking behaviour than using a smartphone. On a smartphone, the length of usage is probably shorter, and more frequent. For example, I may start up my messenger app over 20 times in one day on my phone. But on my desktop, I will open Facebook perhaps no more than twice a day, but remain on the site much longer during each visit. The architecture for such information behaviour is different on each class of device. Reusing the same contents from a regular Website is a temporary shortcut. Even, if the delivery of information is as fast whether the app is developed natively or using Web techniques, the intent of the user is different.

Karahalis tried to show that he understood the marketing side of things by saying that ultimately, pleasing the users was the most important thing Firefox OS could do. But the means to achieve that end was through developers. “If developers are happy” he said, “users are happy.” Less development time means happier developers. I would respond to him that he’s describing only a feature, and not a benefit. How does less development time benefit users? Faster new releases, faster bug fixes? But is this always true? I don’t think so. Users may not like frequent releases, like the many Firefox browser updates.

Get it from Git Hub

The next presentation by Mozilla’s Jennifer Fong-Adwent annoyed me. It wasn’t a presentation at all. She stood up and told the audience where to go download development resources from Git Hub where they could see examples on how to convert a Website to an app. That was it. She stood in front of the audience for two hours and answered a few questions, but left people to their own devices. I was expecting a demo of Firefox OS, a presentation about why they had decided to go mobile. Where Firefox OS fitted with the overall strategy of Mozilla and their various products. I found none of that in the presentation or throughout the day at Mozilla. That was not the focus at all. The guys at Mozilla failed to sell me and the other developers in attendance about what it was that made Firefox OS so special and why we had to partner with them. There were no promises of riches through their app store which included in-app payment systems. There were no descriptions of what it takes to submit an app. There were no discussions of the types of apps that they wish Firefox OS could get. They didn’t pitch Firefox OS at all.

When I asked the staff at Mozilla why they were not pitching Firefox OS to the developers, they answered that they assumed we had all seen the demos by now, knew all that we had to know about Firefox OS and that selling the platform to us wasn’t necessary. We were savvy enough to be here, right. So we had to already know that it was great! Unfortunately, it doesn’t work like this. Hobbyists, have time to check out all the demos and videos on their own. Professional developers, are probably too busy. When you have 50 developers in front of you, you must by any means inform them of the definite message you want them to know about your product. You want to repeat your message enough times that they can repeat it and are nauseated at the end of the day. Their understanding of Firefox OS should not be a random personal interpretation. The promoter has to set the tone of the discourse about its products. Apple, Google, Facebook, Microsoft, Twitter, Amazon all tell you exactly why as a user, as a developer you must care for their products. They don’t let you guess or make up your mind on your own. Mozilla is not a typical corporate company. But Mozilla still competes with such companies. Therefore, Mozilla must inform its developers and end users correctly about what its products offer and what are their benefits. Word of mouth is not enough. If another developer who did not attend the event asks me whether he should develop for Firefox OS, if Mozilla has done its homework, I should be able to repeat the three main key points about what is special about the platform. As it turned out, I still don’t know what’s so special about Firefox OS and why I should care about it.

As a developer, I don’t know why I’m important to Mozilla and why I should develop for Firefox OS. The presenters’ only argument was that since Web developers build Websites and Web apps, that logically, they should convert them into Firefox apps because both are made with the same kind of technologies. This kind of attitude was reflected in the staff’s behaviour when I was working during the afternoon. I figured that since my very popular TED app for webOS was built in HTML5 that it would be an ideal project to try to port to Firefox OS. But there were problems of course. So I asked the staff for help. They were all sitting together working with their computers instead of mingling with the 50 developers spread across two large open rooms. As I came to one of them, I was told to go fetch my computer and comeback so they could take a look at my problem. This is not the way one works with developers. When a developer comes next to you, you get off your seat and offer to come to him. You do not sit secluded from your guests working and chatting with your office buddies. You work the room. You walk all over, look over people’s shoulders, ask continually if they need any assistance. You go to them. You do not wait for them to come to you. Developers are your clients. They will make your platform popular and pleasurable and rich with apps for your end users. Therefore, you have to treat them with respect. At one point, another developer interrupted us, without even asking if it was okay to. The two staff members, still sitting on their comfy seats, just totally ignored me and focused on the impolite developer. Then, after five minutes, one of them remembered that I was there and said, oh yeah, we’ll ask someone in California to look at your problems. I got up and told them that this entire thing was useless and that I was wasting my time with them.

As I was readying myself to leave Mozilla’s offices, after being told by their staff, through their dismissive behaviour that my problems and attempt at porting a popular app to their platform didn’t matter and wasn’t a priority for them, Raquedan, the event’s organizer came to me to ask me if everything was alright. I told him that it wasn’t and that they had just wasted my entire day with their clueless attitude about how to support developers. Raquedan really tried to help, but at that point, I was just pissed. For him, this one day event was a learning opportunity where my feedback would help Mozilla improve its relationship with developers in the future. He also said that I probably wasn’t the type of developers they were aiming for. They were aiming for the average hobbyist that creates Web apps and that may not necessarily have created mobile apps on his own. Indeed, many in attendance were the age of undergraduate students. Few looked older than 30 years old. Unfortunately, that is not only the kind of the developers that help popularize a platform. The professional mobile app developer like me, expect more support and more information when dedicating time to build an app. At this point Firefox OS is an unknown. I had no specific plans to develop apps for the platform before a professor at Semaphore encouraged me to check out the event. I thought it would be easy to port a popular HTML5 app to the new platform. I was wrong.

How Firefox OS Feels

If there is one positive thing about this day, it is that I got to play with a demo device sporting Firefox OS. The operating system feels much like Android. Icons and texts seem a bit smaller than other platforms though. The version loaded on the phone (Boot2Gecko 1.0.0.0-pre release) was at time sluggish and the screen not always very responsive to touch. Designers kept the skeuomorphism feel in Firefox to a minimum. Some logos, like the iconic Firefox logo sport gradients, but many others favour the flat two colour style akin to a cartoon shader.

Just like Windows Phone, apps are organized within folders. For example, one can imagine that when all apps are available, Twitter, Facebook, Pinterest will all be included under a social networking folder, represented by an icon on the phone. Something else borrowed from another mobile operating system are cards. Just like webOS, Firefox OS features a card view that appears when one click on the home button for an extended time. Each card can be swiped away just like webOS, but in a strange Frankenstein move, feature grey quit buttons similar to iOS. The user interface designers mixed the visual interface of iOS with the gesture-based approach favoured by webOS. However, the transitions between the animations are not as smooth as iOS or webOS. Swipping a card away or the animation rotating the screen when the orientation is changed are not smooth. Hopefully, that will change before the phone is released to the public. One criticism I had about the card mode is that clicking outside the cards or just on their edges does not turn off the card mode. When clicking in an area away from the cards, the mode should revert back to a regular view.

firefox_os.jpg
On the demo devices that I used, three of the hardware buttons on screen were disabled, so I’m not sure what kind of functionality they may bring. One of these buttons seemed like a search button. Other problems with the interface is that the time does not support 24 hours time yet, even when switching to another language that uses 24 hour time, like French. I hope this gets corrected quickly because Brazilians don’t use AM or PM when they refer to time. Overall, I wasn’t impressed with the boxy feel of the interface. It felt too much like 2003. There weren’t enough free floating spaces in the interface. For example, the calendar app looked constrained and cluttered. I’m not sold on the dull orange tone used in many menus. The guys at Mozilla tried to differentiate their looks by making all the app icons round. That’s an interesting choice, but at this stage, the look of Firefox OS is neither elaborate nor enticing.

I could not test any of the features like the phone dialer or text messages, although they are all built using Web technologies. Palm, when they build webOS, proved that this could be done. However, when they did it, they did it with far more grace and elegance. That’s really what my problem with Firefox OS and Mozilla has been. Everything they do is a proof of concept showing that indeed, they can deliver. However, just like their poor handling of developers at their Toronto event, they proved that they are not interested in rising above the minimum that is required to convince people that they are serious. That leaves an amateurish feel to their endeavour that won’t be enough to convince end users and developers.


Last Updated: August 31, 2023 - 08:12

    RSS       Mobile       Contact        Advertising       Terms of Service    ComicBookBin


© Copyright 2002-2023, Toon Doctor Inc. - All rights Reserved. All other texts, images, characters and trademarks are copyright their respective owners. Use of material in this document (including reproduction, modification, distribution, electronic transmission or republication) without prior written permission is strictly prohibited. Toon Doctor ® is registered trademarks of Toon Doctor Inc. Privacy Policy