Archive for the ‘Browser’ Category

Shim Services

Thursday, January 1st, 2009

I’ve been sick for the last few days. Perfect time to put a bit of a dent in that ever-growing pile of unread books next to my bed! Which I began doing without hesitation, until I kept running into cross-references to other books in Dreaming In Code. Some of the books I know I’ve read, others I know I should definitely pick up, others I’m not sure about. Have I read them? Do I own them? As I scan my bookshelves looking for my copy of The Soul of a New Machine I re-realize that I’ve already cleared the unread book stack a few times. Now there’s a bunch of still-very-interesting unread stuff mixed in with the filed-away-for-reference stuff. Maybe it was because I was reading Dreaming In Code that I began suffering from delusions of adequacy, but I thought “I must organize this!”. Maybe it was just the Nyquil talking.

First thought was along the lines of “there must be some software out there that will do this for me already.” Lots of stuff for OS X, but I’m on a Linux system most of the time. And the the most promising of the Linux based cataloging software crashes immediately on window move or resize on my 64-bit desktop system. Maybe that’s not the way to go. I want something quick, easy, and hopefully composable into other usages.

How about something for Android? I’ve been fooling around with developing some Android stuff. And they have Zebra Crossing, a prepackaged lib for barcode scanning. I should be able to find something floating around out there that should make it easy to just scan a whole bunch of barcodes. I can use that to make a big list of ISBNs, and then feed the stuff into a combination of ISBNdb.com and Amazon lookups to make myself a database of my books.

In poking around looking for a simple barcode scanning notepad kind of app I saw the Oilcan app sitting on my Android desktop. Oilcan is a browser wrapper that lets you plugin Greasemonkey style extension scripts into the native Android browser. One of the examples that comes with Oilcan is an extension that allows you to scan barcodes directly into the input box on m.half.com.

It took about 5 minutes to turn that into something that would use a page on my own server to make me a database of scanned ISBN numbers. No native coding required, which I thought was pretty interesting. One thing to pay attention to is the supper aggro caching that the Android browser does, make sure you insert cache control headers and meta tags. Instead of ending up with a one time throw-away tool to create a list of ISBNs, I’ve ended up with an online service that I can use to toss other barcode based info up to my server.

And most importantly, I’ve found a way to use creative coding to procrastinate my way around actually getting done what I set out to accomplish. Happy 2009 everyone!

Skyfire 0.85

Wednesday, November 26th, 2008

I’m not allowed to talk yet about what I’ve been working on for the last few months. Odd isn’t it? But information wants to be free fortunately, so here are a few other folks talking about what we’ve been up to:

There’s definitely some stuff we need to work on still. But the ball is steadily rolling, drum beating, people marching, etc. Also a lot going on behind the scenes as we prep for the really real world. We’re not quite there yet (thus the 0.85 version number instead of a 1.0 version number), but the recent release went quite well all things considered. It was one of those tremendous overhauls that touched pretty much everything, and still the system came back up just about on schedule (we ran about 45 minutes over on our 4 hour window) and in working order.

Definitely looking forward to the four days off starting tomorrow though. Thanksgiving break here in the US tomorrow, and then everyone has Friday off for shopping or something. Guess not everyone has their XMas presents drop shipped by Amazon. That’s how I do it though, and I have no issues at all with the technique.

Contextually Relevant My Ass

Tuesday, November 11th, 2008

I turned on AdSense ads again. Somewhere in the random failing that was getting getting my blog admin interface working again I apparently overwrote all the customizations that I had done. Not that I make a lot of money from the ads, I just like fooling around with the publisher side of the ad network and keeping an eye on the little differences that pop up. Most interesting thing so far is that the ads up there on “This is Mobility” are for scooters and wheelchairs. It’s not like this site isn’t indexed already. It’s not like I sometimes talk about physical mobility solutions and other times mobile technologies. It’s not like the front page doesn’t right now include terms like Nokia, N810, Linux, carriers, operators, iPhone, etc. What gives? I bet the bidding on the term “mobility” from people selling wheelchairs and rascals is way higher than the bid from folks selling handsets or applications, enough to push out way more contextually relevant inventory just to see if the more highly bidded stuff manages to convert. That it’s even tried however makes me kinda wonder just how much the context really works, and how much the network is based on random flailing. Cover some certain relatively high percentage of the web in your real estate and you’ll get clicks. No matter what you put in there.

