Rants And Ramblings About Mobile Technology

Anders Borg writing about the fun and crazy world of mobile and Internet service technologies.
You can also read the blog via Twitter or your phone via wap.abiro.com. See the left menu for more news.
Comments on blog entries are moderated, but I'm rather liberal as long as it's not blatant advertising.
For general comments, advertising and contribution queries, please use the feedback form.
Sunday, June 03, 2007
Mobile Ajax explained
Mobile Ajax FAQ goes through what Ajax in a mobile context is all about. Ajax is also compared with Java ME and Flash Lite, and of course Mobile Ajax comes out on top (the FAQ is written by the promoters of Ajax, so ...).
What's not mentioned here is the lack of access to phone features from Ajax. Just handling the UI and local data is in many cases not enough. For many services the complementing phone applications (or service front-ends) need to take photos, record videos, draw advanced interactive graphics at very high speed (read: games), communicate via Bluetooth etc. Still there are a lot of services that are helped by Ajax in providing a better user experience. It only needs to become more widespread.
The reason Ajax can be compatible across phones is its lack of functionality and lack of phone integration (Java ME and e.g. Symbian OS are on the other hand very much integrated with phone functionality). If you want to make something portable, and admittedly also broadly useful, limit it to the functionality all targeted devices support, in this case graphical output, textual input, Internet communication. Ajax still has the problem that adding it to embedded browsers takes years to deploy on the market. Therefor I recommend Opera to make an Ajax-capable Opera Mini. That way Ajax would be deployed much faster (over-night). There have been attempts to make Ajax-like widget engines in Java, but considering the amount of functionality a Javascript-capable web browser has, it's a pretty tough job.
Ajax is not used for anything advanced or performance-critical on PCs, so expect it to mainly enhance form/text/picture-based services also on mobile phones in the near term.
I'm not flaming Ajax, I'm just saying it's not a cure-all for all the things needed from service-complementing mobile applications, and it's definitely not yet in many phones.
What's not mentioned here is the lack of access to phone features from Ajax. Just handling the UI and local data is in many cases not enough. For many services the complementing phone applications (or service front-ends) need to take photos, record videos, draw advanced interactive graphics at very high speed (read: games), communicate via Bluetooth etc. Still there are a lot of services that are helped by Ajax in providing a better user experience. It only needs to become more widespread.
The reason Ajax can be compatible across phones is its lack of functionality and lack of phone integration (Java ME and e.g. Symbian OS are on the other hand very much integrated with phone functionality). If you want to make something portable, and admittedly also broadly useful, limit it to the functionality all targeted devices support, in this case graphical output, textual input, Internet communication. Ajax still has the problem that adding it to embedded browsers takes years to deploy on the market. Therefor I recommend Opera to make an Ajax-capable Opera Mini. That way Ajax would be deployed much faster (over-night). There have been attempts to make Ajax-like widget engines in Java, but considering the amount of functionality a Javascript-capable web browser has, it's a pretty tough job.
Ajax is not used for anything advanced or performance-critical on PCs, so expect it to mainly enhance form/text/picture-based services also on mobile phones in the near term.
I'm not flaming Ajax, I'm just saying it's not a cure-all for all the things needed from service-complementing mobile applications, and it's definitely not yet in many phones.
Comments:
Post a Comment
Links to this post:
<< Home
Thanks for your feedback!
For the record, I've actually done a lot of work with Flash Lite - which I really, really like. ;-)
The hardware limitations (camera, microphone, gps, Bluetooth, etc) with mobile browsers are actually very similar to the sandbox javascript operates in on your desktop/laptop computer - where you also can't access the serial port, OpenGL or the file system through Javascript without a plug-in or proxy app (ie: Google Gears, Flash, etc).
Hopefully browser vendors will begin to provide a device API via Javascript (Google Gears, widgets?) down the road.
That said, the level of integration to the hardware will always need to be weighed against device security implications - for apps that require access to the hardware, the browser and ajax may never be a serious development option.
I would love to see Opera-mini support ajax, but as you mentioned implementing that functionality in Java would be a pretty tough job.
Again, thanks for the feedback.
For the record, I've actually done a lot of work with Flash Lite - which I really, really like. ;-)
The hardware limitations (camera, microphone, gps, Bluetooth, etc) with mobile browsers are actually very similar to the sandbox javascript operates in on your desktop/laptop computer - where you also can't access the serial port, OpenGL or the file system through Javascript without a plug-in or proxy app (ie: Google Gears, Flash, etc).
Hopefully browser vendors will begin to provide a device API via Javascript (Google Gears, widgets?) down the road.
That said, the level of integration to the hardware will always need to be weighed against device security implications - for apps that require access to the hardware, the browser and ajax may never be a serious development option.
I would love to see Opera-mini support ajax, but as you mentioned implementing that functionality in Java would be a pretty tough job.
Again, thanks for the feedback.
Regarding "hardware limitations": That's why I'm focusing almost completely on Java, and because it's so ubiquitous in phones (now the majority of phones have basic CLDC/MIDP support).
The alternative today is to use WML or basic HTML for expressing a service on a mobile phone.
The alternative today is to use WML or basic HTML for expressing a service on a mobile phone.
Post a Comment
Links to this post:
<< Home


