Python on series 60
I knew it exists, but I haven’t looked into Python on series 60 until yesterday and I wish I did so sooner. My mind is just flooded with ideas of what to do and I can easily see myself wasting lots of time playing with it. I do wish it was possible to build stand-alone applications, which wouldn’t require a separate installation of Python. As such I believe series 60 Python is more or less limited to prototyping and personal use.
There’s one thing that is a problem for an old goat like me (over 30 and loving it). It’s a pain in the ass to type anything substantial on mobile phone and although some new phones (like Nokia N70) have predictive dictionary for my language, lots of them including mine don’t.
I do have an idea on how to tackle this problem. Most of us have a vocabulary of few thousand words (unlike Shakespeare, who I’m told used 36 thousand of them), but we only use few hundred of them in our everyday life. Therefore if my text input heavy applications would continuously build a dictionary of words typed by user, they would fairly soon get a usable predictive dictionary for this particular user.
There are downsides. You start with nothing and there’s a problem of how to build a dictionary without annoying. You could tackle this by staying in learn-only mode until your dictionary-hit ratio rises above some threshold (80-90%?).
There are also pluses. You get a dictionary that’s much better fitted to your user than a generic one, since it actually has words he uses. That is if I’m not underestimating dictionaries used in modern mobiles.
What would make it even better is if such dictionary would be standardized so any application could use it.
Update: I was wrong, you can make a completely stand-alone application in Python. Sweet.
You said “What would make it even better is if such dictionary would be standardized so any application could use it”. But then you also need to provide a dictionnary server for many applications, with a simple API.
Preferrably a network API, possibly a web one.
Sooner or later you’ll end-up with something strange, between a database server and an RDF store. I know, because I built one:
http://laurentszyster.be/blog/allegra
I called that thing a metabase peer and if you dream of crazy peer search applications that can run in a cell phone, you should definitively have a look at Allegra (aka Python on Peers).
Regards,
Comment by Laurent Szyster — April 20, 2006 @ 11:52 am
“I do wish it was possible to build stand-alone applications” it is, there’s a tool similar to py2exe out there.
“It’s a pain in the ass to type anything substantial on mobile phone” only if you do it _on_ the phone
use the bt console or a dev env like miso or a bt keyboard if you have deep pockets =)
Comment by voxvirus — April 20, 2006 @ 6:38 pm
Allega looks interesting and I’ll certainly take a look at it in the future, but it’s not what I had in mind. My first objection would be that mobile network access is fairly expensive and even worse, latency is a bitch, which means you really need to have a local dictionary. My second objection would be that shared dictionary doesn’t help you build personalized dictionaries.
I know py2exe, but I’d like something similiar for mobile phones and py2exe doesn’t fit the bill.
I’m also aware of bt console, but the problem is not development. The problem is using those application on the go. If typing on my notebook would be an option, then there would be no need for application to run on mobile either.
Comment by markos — April 20, 2006 @ 7:10 pm
Thanks for the reply and the input about the S60.
“My first objection would be that mobile network access is fairly expensive and even worse, latency is a bitch, which means you really need to have a local dictionary.”
That’s right. But the purpose of making it small is to fit the metabase peer everywhere, including in the phone, as a local peer listening on the loopback device.
“My second objection would be that shared dictionary doesn’t help you build personalized dictionaries.”
Well, then how come that some of my words are also in your text?
We do share dictionnary *and* we each have our own diverging vocabulary, languages, jargons and slangs. They may be close to each other or complete strangers, yet you should be able to share their content if you want to exchange, publish or search your many digital dictionnaries to come.
Voila.
I wish you good luck for your project. If you publish code make sure to blog about it. I would surely read it, because I believe that network peers are the new frontier computer applications.
Kind Regards,
Comment by Laurent Szyster — April 22, 2006 @ 4:43 am