Rejiggered the Whatchamacallit

Friday, October 10th, 2008

I hadn’t posted for a while, and then when I tried to found that my Wordpress admin interface was all screwy. Probably something I did, but I’m not sure what. And it’s languished for a few weeks while I was trying to find a few minutes to debug it. Finally I just gave in and installed the new version of Wordpress over what I had and let it do it’s upgrade magic. Kapow! Admin interface alive again.

What I was originally going to post was that there was a Mobile Monday last Monday (kinda late for that now). But instead I can post a pointer to the presentation that Nikunj from Oracle gave about AtomDB. One of the striking things about what they’re working on is that it’s from some folks who actually deeply understand both mobile and web technologies.

Example: Check out the mention of ACID vs. BASE models of distributed application development. Read the ACM Queue article about BASE. The CAP (Consistency/Available/Partition Tolerance) Theorem is something I bring up frequently in discussions. If you find areas where you can relax consistency constraints you can make a system work at a much higher volume and generally a lot faster. I love finding areas where I can do that in putting something together, always feels like a magic trick when you get it right.

Interesting that this general scaling principle from loosely coupled web applications translates pretty directly to intermittently connected mobile applications as well. There’s lots of good nuggets in there, great presentation from Nikunj!

There should be a binary form of the Windows Mobile version of the AtomDB work up on the feed technology site some time soon. They’re working on being able to get the source code out there as well, but apparently that might be a bit longer in coming. Unfortunate, cause I would love to have something of the sort for my N810. Generally they’re looking for feedback about the technique, discussion of development models and APIs, and to try get a community going around web programming for mobile devices. There should be more info and downloads up on the site soon. In the meantime ping them if you’re interested in the work.

Mobile Web Developers, Please Prepare for Cross-check

Tuesday, May 20th, 2008

The folks at Opera have started publishing aggregate numbers for the user behavior they see through their proxy browser, Opera Mini. Interesting to see that their overall growth numbers and pageviews metrics are keeping their symmetric relationship with the numbers from AdMob. When you have just one independent source publishing numbers it’s easy to dismiss them as providing skewed data. When two sources operating very different products publish numbers that indicate the same overall trends it’s much more difficult to dismiss.

The part of the report that has me most interested is the list of top sites per region. In particular the list for the United States:

  1. www.myspace.com
  2. www.google.com
  3. www.mocospace.com
  4. www.yahoo.com
  5. www.facebook.com
  6. www.live.com
  7. www.hi5.com
  8. www.wikipedia.org
  9. www.itsmy.com
  10. www.ebay.com

Most of them not too much of a problem explaining. Social networking is huge, people create their profile, check back as often as they can to see if they have messages. No problem. Makes sense that widget providers ride on that traffic. Google is the default search on the Opera start page, Yahoo continues to have a great consumer brand presence.

How about Mocospace and Itsmy however? Really mobile-specific social networks. Assume that the users of Opera Mini are regular consumers, Yahoo and Facebook should be well ahead of Mocospace. Assume that they’re early adopter mobile geeks and it makes sense to have Mocospace and mobile specific services.

And what’s the deal with Wikipedia in there? Do folks actually use the search options from the start page and do Wikipedia specific searches? Is the “trivia night at the local pub” use-case popular enough that it makes Wikipedia #8 top site even when looking at such a large sample? Or are “mobile searches” no matter what the purpose tending toward Wikipedia entries in organic search results just because of the way mobile searches structure their queries?

Great to see data corroborating other stats. Can’t wait till the next month of stats comes out. My gut feeling here is that Opera Mini “went mainstream” during the final quarter of last year. Assuming the steady growth in users but jagged increase in pageviews was due to a shift going on in the userbase being catered to. So what we see in the top 10 is actually a blend of the existing early adopter user behavior and the new creamy middle consumer.

In the next few months those normal users should vastly outnumber the early users and we should see the brands from online filling up those top 10 lists and the niche behavior sites like Wikipedia falling out. There’s always going to be skew toward those who deliver info usable by folks on the go I would assume. The Yahoo portal has always hit those targets well, timely info about rapidly changing data of interest to large groups of readers. Will EBay remain in there? Does rapidly changing data trump relatively niche usage?

