Value of UI

I don't think anyone in the world can claim that they use 100% of Microsoft Office suite's functionalities, including its designers and implementers.  Not only are people not using all the features, they are either not aware of or don't know how to access the unused features.

I personally use only around 10% to 20% of Word and Outlook functionalities, two Office apps I use daily.  I use PowerPoint about once a week and use 40% of its functionalites.  I almost never use Excel nor Access.  Visio, I use whenever I use PowerPoint.  Just eyeballing the numbers, I would say that about 80% of the Office suite is not being used.  That is waste of money.

Similar claims can be made against Microsoft Windows although the figure would be higher for me since I am a software developer and I know its ins and outs.  All the features and UI to access them are hidden beyond nooks and crannies that most users will never get to nor remember how to get back to.  Its like wearing a jacket with ten thousand pockets.

[a picture of Flint holding Tasselhoff's bag of holding]

More Python Exploration: My Kingdom for Lucene

After comparing Twisted and Medusa, I have concluded that I prefer Medusa over Twisted.  My reasoning is that extra functionalities and flexibilities have little value if they are difficult to access.  Twisted is hard to grok.

At this point, I am looking for an equivalent of Lucene for Python.  I know that Lucene has been ported to .NET (NLucene), but I am not aware of a Python port.  Some have suggested sgrep.  If you have a recommendation, please let me know.  As this list of search engines show, there are too many to consider and little time to do it.

Playing with Twisted and Medusa

This morning, I am playing with both Medusa and Twisted.  Both are Python frameworks for writing socket-based servers (i.e. HTTP, FTP, etc.).  Zope was based on Medusa, but there was talk about replacing Medusa with Twisted.  I like Medusa because its straight forward.  I was up and serving web pages in 10 minutes with Medusa.  Twisted is, well, twisted and harder to figure out.  I'll bang on it for the rest of the afternoon.  Stackless Python looks interesting and useful for running large population of desktop agents, but I don't have time to examine it in detail.  Problem with all these crazy Python projects are that documentation is generally poor and one has to resort to Googling web sites and newsgroups.  I am starting to miss Java already…

Using ASP.NET on Desktop

What a bummer.  I had been working on a desktop application that uses ASP.NET to drive DHTML UI, but I just found out that ASP.NET is supported on following platforms only:

  • Windows 2000 Professional/Server
  • Windows XP Professional
  • Windows 2003 Server family

That leaves out Windows 9x, Me, and XP Home which make up about 50% of all desktop platforms out there.  Admittedly, these platforms don't have IIS installed, but I am using Cassini, a small web server, to host ASP.NET.  Everyone can forget about writing UPP, PersonalWebProxy, or what-ever-you-call-it using ASP.NET.

Unless I find a reasonable workaround, I'll have to port everything I have written so far over to either Python or Java.  At this point, I am leaning heavier toward Python because it has tight interoperability with COM and Win32 via PythonCom and PythonWin.  Damn.

Docuverse Daily Revenue Model

Current plan is to provide Docuverse Daily for free.  Services that require server-side functionalities (i.e. digital signature and identity services) will be bundled similar to cable TV services and charged reasonable monthly fees ($5-$45 per month).  In addition, DailyApps will be sold at affordable prices via streamlined update and purchase UI.  Third party DailyApps will also be sold through Docuverse Daily Expansion service.  With single-click purchase and bill aggregation, I suspect most people will spend about $20 per month, half for services and half for applications.  There will be no adverstisement revenue other than advertisers paying users to get past ad-blockers and pop-up filters.

Card theft becoming a major issue in Korea

Organized thieves are creating fake cards using stolen information and using them to withdraw cash and make expensive purchases.  Apparently secret PIN is getting stolen too either because Korean cardholders often share it with store clerks, friends, and collegues.  It is also a common practice to lend your friends and family your credit card as a friendly gesture.  One can also overhear secret PINs being spoken out loud if you stand near a POS station at any department stores.  Result is 11 million bankcards having to be reissued by a Korean farmers co-op bank.  Kookmin Bank is also seeing evidence of large scale bankcard security compromise.  Looks an environment for massive switchover to smartcard is being created.

Sharing Location Information

With advent of moblogging, people will soon be able to associate notes, images, and audio with specific locations.  One key problem is the difficulty of assigning attributes to those ad-hoc location-bound data.  If I am at location (x,y,z), I can associate (type=restaurant, name="Isobune Sushi") to the location, but unless that information is shared by others, its ends up being just a note to myself.

What should happen is whenever someone adds information to the location (i.e. taking a picture), shared location attributes bound to the location should tag-along.  This means that if I take a family picture at a popular Grand Canyon vistapoint, I won't have to fumble with phonepad to annotate it because the common location name "Grand Canyon" will already be there.

UI for browsing and navigating location bound information space will be a challenge though.  One needs to be able to 'browse' to nearest restroom information with just a few button clicks.

Dealing with bad RSS as a community

Mark Pilgrim raises the inevitable question about ill-formed RSS and how to deal with it.  Mark offers parse-at-all-cost as a solution.  I think this problem can be solved completely if:

  1. RSS feed proxy services with 'tidy' (parse-at-all-cost) and occasional validaton service becomes common place allowing either the feed producer or the consumer to deal with ill-formed RSS.
  2. Encourage development and use of RSS/XML writer libraries instead of writing out tags and contents directly.

Discovering Kanon and Secret

I just discovered Kanon, apparently a famous Japanese hentai multi-ending game translated to other mediums as well as languages, by reading a Korean version of the game transcript.  All I can say is, wow.  Its like Bill Murray's Groundhog Day in a way, but more disturbing.

I also read Korean translation of movie transcript for a famous Japanese movie titled "Secret".  In Secret, a woman dies in a traffic accident but her soul wakes up in her daughter's adolecent body.  Akward and interesting situations ensue with her husband and her second life.  Real surprise is the ending where I found myself pretty pissed over what I felt is one of the worst kinds of betrayal.