Archive for the ‘Software’ Category

User modeling (was: stupid word processors)

Monday, March 23rd, 2009

Was editing an exam in OpenOffice, and I had to make a table with headings showing resources: r1, r2, r3… As I was typing them in, OpenOffice writer was happily capitalizing them behind me: R1,R2, R3… As this was incorrect, I had to go back and change it back to r1, r2, r3… And OO was capitalizing them again: R1, R2, R3… I had to go through some significant acrobatics to let it leave where as it was (exiting the cell downwards, rather than leftwards, and weird stuff like that).

Now, two issues:

  • Apparently the OpenOffice background processor can not figure out that a word like r1 is probably not a regular lexical word subject to capitalization. ‘Cause English words do come with numbers in them. But this is the least problem.
  • It seems that the OpenOffice system does not have a minimal model of the user. It only knows about the document (BTW, Microsoft Word is just like that). Well, if you are automatically doing things to the documents, like these programs do, then you probably see document editing, where you are trying to help the user achieve what it wants. If that is what you really want, then probably the first rule is: “If you have done a change, and the user had gone back and reverted that change right away, then probably the user wants it like that, so do not change it back again“. What this means, though,  is that you need a user model as well as a document model, and in this case, the document model is overridden by the user model. Now, by the way, implementing this particular thing would be an afternoon’s work, if somebody wants to do it right – eg. after I have fixed the first R1 –> r1, the system might guess that I don’t want it to mess with r2 in the next cell.

Now, I know that the OpenOffice guys have limited resources, but Microsoft???

The new wave of software?

Tuesday, December 5th, 2006

I was looking for an easy way to create blogs for a while, and I stumbled upon TiddlyWiki http://www.tiddlywiki.com/. I think it is safe to say that there is a completely new set of applications hanging around which are breaking new ground compared to the classical way of working with C/C++/Java whatever. TiddlyWiki is a single HTML (!) file, and it is programmed in Html, CSS and Javascript. A similar revelation was Scrapbook http://amb.vis.ne.jp/mozilla/scrapbook/, which is a little Firefox extension which allows you to capture the webpages you are visiting, and potentially edit and comment them. (Here editing mostly refers to cleanup – in sense of removing all the adds, links and other @#$% which infects todays pages – it is providing a little tool called the DOM Eraser for this). I was looking of the source for a while – and then I realized that the whole thing is implemented in JavaScript – and it was a 65KB (!) download. And inevitably, one needs to think about all the AJAX (supposedly, asynchronous javascript and xml) type of interfaces which are popping up everywhere. The most obvious ones being the Google mail and mapping applications – but of course there are many others – including most of the new online mailers from Microsoft and Yahoo. I am ambivalent about all this furry of new applications:

  • they put back the fun in hacking – they allow very small applications to be useful – this was not true for a long time.
    • BUT: they are annoyingly hackish and spend a lot of effort to do things for which clean implementations exist. Designing active user interfaces in HTML is an unqualified nightmare (and that includes tag libraries, server faces etc). And that when user interface libraries are the poster child of clean object oriented design! Seems like a step back to me.
  • the apps are undoubtedly cool and useful. I use them all the time.
    • BUT: they won’t scale. I am not talking of GMail AJAX – obviously what you see in a single page can be handled, and everything else goes on the server side, whatever that be. But unfortunately TiddlyWiki and Scrapbook can not become the big generalized knowledge repositories we are all dreaming of – their architecture simply does not permit this.

Tabbed console in Windows XP

Thursday, July 6th, 2006

Guess what, I can finally do the same thing in Windows XP what I could do in KDE for about five years: namely have a tabbed command line. Which means that I can log in to multiple remote hosts and I don’t need to clutter my desktop with 100 open CMD terminals, which by the way, have the wonderful property that they show up exactly identical on the task list. And they also change their order in the Ctrl-Tab list, such that you can never remember which is which. Ok, so the miracle software is Console, it was written by a fellow called Marko Bozikovic. Thanks Marko!
Ok, so this is not the whole thing, of course, because then you need a command line ssh client. The whole thing was that I kept waiting for putty to become multitab, no? So there is a command line interface to putty, called plink. I have thrown both of them in a directory in the path, and then I can type plink me@whereever.edu in the Console. Rather cool.