JAJAH Development Blog

Blogs by JAJAH Developers

Archive for the ‘Mobile’ Category

A Smartphone or a Got-Potential Phone

Thursday, August 13th, 2009
When I was a high school student, my parents often heard teachers say about me “he’s got potential, this kid, but he’s not fulfilling it”.  On the way home, my parents would ask me why am I’m not exercising my “potential”. I would told them that school is boring. Truth is, I was just being lazy. Other students in my class had perhaps less “potential” but they did their homework and prepared for tests. Eventually, these do-it-right students got better grades than me. These days, I feel the story repeats itself (no, I’m not back at school…). Replacing the “got potential” and “do it right” students are my cellular phones. I used to carry around simple (some would say primitive) Nokia 6021. This phone doesn’t have 3G, WiFi, advanced OS, GPS or even a camera. I used it for 3 main operations: alarm clock, calendar reminders and – duh! – calls. The phone excelled in all 3 operations. Really. 6021_hardhat Alarm always went off at the times it was set, reminders were easy to set and read, and, yes!, it even made and received phone calls (SMS included). All that, while not depleting the battery after mere hours. Life were good. About three weeks ago, I replaced my mobile phone at work. I had 4 choices (all Nokia): E51, 5800  XpressMusic,  3120 and 6210. I decided 6210_scholarto go with 6210. It has HSPA connection, GPS, Symbian 9.3 and 3.2Mp camera. Since then, I sometimes find an analogy  between my school potential and my new smart phone. Sure, Nokia 6210 got potential, but, does it show? Is it better than  my old even-not-feature phone Nokia 6021? I’m not so sure. “God is in the details” Albert Einstein once said, and boy was he right! On many basic functionalities, Nokia 6021 performs much better than 6210. Let’s take for example the alarm clock. On 6021, I would simply set the alarm and that’s it. On 6210, the alarm’s setting automatically set the alarm to be repetitive which I don’t need. Cancelling it requires few more clicks on the phone. What’s more, I want the delay period to be 5 minutes like 6021’ settings and not the 6210’s 15 minutes. Calendar. There’s no option to set a time for a memo reminder. Only a date. I want to set my reminders at the time I want to. If I have too many reminders I could miss an important one because the calendar will not alert me. An even more important issue is that there is no option to set a call reminder. This is  an option that Nokia 6021 (the primitive one, remember?) has but 6210 Smartphone (?) don’t. How silly is that? I’m used to set call reminders quite often with 6021 but now I can’t. My final grunt, about calls, is more about the contacts application than the call itself. Usually, we call our friends either from the call log (pressing the green button shows previous calls made) or from the contacts. On 6021, I look for my contact, find it and press the green button. On 6210 it’s not that simple. Remember, we have a Smartphone here, and we need to demonstrate its potential, right? Right. If your contact has several phone numbers (mobile and home for example), 6210 will show them to you. Why not automatically select the first number as the default like 6021 does? Pressing the green button when the contact is displayed will trigger the call to the default number. Another issue with 6021is that if I search for a contact, select a number and call from it, the next time I want to use the contacts, it goes back to the contact I previously called. This is stupid. Why not return to the main screen of contacts (again, as 6021 does)? This is exactly where the smart-but-lazy-phone fails. Sure, its applications can run in the background and you can return to them instantly, unlike those ‘primitive’ phones.  Still, sometimes, the simple things works much better, like in 6021. Conclusion. Nokia 6210 Navigator is indeed smart. I like installing applications on it like TwitterMobile and Waze. I would definitely suggest users upgrading their phone to consider it as an option. However, looks like Nokia made a few mistakes in the UX department. It’s difficult balancing potential with simplicity, but I would expect Nokia to do better. If you’re “old-school” and just want to use your phone to make calls, stick with Nokia 6021.

TwitterMobile Review

