Opera for iPhone is in App store

Apple approved Opera for iPhone. Whole world is in shock & awe. I have installed it, and took it for a test drive on about 10 sites (mostly our latest sites, Facebook and similar other hard hitters).

Conclusion? Opera, as it is in this first release, sucks donkey balls. Yes, it is fast. There the good things stop. It renders pages horribly. Does not support any rendering engines (webkit comes to mind). Zooming is horrid. Scrolling is pain. Interface was poorly thought of. Copy to clipboard is insane (by insane I mean: not there). It is just bad.

Furthermore, there is no way to integrate Opera deep into iPhone. When you click a link from Mail, it will open in Safari. Shortcuts to websites you have on your Homescreen open in Safari. It is just too timeconsuming to jump from Safari to Opera in order to faster surf there.

In short, Apple approved Opera so people could quickly understand how sucky it is, and start talking words of praise for Safari and at the same time removed some of the Nazi attributes they gathered lately. They turned this while thing into superpositive spin for them. Hat down to you Apple, masters of marketing.

Orientation, Navigation, Geolocation!

I was not so good at geography at school, but I always liked maps. Especially the old vintage antique ones, and sea maps. Also, I like to travel and I think of my self as one of those people who can easily orientate in space (although I could never imagine my self navigating a sea ship at stormy night using nothing but sextant). Going to place you have never been before - be it a new continent, a street in foreign city or a dirt road leading to an gourmet restaurant in Istria is always a challenge.

The challenge which by little help of modern marvel becomes a walk in the park. Originally developed by US Dept. of Defense, GPS and can now be found in cameras, phones even arm watches. My trusty Garmin nüvi 760 packed with maps of Europe and best set of maps for our region - AdriaRoute and SCG ROUTE never let me down so far. Even my last phone Noka E71 is A-GPS enabled device. Nokia Maps (or Yahoo Maps and Google Maps for that matter) have really bad coverage of streets in Croatia so are basically useless for navigation. But Garmin Mobile XT runs on Symbian very well and you can use the same maps as mentioned above. Since my mobile phone is internet enabled too, with the help of GPS device the possibilities for navigation and orientation are practically limitless. Right? Right?

Wrong. Why? Because browser (Opera Mini) and Flash Lite 3 can't communicate with GPS device. Actually Flash Lite can communicate with GPS trough KunerLite S60 RAD, and Opera Mobile (because it supports javascript) can communicate with GPS trough similar expensive middle-ware called GPSGate, but all that is far far away from becoming a standard.

Good news is that couple of days ago Mozilla Labs released experimental geolocating plug-in for Firefox called Geode which would help websites locate you. All that conforming to the W3C Geolocation specification. Beta plugin uses single hard-coded location provider (utilizing proprietary Skyhook’s Loki technology) to map your local Wifi hotspot or cell towers GPS location in your area to your location. If this started to freak you out, fear not - users can decide what level of location information they want to reveal to a website, 'exact location', 'neighborhood', 'city' or 'nothing'. None of this obviously doesn't work in Croatia so it's NOTHING by default for us. If you are reading this from other part of the universe - check the demo here.

Mozilla says that in final version location will be provided by one or more user selectable service providers and methods, e.g. GPS-based, WiFi-based, ip2location, manual entry, etc. What is even more interesting is that this plugin will be in core of the upcoming beta releases of Firefox 3.1, as well as alpha releases of Fennec (Mobile Firefox).

This is pretty good damn news from Mozilla because proprietary solutions like Skyhook's XPS or Garmin Communicator (plugin which enables your browser to talk to Garmin GPS) don't provide enough user coverage for worldwide usage.

When I touched standards, it have to mention a new standard proposed to IETF this year called HTTP Enabled Location Delivery (HELD) which proposes a standardized way to ask the network (Location Information Server (LIS)) for the location of the device. This is still a proposal, and years away from worldwide implementation, but if nothing, I at least expect Jack Bauer to catch criminals by "hacking the HELD" in new season of 24. :)

Garmin Mobile XT

Nokia Maps

Use your mobile to decode me! :)

Today colegue of mine showed me crazy feature on his new Sony Ericsson P1I. By a press of a button, he took photo of a business card, OCR-ed it and added contact from business card to his phonebook. Pretty nifty! Well, not really because we all know how OCR needs to be trained, and OCR on mobile phones is noways still light at it can get.

