Sunday, April 27, 2008

Roaming is dangerous (to your budget)

Last week a Finnish newspaper wrote about a poor customer who had subscribed to a fixed price data plan and thought that it is valid also when abroad. Result: his phone bill had 2.300€ data costs compared to normal 14,90€. Earlier this year there were a piece of news about a user who had used roaming data worth 25.000€. 

Although in cases above the reason might had been that user didn't know about the subscription details and was using data connections intentionally, it is highly probable that users use data connections abroad without understanding that. Many applications ask permission to use network connections automatically and sooner or later poor user don't know anymore how many applications there are that keep on pulling updated data from the network. When user is having fixed-price data plan and he is using his home network, there is no problem but when terminal connects to a roaming network problems will begin.

I feel I have to remind about a simple trick I presented last summer at Nokia's site. It might even make sense to productize "safe traveling with smartphone" solution and add also other features that people need when traveling; for example whenever I'm abroad I turn off all the unnecessary power-consuming receivers like Bluetooth and WiFi because I cannot be sure where and when I can recharge the battery next time.


Thursday, April 24, 2008

Some things I don’t understand

Today I visited an event where Microsoft was promoting their new Windows Mobile 6.1 platform and Mobile Monday organization delivered first “Most Mobile Enterprise” award. At that event I noticed some things that are either funny or embarrassing, depending on your views.

I’m not a Windows Mobile expert, but I got an impression that a great new feature in Windows Mobile 6.1 allows users easily enable out-of-office email alerts from their mobile terminals. This feature was listed in two different presentations, just after a long story how Windows Mobile 6.1 allows users to continue work with mobile devices almost as if they were at the office. I understand that in some situations out-of-office messages are handy, but in most cases those messages are needed if you don’t have a powerful mobile device. If you have state-of-the-art Windows Mobile 6.1 device with all the goodies, wouldn’t that just make out-of-office messages obsolete. Instead of turning easily that message on, just use your device!

Microsoft’s Unified Communications solution was presented and it has features like user’s presence information, real time chats for both one-to-one and group meetings and so on. Unfortunately the demonstration failed twice and I didn’t quite get the idea about what was so great about the new product that allowed chatting between PC-client and Windows Mobile terminal. Maybe I wasn’t paying enough attention to the presentation because I was doing realtime group chat with my Nokia E61 using Fring, like we have done in our company for a long time. By the way, our chat didn’t fail, although the bad network conditions were blamed for the demo effect. If you are about to invest in Microsoft’s solution, use the free services first and test if it fits to your business; if yes, then do the investment. (I admit, this is not a fair comparison because Microsoft’s solution is much more than just chatting and it also has manageability options that are very important for enterprises, however the failed demo compared to my live chat session gave some perspective)

At the event Most Mobile Enterprise title was awarded to Helsinki public transport system, because they use mobile possibilities in many ways to give better service to public. This is yet another initiative to make public transport better option to private cars and hence limiting the pollution originated from traffic. Ironically enough, the event was held in a car megastore located in an area where nobody could arrive without a car because public transport connections are not adequate there. While public transport system was awarded I could have bought a nice little Hummer H3, carbon-dioxide emissions just 346 g/km. 


Tuesday, April 8, 2008

More questions for mobile developers

You might have read my posting about the questions you should ask before a mobile project and still you decided to create a downloadable application for your customers. You probably have to support a use case that requires offline operations or user interface must be better than browser can provide with your target devices. Here is the next list of questions to think about.

Does installation package include configuration?

When your application gets installed to terminal, it must get configured; application must know the server address, username, port number, security scheme etc. Technically oriented people will ask correct settings from administrator, open settings screen, input values to right fields and start using the application. Unfortunately that is not enough. When application is delivered to hundreds or thousands of users, it is not likely that all of them are "technically oriented". Your help desk will get flooded by basic questions about correct settings or people will ask local guru how to do the settings, trying desperately to understand what is wrong with the application. Some users will make it, others don't. That's why you must create installation packages so that "installation includes configuration" or if that is not possible, create a startup-wizard to guide the user through the basic settings. If application is ready to use directly after the installation, you have done good job.

