Tuesday, July 22, 2008

Twitter & XMPP

I've noticed a lot of folks using Twitter. It's an interesting model of communicating between people and groups of people. The big thing that I've noticed is that it gets overwhelmed easily and goes down as a result. This of course leads to lots of unhappy people that are trying to twitter away with their friends.

What I find curios is that twitter hasn't attempted to build, or transitioned to, the XMPP infrastructure. The two technologies are very similar and XMPP is a known scalable platform that should be able to handle the loads that seem to be bringing down Twitter these days.

The Hitchhiker's Guide to the World - Part 2

Ok, so I've been giving this idea a few more cycles. It seems very dueable. I chatted with a friend of mine, who is an expert users of Wikipedia data (he's done a bunch of work analyzing the Wikipedia dataset), and he suggested that it should be possible to pair down the Wikipedia data set to something quiet managable.

Wikipedia pictures are going to be a problem space wise. Initially I thought it would make sense just to toss out the pictures, ie no pictures, but I'm not sure that makes sense for every picture. There are some pictures that would be very useful and others that would just silly. The difficulty would be in coming up with the rules of how to pick which pictures to keep and which to toss. Perhaps for the first round I'll just toss all pictures and work out the rules later.

One thing I should point out, the Wikipedia data is only PART of the project. It's just one of the tools that this platform should have. Other tools include maps and GPS, image translation, customs database, etc.

I need to spin a few more cycles on this but it seems like a good idea and pottentially has some military applications. The military application are more in the augmentation of human inteligence. The more useful data a military person has on hand the better decisions they can make.

Wednesday, July 16, 2008

The Hitchhiker's Guide to the World

Ok, so the 'mobile translator' idea had me re-thinking about an idea that's bounced around my head for years now, especially since reading 'The Hitchhikers Guide to the Galaxy'. Many people have pursued this idea for year but it seem that we're closer to ever. Devices like the Nokia N810 and iPhone 3G seem to have most of the features you might need to make something like this happen. The other really neat thing that's happened is that the open source data needed to make this happen has become available.

The devices now have a reasonably large display at a reasonably high resolution. It's even touch sensative with an input mechanisim. The other important part is that they have a world wide connectivity solution, the iPhone 3G more then the Nokia N810. Finally, most of these devices now have the capability to store huge quantites of data (16+gb). One the data side, services like Wikipedia and OpenStreetMaps have a humongous amount of free data available to users.

The idea would be to create a multi-purpose application that is able to provide data to the regular traveler. This kind of data would include local weather, local currency exchange, news, maps, resturants, etc. Part of the data would have to live locally on the device, that why it's important to have so much space available on the device. The other part of the data would be brought from the net, that's why having net connectivity is important. This live or near live data would be pulled in from the net. For example, currency exchange and weather would be near live but resturants and maps can be less the realtime.

Ok so the question is what data would a user want: weather, traffic, resturants, gas stations, maps, directions, currency exchange, emergency services, embassy contact, hotel information, language translation. The is more but I can't seem to think of it right now :)

Mobile translator

So I was thinking the other day, while traveling, how useful it would be to be able to translate street signs, menus, and signs when traveling in a foreign country. So one way to deal with this problem is to crack open a translation dictionary and look up each word. Of course that means a lot of looking up stuff and that can be a real pain in the ass. Not to mention really time consuming. Next way to deal with this problem is to use an electronic translation dictionary. This seems like a faster solution but you still have to type each word. So less time consuming but still chews up time.

Something I started to carry around when I go traveling to other countries is a GSM cell phone. It's really simple to get a local GSM SIM and the cost is usually really cheap compared to roaming charges with a US cell phone. More recently the phones I've been carrying around have become more powerful. Most have reasonably high resolution camers. My mind then connected the two and the thought came to me that you could take a picture of the item and translate it some how.

The rub with image translation is that it's computing intensive, both image to text and language to language. Even the hot new iPhone 3G doesn't appear to have enough horse power to do the translation in a reasonable rate. Next thought, ship the image of to a massive server to take care of. So what I finally came up with is a mixed device solution, using a cell phone and back end serves. A user takes their cell phone, sees something they want translated, they take a picture with a special translation app. The translation app ships the image to a backend server which does the OCR work (web service?). Once the image is translated to text the text is shiped to a translation service (web service?). The result translation is returned to the cell phone/pda.

This seems highly doable to me but just needs to have the pieces to be brought together. Another feature that came to mind was to give the translation service a hand by using the GPS, found in most cell phones, to tell it where you are, ie what is the origin language or languages.

Idea Crackers - 'cause "Idea Soup" was taken

So I've been trying to figure out a good way of keeping track of my ideas and share them with the world. This blog seems to be a good way. I'll start here and see where it takes me :)