Sunday, August 9th, 2009
Following my previous review about Twibble mobile application, I was asked to try out TwitterMobile. The application is produced by Tricast Solutions from UK and is written in J2ME so it should work on many mobile phones in the market. However, currently it works only on Sony-Ericsson and Nokia S60 240*320 devices. Lucky for me, I have a Nokia 6210 Navigator phone which have the right screen size, so I could try the application. Screenshot0019Unlike Twibble, installation process is easy and user friendly. The user selects his phone type, enter his email and phone number and press the download button. Next, the user receives a special SMS message with a link to download the client. Pressing the link open-up the a mobile download page with a link to download the actual client. BTW, the mobile page seems to recognize the mobile model, but it turns out that’s due to the link. Meaning, the mobile site does NOT recognize the device’s user agent. This might cause problems for users who didn’t put the right model at the beginning of the process. It also means that Tricast could have saved 2-3 clicks till the actual download, but, it’s not a biggy. Download completed, it’s time to test the application. If I had to describe the application user-experience in one word, it will  Screenshot0022have to be – Wow! The GUI is beautiful, just like Tricast say in their site. Using TWUIK reach media engine, the application flows elegantly between tweets and application options. The menu is not your conventional left-button-opens-a-doll-menu, but rather, a cool, mac-like graphic choices. Great job there Tricast! However, this is where the complements stop and the complains begin; and there’re quite a few of them. First of all, the user is not given a choice to save his password locally. More secured? maybe, but it’s annoying to type my 10-characters password. Next, the phone’s security manager prompt the user many times for web access approval. This is because the application is not signed-in with a certificate. Oh well, I could live with that (still, the GUI make up for it). We’re not done though. Unlike Twibble, Twitter Mobile doesn’t have the option to open a link inside a tweet. But wait, there’s more! if you want to tweet, you can but there’s no option to attach a picture! How lame is that?! I mean, the main point (at least for me) for having a mobile twitter application, is to tweet about an interesting event and add a picture to it. That in itself was enough to persuade me to stick with Twibble, but it’s not over here.  Want to check your @replies or your @direct-messages? Sorry. You have to pay 1.99£ for that. Yes, you heard me. A fee for a free service. No way,  José. The bottom line is that the application gets an A+ on the cool factor but fails in usability. Perhaps Tricast is using the client to demonstrate its TWUIK technology, I don’t know. I do know that if they hope to make serious money from the application itself, they will have to enable picture attachment, URL linking and most importantly, free basic services in twitter.

Twibble review

Monday, August 3rd, 2009
As an avid Twitter user, I’m hooked to the service. I use it mainly to learn abut interesting news as they happen but also to learn what my friends are doing. Twitter 140-only-words strength is somewhat a limitation when you want to capture your friends’ status. That’s where services like twitpic helps a lot. A picture is worth a thousand words and with Twitter, about  7.14 tweets! So, the best way  to convey your personal experience is by adding a pic link to your tweet, and preferably, as close as possible to the time of happening. That’s where mobile twitter applications comes into play. I recently installed Mobile Twibble application on Nokia 6210 Navigator and used it to update my status. Here’re my thoughts: Installation is not easy to the un-experienced mobile user. The user has to go to a general installation page on Screenshot0010 http://m.twibble.de. The page provides downloads to a dedicated BlackBerry application or a general J2ME application. The page is filled with semi-professional terms like jar and MIDP2 which are confusing to the novice user. Twibble would be best to recognize the device by its user agent header and provide step by step instructions on its web site. Another issue with the application is that there are actually two J2ME versions. Signed and unsigned. A phone without the proper certificates will fail the signed version, leaving the user confused. True, Twibble works best with signed application permissions (we’ll get to that later), but again, proper instructions with images on the web site would clarify the troubled user. Screenshot0012Once installed, the application is very intuitive to use. the Navigation keys switch the view from your friends tweets to replies, Direct messages and customized searches that the user can configure. Still, if you follow more than 100 users , it’s not easy keeping track with limited size screen. Tweeting, on the other hand, is very easy. with one key short cut, the user sees the update page where he can set his status. The application also enables the user to add a picture from his saved images. However, for un-signed applications, finding the right image is difficult. First thing the user has to do is to find the folder where the images are stored. On my Screenshot0015phone, it’s located in the somewhat enigmatic folder name E:/Images/100_2009/. Another problem is that usually, the images  themselves have un-friendly names like 20090721_004.jpg which makes it difficult selecting the right image. The application does provide the user with the option to view all images as thumbnails, but, un-signed application requires permission from the user before opening each image. This is quite an annoyance. However, since we’re tweeting live events, most likely the image the user wish to attach will be the amongst the last images taken. I wish Twibble would build a native Symbian plug-in that will add an option to tweet a picture directly from the native gallery application. In summary, once passing the installation hurdle, it’s easy to tweet your on-line events and attach pictures, especially if you installed the signed version.

