Ripping mobility from the clutches of telecom
Archive for July, 2006
50 Million Mobile Ads Served!!
Jul 28th
This evening we’ve passed one of the milestones I’ve had my eye on for a while, 50 million ads served at AdMob!!! I snapped this screen capture to document the momentus occasion and doctored it up with the full benefit of my kindergarden equivalent graphical skillz:
In pre-celebration we put up a bunch of enhancements that Omar already blogged about. The graphs look very cool, I love having the stuff up there. But personally I’m most happy that we have some real exports of the data available. Any of the ad stats pages now have CSV export so you can suck the data out and munge it as necessary to get the info you’re looking for. Check out the clicks/impressions by day breakdown also, that’s the one featured in the blog post. We’re all particularly proud of that one.
One Something Per Child
Jul 27th
David Beers has an interesting post about the One Laptop Per Child project (linked from the Carnival or the Mobilists this week, check out the other posts too, lots of good stuff!). It’s amazing how much you can agree in principal but disagree in specifics. David is arguing that mobile phones would be a much more reasonable form for the project than laptops. In particular he picks up this quote from Branko Collin as a good summary of the position:
Don’t para-drop these things. The OLPC needs to be a 99.9% local project to succeed. Currently it seems to be largely a Western project.
I totally agree! Definitely and 100 percent. So how do you make a project local? By giving folks full fledged solutions to problems and opportunities that are happening in some environment which very few people on the implementation side really understand? No, I think the right answer is to give folks the simple and primary tools they need to build their own solutions, and to allow the people who understand the constraints and target environment to build the solutions on their own. The ideas embodied by the Fab Lab projects serve as an excellent role model I think. Give a person a fish vs teach a person to fish.
Before I thought things through that way I had said the same thing about handsets and the OLPC project a few times. That the OLPC project should be using handsets not laptops, it seemed obvious. I would like to publicly retract that statement. Cellular networks are a horrible place to try to build new, novel, well-situated solutions. The the networks and hardware are not open, the communications subject to regulation and restrictions, and the solutions fundamentally tied to someone elses business model. Fuck, experienced entrepreneurs in developed countries can’t manage to get their applications out. If we really want to help out other countries in terms of building out their infrastructure do we want to lead them into tying their solutions to carrier networks? Do we want them forced to do Symbian C++ programming if they want access to non-JSR mediated functionality? Should they need to have to send their handset in for test enablement before they can try to use their own apps on real hardware?
It’s the openness that’s the key, not the current form factor. If the project is successful the hardware can mutate as necessary to fill new niches to follow the solutions. But an evolution that follows solutions instead of following money is only possible if the people working at the endpoints can hack up the stuff they need to. Now that I’m looking at the setup as a whole, and the potential long term to bootstrap a technical self-service environment tied to the Internet but decentralized and unregulated, I think we could use the project here in the US as well.
Maemo 2006 Application Repository List
Jul 26th
The application manager in the new OS release for the Nokia 770 really rocks. However I always have trouble searching up the application repository list for Maemo. I’ve seen a bunch of postings online from folks who also seem to be missing the info. So I’m linkng to it in the hope that next time I look for it the results will be better.
E61 Active Standby Rocks
Jul 26th
I’ve been a huge fan of the active standby screen in the recent S60 devices (that’s the ‘default’ screen that you see on your phone when it’s doing nothing else, which includes appointments, inbox items, todos, some shortcut icons for apps and actions, etc). It was a great feature on the 6680, but it’s astounding on the E61 with the extra screen space. Here’s a shot of my active standby this morning (the blurred items are calendar entries):
There’s a great writeup over at All About Symbian with some really detailed info about using the E61 Active Standby screen.
I did the screen capture with Screenshot from Antony Pranata, which works fantastic on the E61. I set it to capture using “Edit+*”, which on the E61 is shift and the “u” key on the keyboard.
Nokia E61 + Gmail + TMobile
Jul 25th
Seeing as how I couldn’t get my typical email setup working well on the E61, I decided to poke around with some alternatives. I’ve been using Google Mail to get notifications for work already. They have an option to forward all messages but keep them in the inbox, which I have setup to forward all inbound emails to my TMobile SMTP gateway address. SMS notifications on inbound messages, and effective history, so it’s what I’ve been using for informational messages from the production servers. They have a nice mobile interface as well that’s usable from a browser.
So I decided to hack around not being able to get the email client to do what it’s supposed to in terms of fetching updates by setting up SMS notifications and using GMail. Gmail has a POP interface, which I found out from the fantastic E-Series blog does work with the messenger app. Both POP and SMTP actually. So I can get my notifications via SMS, and if necessary either connect to messenger or connect with the browser and do what I need to. I did have to poke around a bit to get this working though. Seems like it might be a TMo specific problem. Fetching email was fine, but SMTP didn’t work as described other places. I had to turn on encryption, but put the port back to 25 (standard SMTP). I remember someone mentioning that somewhere, maybe in a post about using GMail + TMo on the 6680 or something. So here are my settings for the connections (this seemed to be the trouble part):
- Incoming email:
- incoming mail serv: pop.googlemail.com
- mailbox type: POP3
- Security(ports): SSL/TLS
- Port: 995
- APOP secure login: off
- Outgoing email:
- Outgoing mail serv: smtp.googlemail.com
- Security (ports): StartTLS
- Port: 25
That got me up and going with Gmail on TMobile. Sure would be nice to try out other public email services using POP and SMTP directly from a handset. Yea, that would be really cool.
Cellular Networks and Net Neutrality
Jul 25th
I tend to spout off about openness in the carrier networks and how I think enough applications would flourish to outweigh the downsides. So it’s always nice to see someone potentially even closer to the problem kick in a very similar set of points with even more supporting details. Check this out:
Almost all cell phones sold in the developed world have the ability to send and receive SMS (short message service) text messages. SMS is gaining popularity in the US, but only as a way to send quick messages to friends. So why aren’t there a wealth of amazing and interactive services available for mobile devices? Why is there no MySpace, Craigslist, Amazon, Flikr, or eBay accessible through this network? Why are cell phone payment systems and email systems nearly nonexistent? Why haven’t charities raised money or awareness of their causes through this system?
It’s simple. Because the cell phone carriers control what services are allowed to use their networks. There is no net neutrality on the cell phone network.
……
Other requirements are outright offensive: as of this writing, Cingular, Sprint/Nextel, T-Mobile and Verizon all prohibit charities from raising money though their Premium SMS services. Too bad for the United Way, Greenpeace, and the Red Cross.
Some carriers also have “decency” restrictions that are so silly and restrictive that they make the production code that governed movies between 1934 and 1967 seem quaint. Verizon is the worst offender in this case: It prohibits dating services, images that are suggestive (the same images would be acceptable if aired on prime-time network TV), and any use of “crude” words, including such shockers as “fornicate” and “genital.”
I didn’t know about the restrictiveness of a lot of the carrier requirements. It’s like they’re all working from the same “101 Ways to be Evil Overlords” playbook. What’s the deal with Verizon?
Verizon prohibits “un-moderated chatting, flirting and/or peer-to-peer communication services”
Holy Jeebus. Somebody needs a hug.
A Day on the Road with the E61
Jul 24th
I’ve been using the E61 for only a short while. I got it Friday evening, so today is my first work day with the device. A few problems have cropped up, which I’m putting up in the interest of either finding workarounds or emerging for future firmware patches. A lot of them seem to be application level issues, or perhaps drivers. The network handling in particular seems a bit suspect.
The access point groups just don’t work out very well because switching networks doesn’t work well. Take the messenger app for example, which seems to have some real drastic issues when used for email. I had configured it to use an access point point group that included my home wifi and the access point for my cellular provider. When I walked out of my apartment this morning and my phone beeped to tell me it lost the connection to the wifi that was fine, I had it configured to notify me of status changes. But when I got to the office half an hour later and it was just continually popping up “messenger error” when I tried to open my Inbox I knew something was up that shouldn’t be. I had to hold down the red hangup key till it specifically closed down the gprs connection completely, and then manually select the access point within messenger, and reconnect. And that was just the start.
I have spotty coverage at work, my packet connection will bounce while walking from one side of the office I work in to the other. The email portion of messenger doesn’t seem to handle this AT ALL. I set up messenger to use just the cellular connection, thinking it was the switching of access types that tripped it up. But for a few hours during the day it did the same thing it did before. Pulled a message or two down for email, and then my inbox was completely inaccessible (SMS inbox as well, messenger would not run at all). Eventually I disabled the email connection and put it in manual update mode, since which it’s been working fine. But given that this device seems to be aimed at the corporate crowd, for whom email is their lifeblood, I just can’t dismiss this poor implementation of basic email functionality. If you’re thinking “Hmm.. I was going to get a blackberry, but this E61 has wifi and should do the same thing” cut that thought off right there. The E61 is not up to snuff yet as far as email goes, full stop.
That said, for me fortunately email is not a deal breaker. I would like to have my emails pinging me and letting me know what’s up, but I have hackerish workarounds that I can use to replicate that kind of function without having the device do it. However, the dodgy WPA support within the wifi stack seems to be a bit more fundamental. It works, I can use the device at home with my WPA configured access point. However I’ve seen a bunch of crashes and odd odd hangs especially when working with a low signal level. Russ says he’s seen nothing of the sort, but is on WEP instead. I tried out using my neighbors unsecured network for a while, and wouldn’t you know, it certainly did behave a lot better. Now, I could switch my network to WEP. But as we all learned with the well documented revelation of encrypted packet replay using ARP packets WEP shouldn’t even provide the illusion of safety any more. This is really more of an issue for me, and is more of a black mark for me than the email issue even. And once again, if being positioned as a device for the corporate warrior this device needs to handle WPA without the slightest hiccup.
I’ve also had a few spurrious reboots when searching for networks. I was curious how using the device on a public network, say an access point at the ubiquitous Starbucks or other local coffee house would be. For the most part things work out fine. Say you’re at Starbucks and are looking for the tmobile hotspot, and you see it there with a signal strength of 95%.. no problem. If however you don’t know exactly what you’re connecting to, the process is frequently experimental. I admit this might be a bit “high tech environment”-centric, but the device does offer an automatic scan and status display for network availability, so I have to assume they’ve considered the use of random network hopping. It’s one of the reasons I wanted a wifi device that was handheld, so I could just hop on any random network if there happens to be one available and try it out.
The problem is, the E61 doesn’t seem to handle non-responses very well. Sometimes it takes trying a few seemingly open networks to find one that works. Maybe they’re doing MAC filtering even though security is off, maybe you picked up a few randomly reflected beacon packets from some AP you can’t really talk to. The 770 handles this great. Scan network and try it, scan again and try, no problem. The E61 however does not seem to like this usage, and I’ve had it spurriously reboot on me a few times when trying to connect to access points. It seems like there’s a low level watchdog timer sitting down in the OS that’s just too tight for the response time of the wifi drivers. It doesn’t feel like something drastically wrong, the OS just seems to get pulled over and the system cycles. When it does come back within time it’s not a problem, but that random reboot, total joykill. Especially if you’re randomly scanning access points cause some crisis just occured and you need to get online to check it out. Waiting through the seemingly infinite boot time is enough to get you to drop the device and pull out a laptop, and right there you’ve pretty much killed the value proposition of the device.
I’m hoping a lot of this stuff can be taken care of in firmware. The messenger problem, definitely, that’s gotta be some software mixup. And any time the operating system falls over and applications fail I always assume that’s a bug and not some fundamental design flaw. Even if it is a design flaw, patch over it so that at least the device doesn’t reboot. Fail, sure. But fail a bit more gracefully. Nothing like a busy work day to bring the honeymoon with your new device to an abrupt halt.
A Buncha E61 Info
Jul 23rd
This evening was the first time I was able to sit down with the E61 and fool around with it. I’ve pretty much just gone through some of the basics in terms of getting the applications I like installed on there, and trying out one or two new function. For a general overview of the device I recommend checking out the review at MobileBurn. I’m gonna cover more of the geek end of things. What do I mean by the geek end? My first app install on the E61 was an SSH client. Not exactly the tool most people would put first in their required mobile services. Lets start off with the software I’ve put on so far:
- Putty – an SSH client for Symbian devices. I used this on my other S60 phones, but generally it’s been a pretty bad experience. Better than nothing when you’re in a pinch, but only just better. One of the things I really liked about the Treo 650 was that the SSH client for that kicked ass in comparison. However Putty for S60 now rivals that implementation.
- Python – Python for S60 is running on 3rd edition devices, and it’s definitely working on the E61. However it seems like the feature I used the most before, being able to take script files from online and quickly send them over to your phone to run, is no longer supported. The Readme files for the release are written by someone intimately familiar with the internal workings of the new Series60 security model, and explaining why installed scripts need to be signed. At least that’s what I think it’s saying. That really blows, cause I’m not familiar with the security model and I really don’t give a shit about it. I want to do things with my phone. My guess is that most people using Python on S60 don’t really care about the security model as well. That’s what made the port interesting, it allowed folks to hack without having to deal with the painful ordeal that is Symbian development. Step in the wrong direction on this one, hopefully someone finds a way to clear it up. You can install your own scripts, you just have to do a little dance to get them transferred over.
- AgileMessenger – works on the E61, and the app itself rocks when combined with the full keyboard. However be aware that there is a bug with the labeling of the softkeys within the app. The label for the left key shows up over the right key instead, and the label for the right key shows up in the upper left hand corner of the screen. Very confusing, and it can make the app appear to fail if you don’t know that the bug is there. It does work however, besides the obvious usability problem, the bug doesn’t seen to affect anything else.
- Podcasting – the free application provided by Nokia. The Wifi makes downloading audio directly from the device much more realistic. I think this is a new app that I’m going to start getting a lot of use out of. The coolest bit? It seems to have scheduling and preferences config that I can use to tell it to download automatically overnight if it sees my home access point. Very cool! The second coolest bit? The service endpoint for the built in search seems to be configurable.
- Mobile Google Maps – not the (although I do also have that installed), this version has support for GPS. It works with my Delorme BlueLogger bluetooth GPS unit, but the setup is a bit odd. Check out the FAQ at the Mobile Google Maps site. You have to pair your bluetooth GPS with your phone, and then tell the app to use ‘internal’ GPS intead. This did work for me, and led me to play with some of the built in location tools that the E61 apparently ships with.
- Y-Browser – normally I use FExplorer, but that doesn’t have a 3rd edition port yet. Y-Browser gets the job done though. It’s what I used while poking around in the Python stuff.
- EEMame – because games are a universal language, and no one is impressed with any bit of technology normally until they see a game being played on it. Nothing screams geek like emulating classic arcade machinies and playing the original ROMs, so I figured my phone should be able to do it. I should also download Lumines mobile and give that a try.
The device certainly isn’t perfect yet. What’s some of the rough edges?
- The responsiveness is a bit poor. Sometimes I find myself wondering if the device has hung as it spins away doing something. It actually seems to be more UI update issues than base operating system slowness. I’ve done a few downloads in the browser where apparently the request had hung at 50%, but it had really downloaded the rest of the file without updating the UI.
- The Wifi support seems to be great. I like the way the network handling has integrated the new interface type. However support for WPA seems to be a bit off. I run WPA on my home network and I’ve had to request a connection a few times more than once. I’ll get the “select an access point dialog”, I choose my home network and the device kicks back with a WPA authentication error almost immediately. Try to connect again and it goes through.
- Access point groups aren’t consistently used. The device includes support for access point groups, which are a series of access points to be tried in some predetermined order. The purpose is to allow you to define a hunt order for the different access types. “Use this wifi network if you can find it, and then this wifi network if you can find it, and finally call back on cellular if you can’t find either. Fantastic! However it seems like the access point groups only appear in the default access point selection list for some apps. Others simply don’t display them to choose from. For some reason the web browser is one of them, so I have to choose my access point explicitly every time I start up the browser.
- Browser crashes. Generally the browser seems to be quick and slick. The minimap I could either take or leave, doesn’t really do all that much for me. However, the history function includes a small snapshot of the pages to flip through as you choose where to go in your history list. That I think really rocks and helps me a lot. However, on the other hand, I’ve gotten the browser to crash on me a few times. Seemingly more likely to happen when downloading something using the browser than while browsing with it. But still very very annoying.
I would definitely recommend getting a memory card to go along with this. The wifi makes that storage much easier to fill. I live over by a Fry’s, so I just ran out and got a miniSD card this afternoon. But if you aren’t in the middle of tech central and you’re picking up an E61, might as well add the memory card right off the bat if you don’t have one. I was amazed to see that 2 gig minisd cards are under $90. Yet still another memory format I have to get damnit! At least this one is cheap in the higher capacities. I think I paid $90 for my 1 gig dual voltage rsmmc just a few months ago.
I still have a few more apps to test out and play around with. And I haven’t even really experimented too much with the built in functions. There’s a spreadsheet and some kind of presentation software on this this by default! I also picked up the trial of Wayfinder to give that a try. $99 is a lot to spend on maps though, and I might be able to get what I need out of Mobile Google Maps for now. Anyone else with an E61 out there find some particularly interesting stuff?
E61 – The Madness Begins
Jul 21st
I stayed home today to wait for my E61 to arrive from Amazon. I figured it was a short wait. When I got up this morning I was greeted with this latest line on the tracking page:
Jul 21, 2006 07:51:00 AM MENLO PARK CA US Out for delivery
Some time around 9am I got a call from an automated system saying that a package was on the way and someone had to be there to sign for it. “Should be here in no time!” I thought to myself.
Fast forward 12 hours, 7:30pm, the package arrives at my doorstep. 12 hours on a truck wandering around between Menlo Park and Palo Alto? Even stopping frequently, I would be hard pressed to drive around in Palo Alto and Menlo Park for 12 hours without having to drive the same roads over and over. In general UPS does a great job with tracking packages these days, but there is a bit of a last mile issue in there still.
Howard Rheingold Interview
Jul 21st
There’s a good interview with Howard Rheingold up at ZDnet:
Of course, I believe that open technologies like the Internet promote innovation and provide political, economic, and cultural opportunities to entire populations that used to be reserved for elites, and I fear that the current efforts by incumbent wealth and power holders might successfully enclose what was once open.
Extension of copyright into every realm, digital rights management building control into cultural products, trusted computing baking control into the hardware itself, the death of net neutrality recentralizing control of the formerly radically decentralized network — all these battles in political arenas, financed by huge amounts of money, are going the way of the powers-that-be.
I don’t think there’s anything inherently democratic in new media. Many-to-many communication and commons based peer production will produce social and economic capital only if large numbers of people understand what is at stake in these esoteric techno-regulatory conflicts and take the power that is temporarily theirs into their hands and do something with it.
It’s probably no surprize to anyone that I agree. Recently I’ve been thinking even more than normal about how to get control of “mobile” into the hands of the people using it. By which I really just mean making the mobile networks and building mobile applictions more like building internet applications. Things like replacing or blending cellular access (one of the reasons I’m so jazzed about my dual access method device) so that we end up less dependent on the cellular network, or replacing centrally controlled messaging architecture with systems like XMPP.
I want a device in my hand that lets me make voice calls, send messages to my friends, and run some internet connected applications. What runs underneath that device doesn’t really matter to me from the application side, as long as it works I don’t really care. So if cellular networks are a hostile place to work, I’m definitely fine with working on other access mechanisms. For the most part the other access mechanisms aren’t as convenient and don’t offer all the functionality of a cellular network (although even that is changing). Having the other access mechanisms available helps put pressure on the carriers to work to make their networks competitive with other technologies, otherwise their cashflow goes away as traffic moves to those other networks. The only real motivation they can comprehend with such a glut of regulation keeping them away from the fear of direct competition from anything outside the traditional telecoms marketplace.
Stuff that’s worth checking out if you’re interested in this kind of thing:
- Asterisk – an open source implementation of the kinds of equipment normally run by telecommunications companies.
- SIP – an example of a protocol that extends telecommunications signalling interface out to IP based endpoints and client.
- XMPP – is the “Jabber protocol” for instant messages. Instead of being built on a monolithic central server/server farm approach it works more like the decentralized email system.
- Homebrew Mobile Phone club – a group of folks working on getting a device of their own making that they can replace their mobile handsets with. Meetings in the Silicon Valley area, but the website itself contains a lot of useful information for folks anywhere.
- Handhelds.org – works on open source projects for portable and handheld systems. I have a soft spot for this one, Linux on an iPaq was pretty much the first pratical Linux based handheld I was able to get working. Where “practical” is subjective of course.
- Python for the Series60 – for the folks interested in the low barrier to experimentation route, the open source language ported to a relatively easy to get and popular set of handsets. (much more easy for folks outside the US as it turns out)
Stuff like Asterisk and SIP start to blend the line between where the telecommunications network stops and the Internet starts. Exactly the kind of stuff most of us techies expected to happen when all the talk about “voice traffic going IP” was getting flung around. However the traffic went IP and stayed bottled up inside a private network. The work on alternative operating systems for handsets, as well as fully open handsets, is important because the carriers understand the threat from systems like WiFi, and generally do what they can to not carry handsets that could threaten their lockin. If it’s not on the carrier shelf it effectively doesn’t exist in the US. Even the geeks are normally confused about how to get some cool handset they might want if they can’t walk into a Cingular store and ask for it. Breaking that channel, with the carriers controlling both the network and the distribution of access equipment for that network, would also work out to our benfit.