Mozilla @ Web 2.0

Thursday, April 24th, 2008

Very happy to see Mozilla talking about mobile browsing at Web 2.0 Expo. W00t! Progress is being made, makes me all tingly happy.

N810 Geoweb Launcher

Friday, April 11th, 2008

I was mulling some of the geo hacks for the N810 that are out there now. Maemo Mapper is a great open source mapping application, there’s a little app that geocodes photos as well. Then there’s Maemo WordPy for posting to Wordpress, and I was wondering if that allowed for geocoding posts. And I was pondering the user of the N810 as a geocontent production device. As well as wondering if the geoaware primitives we could use in mobile browsers would at all be helped by the evolving state of mobile Firefox.

All the little hacks on the N810 could really be solved more easily on the web if there were a way to hook the stuff together. What I started thinking about was hacking around with the new firefox release and see if I could get it to shove geoinfo into the outgoing headers. But then I realized most of the stuff I wanted to fool around with wouldn’t take the headers in anyway. So for now instead I made just a simple little python launcher app that pulls your current location from the GPS and launches a browser with Google Maps pointed at your current location. Very simple, but I imagine with some basic URL crafting you can use it to create geocoded Wordpress posts or geotag images uploaded to flickr. Maybe I can make it a little homescreen applet to display your location and launch one of a number of sites with your location fed in.

Thinking about the way the web facing geographic services have worked out, passing a URL with the location filled in seems to make more sense right now. There was a geo-headers ietf draft floating around at one point.. but I can’t find that as an official version. Are there services out there that use it? Or something else that’s common across services?

Maemo Browser Friendly Apps

Wednesday, April 2nd, 2008

I was somewhat curious how the new Wordpress 2.5 admin interface would play with the browser on the N810 so I spent a little time poking around. Even though the new interface seems to be a lot more squishy than the previous version, it actually seems to work a bit smoother on the device. I like Maemo Wordpy as well, but it’s nice to be able to go in and do stuff like make sure a sudden spam surge hasn’t completely overrun my comments when I’m on the go.

While I was in a testing mood I poked around with some of the Google apps as well. The search, calendar, maps, and mail apps (as well as a few others) have bookmarks loaded into the browser by default. But I wanted to play around with the reader and the iGoogle homepage. The reader worked pretty much as I expected it to. The fact that it worked at all was great, but it was a bit slow and some screen elements overlapped each other. The kind of thing that might benefit from a bit of Greasemonkey hackery.

What I was relatively surprised by however was the iGoogle version of the homepage. All the controls worked well, even dragging around modules to change the layout. The layout is dense and efficient, I can add calendar and gmail apps in there. I added a weather app in there and then was about to pull it back out cause I already have OMWeather on the desktop of the device. But then I realized iGoogle is actually a better homescreen for the N810 than the device native applet based homescreen is.

When using the RSS reader applet on the N810 the only option is to put a blended list of every item from all feeds I’m subscribed to. No way to pick and choose and select just individual feeds or a single feed to display. The font is ridiculously large and the only options for reading are punching out to either web or RSS app, no expand in place. The same goes for the email app built into the device, just overly simplistic and at the same time fragile when compared to the other apps like Claws mail (but AFAIK Claws doesn’t have an applet to go along with it). Compare that to iGoogle configured similarly. The information density is much higher, configuration options a lot richer and more flexible, and there are just more options there for existing widgets. It’s an excellent example of rising browser capability allowing online applications to displace native apps, even when those native apps have direct operating system level support on a mobile device.

Missing Reporting/Metrics in the MMA Guidelines

Tuesday, March 18th, 2008

Thanks to Russell for pointing out that a new set of MMA guidelines is up for review. Apparently I’m supposed to post feedback in their public forums, but I’m getting a bit tired of having to follow discussions in other places. So I’m posting my feedback in my public forum, just like they posted their recommendation on their site. Just seems proper.