So you want to develop on Windows Mobile

Monday, May 18th, 2009
Windows Mobile 6.5 is done and that’s a good opportunity to provide a quick jump-start to developers wishing to learn more about the OS. WM_6_5Microsoft has a tendency to overload developers with abundant API of its various platforms and technologies. Windows Mobile is no different. Managed and native API, .Net, MFC, ATL, Win32… it’s all there for the confused developer. Luckily, Microsoft has recently published an article discussing APIs for Windows Mobile 6 and later, and how to select the best fit for your application needs. BTW, don’t be tempted to choose managed .Net API before fully understanding the functional requirements from your application and the devices it needs to run on. Win32 is better if you wish the application to run on as many devices as possible. A good place to learn Windows Mobile development is MSDN’s ramp up which is a community-based learning program, teaching various aspects in development for WM. Another excellent source for learning and help is blogs of mobile gurus. I recommend subscribing to the following blogs: Raffaele Limosaniblog, Alex Yakhnin, Christopher Fairbairn, Windows Mobile team blog, Reed and Steve blog, the Moth, and finally, Chris Craft (especially his 30 days of .Net series). OK. You’ve done your reading and fill ready to start developing? hold on. Make sure you took into account globalization and localization issues. Simon Judge lists many of them. Once done development, you need to QA your application. If your application aims for numerous devices in many countries, involving different networks, you should consider using DeviceAnywhere or maybe even Mob4Hire. Finished the cycle? congratulation! Now you can go and publish your application on Windows Marketplace.

A site for mobile eyes

Saturday, April 4th, 2009
Mobile devices are no longer tools for calling someone. That’s a known fact. You can take pictures with it, read emails, navigate, read web content, check your calendar and more. However, in the mass user eyes, it is still not regarded as an extension to your computer. Sometimes, when I’m outside my home or office, I come across interesting stuff; movie posters, concerts, commercials or even a quick glance at a newspaper’s headline. For example, I can see a poster about  Antonio Gades’s flamenco version of “Carmen” and wish to learn when and where it shows. Until recently, my mobile options to get this information were limited. I’d have to  open my browser, go to Google and type something like “gades carmen tel aviv”. Then I’d have to go over the results and look for the information I want. That’s very tedious even if you have iPhone.
xsightsLuckily, we have options which are much more fun and easy to use. The first one is Xsights. With xsights solution, the user makes a video call (no need to download an application) and points his camera at his object of interest (poster, news, image, text). xsights understands the image and delivers the user an interactive multimedia response. Currently, the company is focused mainly on newspapers. Mobile readers will point their phone on interesting article and bang, they are presented with in-depth information. For example, point the camera at an article about last night soccer match and get the highlights from the game.
Nokia Point & FindNext comes Nokia. Nokia has recently launched a beta application called Nokia Point & Find. The application, currently available in USA and UK only and for Nokia N95 models, utilizes the compound of phone’s camera, Internet connection and GPS to recognize a real life object and get information relevant to the context and location. For example, users of the service could get information about movie like reviews, local show times, trailers and could even buy tickets on-line. What I like most about the service is the management portal Nokia provides for publishers. Nokia wouldn’t want to have a dedicated professional service team to configure campaigns. Instead, Nokia’s management portal enables the publishers to do it themselves. What I don’t like is that the application is relevant only to N95 models in the USA and UK. Plus, the user will have to download and install the application. Kooaba technology used in Mentos campaign Finally there’s  Kooaba. Koomba is a spin-off company from the ETH Zurich, an outstanding science and technology university in Switzerland. Their technology was already used in several campaigns and looks very mature. Mobile users can send images in various ways: email, MMS, iPhone and J2ME applications, although video calls are not available yet. Publishers can use  a web-based campaign manager to set up their account. The company also offers API for partners and developers. Overall, this is very exciting! The products above demonstrate how to use the distinctive benefits that mobile device has to offer to provide new experiences for mobile users and business opportunities for publishers.

iphone.jajah.com one of top 40 best iPhone optimized websites

