What is the rationale behind PhoneGap?
There’s all these handsets out there and smartphones and different operating systems, and you can either build externally, and try to hire an agency to build all of them which is very expensive, or you can try to find individual developers and bring them up to speed, which takes a while and also is expensive, and those guys are hard to find.
How many people are working on PhoneGap and how does this open source approach make sense for you business-wise?
Nitobi has 20 engineers, and half of them are working on PhoneGap a lot of the time. There’s a core contributor community of about 60 people, so obviously most of those are outside Nitobi. The next biggest corporate contributor is IBM, who have a team of 5 people pretty much full time working on PhoneGap and contributing back. That’s all public, you can see that if you go look in our GitHub repo. We’ve had contributions from Sony Ericsson early on, we’ve had contributions from Palm who are now HP, for the WebOS stuff, there’s plenty of people porting and very interested in PhoneGap.
Then the business side of it, we like to call it the Mullet business model [laughs]. The business up front is typical open source support and services and training, the standard kind of approach, lots of open source companies are using that model. Then the exciting part in the back is a platform as a service called PhoneGap Build, which lets developers compile, build, debug and then deploy their applications in the cloud. So it eliminates all the headaches of setting up and configuring six different SDKs and all the different smartphones.
That service is currently in a relatively private beta that we launched right at the end of last year, and traction has been really amazing, I think we’re close to 8,000 apps built today on that platform, and about 6,000 developers working who are signed up for it, and we’re targeting commercial release later this year.
We have looked at an option around PhoneGap where we don’t leverage the native WebKit. Say we ship something like QtWebKit as part of PhoneGap. We’re still entertaining the idea, but we want to wait and see what we can do with what’s resident on the phone, because we get a lighter download. It’s something we consider, but I don’t think we need to go there yet.
Appcelerator Titanium takes a different approach how would you compare it to PhoneGap?
PhoneGap today, we have iOS, Blackberry, WebOS, and Symbian. Titanium has iOS and Android, Blackberry’s been in beta for some time now. So I guess those are the two core differences.
Then depending on how much you value open source or not, our community is a lot stronger and a lot more active, we have a lot of outside contributors to the project, it’s not just a Nitobi game.
What is the significance of the Dreamweaver announcement? How is that going to affect PhoneGap development?
Two things are exciting from our perspective. It gives us massive reach. Dreamweaver is a widely used product that ties in very nicely to the other parts of the creative suite toolchain, so you can get from a high-level graphic concept to code a lot quicker. Having PhoneGap and JQuery Mobile in there together is nice, JQuery Mobile is definitely one of the more popular frameworks that we see our community latching on to.
The other thing is that Dreamweaver targets a broader level of developer, it’s maybe not super hard core, either Vi or super-enterprise, Eclipse guys, you know, it’s people who are more focused on the UI side of things. Now it gives them access to quickly use PhoneGap and package their applications, test them, prove their concepts, send them out to the marketplace.
Were you surprised that Adobe as the Flash company was willing to build PhoneGap into one of its products?
Apple is kinda closed from a developer reaching in perspective, so there’s not a lot we can do. They are aware of the issue, I know there’s a bug report, but I think that will work itself out in time, I mean it’s not really the end of the world but a nice-to-have feature and we want to see performance continue to improve. I’m sure it will at some point, for the reasons I stated earlier, companies are really competing to make the best platform for web technologies; the mere fact that they put in that technology in the first place is a good indication of what they’re thinking, longer term.
I have to take the fact that it’s not in the SDK in WebView at face value, that it didn’t make it into the build and they had to ship, but we’ll see what happens.
In situations like that we just have to wait and see, and so far every time we’ve done that we’ve been pleasantly surprised. You know, a few years ago people were asking us what our solution for Blackberry was going to be, and then they went and bought a WebKit company and WebKit is on Blackberry now, and it’s a much better world for everyone. Not just for PhoneGap, for everyone who’s a web developer.
What about Microsoft? It’s putting IE9 into Windows Phone. Are you likely to support Windows Phone?
We have something like 80% of the APIs in PhoneGap running on Windows Phone already. That’s open and in the public repo. We are just waiting basically for the IE9 functionality to hit the phone. The sooner they get that out in public, the sooner we can support Windows Phone 7. We have customers knocking at our door begging for it, we’ve actually signed contracts to implement it, with some very large customers. Just can’t there soon enough, really. I think it’s an oversight on their part to not get IE9 onto the phone quicker.
So we could see some nice integration with Visual Studio?
Yes, exactly, and you know JQuery is already supported in Visual Studio so get JQuery Mobile in there, and hopefully some PhoneGap support, and then we’ll really have a great development story. Microsoft’s excellent at building developer frameworks and tooling. If they just get their browser up to speed, it’s going to be awesome, so we’re going to talk to them about that and work with them on some of their stuff.
What about local SQL – most devices have SQLite but Microsoft has SQL Server CE?
We’ve actually written an open source framework called Lawnchair which is an abstraction layer over all the different SQL implementations on these devices, so that’s how we’re dealing with that for now and it’s working great.
I think that will settle down. They’ll be some competition and people will try to differentiate and they they’ll have to come back around some de facto standards will emerge.
The native guys tell me, PhoneGap’s all very well but they’re never going to achieve the level of integration, the level of performance that we can get with native code. Do you think that gap will narrow?
I think it will go away, and people will look back on what they’re saying today and think, that was a silly thing to say.
There’s native plugins already out there for things like XMPP, for mapping you can use MapKit from your PhoneGap app, people have built native UI for scrolling large layouts, tab bars, that sort of thing. So you can do it. We don’t necessarily say that’s the best way to go. Really if you’re into good software development practices the web stack will get you 90%, 95% of the way there, so that apps are indistinguishable from native apps.
Today the story is different than it will be six months from now. It’s happening all the time. The bigger picture view is that if you’d told me seven or eight years ago that I’d be using a browser-based email client for my everyday use I’d have laughed at you.
PhoneGap is on version 0.94 at the moment, and some people would hesitate before using something that is lower than 1.0. When do we get a 1.0 release?
That will be there this year, within the next few months. The project is tracking quite nicely, 0.95 will be out in a few weeks, we’re hoping to get 1.0 out for OSCON in July but we’ll have to wait and see. The project is moving quickly but the market is also moving [quickly] and it’s a battle to keep up.