This article was published on October 5, 2011

Mozilla’s Developer Evangelist on why Web apps are just like Lego


Mozilla’s Developer Evangelist on why Web apps are just like Lego

At the Future of Web Apps conference in London, Mozilla’s ‘Developer Evangelist’ Christian Heilmann was on hand to tell budding developers how to “get excited and build things” for the Web.

We caught up with Christian after his keynote to delve a little deeper into some of the subjects he raised, including the importance of passion, the problem with old browsers…and how a Web app is just like Lego.

Developer Evangelism and geekery…

What exactly is a ‘Developer Evangelist’? “It’s a newish role in development, some people call them ‘Developer Advocates'”, says Christian. “But it’s essentially a technical person who can explain in simple terms what’s going on. My job is to get people excited about technology without sounding condescending, or expecting them to know everything I know. It could be best described as a translation job between technology and people”.

For Christian, this means a lot of public talking (4 conferences in 6 days I’m led to believe), writing blog posts and training other people to come out of their shells as developers. “Developers are not the most social people”, says Christian. “But a lot of them have great things to say. So we train them up in public speaking and help them come out of their shell”.

So what about Christian – does he feel he’s a geek at heart? “Absolutely”, he says. “It’s rather scary looking at my place, with all the hardware lying around and how many old computers I don’t get rid off. But geekiness was – in the past – shunned in society. But nowadays it’s a different thing, it can be anything. Just look at Ravelry.com, it’s a social network for knitting and crocheting. It’s one of the biggest installs of Ruby on the planet. They have millions of photos on Flickr too, so they are geeks too. Everyone’s a geek at heart if you find the right way to talk to them”.

The importance of passion

The title of Christian’s presentation was ‘Get Excited…and build things’, and he discussed how important passion was in terms of building things online. I picked up on this point with him afterwards to expand on this a little further. “Passion has underpinned my whole career”, says Christian. “I never went to university, I was always just very excited about the things that I did. Even if it was a ‘bad’ job, I always ensured I did a good job so as not to bore myself. If you’re passionate about your product, it will show. It means you’ll care about the details, the little things that make so much difference”.

Translated into the plethora of startups around today, this is a key point. Whether a company is motivated by profit or by making the best possible product and enjoy making it will impact on the quality. “Look at all the startups that are there for money, that build to fail or build to be sold”, says Christian. “When I hear the phrase ‘serial entrepreneur’, I always think: ‘So, what did you leave behind? Burnt ground? Or an environment where people can be hired and be happy in?'”

The barriers for Web apps

Picking up on the overarching theme of the conference I asked Christian what he felt the main barriers were for Web apps in the immediate future. “The biggest problem is that we don’t have the same rights and access to hardware that native applications have”, says Christian. “Everything’s about hardware. Look at the iPad for example, I can’t access the camera from the browser, I can’t access the accelerometer, I can’t write a 3-D game where I can tilt the iPad around the way I could do on the Web with other technologies. A lot of people are working hard to break that barrier though”.

So, on a scale of 1-10, where are we at the moment with Web apps in terms of evolution? “It depends what you want to do. If you want to simulate exactly what a native app does, we’re probably at 2”, says Christian. “But it’s not the idea for Web apps to simulate native apps. If your interface looks like an iPhone app, but doesn’t work like an iPhone app, that’s mistrust to the user. People are just looking at it thinking, ‘I don’t know what’s going on here’. So it’s important not to mimic native apps – build a Web app. Build something that I can open on my desktop and on my mobile, and build the best experience for those devices as opposed to ‘one experience’ for all. So in terms of building Web apps that can do that, we’re probably at about 7 out of 10”.

IE & XP

Last week, The Next Web spoke with Alex Russell, the Google Chrome developer who’s fighting IE 6 so you don’t have to. I asked Christian what his thoughts were on Internet Explorer, the often-cited thorn in the Internet’s side, and Windows XP which is used by around half the world’s population. “One of the problems with Windows XP is that you can upgrade to Internet Explorer 8, and that’s it”, he says. “You can’t access 9 and 10, and that’s just not right. I know there are some reasons why they can’t do that though”.

“You shouldn’t send new technology to old browsers”, continues Christian. “You should send an experience to the browser that works”. So does this meant that developers should stop building for IE 6 and other older browsers? “Not at all. What they should do is build things that work in these browsers, but they don’t get any fancy things”, he says. “Don’t give those browsers things they might choke on – give it basic HTML, CSS and JavaScript. But don’t try to simulate new features or functionality on these old browsers”.

Native apps are PlayMobil, Web apps are Lego

During his keynote speech, Christian made an interesting analogy to help highlight the differences between native and Web apps. “It reminds me of Playmobil vs. Lego”, says Christian. “As a kid this was a big thing. Some kids had cool cars from Playmobil that would survive a fall and ships that really swam. My Lego cars lost parts and the ships always took in water. However, when I wanted to turn my ship into a plane, I could do that whilst the Playmobil kids had to pester their parents to get a plane. I guess this was partly what made me a developer, not a buyer”.

So it’s the difference between building something from components (Web apps) and having something already made for you (native apps), that serve one purpose. “The one purpose things will be beautiful, and do that one thing well”, says Christian. “But then when the environment changes, or the needs change then you have to write a completely new one. With Web technology, you don’t have to do that”.

Get the TNW newsletter

Get the most important tech news in your inbox each week.

Also tagged with