Sunday, March 22nd, 2009
iphonetouch.blorge has recently published a story from Arnold Zafra about top 40 best iPhone optimized web sites. Our own iphone.jajah.com is one of the top 40 web sites!  The site is amongst a respectable list of other iphone optimized sites like Amazon, CBS News, Digg, Meebo, Google and Twitter. Mr. Zafra found these sites to be “useful and highly iPhone optimized sites that will enhance your online iPhone experience”. JAJAH iphone’s dedicated web site, launched at December 2007, has aimed to fully optimize the device capabilities while maintaining a simple and easy user experience. Mr. Zafra story is a testimony for JAJAH efforts in providing a variety of mobile solutions to make low cost calls.

Google Voice – what’s next

Saturday, March 14th, 2009
Google’s latest revolution and the usual suspect
By now, the news of Google Voice has spread all over the web. Some celebrates the new revolution from the world’s web seminary, while other raise the usual concerns about invading your privacy. To the skeptics, I can only say, common! Nobody’s forcing you to use it. Google’s power is incredible but there’re still alternatives out there. Besides, free services in exchange for some level of privacy invasion already exist and gain popularity. (Gmail, being the most obvious example, but there’re others). Moreover, we already deliberately provide so much private information about ourselves in Facebook, Twitter, windows messenger status and others that privacy claims about big brother monitoring seems somewhat archaic.
One number, many friends
However, Google Voice is facing other challenges before it become globally  available and gain widespread use. First of all, Google Voices should help its users to spread their new number with their friends, family and colleagues. Perhaps a variation of Google Mobile sync service could help in that. Another related problem is that the numbers given to users are still only US. Even if the service becomes global, the given number is always local to the user. So, if I get a US number and my friend live in Austria, it will still cost a lot of money to make the international call from Austria to Germany. Of course, this is a common problem with all international calls. However, if Google has ambitions to make their service ubiquitous, they’d need to find a solution to this issue. JAJAH Direct can provide such a solution and at low-cost rates.
I’m sorry, what did you say?
One of Google Voice prominent service is it’s voicemail transcripts. It’s a great service, if, Google can indeed make fully automated transcriptions. Personally, I don’t see that happening in the near future. Google’s Speech-to-text services are gaudi and GOOG-411. Both services are limited to recognizing specific words out of a pre-defines list like Joe’s Pizza, economics, Texas. At this point, it’s not possible to fully transcribe complete voice mails without making mistakes, asking the user to repeat some words or have human intervention. A partial solution might be to make an educated guess about the nature of the voicemail content. If Google could assume a particular voicemail is of specifi context (entertainment, sports, business), it could reduce the number of transcription mistakes to a minimum. Since Google already has vast knowledge about its users habits and interest areas, that seems to be taken care of. Also, let’s not forget that transcription service should be able to understand different accents, languages, oral mistakes made by the user’s themselves,  nick names, voice interference and more before it become accurate. I know of only one such device that does a similar task, but, it will be in production state only 142 years form now.
One last thing
In addition to the above , Google has to overcome huge operational and regulatory challenges. Call termination, VoIP-related fraud, IP call routing and hosting are just few of issues any valuable VoIP company has to deal with. I wonder how much Google Voice is ready to cope with these issues, especially if it wishes to become a global service provider like JAJAH.

How to make conference calls from your mobile

Sunday, February 22nd, 2009
Did you know you can make conference calls from your mobile? Yes, we can! This functionality is hidden inside your phone and my guess is that 99% of mobile users are not aware of it. Here’s a quick step-by-step on how to do it on Nokia S40 phones. I welcome you to add in the comments explanations for other manufacturers.
  1. Call someone! (that’s easy, right?) and wait for your friend to answer. Let’s say his name is Riker.
  2. Press options, New call (ah ha!) and type the phone number of another friend. Let’s say his name is Worf. Wait for Worf to answer (Kapla!)
  3. Back on your phone, you’re now talking to Worf while Riker is on hold. Now press options, scroll down and press on – yes, you got it – Conference. Now you, Riker and Worf can speak all together.
  4. If you wish to add another friend - Data for example - simply repeat steps 2 and 3.
  5. To finish the conference just hang up. All your friends will be disconnected from the call.
A word of caution. You should check with your operator how much this calls will cost you. I’m not sure it’s just the rate of one call times the number of participants in the conference call. Finally, if you wish to make low-cost conference calls to friends and colleagues abroad, you can use JAJAH’s conference call service. If you’re not in front of your computer, you can make conference call as described above with JAJAH.Direct numbers.

The Flop of Mobile VoIP