However, I digged around and found another interesting thing. Have you ever heard about mobile codes? This is old stuff really. Originally, bar codes represented data in the widths (lines) and the spacings of parallel lines and may be referred to as linear or 1d bar codes. But they also come in patterns of squares, dots, hexagons and other geometric patterns within images termed 2d matrix codes. As cameras and mobile phones progressed some phone manufacturers started shipping their phones with build in bar code reader applications - thus words "mobile" and "code" in the name. :)

Two currently most popular open-standard formats for 2D codes in mobile phone applications are Datamatrix (DM - now owned by Siemens and covered by an ISO standard, public domain) and Quick Response (QR - developed, patented and owned by Toyota subsidiary Denso Wave initially for car parts management, public domain).

Graphical output of Datamatrix (DM) looks like this:

use your mobile to decode me! :)

and Quick Response (QR) open-standard like this:


I can't say I understand the whole point behind it. Idea was to use matrix codes to encode URL's, emails and small messages and do what exactly with this? Why would I print unrecognizable encoded picture somewhere and force people to scan it? What's wrong with good old numbers and letters? Barcods are made to automate recognition on a large scale recognition operation (eg. manufacturing, warehousing etc), but I just somehow don't see 1000 people waiting in line with their mobiles to scan our website url encoded on a sticker. Email protection? Scan this to see my email? Are you kidding me? :)

Experts predicted bright future for matrix codes and spread in various applications. Couple of years later, I really can't say I saw much of it. However, couple of days ago this press release made me rethink the whole concept again. NTT DoCoMo announced that they developed the acoustic OFDM (Orthogonal frequency-division multiplexing) technology, which can be used to embed URLs and text data in broadcast music/audio. Consumers' mobile phones "listen" to the music/audio and extract the embedded URLs/data. About 100 characters can be transmitted in a second.

This sounds really cool compared to scanning codes on a sticker mentioned before. But where are they going with this? If you owned ZX Spectrum or Commodore 64 you definetly had tapes. Ever listened to any of these tapes? :) Like 20 years ago I remember a show on local radio station where guys even tried to "send" programs over the air to listeners. They would play C64 tape in the air and tell people to record it. OMG :)

Anyways it's getting pretty late and I have to catch some sleep. If you wanna give mobile codes another go, get readers for your mobile here or here and start playing around. :)

update: I just got contacted by Roger from 2d-code.co.uk. If you are interested in mobile coding, I highly recommend that you check out his web site. It's full of news and interesting mobile coding application. Gooo Roger! :)

First Flash Lite Project ported to the iPhone/iPod Touch

Off course, not thanks to Apple, but thanks to couple of very creative guys.

Thomas Joos did the porting of his Flash Lite app using the b.Tween framework which sits on top of barefootsoft’s EyeGT technology. eyeGT is multi platform highly efficient graphic renderer, capable of handling vector graphics and bitmaps. Think about eyeGT as a Windows GDI+ or Mac OSX Quartz2D on steroids, heavily optimized and designed from the ground up for mobile. This is NOT a iPhone Flash Player (Lite or otherwise), but rather a sets of tools, a graphical engine (eyeGT) and a framework (b.Tween) that extract, rework, and optimize the Flash application, turning it into a fully native and compilable Objective-C/C++ application that doesn’t require any runtime, thus complying with the iPhone SDK requirements. Crazy stuff! :)

First contact

Much has been said about the notorious iPhone. Well, today it hit Balkan grounds and I must say; it’s damn fine. Clearly the first broad audience device that made me feel like the future is here… well if not the future, at least the Federation. Just holding the device made me feel like I can teleport from the crappy mall I was in, on to my superfly spaceship high in orbit. The build quality, the design and the overall futuristic feel of the device, make it a worthy acquisition. You may think it’s retarded, hell I might even agree, but it’s the mother of all hi-tech bling. And that’s a cold fact.


Tips on optimizing web sites for mobile viewing

Opera just released Beta 2 of Opera Mini 4 mobile web browser which looks very promising, and they say that full version is not very far away. Opera Mini 4 includes the same (X)HTML, CSS, XSLT and XPath support as standalone desktop Opera browser. Majority of JavaScript functions are supported, except those that require asynchronous operations or user interaction once the page has been loaded (ajax). For the ones who don't know yet, web pages are rendered on the Opera Mini servers, which compile the web page into a compressed binary that is sent to the Opera Mini client. This reduces the data traffic sent to the phone, reducing users' data bills (many users still pay by the KB,) and reducing the time taken to display the page.

Developers, be sure to check out great article on dev.opera website - Evolving the Internet on your mobile phone.