In an effort to right BlackBerry’s ship, RIM has been doubling down on developers, giving away BlackBerry 10 Dev Alpha devices to attendees of its upcoming mobile conference in May, and working hard to proselytize recent ecosystem growth.
One interesting component of this push is RIM’s focus on mobile web development with HTML5 and its BlackBerry WebWorks platform. Web vs. Native is a hot debate in the mobile space right now, and RIM seems committed to providing web devs what they need: hackathon events, WebGL support, and a much improved browsing experience on the BlackBerry PlayBook. I recently sat down with Alex Kinsella and Adam Stanley from RIM’s Developer Relations Team in Waterloo’s swank Communitech Hub to talk all things web dev. Part one of the interview is below!
UNTETHER: OK, so let’s just start. What is the benefit in general of developing in HTML5 or with a web platform? And then what is RIM’s mandate with WebWorks and HTML5?
Adam Stanley: I’d say the benefits for web developers in following standardized technologies is that they have a better chance at reaching a wide audience of users. And that’s because all the browsers that those users, or user agents that those users are following, are all implementing the same standard. So what RIM has done to enable developers to be successful in that regard is provide a world class web application platform, in terms of introducing the WebKit rendering engine on Blackberry 6 and higher. You’ll see the latest HTML5 scores are quite honestly industry leading right now. And that’s a direct reflection of the high quality of web rendering fidelity and support for HTML5 standards that exist on the BlackBerry platform.
UNTETHER: OK, so I definitely want to get to RIM’s web performance, but for now let’s keep it at the general HTML5 level. We kind of covered this before – there’s a lot of conversation as to whether HTML5 is ready for primetime, despite all the hype that it’s getting. And I understand the cross platform element, but where is it in terms of performance to native development? There’s been a couple web articles showing the HTML5 performance and API support is way behind native and Flash. Specifically for gaming, HTML5 doesn’t really have the tool sets yet for games. Games make the mobile world go round, so I was wondering if you could speak to that.
“I would definitely say that HTML5 is ready for primetime.”
Adam Stanley: I would definitely say that HTML5 is ready for primetime. It’s already heavily being used to sort of allow brands to get online and get engaged with their customers and such. Performance wise, it’s just as important to highlight that it is still a developing standard and we are certainly not anywhere near the end of a complete definition. There’s a specification out there that’s being sort of organized and created by a consortium of experts. These are folks from the web development industry who are experts on the technology and they provide their input into what the HTML5 standards should be, how browsers and web platforms should support it. And what we’re seeing right now is very good set of consistency across different platforms in terms of both browsers supporting the HTML5 standard. The Google Chrome browser’s market share is increasing, Firefox, although not using the exact same engine that Chrome and our platform use, they’re still implementing the exact same standards so the experience should be perfectly consistent across the two. Of course, it’s not exact because they’re two different browsers, but the ideal is to get to that.
About your question on performance. I definitely agree that there is certainly room to improve the performance of HTML5 content, specifically in terms of anything like animation and transitions in web content. That’s where we hear lots of complaints from our web developers. How do I make it look better? How do I improve the quality of how smooth something slides across the screen or pops up or so on? How web platforms are addressing this is sort of a combination of things.
The second thing was enabling things like hardware acceleration natively in the browser. So for instance, on BlackBerry Tablet OS 2.0, we’ve been able to have full hardware acceleration for things like CSS3 and HTML5 Canvas so any sort of graphical drawings or animations, be that 2D or 3D graphics, are going to be a lot faster. Because they are powered by the GPU, not just the CPU. Before it was simply software acceleration and it was up to the CPU to sort of force the calculations through the GPU to take a lot of that load off. As a result, web content that users were viewing on, for instance, BlackBerry Tablet OS 1.0 immediately got a lot faster on 2.0 due to hardware acceleration.
And, of course, the third thing is just the generic general improvements to the overall platform. BlackBerry, as everyone knows, had acquired a few years ago an excellent web development team Torch Mobile who are primary contributors to the WebKit standard. So they certainly know what they’re doing. They know their stuff. They’re experts and as a result, they’re spending a lot of time improving the quality of the web engine for WebKit as a whole but also specifically for BlackBerry.
“I expect a large majority, if not all of the web-based applications that exist today on PlayBook, are going to run straight out of the box on BlackBerry 10.”
UNTETHER: So there’s a lot there that I want to address piece by piece. Just getting back to the specific things that you guys are doing in enabling the hardware acceleration and using the GPU. I think just yesterday, you released your WebGL demo, right? And that is possible through the kind of support that you guys have baked into the browser and WebWorks?
Adam Stanley: That is correct. What you’re referring to is TunnelTilt, a demo game which is a WebGL game that was created by one of the developers here at RIM.
Alex Kinsella: On our gaming team.
Adam Stanley: Yeah, on our gaming team. The intent, though, was that it was initially created to just preview and announce WebGL at DevCon Americas, and they took the source code for that and put it up in GitHub so it’s fully open-source. If any developers are interested in seeing how that game was created, they can actually go and download the code and build something different on their own. Any user who has a PlayBook running Tablet OS 2.0, they can go to BlackBerry App World today and download it and play it.
UNTETHER: Talk a bit more about WebGL and what it means for devs.
Adam Stanley: It’s a developer language for building 3D content and it works closely with video drivers and the GPU to sort of provide 3D graphics and that’s powered actually by OpenGL. It’s really important to recognize that. Any sort of OpenGL or WebGL content that exists out there in the world, can, with varying degrees of difficulty, be ported and migrated to the format that would run on a Blackberry PlayBook. And through the WebWorks, developers can actually package that content into a stand alone application, and if they chose to would be able to distribute that as a BlackBerry app.
UNTETHER: So, what will WebWorks look like on BlackBerry 10? Is it essentially the same as on the PlayBook? Is it just a matter of using the WebWorks tool builder and then building a version for BlackBerry 10 the same way that you can build for a BlackBerry 6 device, BlackBerry 7 device, or the PlayBook?
Adam Stanley: Yes, very correct. The WebWorks SDK is intended to give HTML5 developers a cross-BlackBerry platform story. So you can write once and build for the smartphone, the PlayBook, and the BlackBerry 10 platform. The intent is to enable fidelity across all of those devices, so you do not need to compromise on not having support for a certain feature. We give developers the ability to fill in any gaps or implement a missing capability themselves through our APIs and Extensions framework. I expect a large majority, if not all of the web-based applications that exist today on PlayBook, are going to run straight out of the box on BlackBerry 10, and those developers won’t necessarily need to migrate or put in any effort to get their content on there, if anything at all. It will also just create a far more attractive platform for HTML5 developers. To know that they can take either existing content or develop new and exciting web content and have it running on the BlackBerry 10 platform.
UNTETHER: So, the HTML5 app that they have today will work, but if they start taking advantage of what will be provided in BlackBerry 10, it will just be more features, better support, better performance?
UNTETHER: Will the WebWorks SDK be available from day one for BlackBerry 10?
Alex Kinsella: Yeah. It’s part of our announcement for BlackBerry 10 Jam.
Alex Kinsella: And the importance thing to know is that it’s not the gold tools that get released for BlackBerry 10 Jam, just like it’s not the gold device. The idea here is that we love our developer community, we’re giving them tools and the tools are going to grow. So as we build out the platform over the next couple of months towards launch, developers are going to be able to take advantage of that as well. We’re truly building with them.
Part two of this interview will be published Monday, April 16th.
Disclosure: I worked at RIM on the Social Media team from 2009-2011 (including Developer Relations Social Media). It was fun.