I’ve been playing with the Bolt browser for a couple of hours now and my impressions are generally pretty good. Bolt is from Cambridge, Massachusetts based Bitstream, a company best known for it’s digital fonts and font rendering software. But Bitstream is not new to the browser field, they also produce the ThunderHawk browser for Windows Mobile and Symbian. Bolt, like ThanderHawk (and Opera Mini, Skyfire, UCWEB and Teashark), is a server based browser meaning that much of the page rendering is done in the cloud and the browser is a relatively “thin” client application. ThunderHawk is a $50/year subscription product but Bolt is free.

Bolt is written in Java ME like Opera Mini and according to Bitstream can run on “nearly all” Java based handsets that support MIDP 2 and CLDC 1.0. The only handsets Bitstream specifically says Bolt will not run on are ones using the Palm OS. Blackberries and “selected” Windows Mobile handsets are specifically mentioned as supported.

Bolt was announced yesterday on several tech sites including BlackberryCool, CrackBerry, IntoMobile, BerryReview and MobileCrunch Each site published a Beta code which was supposted to be limited to a few thousand users. I entered one of the codes on the Bolt download page yesterday and waited for my promised SMS containing the download link, which never arrived. As usually happens with these sorts of things, the process and servers completely broke down under the load. BitStream’s John Sidine left a comment on BerryReview explaining;

“We completely underestimated the response we’d get to the beta. Initially we had a manual process in place to distribute download links. But we were quickly overwhelmed by requests for BOLT so we switched to an automated process at about 9:00 AM Eastern today. Sometime after noon Eastern today, the server handling the downloads “blew up.” We are now in the process of switching over to a dedicated server we’re confident can handle the demand. We appreciate everyone’s patience. We expect the new server to be online by 4:00 PM Eastern today. “

John was true to his word and shortly after 4:00 EST, I was able to get in and request Bolt for my two phones a Nokia N95-3 and an old iDEN BlackBerry 7100i. I’m happy to report that Bolt runs on both phones and is a formidable new competitor in the world of third party mobile browsers. I’m not sure if any of the codes are still good but even if the beta is full Bolt says people entering a code will get priority in the queue for the next round of invites.

Rendering Accuracy

Probably the best feature of Bolt is the way it maintains the original appearance of pages. A recurring problem with most full web mobile browsers is overlapping of page elements. Bolt seems to do much better than Opera Mini at preventing overlapping. You can really see the difference in the two images above of this site’s navigation menu. Another difference is in the way the two browsers handle left floated images as shown in the screenshots below with the Nokia 7510 product photos. Opera Mini formats the text as a single column until it gets to the image where the column of text shifts to the right forcing the user to scroll right to continue reading, Bolt reduces the size of the image and narrows the text column so that you can continue reading without horizontal scrolling. Very nice!

There are however areas where Bolt’s rendering is less stellar. All text is rendered in the same font weight and style. Bold and italic appear as normal text. Header elements like the H1 post titles on this site are the same weight as body text. CSS font-size is also ignored. Opera Mini, on the other hand, handles all of these stylistic rendering elements correctly except italic which it displays as bold.

Features

Featurewise Bolt is fairly basic. Like Opera Mini. tabbed browsing and copying text from web pages aren’t suported (UCWEB can do both). Pages can’t be saved although images in pages can be “downloaded”. Dowloading of both images and files launches the phone’s built in browser. Unlike Opera Mini, Bolt on the N95 and 7100i does not close when it launches the phone browser, a big plus because it means you don’t lose your place on the page.

Bolt is able to play Flash videos, sort of. The Bolt server transcodes the flash to a low quality mobile streaming format that most phones can play. This feature worked well with YouTube although the 176×144 videos were pretty bad looking. The N95’s built in Flash Lite player can natively play YouTube videos at full 240 x 320 screen resolution but Bolt doesn’t let it, instead sending a lower quality stream. I’m unsure what other Flash video sites besides YouTube are supported. Videos on Hulu.com did not play in Bolt and Veoh.com wouldn’t even let me try to play its videos, saying I needed to upgrade my Flash Player.

Bolt, like Mini, has both a fit-to-width “mobile view” and a “desktop” view that maintains a page’s layout but requires horizontal scrolling to see the whole page. I found the mode switching in Bolt quirky. For one thing the User Agent string that Bolt sends changes depending on the mode. In desktop mode the User Agent is:

Mozilla/5.0 (X11; 78; CentOS; US-en) AppleWebKit/527+ (KHTML, like Gecko) Bolt/0.741 Version/3.0 Safari/523.15

Most sites will treat that User Agent as a desktop browser and send full-web content to it. However in mobile view the User Agent changes to:



Nokia3250/2.0 (3.21) SymbianOS/9.1 Serries60/3.0 Profile/MIDP-2.0 Configuration/CLDC-1-1

Sites that do browser detection and adaption treat that User Agent as a phone browser. The “Nokia3250…” string seems to be hardcoded into all versions of Bolt. Both the unsigned version running on my Blackberry and the double signed one on the N95 send the same user agent in mobile view.

A changeable user agent is potentially useful feature. It gives the user the ability to override sites that force mobile browsers to their mobile version with no way to reach the full version. But using a user agent that misrepresents Bolt as a Nokia 3250 smartphone is wrong . Providers of content like ringtones, games and themes need to be able to use the User Agent to identify the browser. The Bolt mobile view user agent needs to be unique, ideally having “Bolt Browser” in it somewhere, so that every phone running Bolt is not mistaken for a Nokia 3250. It’s not just the user agent that is misleading either. In mobile view, Bolt doesn’t send the Via: header as all proxies should. Bolt also includes an x_wap_profile header pointing to http://nds1.nds.nokia.com/uaprof/N3250r100.xml , further misrepresenting Bolt as a 3250.

