Bidimensional codes
cell - No Comments » - Posted on May, 27 at 8:53 am
This last month I’ve been developing a visual tags reader for cell phones using Java mobile and the core library of the ZXing project. The software reads a special formatted and encrypted 2d code and shows related information stored in an XML database. The user can then edit some of the fields.

This is a QR code
Once I understand the limitations of the Java mobile platform, developing the application was pretty easy and interesting. These are the main topics I learned while working on this project:
- Bidimensional codes are really interesting, especially when the tags have also visual information. For an example, look this website with pictures inside the QR tag.
- An emulator allow easier and faster development of applications but you need to test the prototype in the real hardware as soon as possible. The reason is that you really want to verify that the application runs at correct speed and that you are not using too much memory. In the case of Java mobile, you can download the Sun wireless toolkit which comes with a handy emulator, but in my experience this emulator is not the best.
Sony Ericsson Wireless toolkit comes with a emulator closer to the real behaviour of the real devices. Problem is that Sony Ericsson WTK is only available on Windows platforms, and although there are ways to install and run the emulator under Linux, at the end I decided to install a Windows Virtual Machine only for testing with the SE emulator.
- Java is very complete but Java mobile is not. Java core libraries come with all the basic functionality you need to forget about most of the boring subroutines of the the underlaying layers and focus on the logic and the user interface of your application. On the other hand, Java mobile libraries are a subset of the regular Java libraries and it’s common to need common functions that are in Java but not in Java mobile. That means that you need to design your own workarounds or rely on the phone manufacturer’s special libraries condemning your app to run only in selected devices (Something that can be fine in case of developing special designed business applications because it can save lot of time)
- There is not any XML engine on Java mobile, and I couldn’t find any LGPL/BSD SQL compliant database. Does anyone know any engine I could have used?
- The signing of the Java mobile applications. I understand the reason Sun decided to force the applications to be signed with certificates issued by big authorities but I think it was an error not to define clearly the set of certificates all the phones needed to have. Sun should have defined a standard procedure to overcome the signing problem.
Anyway, the non-signed applications are too restricted, and maybe is the reason we only use our cells for gaming instead of business applications. I think it was an error not to automatically allow the Java applications basic functionality like access to the local filesystem, access to the PIM database or taking pictures. I think that only real critical functionality like connection to the network should be confirmed by the user, who either way is annoyed by constant confirmations. After all, you can have malware in your cell that is stealing data, but if it can’t connect to the network the data is not going anywhere. It’s only a matter of educate the user.
This is something that Sony Ericsson has resolved giving the user the opportunity of relaxing a lot the security rules for each ones of the applications installed. It’s not as good as sign your application but at least you can run business applications of the cell phone.
- Mobile computing is really exciting. Cell phone applications are not only games anymore. Java business applications and web based applications on normal cellphones are interesting and easy to develop. Google had foreseen very well this market, developing Android (An operative system for smartphones and a complete Java library, SDK and open license). Mobile applications will be an important market by the time the first Android based phones appear in the market later this year. Android based devices will be the firsts serious competitors to the already established blackberries and smartphones and they will probably eclipse all of them and will start fighting hand by hand with the Iphone.
I really want to continue developing mobile appications, and in the following weeks I will start playing with the Android library. Stay in touch!
Korean technology
technology - No Comments » - Posted on April, 23 at 1:18 pm
Since I moved to Seoul, I’m living on one of the most technological societies of the world. From my Spanish point of view Koreans have some wierd technological stuff and sometimes I wonder how come I was not born here with my fellows.
The maximum technical-related aspiration of the people is living in an apartment fully stock of all kind of gadgets like automatic doors, automatic lights, voice controled washing machines, internet conected fridges and huge flat televisions.
Korean Internet Connection
Korean Internet penetration is probably the largest of all countries. 60% of families enjoy internet conection in their homes and 87% of them (compare that with US 19%) is using broadband.
Broadband is some form of high speed internet, for example a high speed and high quality fibre line, ADSL line, cable or mobile internet. In my case we are paying around 30K wons (20 EUR) for an ADSL line but in general, DSL lines are falling steadily and FFT (fiber to the home) is growing
Cell technology
Korea had made a huge investment in CDMA technology, which was great at that time but a real problem now that all providers are switching to GSM. Korean cells are a bit old-fashioned to my eyes because I’m used to see the last mobile gadgets in Spain. In Korea there are not Iphones (Iphones are GSM) but there are also cells with huge touch screens althouth nobody seems to have one (Maybe they are too high end, maybe having a huge touch screen is not atractive to Koreans)
All modern cells support Digital TV, and Koreans use it as entertainment while conmutting to work or school in bus and subway where by the way there is perfect voice and data service.
Mobile internet
Korea is leader regarding mobile internet. They made their own cool technology (Wibro) to prevent korean companies from paying royalties to american/european ones. Wibro has been a huge success and now it’s part of the Wimax specification: Mobile Wimax = Wibro.
Wibro is based on CDMA designs and for that reason I think Koreans are going to jump over the 3G cell technology and use 4G directly. Actually they are now already using 4G with Wibro, which must be popular because it’s so cheap. Wibro cost around 20K wons per month (13,5 EUR) for a reliable ubiquitous wireless internet connectivity. I’m pretty sure Wibro works way better than our UMTS-based HSPDA wireless connection back in Spain.
Operative systems
Korea is Microsoft’s best client. I’ve seen Ipods but almost no Apple computers. Furthermore there is no Linux presence.
Korean websites usually only work with Explorer and frecuently they need to install plugins in the form of special ActiveX controls so if you are living in Korea you need to use Windows or a least have a Windows computer close to you.
¿What are the reasons for this love? Having a uniform environment helped the country to reach a incredible technological level faster. Nowadays it seems they have a huge problem because it’s a very bad experience to use a korean computer: korean Windows computers tend to have lots and lots of crappy extra software installed that makes computers slow to a crawl.
There are also other problems, for example I would like to use a USB Wibro dongle so I can have internet conection everywhere, but It doesn’t work on linux so I’m not going to apply for the service.
I won Simyo’s competition!
Today I’ve been in Madrid’s Simyo’s office for the awards ceremony and to meet Alberto Lorente and Karl Bornefalk from Simyo’s team. They make pictures for the press release (Pictures I seriously expect not to appear in any media, I had such an horrible face!) and we had a small non-technical interview with the people who develop their website (Alberto Knapp from Cocktail and Ernesto Funes from Paradigma, I love these guys and their philosophy). I met also Ruben and Javier, the guys of Sixjumps who develop ‘Club Simyo’. Very nice guys and company, they have a bright future!
Simyo also treat us for lunch and we had the opportunity to discuss about Simyo and the future of our applications. Simyo was cool before knowing who was working under the scenes because they are such a close and innovative company, but now I ‘ve realized the team is very powerful and enthusiastic, they enjoy a lot their work and they have the goal of change how the Spanish cell companies work.
Simyo is so cool!