Saturday, October 4th, 2008
Analysts say that Mobile VoIP Market will boom around 2012 hitting more than $65B annual revenues. Many interpret this as a sign for investments in Mobile VoIP applications and services, thinking that consumer VoIP market will grow from nearly zero in 2008 to over 500M users in 2012. Every other day I read breaking news about VoIP Application for a new mobile device or platform. I think they are all wrong. I don’t think that by 2012 Mobile VoIP market will even exist as a standalone market. VoIP stands for Voice Over Internet Protocol - now which consumer really cares about what protocol is carrying his or her voice to the destination device? What the average consumer wants is a cheap and simple way to make calls, the protocol used is really least of the consumer concerns. Phone bill is though, but what does that have to do with Mobile VoIP? Would Internet Protocol make your phone bill shrink? I hardly think so. Phone companies need to make money so they can keep giving us a high quality service, keep their backbone, customer support, sales and other departments running requires money, and lots of it. Phone companies need to pay their employees, and these guys don’t really care if their dim comes from per minutes or per kilobyte cost. It’s not to say that I don’t think we’re over charged for making calls - we are - since most phone companies are just too greedy - but it has nothing to do with Internet Protocol per se. So unless we switch back to direct trading economy phone companies will continue paying their employees and this money will come from us either directly (us paying phone bills), or indirectly (by someone subsidizing our calls for some sort of benefit). Mobile VoIP application providers may temporarily ‘enjoy’ lower operational costs and thus provide cheaper calling, but it’s neither convenient nor a steady service going beyond the techies community - it’s not a long term investment. The reason I think Mobile VoIP market will never lift of, is that I don’t think it has independent existence from the mobile telephony industry. There are various providers (including JAJAH) providing all sort of mobile VoIP applications to make calls over data connection but those are not consumer ready for many reasons which I won’t count here. Mobile VoIP application can be consumer ready only if they are merged into the mobile device, either coming from the handset maker, mobile service providers or both. Hence it will never be an independent market. Mobile VoIP is a very misleading term. What I do think will happen in the next few years is that Mobile Operators will gradually shift their core infrastructure to be NGN-like and this is because audio is only one of the media types that will be pass over the air - it does not make sense to keep one infrastructure for voice and another for data - merging makes more sense. While this may potentially lower operational costs for mobile operators, it will not necessarily lower how much consumers pay - this has more to do with the core greediness of the operators than the core network architecture. Best, Amichay

Hooking to keyboard in Windows Mobile

Tuesday, September 30th, 2008
Let’s say you built an application that need to know when certain keyboard buttons are pressed. Let’s say you need to get such events even while running the application in the background and some other application is running in the foreground. Well, there’s an easy to use native API that does that: SetWindowsHookEx. There’s an excellent post by Alex Yakhnin on how to use and integrate the method to managed application. However, before using the method, you should consider the following. The method is a private API. Meaning, it can change or even remove in the next CE version. More over, OEMs can decide to remove it themselves. The result is that you have angry customers complaining about your application and you have no idea why. For more information, check this post from Raffael Limosani of Microsoft CSS (Customer service and support). BTW, I highly recommends reading Raffael’s posts. They are very informative and to the point. So, you read the disclaimers and decide to continue and use the method. Alex’s code is excellent but there’re couple of points you need to consider. First of all, each button press initiates at least two events for the button. The first is for the state where the key is pressed (down). The other is of course, when the button is released (up). I decided to handle the down event in order to catch the event before other applications. That brings up to the second point. Other programs are also hooking. Usually, you don’t mind. Every time the hook procedure you set in SetWindowsHookEx is called, you do your stuff. When finished, pass the event to the next hook by calling the appropriately named method CallNextHookEx and return its result. However, if you wish to prevent the key event to pass to other hook, then don’t call CallNextHookEx. Instead, just return 0. Blocking other programs from these events is not very friendly behavior so thing carefully before doing it. On some cases, avoiding the call to CallNextHookEx might not be enough though. For example, the green (send) and red (end) buttons. It seems that the phone application catches events when these buttons are pressed even if you don’t call CallNextHookEx. If you wish to block that as well, have your hook procedure return -1. If you do return 0, expect the phone application to send another key up event upon completion of event processing. Don’t take my word for it. Try it for your self. Finally, don’t forget to call UnhookWindowsHookEx before closing your application or you’ll get a nasty error about WinCe5011bException.
Jajah is the VoIP player that brought you web-activated telephony.