Can you manage the application after the installation?

Sooner or later something goes wrong and your customer will call the service help desk telling that “I didn’t change anything, everything was working OK but now all I get are error codes that I didn’t write down. Can you help me?” If you haven’t thought about this during the development I guess your service people will be clueless and frustrated quite soon. On the other hand, if you have some mechanism to remotely query the state of the application or you can ask the user some relevant questions, then the problem solving task is very much easier. Supporting device management (DM) solutions can be your life-saver.

Most probably installing your application using standard device management tools is not an issue - application installation is one of the basic tasks that those systems do. However, there are some other device management tasks that can be enabled or disabled by design. Can your application be configured with a configuration file? If yes, is the file stored to directory where device management applications can read and write it? If you put that file to a DM writable directory, you can find good ways how to fulfill requirement "installation includes configuration". Some device management solutions support plugins for 3rd party applications. Check what DM systems your primary customers use and try to find out if such plugins can be implemented.

If you feel that device management solutions are out of scope, then at least include feature that checks from your server if there is an upgrade available, something like what application inventory service suggests.

Is your application brand-aware?

If your business strategy allows, make your application "brandable" by design. That means that when large customer asks you to make them a special version with their corporate branding, you should feel safe to answer "yes". This might include things like changing the application caption, icons, about-boxes, or almost everything that can be used to promote company's brand. Branding questions may not be asked very often, but when that happens you will be happy when you know that it can be done.


Thursday, April 3, 2008

Mobile Mail != Push Mail

I guess it is not a big surprise that you can read mail with your mobile device and there are multiple ways how to do it. You can use browser, POP, IMAP, different 3rd party applications and so on. All this is simple and technology is well established.

What bothers me here is that the concept of "Push Mail" keeps on appearing as a synonym for "having access to your mailbox using mobile device". Maybe I'm thinking this a little bit from a technical side, but I think "Push Mail" is just one attribute of mobile mail solution; if solution has "Push Mail" attribute it means that server component actively signals mobile terminal about changes in mailbox state. I must emphasize that this is just my interpretation about the deeper meaning of "Push Mail" - which is also problematic; is your "Push Mail" same as mine? What do your customers understand with "Push Mail" when they ask you to give a tender about delivering such a system?

Many companies and organizations seem to think that mobile mail system without "Push Mail" feature is not an option, messages must be delivered to mobile terminal without any delay or solution is useless. I disagree on that. Global email system is a collection of store-and-forward servers that are suffering under increasing number spam messages. When you send a message to somebody you really can't be sure that the message will ever reach the recipient's inbox and when that happens. Why should somebody put a huge effort on building a system that optimizes the very last mile of email delivery? When the message has travelled across the world for tens of minutes or hours, is it really important that the message takes the last jump in one second or less; I don't think so. By the way, if "pushing" the messages is so much better than "pulling", you better make sure that your desktop email client get "pushed" when new messages arrive - have you verified that? Or are you like me and you care more about the easiness of email handling and don't care about the byte-level communications protocol when the message finally arrives. After all, you typically don't know that you will receive an email and you are not actively waiting for it. If there is a very urgent issue, mobile phones have nice ability to receive voice calls and SMS messages, too!

If "pushing" is not important, what is? If you are considering mobile mail system, I'd check at least following things before signing the contract:
  • Can I read messages from different folders?
  • Can I send messages from mobile terminal(sic!) and are the message copies also saved at my email system?
  • Is message handling at "normal" level: messages can be replied, forwarded, sent to multiple recipients and so on?
  • When you don't read your email for a while (I hope you have vacations, too!), can you clean your inbox before you start using mobile mail again, or will all the spam messages arrive to your mobile phone?
  • Is the solution secure enough? Enough security means that you understand the solution at such level that you can assess the potential risks and feel comfortable with that information.
  • How can you manage the system? As soon as somebody gets mobile access to mailbox, he will start experimenting with different settings and before you understand, the settings are all messed up and nothing works anymore. How would you solve this?
  • Last but not least: remember that spam messages are annoying, but when spam messages hit your mobile terminal they will drive you crazy