Recently, I've found myself in need of a way to brush up on my French. Since my new phone is a Samsung Blackjack running Windows Mobile 5, I went looking for a translation dictionary to allow me to translate words from English to French on this device. I also wanted to be able to display flashcards for studying vocabulary.
I didn't find any products out there that would allow me to do exactly this, and more importantly, what I did find was commercial or shareware. I'm very much into the idea of free/open source software, especially when it comes to something like a language tool. If anything should be free, a program to help us better communicate should be... Don't you think?
I thought that the challenge of writing an application for my phone would be fun... so in my spare time I set out to write such an application. I've always loved handheld
software development, and being able to write code for this phone is darn cool. The idea that I can write code to carry around and run
anytime I want is just about as neat as it gets to me.
I had a few requirements for this project. 1) I had to find free dictionaries for the content, otherwise I wouldn't be able to distribute my application for free. Enter the FreeDict project, an open-source collection of translation dictionaries. This project is pretty cool, they've got a fairly large list of dictionaries available for free, especially for translating to and from English
2) Secondly, I needed a good, fast relational data store: enter SQL Server 2005 Compact Edition. Working with this was no different from what I'm used to with SQL Server on the desktop. It's pretty nice!
3) It had to run on my new phone. Enter the .NET Compact Framework 2.0. I've been handed some CF development here at work, so this was a good excuse for me to do some learning as well.
Creating the Application
What started out as a simple project actually blossomed into something fairly involved. I ended up tackling the following topics, which I hope to blog about in the near future:
- Creating the Dictionary Importer console application to import from .dict format to SQL
- Dealing with foreign characters and translating phonetic spellings which don't display on small devices
- Compact Framework application configuration and settings storage
- UI design for small devices
- Preparing for Compact Framework Localization
- Debugging on my Blackjack
- Creating and Installation and setup Application
The application supports multiple dictionaries, with the ability to create and more. The English-French.sdf contains over 16,000 Entries, and English-Spanish.sdf - has over 10,000. There's over 1,000 Flashcards of common words in each Dictionary. Each term is hyperlinked when it appears in a definition.
Here's a screenshot:
I'm going to blog about and release the dictionary loader with more dictionaries as soon as I can get some time.
Downloading and Installation
Today I'm releasing "Translation Dictionary v 0.1" optimized and designed for Windows Mobile, and the source code for the application as well.
Get it here:
03-29-2007 12:31 PM