Computer Science Interests

Introduction

From time to time I get great ideas of what should be possible to do with computers. I seldom have time or energy to actually implement these things, so I decided to at least put them up here. This way, I can later see what I thought up and if I desperately need to something to hack on, it will be here.

Let's see if this leads to anywhere at all. Ummm... haven't this far, but at least I have this place.

Taxonomy for literary works and the like

The misleading vagueness of the topic rises from the non-existence of such taxonomy (to me). I'm not looking for Dewey decimal system or similar; they merely classify the contents of the books. I want to tell apart a facsimile from the original print; a second printing from the 44th edited printing; abridged and translated works, also inscriptions, anthologies, musical scripts (and CDs and the like, too, but this might be too overwhelming) etc. I think librarything.com would benefit from this, as would researchers in various filological and other fields. This leads me to think that such system must exist (either in isolation or as part of some other taxonomy/specialised ontology). Where is it?

Context aware shell and terminal

Have you ever had the need to drag-n-drop a file from a terminal window on to the desktop or vice versa? Or to open a file for editing and instead of finding it with the navigator (or whatever those things are called), would like to left-click on its name in the terminal and a pop-up menu with "Open with >" and others would be shown? I figured this should be possible. The idea would be to bastardize libvte so that it lets another application tag arbitrary text and whenever that tag was touched with the mouse it would call back to the application.

Shared storage

Run into the problem of needing to share files between home, work and school? Not actually wanting to sync them by hand, but still need to access and modify them from all of those places, possibly even simultaneously? Just think about it: you could leave your work in the evening, come up with something in the metro, write it up at home (or immediately, on the laptop), and refine it the next day at school between lessons. Or something like that, and all you needed to do was to keep the shared files on the correct mount point (be it /home or something else).

Filesystem metadata

Most user files have meta-data. Some of it is already visible with the filesystem: the creation (and some other) dates, the path where it can be found and often its type is at the end of its name. However, there is much more I'd like the system to know about the file. Text files could have complete search indices -- say, I can't remember where I put the file about Linux bluetooth. Instead of traversing the whole doc/ tree, it would be cool to have a immediate results due to an existing index. And if there were too many results, I could to just limit the search by specifying that the file was in pdf format, and was last accessed at least half a year ago.

Netnice

Everyone knows nice the almost obsolete tool for lowering the priority of your processes. With all the broadband connectivity we have, there's still plenty of applications that can hog all the bandwidth. Now, wouldn't it be nice (pun intended) to be able to specify a "niceness" value for their network usage? Maybe even with a hard limit, not just relative to other network users. I think this is doable with iptables and tc and some good hacking.

No Bloat Distribution

I have some ideas about a distribution that would target the lower-end machines (486 to Pentium II or so), where there would be constant work to make packages smaller, make them more modular and have several candidates for a given task, for example dillo, firefox and mozilla for browsing. Debian's packaging system could probably be used, but the tools need to be made less memory hungry.

T Taneli Vahakangas
Last modified: Wed Nov 26 12:35:00 EET 2003