As soon as I read Russell’s post I thought “Yay! Finally some structure around an accepted practice for audience measurement on the mobile web!” Cause any effort to democratize serving ads in a medium and put everyone on equal footing just needs to set down conditions of input (media styles and formats, standardize terms and minimum specification of a buy) and expected output (what should be reported and how should it be measured?) The guidelines as they stand make a point of dealing with the media formats and sizes, not bad, I have no real comments there. However, the mobile web part says nothing at all about audience measurement. Which is kind of conspicuous cause the messaging and downloaded app sections do talk about metrics and reporting.

It’s almost like it was intentionally left out, hoping no one would notice the smoking crater? I’m looking for something along the lines of the IAB Campaign Measurement guidelines. Look at the detail in there: delivery mechanisms and which inclusion tags count as which style and dealing with caching. And most important, it doesn’t matter if it’s right or wrong in every case, just that it’s consistent. Why is there information about handset screen sizes in China, and no mention of how to measure reach on the mobile web? Bad form.

Okay, I know I said the report included sections on application download and messaging audience measurement. Technically that’s true, in that their presence in the report calls into attention their absence for the mobile web section. But these are the counting and reporting “guidelines” for mobile messaging:

Operators could use counting tools that use digital fingerprinting or similar technologies to track message
distribution among users in the network. This could enable the service provider to track the dissemination
routes, to identify social leaders, and to reward users for forwarding messages. However, all these
capabilities must comply with existing national level regulatory and legal frameworks covering privacy and
the use of personal data. In addition end users concerns and expectations will always need to be
carefully managed. Taking all steps necessary to ensure end customers fully understand any proposal to
user their data, together with providing a clear choice to opt in or out of this type of service is essential for
its long term success.

Umm. I’m not sure “The carriers might do something to help count users. And oh yea, be sure not to break the law” really counts as a guideline. That’s not helpful at all, to anyone.

Then there’s the section on mobile video, which says pretty much “we’ve got no guidelines, but here’s some info about mobile video.” What the hell? Are these guidelines for usage? Or marketing material? If you don’t have guidelines for mobile video don’t include a section on mobile video in your guidelines. It’s reminiscent of padding out a book report. Was there a minimum word count for this assignment? I actually scrolled back to the top of the document and checked the title of the report again, thinking that maybe this was really just an informational release. The mobile marketing strategic overview and not a set of guidelines. But that’s what the report says, “MMA Global Mobile Advertising Guidelines”.

So lets create a specification for them so we don’t have to go through the process again. Audience numbers must be counted using the MSISDN if available and fall back on cookie based counting in all other cases. MSISDN presence is dictated by the presence of one of the following headers in a request from a mobile terminal:

  • X-MSISDN
  • X-NOKIA-MSISDN
  • X-UP-SUBNO
  • X-WAP-MSISDN
  • X-UP-CALLING-LINE-ID
  • USER-IDENTITY-FORWARD-MSISDN
  • X-WAP-CLIENTID

It’s relatively easy to pick out which headers to use if folks publish some info about the traffic they’re getting. Cookies must be delivered with the domain of the central advertising network if appropriate, which means image based recording even for text adverts. 1×1 gif, which admittedly carriers could block.

That’s it, that’s a spec, it’s the kind of thing I would expect the MMA to put in their “guidelines”. Furthermore, given their position as the premier global organization pulling membership from carriers, software providers, and manufacturers I would expect them to:

  • quantify in what percentage of cases the guidelines are expected to yield valid numbers given global averages
  • work to improve the guidelines to decrease the error rate over time
  • provide recommendations and guidelines to carriers, software providers, and device manufacturers to decrease the error rate going forward

If something like that happened we might have something that could “stimulate the growth of mobile marketing and its associated technologies.” As it stands now however, I don’t really see the point. It clarifies a few points if you already have an advertising business up and running. But say you’re an independent site owner looking to sell your own inventory directly, or an open source advertising platform looking to add mobile adverting to the mix of features your package provides. Read through the guidelines with that perspective in mind and it’s obvious it doesn’t provide any of the necessary clarity at all.

Sprint Hiding User Agent

Monday, March 17th, 2008

I did a search this morning to see if there was anything related to the cookie issue with Openwave software. Instead I found a post from Dennis saying that it appears that Sprint has now followed Vodafone in disrupting the mobile web. Ouch. And their partner in crime? Openwave. I was hoping to find some positive reaction, instead I find a new mention of negative behavior. Damn.