Original URL: http://www.theregister.co.uk/2013/07/29/appcelerator_re_writes_javascript_webkit/

Appcelerator polishes Titanium for platform-neutral JavaScript reboot

One language, one WebKit, to rule them all

By Gavin Clarke

Posted in Developer, 29th July 2013 09:58 GMT

Success and age are catching up with Appcelerator, which is re-writing its Titanium mobile development framework to be leaner and cheaper to run on more mobes.

Chief executive Jeff Haynie quietly let slip earlier this month (and was eventually spotted by IT Writing’s Tim Anderson) that a project – called Ti.Next – is now under way to re-write Titanium in JavaScript, using just one virtual machine based on WebKit to let developers' mobile apps talk to more devices in one hit.

The goal is for Appcelerator to stop devoting over half its annual $10m R&D budget on Titanium, a free product, while also supporting new mobes as they roll out.

Also, Appcelerator wants to clean up its code base, which has grown as new features and platform support has been added.

Founded in 2006 to build rich web and desktop apps, Appcelerator was one of the first to jump on the iPhone. The company today claims to have nearly half a million registered developers using its kit.

According to Haynie:

“A lot has changed in a short period of time. Not only is Android a major market share leader with Apple, but Microsoft now has a viable platform, RIM has a re-tooled Blackberry, Firefox has just released the first phones with Firefox OS, Samsung and Intel have collaborated to create Tizen and Ubuntu is doing something.”

Yes, he said Microsoft now has a “viable platform,” although he didn’t say which.

He continued: “We believe that we can cut the overall total costs of building and maintaining Titanium in ways that we couldn’t do in the current architecture. Today, each new platform is a linear-plus cost equation. Tomorrow, it will be fractional – in fact, each platform could drive down the overall cost to some degree.”

Haynie believes apps written on Ti.Next can beat the performance of the actual native apps on their home turf. Currently, the conversion from JavaScript to the Titanium API takes up to 10ms. Titanium works by the native code talking to the Titanium framework's JavaScript API. You can read more about how it works here.

“That’s fast," Haynie said of the current performance, "but not too fast for modern CPUs. Our target is sub-microsecond operations – in fact, we think we can get faster in most cases than pure native code."

Ti.Next will make JavaScript the “primary language” for the TiRuntime. The idea is, you will no longer need to write apps with a knowledge of each target platform – C for iOS, C# for Windows and so on. According to Haynie this will mean greater code re-use and – potentially – application portability.

Also, for simplicity, there will be WebKit KJS VM for all platforms.

“We have found a way to make the WebKit KJS VM work on multiple platforms instead of using different VMs per platform,” Haynie said. Appcelerator have created a small microkernel that’ll have “minimal bootstrap code in the native language,” he said.

There was no date on when Ti.Next would be released. ®