Other Bolt mobile mode quirks are that web forms are missing their submit buttons in mobile view and thus are unusable and the that mobile view doesn’t seem to work with many sites. My full-web site at pc.wapreview.com is not reformatted to the screen width in mobile view, it looks identical in both desktop on mobile views. The same is true of espn.go.com. However the mobile site wapreview.mobi, does look different in desktop view where horizontal scrolling is needed, while in mobile view where the page is reformatted to screen width.

I’d like to see the layout mode (mobile vs desktop view) selection separate from the user agent switch. I think most users will want the option to have the full web versions of sites reformatted into a single column for quick reading without side scrolling.

A unique feature of Bolt is the split screen option that is part of Desktop mode. Pressing the 5 key toggles split screen mode which shows a zoomed out “mini-map” of the whole page in the top third of the screen and a “keyhole” view of a zoomed in section of the page in the bottom third (image bottom left). I found Split Screen worked as well as the traditional mini-map used by Opera Mini and WebKit – where you press a key to toggle between full-screen mini-map and keyhole views. But I’m not convinced it offers any real advantage in usability.

There is another hind of zooming which Bolt calls “magnification” It’s a menu option that gives five levels of zoom. Magnification affects both text and images. Changing the magnification level causes the page to reload and when it does text is re-flowed so it still fits screen width.

Usability

Bolt has a good set of well chosen one click shortcut keys for page up/down, column left/right, bookmarking the current page, entering a new URL, switching to the bookmarks or history pages and opening the built in RSS reader. There is no jump to page top/bottom, but split screen mode lets you do that quickly. The only real usability issue I encountered was that I was unable to use T9 to enter text in fields on the N95. The Blackberry’s “SureType” equivalent was available in Bolt and T9 works in Opera Mini and other Java apps on the N95 so I don’t know why the option to use it isn’t available in edit fields in Bolt.

Performance and Stability

Bolt seemed stable on N95 and the UI and scrolling speed were reasonably fast, generally comparable to Opera Mini. I experienced no crashes in testing on the N95 although I saw quite a few non-fatal error messages. When errors occur their is an option to send an error log to Bolt (image” bottom, right). It only requires a couple of clicks and no data entry to send the log.

Bolt seemed to overtax the less powerful JVM and OS of the three year old Blackberry 7100i. Scrolling was slow and there was a noticeable lag before key presses were recognized. Bolt froze several times on the BlackBerry and would eventually crash with a key buffer overflow if I kept pressing the keys when it was frozen. Although the BlackBerry is old, Opera Mini is very responsive on it, scrolling and general UI speed is as good on it as on the N95.

Bitstream is touting Bolt’s speed, claiming it to be 60% faster than Opera Mini in loading espn.com and 100% faster with cnn.com. I was not able to reproduce those results, Bolt was fast but Opera Mini was even faster. I tested both the full and mobile versions of ESPN and CNN and Opera Mini was consistently faster. I’m pretty sure that Bitstream was quoting times for the full web versions although both sites recognize Opera Mini as a mobile browser and deliver their mobile versions to it. You can force the full web versions to load in any browser using the URL’s http://edition.cnn.com/us/ and http://espn.go.com. I also loaded the same sites in the N95’s native WebKit browser for comparison. All tests were done on the AT&T network in San Francisco using a strong (full bars) HSPA signal.

Site CNN (full) CNN (mobile) ESPN (full) ESPN (mobile) Opera Mini 6 sec 3 sec 9 sec 3 sec Bolt 15 sec 6 sec 13 sec 8 sec WebKit 51 sec 8 sec 35 sec 10 sec

Site Compatability

I have a suite of “horror sites” which give almost all mobile browsers fits. “Classic” Yahoo Mail, the “Classic” full version of Bloglines and 1and1 Webmail, all which use some complex Javascript. The fourth site of the test suite is the WordPress administrative console of this blog which adds HTTP basic authentication to the mix. Until recently none of them were completely functional in Opera Mini, however in Opera Mini 4.2, Y! Mail now works perfectly . How did Bolt do?

Bloglines – Bolt handled Bloglines with no problems at which is pretty impressive as the site doesn’t work at all in Opera Mini, TeaShark, Skyfire or UCWeb

Yahoo Mail – Bolt did not do as well as Opera Mini on Y! Mail. While reading emails was not a problem, moving them to folders was impossible because the “Move” drop down displayed as a solid gray rectangle.

1and1 Webmail – Bolt got past 1and1’s animated splash screen that trips up most mobile browsers and I was actually able to log in, however when I click on my Inbox I get an “Unknown Host” error.

Bolt is also not able to handle the HTTP basic authentication which I use to help protect the administrative console of my web host Not many mobile browsers support basic authentication but Opera Mini does.

Overall Bolt did better than most mobile browsers with the suite of “horror sites” it’s the first server based browser I’ve seen that can handle the horror of frames and Ajax that is Bloglines, it mostly worked with Y! Mail and it got farther than most with 1and1.

Conclusions

For an initial Beta, Bolt is very impressive. It come close to Opera Mini in speed and site compatibility and equals it in overall rendering quality. Stability is pretty good too. I expect that Bolt will get better and better as it passes though the Beta cycle. I’m especially hopping that Bitstream can add the two features that everyone wants, tabs and the ability to copy text from web pages.