Mozilla

Articles by Havi Hoffman

Sort by:

View:

  1. Phones for Apps for Firefox OS

    Update: Today, Monday, May 13 at 11:00am PDT, we closed the submission form for the Phones for Apps program. Thanks so much to all of you for your interest and enthusiasm. Your response has been overwhelming! We’ve received thousands of applications, more than we’re equipped to review in a timely fashion.

    We’ve started reviewing your proposals, and in the next few weeks we plan to notify application builders and porters who’ve been selected. We regret we can’t respond to the thousands of you with great ideas for apps for Firefox OS. There will be other opportunities to get access to the the Developer Preview device. Please keep working on your apps. We can’t wait to see them in Firefox Marketplace.

    Hello HTML5 app developers, the open mobile web is calling.

    We know you’re out there, chomping at the bit, coding, testing, reading documentation, downloading and running the Firefox Simulator. And you’re ready to ‘Send to Device.’ You just need to get your hands on a device.

    Today we’re announcing a new program with you in mind. We call it: Phones for Apps for Firefox OS.

    Firefox Marketplace on the Geeksphone

    Firefox Marketplace on the Geeksphone Keon

    Maybe you’ve built apps in the past for Chrome, webOS, Blackberry WebWorks, or the PhoneGap store. Maybe you’ve created beautiful web apps for a desktop environment and now you want to port them to mobile. Maybe you’re a student about to start a summer break. We know you may not live anywhere near Bogota, Colombia or Warsaw, Poland, locations of upcoming App Workshops.

    Wherever you are

    Wherever you are, if you can show you’ve got a great app idea and the skill to build it, we’d love to see your apps in the Marketplace when the Firefox OS launch begins later this summer. And to sweeten the deal, we’ll send a Firefox OS Developer Preview device for you to work with now.

    When Firefox OS phones become available to consumers in select locales this summer, you’ll have an opportunity that only comes around once—a first-mover advantage in Firefox Marketplace. End users in Latin America, Eastern Europe and other launch locations will be on the lookout for playful and practical apps to install: games, tools, and utilities as well as locally relevant news, sports, travel, entertainment, review apps, and social sharing experiences. And you can build and submit them now!

    Apply now

    Tell us about the Firefox App you’d like to build or port. If your proposal is accepted, we’ll send you a Geeksphone Keon. Our device inventory is limited and our launch dates are approaching fast, so act now. This program will close at the end of May or when our limited supply of Geeksphones runs out. There’s a limit of one phone per app proposal. We can’t wait to see what you’re working on. There’s never been a better time to get started.

    Apply here.

  2. Announcing Firefox OS App Workshops

    Madrid, Bogotá, Warsaw & Beyond


    blaze_your_fxosFirefox OS phones will be available to consumers in several countries this summer, and they will be looking for great apps to install from Firefox Marketplace. If you know how to build mobile app experiences with HTML5 and JavaScript, we’re looking for you—especially if you’d like to develop apps in Spanish, Polish or Portuguese! If you’re fast and focused, this is the time to take first-mover advantage.

    Our first three hands-on technical workshops for skilled web app developers take place in Madrid, Spain, on Saturday, April 20; in Bogotá, Colombia on Saturday, May 18; and in Warsaw, Poland on Saturday, June 1. We hope to announce more workshops in more locales later in the season.

    You must apply to attend: We’ll ask you to show us your JavaScript expertise and/or past experience building web apps and working with web APIs.

    Who Should Apply


    We’re looking for small teams or solo developers with solid ideas and strong web development skills. If you’ve already built a successful PhoneGap, Chrome, webOS, Blackberry WebWorks app, or other open web app for mobile or desktop, we’d love to work with you on migrating your existing app or building a new one. Mozilla engineers and tech evangelists will help participants complete an app or port an existing one to the Firefox OS phone and into the Firefox Marketplace.

    Please apply now if you’d like to attend any of these workshops. We’ll be reviewing applications as they come in, with a focus on our first locations. We’ll get back to you as soon as possible.

    Moz_Ldn

    What We’ll Offer

    • A great place to hack.
    • Hands-on help from Firefox OS developers.
    • Food, drink and demos. And t-shirts, of course.
    • More code, less talk.
    • Firefox OS Developer Preview phones, really!

    How to Prepare

    There’s more than one way to start building Firefox apps. Here are a few resources to get you started:

    Firefox OS Workshop application form.

  3. A Conversation With Appeio Developer Harold Fudge

    Last month we released Firefox Marketplace on the Aurora channel of Firefox for Android. This release has given developers an opportunity to start building a base of early adopters and get feedback on apps as the Marketplace grows.

    Harold Fudge is a Canadian web developer who was excited to be part of this first wave of apps for Firefox Marketplace on Android. Appeio, his device-responsive, cross-platform app.net client, is the first of its kind in Firefox Marketplace. We were interested in talking to Harold to learn more about his approach to open web apps. Here’s how the email conversation went:

    HAROLD: I’ve always been interested in technology. I’ve been drawn to computers partly for the pure thrill of creation but also because of the implications for communication between individuals and groups. I grew up in a small town in the center of an island during the 1980s and created simple apps for myself out of interest. Just as I finished high school suddenly the Internet emerged as something for everyone. I saw plainly the Internet was everything a computer was already, but infinitely expanded. It was my mission to be a part of it. I began to learn HTML and what it meant to be a web developer. You can see a selection of things I’ve built and am working on at hxf148.com.

    Q:What inspired you to develop Appeio, an app.net client for the Marketplace?

    In mid-August when App.net gained its initial funding I simply signed up out of an interest in the technology. I am not shy about trying different things or supporting an idea as it gets started, but unlike the average project I investigate, App.net as an API service had an immediate pull for me. I really enjoy building things online and App.net offered a wide open low cost way to build apps with a powerful communications backend and a engaged early adopter set. This core idea hooked me and I quickly decided that if possible I only wanted to interact with the ADN (App Dot Net) through my own code as a way to force me to learn its methods and potential.

    I looked at the options and while I have dabbled in iOS and Android programming I did not think I could quickly compete in the already heated race to build app.net clients for those platforms. I then turned to my strengths. I decided I would take upon the challenge to build a full-featured HTML5 app that would extend and improve my own skills and knowledge while providing a solid client for any device with a web browser.

    I had been following the Marketplace project for some time and it seemed like a natural fit for Appeio. While being present in other app stores can lead to confusion, the Marketplace and its focus on HTML5 and other browser-based technologies is something I want to support and be part of. From the early days when I sat down to learn HTML, it was because I felt the future lay with technologies that enabled applications regardless of the underlying hardware, software or specific company policies.

    Q:You’ve done a lot of mobile app development, what do you see as the biggest challenges for developing in HTML5?

    Just stating that you develop in HTML5 is a bit of an issue. What that really means is still a bit of a jumbled set of tools and technologies. When you sit down to develop an app, for iOS in particular, you are given a canvas and some predefined controls, methods and styling. You can ignore all of it, but if you are just starting out it gives you a powerful bridge to develop your idea into an actual app people would want to use.

    Starting an app targeted at browsers on all devices with all methods of input is an interesting challenge. The power of CSS, HTML and JavaScript to deliver a great user experience is there, but it is hidden behind a learning curve filled with pitfalls and technology distractions. So then, the biggest challenge to me with starting a web app is often not showing if the idea is good, it is in deciding how it should be developed.

    Starting from scratch is usually not an option in small web development shops like mine, so we turn to toolkits, IDEs and frameworks to build apps with. If this selection is not done carefully the idea/app/project can often be dragged down by the weight of its own underpinnings. It is crucial to decide what outside dependencies will help your app be realized. Some tools are helpful to get the software built, but eventually lead it to an unsustainable position.

    My goal in facing this challenge is as the KISS principle states. I try to pick well known, well supported tools that are well built and not over-designed/engineered. These can vary from project to project, but currently the combination of Bootstrap, JQuery and CSS3 on the front end and when needed PHP/mySQL on the server side meet my personal objectives to build well, fast and light for as many devices as possible.

    Q:What’s your advice to web developers who know their way around HTML5, JavaScript & CSS3, but are new to the world of mobile development?

    Build everything to be screen responsive and mobile will fall into place as another supported part of your technique. We hear from all sides that mobile is the future, but when everything is mobile it does not mean that everything is small. It is pretty clear already that we are headed to a world with connected mobile screens of all sizes from wearable to desktop portable. And your web-based property should just work on them all.

    Screenshot of Appeio on mobile

    This is not just about taking into account button sizes, finger-friendly navigation and how the actual presentation can be reflowed to different screen sizes. Mobile devices have less memory and processing power and often a web app that will work on a desktop is too much for a mobile browser. It takes some planning and a lot of testing. There is a good balance to find in almost any app that will allow it to run everywhere with a good user experience.

    Don’t take on mobile as a unique special case needing separate and stripped down versions, everyone dislikes this and it’s futile. Make being mobile a fundamental part of your app from its inception and many of the gotchas found large screen first apps will start to melt away. It is not easier to make a fully screen-responsive HTML5 application, but it is better.

    Q:What gets you excited about HTML5 app development? What do you see as the opportunity for independent developers like you?

    The truly exciting thing about HTML5 and web development is that it’s not done.

    That it might never be done but it is open and continues to advance, keeping reasonable step with proprietary native app systems. Technologies by Apple, Google, Microsoft, RIM and others may and will have good long runs but at some point these companies need to make the next thing which is not always compatible with their previous thing. As devices get cheaper and more widespread, as operating systems continue to become more varied and transparent, the one constant they will have is the web.

    There is something fundamentally appealing about the idea of a well-built app working well into whatever comes next. Things change and patches happen but the principles of the web specifications should mean that your app will load and run without too much fuss for as long as you want.

    No one truly can say what computers will look like in 10 or 20 years but there is a high likelihood that they will have a browser to view the apps and sites we are all building right now. Many early websites continue to exist nearly two decades after they were launched. I believe this will happen again.

    Many devices released only five years ago cannot today run the latest version of their operating system let alone the latest version of most apps for it. In contrast, most web apps built at the same time continue to operate or require only minor adjustments. Should a web app need a fix, it’s made and done, no updates for users and no waiting on approvals. It is much more interesting and exciting to me not to be bound by those restrictions, regardless of any short-term gains.

    A final point on my excitement is that the next two to four years will be important steps forward for web development as specifications are finalized and simply what a web app is capable of in terms of WebGL, storage and other hardware interaction leaps ahead.

    Q:At the moment, do you have any plans to port any of your other mobile apps to the Firefox Marketplace?

    I have spent much of this year rebooting my career direction and retooling my skill set in web development. Looking over what I have done and what I am looking to do going forward the Marketplace is a part of my plans. I think there are amazing and fun challenges to undertake in this space and having the Marketplace is going to be important to reaching more users. A place to offer high quality HTML5 apps to an informed set of individuals with the support of Mozilla is a great thing.

    Q:What do you do to make your apps work well offline?

    To this point I have focused on connected apps almost exclusively. Though I have been keeping up on developments in client-side storage and expect it to be an important aspect for my work very soon. For instance in Appeio it would be great to use client side storage to store and archive posts for faster UI and fewer API calls.

    Q:Any feedback on the developer experience on Firefox OS or the Android Web Runtime that you’d like to share with our Apps & Marketplace team?

    I am simply in love with what you are trying to do here. It means so much to the developers and to the users who benefit from access and curation of these apps.

    As a small developer it’s important to me that there be a place like this. Make it fast, make it stable and the apps will give it life and make it fun.

    Q:Have you checked out the Firefox OS Simulator?

    I have checked it out and test my apps in it on a regular basis. The glimpse it gives into the future of devices and the OS that they present the user is fascinating. I appreciate the tool and look to this project as the future of a better connected and open web everywhere.

  4. BrazilJS Firefox OS Apps Hack Day: fun, games & JavaScript

    BrazilJS

    Location: Porto Alegre, Rio Grande do Sul, Brazil. A long way from where I live and work in Mountain View, California. BrazilJS—two intense, action-packed days of technology showmanship, conversation, and immersion in the exuberant developer culture of Brazil. And plenty of JavaScript, which sounds something like “Jhavascreep-chi” when pronounced in Brazilian Portuguese. The days begin early and end late, with plenty of speakers and schwag, followed by craft beers and caipirinhas, great quantities of meats, pastas, and savory things, consumed at long tables in large, group dinners at various churrascarias and restaurantes.

    Firefox & friend

    The venue for BrazilJS is the state of the art Teatro do Bourbon Country, a 21st century take on the old red movie palaces of the past, located in the heart of a thriving shopping mall in Brazil’s southernmost big city. Brendan Eich speaks about what’s ahead in JavasScript; Mozilla Research’s Dave Herman announces his upcoming new book, Effective JavaScript; and Michal Budzynski, of onGameStart and a developer on the Firefox OS team, shares some Polish hacky goodness and awesome t-shirt style along with the unexpected pleasures of HTML5 game development.

    The Hack Day

    On Saturday, September 1, about 100 web developers and translators join Mozilla and our generous hosts at ThoughtWorks Porto Alegre for the Firefox OS Apps Hack Day and Localization Sprint.

    Our goal: introduce Firefox OS, Mozilla’s open source mobile operating system, and show developers how easy it is to start building mobile HTML5 apps for the Open Web. The Firefox OS phone hasn’t been released yet and won’t be available till 2013, which means there’s a huge opportunity for developers in Brazil and beyond to be part of the first wave of apps in Mozilla’s marketplace.

    ThoughtWorks’ Porto Alegre offices are on the 14th floor of TechnoPUC, a technology research facility on the campus of the Pontifical Catholic University of Rio Grande do Sul (PUCRS). ThoughtWorks is a software development company with a mission and culture that resonated with us Mozillians. Here’s how they put it: “Amazing work for our clients is the front line, revolutionizing the way the industry works is a gradual effect, improving society through software is our long term goal.”

    In Porto Alegre, ThoughtWorks is a magnet for talented and friendly developers and staff. They made us feel right at home early in the week, feeding us lunch and Internet signal in their open-floorplan office space. Huge thanks to Paulo Caroli, who invited us; Aurita Mugnaini, who took care of us; Glauber, Rafael, Luis, who helped us solve technical challenges; and everyone who said hello, served us coffee, and made us feel welcome.

    Although it’s been about a year since the first Boot-to-Gecko repos began to appear on Github, it’s still early in the evolution of the Firefox OS. Development environments are challenging and desktop builds are tricky to install and require Linux-hacking skills that go beyond the basic web dev toolkit. But you can download Firefox Nightly, go to Tools->Web Developer-> Responsive Design, resize your browser window for the mobile phone, load the URL and get an idea of what your app will look like. Because HTML5 is here, and the Web is open.

    Developers come to learn and to hack, and localizers, like the brothers Mauricio and Marcelo Araldi of Passo Fundo, come to help translate Mozilla Developer Network Apps documentation into Brazilian Portuguese. The morning kicks off with a welcome from Brendan Eich, followed by Fabio Magnoni, Brazilian evangelism rep and one-man roadshow in Portuguese. In the last few months Fabio has introduced the Firefox OS stack and Apps platform at a variety of conferences, workshops, meetups and trainings, from Campinas to Florianopolis, and from Sao Paulo to Porto Alegre.

    Apps hackers listening at BrazilJS Firefox OS Apps Hack Day

    Next up: Matthew “Tofumatt” MacPherson, whose talk, “Apps are Boring, Games are Fun” really connects with the audience. Tofumatt shows some of the recent Mortar and WebGameStub tools and templates that make it easy to code simple time-wasting HTML5 web games to impress your friends and colleagues.

    The rapid fire set of talks closes with an introduction to MDN localization by Janet Swisher, and a presentation by Yaso Córdova and Reinaldo Ferraz, who talked about the mission of the W3C and the Decoders challenge, a project for developers to build public benefit apps with open data.

    By the time lunch sandwiches roll in, programmers are clustered into groups, sprawled across the well-lit open floor plan, spilling into conference rooms and quiet spaces for whiteboards and beanbags. They were writing code and sucking up bandwidth.

    By late afternoon, snacks begin to appear, along with an awesome Firefox cake from the mom of Jaydson Gomes. But first the demos. Scores of developers fill our makeshift auditorium, the ThoughtWorks lunchroom.

    The Apps Demos

    We have some topnotch demos: Brenno Leal, a student from Campinas who’s trekked down to Porto Alegre to learn a little more about Firefox OS, opens with a simple tic tac toe game. Next up, a goofy Wikipedia app that has something to do with Brazillian slang and the coxinha, a savory chicken thigh snack – one of those apps where you have to be a local to get the joke.

    A pair of ThoughtWorks programmers take Tofumatt’s simple shooter game to the next level – with flying pigs that turn into bacon when hit. Look out angry birds! Next up, a Pacman clone. Gabriel Moulter, another talented coder from ThoughtWorks submits his newly minted HTML5 game app, and another called Run Little Boy Run directly to the MDN Demo Derby. Full of win! A couple of coders from Porto Alegre’s Federal University demo a handy metrics conversion app – the kind of basic app every mobile market needs.

    Husband and wife team Elias and Denise come to our Hack Day and code together – after taking the night bus from Florianopolis to find out what the Firefox OS is all about. Although they both work as programmers, this is their first venture in collaborative coding!

    Firefox cake

    We manage to cut enough Firefox cake to feed everyone and then it’s time to head home. Kudos to Porto Alegre for the good times and the mad skills. If you took photos we’d love to see them. (I had an SD card disaster and sadly my photos were lost – I’d love to see yours.)

    The Marketplace & the Opportunity

    If you started coding an app, don’t stop now. If you built one of the demos, please comment below and share your names. We’d like to follow up with all of you and get all those apps ready for the Marketplace. The open web needs you!

    Send us your questions or ask them on the #OpenWebApps channel on irc.mozilla.org, join the Mozilla Brazil community mailing, and as you hit certain milestones in development (code complete, ready for review) let us know. We can help with design and code review and we want to work with you to help make your mobile app succeed.

    Obrigada!

  5. Optimizing Memory Usage for Add-ons

    Editor’s note: This is a short excerpt from Nicholas Nethercote’s personal blog. Nicholas is a programmer from Melbourne, Australia, who works for Mozilla on improving the quality of software. Here’s the good news in a nutshell:

    “Over the past year, Mozilla has made great progress in reducing Firefox’s memory consumption. However, the excessive memory consumption caused by add-ons with memory leaks has remained an ongoing problem.

    Firefox 15 fixes that problem. We have confirmed, via in-house testing and from real-world telemetry data, that it prevents the vast majority of leaks that occur in existing add-ons.

    Users who upgrade to Firefox 15 won’t have to upgrade their add-ons to see the benefits. While it is hard to predict the effect of this improvement on any individual user, many users should experience greatly reduced memory consumption, particularly on long browsing sessions. This should result in better performance, fewer pauses, and fewer crashes.

    Mozilla’s MemShrink efforts are ongoing. We have various projects in the pipeline that aim to further reduce Firefox’s memory consumption, and help users understand better how Firefox is using memory. ”

  6. Interview: Marco Castelluccio & Mozilla Apps in Ubuntu

    Marco Castelluccio

    Hacks blog readers might remember Marco Castelluccio. Back in March we published an interview with Marco after he took first and second place in the IndexedDB Dev Derby with eLibri and FileSystemDB.

    Since then Marco has ramped up his contributions to Mozilla and the Open Web through a Google Summer of Code project building web runtime support for Firefox on Ubuntu. Mozilla’s Open Web Apps stack is available now for Linux users. Visit the Firefox Nightly channel to download Firefox 16, then you can run, install and separately manage web apps in the browser on Ubuntu.

    We were thrilled to learn about his project, and decided it was time to check back in. Here’s Marco in his own words:

    Marco, it’s great to get back in touch. Please share a bit about yourself: where you live, what you’re working on, and what you’re passionate about:

    I live in Napoli (Naples) and study Computer Science Engineering at the University Federico II. My passion is computer science—I like experimenting with new solutions and technologies and I like working to develop something useful to people. These are the reasons why I decided to start contributing to Mozilla projects.

    My other passions are reading and cinema. I like classics (“A classic is a book that has never finished saying what it has to say”) and science fiction books.

    You can see another of my passions in the photo above.

    How did you get involved in contributing to Mozilla? How did you get started with Dev Derby?

    I started contributing especially because I believe Mozilla is one of the few foundations that can struggle for users’ freedom on the Web. And, obviously, also to satisfy my hacking hunger. I started contributing in the last year, but with simple fixes and so on. In recent months I’ve started to contribute more seriously.

    I think Dev Derbies are a great opportunity to learn the new WebAPIs, so I started just for learning purposes. Sadly I didn’t participate in the last three or four, but I’ll begin participating again in the future.

    What inspired you to work on bringing the Mozilla Web Apps stack to Ubuntu?

    The Open Web Apps project is really important for a lot of reasons (both for developers and users). In particular, it has a surplus value for Linux, a platform sometimes snubbed by developers. With Open Web Apps, applications are cross-platform by definition.

    In future, in my opinion, the operating system will slowly become less important. The framework where the applications will run won’t be the operating system anymore, but the browser. This is why a project like this is really important for the Mozilla mission.

    Open web app integration in the dash and launcher

    Tell us a little about your developer tools and work environment for development?

    I use Linux, because it provides really useful, simply installable and, above all, really powerful development tools. I use the GCC compiler, GDB for debugging (it’s marvellous what you can do with GDB), and I have a virtual machine to test the work with several distributions and several desktop environments. As a side note, the compilation performance is really awesome with Linux, and saving time during compilation gives you more time to effectively develop.

    I heard that you are working on this as a Google Summer of Code project, is that correct? Can you tell us more about how that happened?

    Yes, initially I proposed two projects: this and the development of an eBook reader application. In my opinion, the GSoC is a great opportunity for open source projects to attract new contributors. (Though some people only want the money, many people work with passion. For example, I haven’t even activated the Google credit card yet…)

    How long have you been working on this? What are the next steps for this project?

    Development for the GSoC officially started May 21. But I already started the work a bit before, even if I didn’t think I could finish a part of the work in time for Firefox 15. The project obviously is not yet completed, however. We need to do a lot of testing on several distributions and desktop environments, as Linux’s greatest quality is also its greatest flaw: the infinite possibilities of personalization. There are only a few standards, and they aren’t always followed to the letter. So you can run into a lot of problems.

    The next step, aside from testing, is the implementation for uninstalling applications (it’s manual so far). Uninstall will be possible through a desktop action and through a Firefox specific page.

    Uninstall desktop action for Open Web Apps

    I think we’ll also try to improve system integration with apps. Maybe we’ll solve this by developing addons for the most used distributions (where the code is too distribution-specific to be included in Firefox). For example we could integrate the webapps uninstallation in the Ubuntu Software Center. Actually, my idea was to develop a skeleton addon that distributions could simply modify.

    apps screenshot

    Another bright spot is that the implementation that I developed, unintentionally, works even on other Unix platforms.

    How do you work with the Open Web Apps development team to land your code? Anything about the experience you’d like to share?

    I’m in harness with my mentor, Felipe Gomes. I often contact him when I have problems or when I need to know who’s the right person to contact for a specific problem. Frequently he is contacts me to make sure that I don’t have any problems (in short, he’s very kind). Once you know the other developers on the team, however, you can work more quickly. So, if you start to contribute, don’t be afraid to ask questions.

    What are your plans for when you finish your studies?

    I haven’t precise plans, but I’d really like to work for Mozilla or in the research field. I think the next year (that’s my third year at the University) I’ll apply for an internship at Mozilla. Anyway, I’ll for sure continue to volunteer for Mozilla. I’d really like also to develop some mobile applications (obviously using web technologies) to see if they can make a success or not.

    Have you thought about developing an HTML 5 app? (Are you already working on an app?)

    I have many ideas. Mozilla’s new WebAPIs make it possible to develop web applications with the same capabilities as native ones.

    I haven’t started yet, but I’d like to work on an instant messaging P2P application (I’m waiting for WebRTC, as I want to experiment with it). I have an idea for an eBook reader application (that was the other opportunity for the GSoC) that I hope could be integrated in B2G. (If I recall correctly, the B2G phone needs something like that). I have several other simple app ideas.

    As I’m also attracted by the idea of web games, I think I’ll develop a framework to simplify and speed up the development of 2D games.

    What are some of your favorite apps or games?

    I’m an admirer of videogames, I’m really excited by the idea of BananaBread or the other games that could be ported to JavaScript through Emscripten. I really also like the Gladius engine. It’s something like the 2D games framework that I’ve got in mind.

    About applications, I’m fascinated by pdf.js. In my opinion it’s one of the best examples of JavaScript application. And, as I explained, I’m going to use it (along with other libraries that I’ll develop for other formats) to develop an eBook reader application.

  7. Testing the Firefox browser on mobile websites: Are you game?

    Friends and hackers, we have a challenge

    Are you a developer who’s passionate about Mozilla’s mission on the open Web? We need your help: We’re looking for someone to build a game to help keep the Web open as it goes mobile. There’s a Firefox mobile website testing app which we think would make a nice little HTML5 game — with scoring, achievement, levels, leaderboards — and we think you have the chops to make it fun. We’ve had some success making a game of the activity within our team, but we think you could do it better.

    Here’s some context. We need lots of people looking at lots of frequently visited websites to see if they look good and work well on mobile. And if they don’t, we need to figure out how to make them better: by finding the bugs and fixing our browser or by working with the developer who built the site to make it work on the open Web. Testing Fennec matters for the future of the open Web:

    Fennec, Mozilla’s mobile browser, just landed in Google Play (you may remember it as the Android Marketplace). Firefox Beta for Android is better than ever! You can download it now, use it on your Android phone or tablet and share your feedback. If you get hooked on testing, you’ll want to create a bugzilla account (if you don’t have one) and start filing bugs. By

    If you’d like to do a little more directed testing, check out Aaron Train’s most excellent testing app, which sends you to some of the world’s leading websites to share your feedback. This is the app we’d like to gamify, to motivate more people in the Mozilla community to help us keep improving the Firefox mobile web experience for everyone.

    What matters is mobile

    It’s an interesting exercise to start viewing and interacting with the world’s most frequently used websites in a mobile browser. Any mobile browser. You realize the mobile Web has a ways to go. But there’s more to it than that. David Slater, who leads Product Marketing at Mozilla put it so well that I’m just going to share a note that he sent out internally earlier this week:

    The mobile Web is under threat. For 8 years Mozilla has fought to make the Web open on desktop – and won. On mobile, it’s different – the battle is underway. In order to win, we will have to make the Web on mobile devices as compelling for developers and users as native mobile apps are today. Marketplace is about doing that. Boot-to-Gecko, ultimately, is about doing that. But first, we have to break open the mobile web and expose the issues.

    Today, Apple and Google – and therefore browsers based on Webkit – are dominating the mobile Web, and as a result developers are coding for a single rendering engine. Like we did with desktop, we have to ensure developers have access to truly open standards. And that means that we need to do whatever it takes to establish Gecko‘s presence on mobile – and specifically, on the Android platform which is widely forecast to grow more than any other in the next 5 years.

    There are many ways you can join us in this battle, but if you’ve been wanting to test your skills by building a Web game, there’s never been a better time to try, and never for a better cause. And if you need a little help, there are many places you can ask, like our IRC channel, #devrel, the engagement-developers mailing list, or simply @mozhacks on Twitter. And, of course, if you do, we’ll make you MDN-famous, and treat you like a hero. Thank you.

    Heroes Wanted

  8. MDN Hack Day Tour would like to thank…

    Attention UK hackers: MDN Hack Day London takes place this Saturday May 12, at the newest Mozilla Space, on lovely St. Martin’s Lane. Designers, developers, and friends are all invited to register. Hacky goodness guaranteed.

    Many Thanks Yous, One Mozilla

    It was a whirlwind week and a half for the crew of the Mozilla MDN Hack Day Tour in Latin America. Over the course of 10 days we visited four cities in four countries in the Conosur, the southern part of South America. We met hundreds of developers in Buenos Aires, Argentina; Montevideo, Uruguay; Sao Paulo, Brazil; and Santiago, Chile. Thanks to everyone who took the time to listen, to talk with us, and make us feel welcome.

    Our message was well-received: The Web is the platform and it’s built from open technologies. On this trip, we were eager to introduce some of the new projects Mozilla is working on now to keep the Web open as more of the world goes mobile. As a non-profit committed to promoting openness, innovation and opportunity on the Web, Mozilla works best with inputs and participation from communities everywhere.

    Boot to Gecko Demo by Hernan Colmeiro

    In South America, we were a small team, carrying passports from Argentina, Canada, Sweden, Venezuela and the U.S. We spoke in a mix of Spanish and English. Personally I wish more of us had spoken Spanish, but because of my own language limitations, I was extra happy to listen to Spanish-speaking presenters at each of our events.

    We talked about HTML5 & friends and new Javascript APIs. We introduced exciting new Mozilla open source projects like Boot-to-Gecko (B2G), our open web phone project that’s just getting started; the soon-to-be-launched Mozilla Marketplace for HTML 5 apps (presented by Mozilla Labs’ Shane Caraveo), and Mozilla Persona, a new identity system for the Web (presented in Spanish by Dan Mills).

    In Argentina and Uruguay, Telefonica’s Andres Leonardo Martinez Ortiz introduced BlueVia, the developer program and platform from Telefonica, Mozilla partner and MDN Hack Day sponsor. In Buenos Aires, Kevin Dangoor spoke about the developer tools Mozilla is building and Buenos Aires-based add-ons developer and evangelist Hernan Colmeiro spoke about the beauty of add-ons. In Santiago, Chile, Hernan wowed developers with a Boot-to-Gecko demo.

    There were dozens and dozens of individuals who helped make our tour a success, including Mozillians I work with every day and people I’d never met till we arrived in their country. The big risk in writing long thank-yous is that I will unintentionally to forget to mention someone essential, so please accept my apology in advance and don’t hesitate to use the comments.

    Buenos Aires

    We came to Buenos Aires for MozCamp LATAM, Mozilla’s first community gathering held in Latin America, co-hosted by the amazing, multi-national Mozilla Hispano community and their Portuguese-speaking neighbors from Mozilla Brazil.

    Mozilla Hispano Community Day

    On the Friday before MozCamp we organized a day-long Hack Day for developers from Buenos Aires. Over 150 developers attended a morning of talks and demos, followed by an afternoon of project hacking. After lunch, a lively group gathered around Add-ons developer Jorge Villalobos, while other attendees were riveted by Philikon’s demo of the Boot-2-Gecko phone.

    MDN Hack Day would not have succeeded without the outreach, organizational support and hospitality of Felipe Lerena, Guillermo Movia, and Santiago Hollman of the Moz Hispano community. And I’ll add a special shout-out to the Mozcamp LATAM planning committee: Mary Colvig, Chris Hofmann, Santiago Hollmann, Gloria Meneses, Ruben Martin, Reuben Morais, Guillermo Movia, and the unflappable Katherine Naszradi. This couldn’t have happened without your support!

    MozCamp Latam

    Montevideo

    The crew left Buenos Aires on a sunny Monday afternoon, and crossed the Rio de la Plata by Buquebus ferry, arriving in Montevideo at nightfall, after a choppy 3-hour crossing.

    The next morning I met up with old friend and colleague Evan Henshaw Plath, and new friends Diego Algorta, Elena Vilar and the Cubox Labs team who’d been helping us organize, promote and host MDN Hack Day in Montevideo. They work together in a classic 1920s home converted to a co-working space in a leafy residential neighborhood. I met our evening’s speakers, along with Frenchman Jean-Paul Massonnier, an awesome designer, who’d created a poster that was pure Mozilla. I drank delicious coffee and chatted with developers in the kitchen overlooking a garden where coders kicked a football around in the sunshine.

    MDN Hack Day 2012 - Montevideo Poster

    We headed over to Cafe La Diaria. La Diaria is a subscription-based independent newspaper that is now the 2nd most widely read paper in Uruguay. It is run cooperatively and distributed by employees, with a commitment to the highest journalistic standards. Cafe La Diaria is a venue and community space in the old downtown of the city. Here we met our hosts Damian and Antonieta, who cooked up delicious pizza at the break. Cubox’s Nicolas Barrera gave an entertaining and enlightening talk about responsive design, and Fernando Briano, Cuboxer and noted tech blogger served up a presentation on the web as a tool for Social Change.

    In addition, there were two lightning talks: On his last night in Montevideo before moving to Berlin, MDN demo contributor and Developer Derby winner Alvaro Mourino (aka Tuxie) stopped by to talk about our Dev Derby and encourage people to participate. Dario Clavijo, a tech blogger and IT professional in Montevideo, spoke passionately about the importance of free and open software. It was his first ever lightning talk and we were honored to hear from him!

    Sao Paulo

    Robert Nyman, El Sueco, made the trip to Brazil by himself, since the rest of us yanquis were lacking visas. Here’s his report:

    “The next leg of the tour, helpfully organized by local company Caelum, [was] a Mozilla one-man show from me giving two talks in Sao Paulo:

    • HTML5, the Open Web and what it means to you
    • JavaScript APIs – The web is the platform

    In addition to that, local developer Gabriel Oliveira spoke about CSS3, and from what I could understand, he showed some really interesting things!

    There were about 40+ attendees this very rainy night in Sao Paulo, and while there weren’t many people, I was really happy to see the nods of approval in the audience during my talk, when I expressed Mozilla’s values and approach to the web and moving forward. After my presentations, we stood around for a long time discussing the web, -webkit prefixes, H.264 support and more. People seemed to be understanding and pragmatic, and I believe there were some really talented people there.

    Additionally, I got to spend some time being guided around by local community members Fábio Magnoni and Clauber Stipkovic, who I got to know in person at MozCamp in Buenos Aires, and had interesting discussions!”

    Santiago, Chile

    Our final Hack Day of the LATAM tour took place in Santiago, Chile on an overcast Saturday evening. We met in a comfortable classroom at the University of Chile’s Escuela de Economía y Negocios. Jano Gonzalez, a Ruby blogger and all around nice guy made the arrangements. His friends Paulina and Rodrigo took some of the team on a tour of the city.

    More than 50 attendees came out to hear from us. Pizza Hut (!) delivered pizza during the break. Hernan Colmeiro came out from Buenos Aires to introduce Add-ons and to demo Boot-to-Gecko. And Jonathan Gonzalez, no relation to Jano, introduced the Monkey Project, a fast and scalable web server for Linux.

    Monkey Project, presented by Zeus

    We had a strong showing of lightning talks: including presentations delivered in English, with slides in Spanish; presentations in Spanish, with slides in English; a compelling pitch by Ricardo about why you should overcome your shyness and get up at events to give talks about the stuff you know; a hilarious parody of a framework that was probably NSFW, but I didn’t understand enough of the Chilean slang so I can’t be sure; and an introduction to Poderopedia, a database that aims to map the relationships between political and financial power in Chile. We also met some entrepreneurs from the Startup Chile accelerator, and on Monday a couple of us had a chance to visit their lively space.

    In conclusion

    Huge thanks to the rest of the team – everyone was upbeat, professional, collaborative, and more fun than a barrel of monkeys: Shane Caraveo, Hernan Colmeiro, Dan Mills, Robert Nyman, and a special shout-out to Shezmeen Prasad, event organizer extraordinaire, who invited me along. Props also to Jeff Griffiths, who put it all together behind the scenes, from somewhere in Canuckistan. Gracias!

    Photo credits: Prima Limon, thunder, and freshelectrons.

  9. Mozilla MDN Hack Day on Tour, Heading South

    The MDN spring tour continues with a trip into autumn in the Conosur – the southernmost region of South America. We’re heading south to participate in MozCamp, a gathering of the Mozilla Hispano community, and to meet web developers in Buenos Aires, Argentina; Montevideo, Uruguay; São Paulo, Brazil; and Santiago, Chile. We’ll introduce some exciting new Mozilla projects like Boot-to-Gecko (B2G), Apps, Persona, and WebFWD and show some of our work on developer tools, Firefox, and the Add-ons SDK. We’d like to spend time hacking with web developers and sharing Mozilla’s vision of the open, user-centric Web.

    Our message: The Web is the platform and it’s built from open technologies. Learn how you can collaborate with MDN on browser-agnostic documentation for the Web as a whole, or contribute to the Mozilla mission and Open Source initiatives through coding and evangelism. There many, many ways to get involved.

    If you’re a developer, designer, documentation writer, technologist, entrepreneur, or open source enthusiast in Buenos Aires, Montevideo, Sao Paolo, or Santiago, you’re invited to sign up, stop by and share what you’re working on. If you’re just curious to meet Mozillians or want to learn more about our work, we’d love to meet you. Never forget the Web is made de todos, para todos.

    The web is the platform, presented by @canuckistani

    Buenos Aires

    Friday, April 20: In Buenos Aires, we’ve partnered with Mozilla Hispano, the Buenos Aires Hacks/Hackers group and Blue Via for a day-long event on Friday, April 20, at the NH City & Tower Hotel in the heart of the city. We’ll open with short talks about HTML5 and friends, Javascript APIs, the Add-ons SDK, developer tools, and our newest offering: Apps and Persona.

    Registration for MDN Hack Day, Bs As 2012 is now open and we still have space. Please register here.

    Montevideo, Uruguay

    Tuesday, April 24: We kick off our whirlwind tour of 3 Southern cities in 5 days, with a developer evening in Uruguay’s capital, Montevideo. We are grateful for the kind hospitality of the folks at La Diaria, an innovative daily newspaper with a strong web presence and a wonderful venue that’s popular with Uruguay’s tech and business community. Also a big thanks to the crew at Cuboxlabs, a forward-looking software development shop, who are “Available for Awesomeness,” and have definitely been awesome and available in guiding us Norteamericanos in how to set up an developer evening from far-off Mountain View, more than 10 thousand kms away. Joining the MDN crew to speak in Montevideo: Dan Mills (@thunder), product lead for Persona; Shane Caraveo (@mixedpuppy) from Mozilla Labs; and Andres L. Martinez from BlueVia (@davilagrau), an MDN Hack Day Tour sponsor in Montevideo and Santiago, as well as Buenos Aires. Vamanos!

    Registration is now open for the Montevideo MDN Hack Day Developer Evening.

    São Paulo, Brazil

    Thursday, April 26: Robert Nyman (@robertnyman), Mozilla technical evangelist from Sweden (not Switzerland!) will visit São Paulo, Brazil to represent MDN at an evening event organized by Mozilla community member and Caelum software developer and jack-of-all-trades Paulo Silveira (@paulo_caelum) on Thursday, April 26. Robert’s talk is titled “JavaScript APIs – The web is the platform” – and he’ll describe how HTML5, Boot-to-Gecko, and other new APIs inspire a new era of innovative development on the open Web. Big thanks to Paulo and the folks at Caelum for hosting this event in their auditorium, and making Robert welcome in São Paulo.

    Registration is now open for the São Paulo MDN Hack Day Developer Evening, hosted by Caelum.

    Santiago, Chile

    Saturday, April 28: We wrap up our MDN Hack Day tour of the Conosur on Saturday evening with a developer evening in Santiago, Chile, hosted and organized by Jano Gonzalez (@janogonzalez) at the Escuela de Economía y Negocios – Universidad de Chile. This time we’ll be joined by Hernan Colmeiro (@peregrinogris), Firefox intern and Jetpack evangelist; as well as Shane Caraveo, Robert Nyman, Andres L. Martinez from BlueVia, and as always, the one and only Shezmeen Prasad, who makes sure everything is perfect.

    Registration is now open for the Santiago MDN Hack Day Developer Evening.

    Here we come!

    Photo credits: Look, a mouse pointer on the screen! ;-) (Jeff Griffiths Presents..) and Websites and Technology Evangelism team by Nitot.

  10. Q & A With Michal Biniek: HTML5 Hacker and Frequent Dev Derby Winner

    Editor’s Note: Michal Biniek is a frontend developer on the Innogames Lagoonia team, and an enthusiast of JavaScript and new web technologies like HTML5/CSS3, WebSockets, and WebRTC. Back in November, michal.b took 2nd place in the MDN Developer Derby with Rob in Soundland, a fanciful Canvas demo.

    It was the fourth time one of Michal’s demos made to the Derby finals, and it was the third time he’d placed. If you’ve been following Dev Derby since it launched last year, you might remember seeing Fly, fly! or Too Many Fish in the Sea. Congratulations Michal, we can’t wait to see your next demo! Submissions are now open for upcoming Derbies: CSS 3D transforms, Audio, and the Web Sockets API.


    Tell us about developing Rob in Soundland and where your idea came from?

    My first idea for the Canvas demo was to prepare some kind of visualization – a sound visualization which could make a nice connection between two senses – vision and hearing. I thought it would be also nice if the user could interact with the application through keyboard or mouse.

    Finally I decided to prepare a simple game with third-person view in an infinite world, where the main character – Rob – wanders through the colorful (almost psychedelic) squares which are playing different notes.

    Interesting fact is that the game doesn’t contain any external media elements like images or sounds. Everything is generated using HTML5 technologies: Images are pre-generated at the start of the game and sounds are created and played ad hoc using the Audio Data API.

    Rob in Soundland - Canvas demo screenshot

    Do you remember your first computer and your first website?

    My first computer was Elwro Junior – the Polish version of a ZX Spectrum computer (English description here). A few years later I got my first PC with a 486 25MHz processor inside and a magical ‘turbo’ button.

    My history with websites started around 1999 when I prepared a site about my hobbies – skiing and astronomy. I even put some animations using JavaScript and DHTML (a buzzword from long ago):
    Never the marquee tag ;)


    How did you get started coding and hacking?

    I started coding on ZX Spectrum in BASIC, but shortly after that I moved to Turbo Pascal on the new PC. I think it is also important that my father was an IT teacher at school – so when I had some problems with programming I could always ask him for help.

    For me, the visual is one of the most important aspects of an application. That’s why I found Delphi/C++ Builder a really nice solution for building UIs. This is also the reason why I liked HTML from the beginning – as a perfect language for UIs, which with JavaScript is much easier to run animations rather that trying to run it on forms.

    You mentioned you’re from Wroclaw, Poland, and work as a Web developer for Innogames? Do you work remotely? What tools do you use for development?

    Actually, I live in Hamburg, where I got the software developer job at Innogames half a year ago. However, I still quite often visit Wroclaw.

    I’m working in team that works on Lagoonia, one of the latest games developed by Innogames. Modern Javascript engines in browsers enable us to take full advantage of JavaScript (and new features from HTML5 like sound and canvas). We can create games which easily compete with Flash-based games without additional runtime machine!

    Lagoonia by Innogames

    I usually use Eclipse to develop JavaScript applications. I find it a quite good code editor (however sometimes slow) with code auto-completion that works quite well. For testing and debugging, I use Firebug and the built-in console in Firefox, one of the best debugging tools for web applications ever.

    Do you play online games? What games influence your work? What do you play the most these days?

    I discovered online games while I was a student. I started with FPS shooters then switched to MMORPGs like MuOnline. I think that multiplayer games are the future of gaming – it is usually much more fun to play with real players rather than against a computer.

    My current company – Innogames is also focused on online games (mainly browser games) where the most important part is cooperation with other users.

    We can still observe old games (even from the days of the ZX Spectrum) refreshed with new fancy graphics and multiplayer mode which are bestsellers nowadays. However, many indie games show us completely new concepts of games – and I think these types of games influence me the most.

    Apart from that, I really like Valve games – especially for great stories in games like Half Life/Portal universum.

    The Nyan Cat version of your August History API demo reminded us how fast memes can travel on the Internet. Tell us about Fly, fly! and how the idea came to you?

    It was quite hard to find an original idea for the usage of History API, which in my opinion is prepared especially for websites using AJAX to set up the content. However, it could also be used as a timeline for virtual travels. The initial idea for this project was a flight by plane through the different cities.
    However I found it boring and I decided to add the popular Nyan Cat – one of the most positive memes – as an optional mean of transport. This choice causes the Nyan Cat to leave a rainbow-colored contrail in the sky, instead of leaving white lines, which makes the world more colorful and friendly for people.

    In addition, everything was matched to the original concept of the demo, even the different graphics looks much better – dark background, Nyan Cat instead of a plane, and a colorful path for the journey.

    Fly, fly - History API demo

    You’ve submitted 7 Dev Derby demos since the program launched, and 4 of them have placed as finalists. Congratulations and thank you! Are you working on another demo? Any other cool projects you want to tell us about?

    Thank you! Currently I’m working on another simple game using touch events, however a project grew up a bit and I’m not sure if I’ll find enough time to finish it before the deadline.
    Zombie-kiwi-touchevents-demo screenshot

    In the meantime I’m working with my colleague Barry Nagel on our own framework for HTML5 games, which is named Machine5. The goal of this project is to find the simplest way to create stunning HTML5 games and to provide a simple and easily maintainable project structure for developers.

    Machine5 game engine


    When you think about HTML5 & new Web technologies what are you most excited about?

    I’m really glad that the Canvas element is currently widely available and I can freely use it. It is a perfect solution for simple games – and I hope soon WebGL will be also available on all browsers, because it is a great feature that allows creating fullscreen games. Using these technologies together with new audio APIs and WebSockets or WebRTC as a communication stream, we can soon expect real FPS games like Counter Strike or a less violent type of game such as Sims MMO version ;)

    Anybody else who helps on your demos? Anyone you want to mention?

    I’d like to thank to Robert Zatycki for all the brainstorms about possible ideas for games and other applications. Some concepts which we were talking about were used in games.

    And I’d also like to thank to my brothers – Paweł and Łukasz who tested carefully my demos before I released them and for their frank feedback.

    What inspired you to participate in Dev Derby? Can you say something more about Open Source, Mozilla and why you contribute?

    Before the Dev Derby contest, I’d prepared some demos for Chrome Experiments and for Opera Widgets websites. Then I got a message from John Karahalis, where he mentioned a new Mozilla project for demos especially for new technologies.

    Currently I find the MDN is one of the best resources for JavaScript. All the work done by Mozilla to contribute, prepare and promote new technologies is great and really important for the modern internet. Firefox is one of the most popular web browsers, (and in Poland the most popular!) which I think is the best example that users also appreciate Mozilla’s excellent product.

    One idea of Open Source is really important: even nowadays when almost every concept can be patented, there are still a lot of people who are open to sharing their experience with other developers without any profit. I find that sharing code can be the best way to get feedback about code quality and to get suggestions for other possible (sometimes better) solutions for an application.