<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Cyberborean Chronicles &#187; Usability</title>
	<atom:link href="http://blog.cyberborean.org/tag/usability/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.cyberborean.org</link>
	<description>by Alex Alishevskikh</description>
	<lastBuildDate>Wed, 16 Dec 2009 04:33:12 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Survey: How do you find your documents?</title>
		<link>http://blog.cyberborean.org/2007/03/26/survey-how-do-you-find-your-documents</link>
		<comments>http://blog.cyberborean.org/2007/03/26/survey-how-do-you-find-your-documents#comments</comments>
		<pubDate>Mon, 26 Mar 2007 15:50:00 +0000</pubDate>
		<dc:creator>Alex Alishevskikh</dc:creator>
				<category><![CDATA[Essays]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[IA]]></category>
		<category><![CDATA[metadata]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[survey]]></category>
		<category><![CDATA[tagging]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://cyberborean.wordpress.com/2007/03/26/survey-how-do-you-find-your-documents/</guid>
		<description><![CDATA[For my ongoing research, it would be helpful to gather some feedback from random people on their personal document management, navigation and information seeking preferences. Please send your answers to alexeya (at) gmail (dot) com or just attach a comment below. Thanks in advance!


When you are looking for a document on your machine, the following [...]]]></description>
			<content:encoded><![CDATA[<p>For my ongoing research, it would be helpful to gather some feedback from random people on their personal document management, navigation and information seeking preferences. Please send your answers to alexeya (at) gmail (dot) com or just attach a comment below. Thanks in advance!</p>
<p><span id="more-153"></span></p>
<ol>
<li><strong>When you are looking for a document on your machine, the following navigation hints are important (specify an order, e.g. &#8220;a, d, c, b&#8221;):</strong></li>
<p>a. File name<br />
b. File name and folder<br />
c. Date of creation/modification<br />
d. Document metadata properties<br />
e. Full-text search results</p>
<li><strong>Do you use document titles (or another semantic data) as the file names?</strong></li>
<p>a. Yes, always<br />
b. For important documents only<br />
c. Don&#8217;t care about the file names</p>
<li><strong>Do you keep a sort of semantic folder structure for storing your documents?</strong></li>
<p>a. Yes, and I keep all my documents in a single folders hierarchy, organized semantically<br />
b. Yes, but use the structure for important documents only<br />
c. Use random folder structures, depending on a context of my work<br />
d. Don&#8217;t care about where I&#8217;m saving my files</p>
<li><strong>Do you use document shortcuts (Windows) or symbolic links (*nix) for improving  navigation?</strong></li>
<p>a. Yes, often<br />
b. Rarely<br />
c. No</p>
<li><strong>How often do you use the system full-text search for finding a specific document?</strong></li>
<p>a. This is my everyday way of finding the documents<br />
b. Only when I need to find the document quickly<br />
c. Only when I gave up to find the document by other ways<br />
d. Only when I&#8217;m not sure the document on this topic exists<br />
e. Never use the search for this purpose</p>
<li><strong>Do you use &#8220;advanced search&#8221; capabilities?</strong></li>
<p>a. Yes, often<br />
b. Rarely<br />
c. No, basic search is enough</p>
<li><strong>Do you use the system &#8220;Recent documents&#8221; list?</strong></li>
<p>a. Yes, often<br />
b. Rarely<br />
c. No</p>
<li><strong>Do you enter the metadata (title, author, subject, keywords etc) in the &#8220;Document properties&#8221; dialog box of your text editor?</strong></li>
<p>a. Yes, always<br />
b. For important documents only<br />
c. Don&#8217;t care about it</p>
<li><strong>How do you mark an importance of a document?</strong></li>
<p>a. Place it into a special folder<br />
b. Place it on the desktop<br />
c. Bookmark it (place into the &#8220;Favorites&#8221;)<br />
d. Do nothing</p>
<li><strong>How many documents (in percentage against all documents on your machine) are used actively?</strong></li>
<li><strong>How do you handle outdated documents?</strong></li>
<p>a. Keep them in place<br />
b. Move to a special folder<br />
c. Move to backup media, then delete<br />
d. Delete them</p>
<li><strong>Which formats you use for the text documents </strong><strong>(specify in order of importance, e.g. &#8220;a, d, c, b&#8221;):</strong></li>
<p>a. MS Word<br />
b. OpenDocument<br />
c. PDF<br />
d. HTML<br />
e. XML or SGML (DocBook etc)<br />
f.  Plain text<br />
g. Other</p>
<li><strong>Do you save online documents on your local hard drive?</strong></li>
<p>a. Yes, often<br />
b. Save important or very large documents only<br />
c. Never</p>
<li><strong>Do you keep a sort of a personal electronic library?</strong></li>
<p>a. Yes<br />
b. No</p>
<li><strong>Do you use specialized software for photo albums or multimedia collections management?</strong></li>
<p>a. Yes<br />
b. No, standard system tools are enough</p>
<li><strong>How do you estimate efforts on supporting your local document collections?</strong></li>
<p>a. It is a burden, it takes a lot of my time and harms for my work<br />
b. It takes some time but it worths it<br />
c. It is not a problem with help of the modern desktops<br />
d. Do not see any problem</p>
<li><strong>Do you use <a href="http://del.icio.us">del.icio.us</a>?</strong></li>
<p>a. Yes, for every interesting stuff I meet on the Web<br />
b. Yes, for important links only<br />
c. Yes, for links I want to share with somebody else<br />
d. No</p>
<li><strong>How many tags are in your del.icio.us profile?</strong></li>
<li><strong>How many del.icio.us tags you usually assign per a single link (in average)?</strong></li>
<li><strong>When choosing the del.icio.us tags, you prefer</strong></li>
<p>a. Your own tags<br />
b. Other&#8217;s tags, suggested  by the service</p>
<li><strong>When choosing the del.icio.us tags, you prefer to</strong></li>
<p>a. Reuse the existing tags, as possible<br />
b. Create new tags</p>
<li><strong> Do you try to avoid tags synonymity?</strong></li>
<p>a. Yes<br />
b. No, I don&#8217;t care about synonyms</p>
<li><strong>Do you use tag bundles?</strong></li>
<p>a. Yes<br />
b. No</p>
<li><strong>Which factors are important for tags selection </strong><strong>(specify in order of importance, e.g. &#8220;a, d, c, b&#8221;)?</strong></li>
<p>a. My own subjective associations<br />
b. My vision of of the implicit topic semantics (tend to be objective)<br />
c. Explicit textual properties of the document (terms frequency, etc)<br />
d. Tags, assigned by other people</p>
<li><strong>The best synonym of  the&#8221;tag&#8221; is:</strong></li>
<p>a. Category<br />
b. Term<br />
c. Topic<br />
d. Keyword<br />
e. Label</p>
<li><strong>The purpose of the tags is:</strong></li>
<p>a. Distinction<br />
b. Unification</p>
<li><strong>A number of tags per document is a measure of:</strong></li>
<p>a. Document importance<br />
b. Information diversity<br />
c. Collection size<br />
d. Selection quality</p>
<li><strong>Would automatical tags generation be useful?</strong></li>
<p>a. Yes, and it could completely replace human brains in this area<br />
b. Yes, but it matters as a help for human brains only<br />
c. No, the tags should belong to humans</ol>
<p>Thank you!</p>
 <img src="http://blog.cyberborean.org/wp-content/plugins/feed-statistics.php?view=1&post_id=153" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.cyberborean.org/2007/03/26/survey-how-do-you-find-your-documents/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Using &#8220;win-key&#8221; in KDE</title>
		<link>http://blog.cyberborean.org/2006/10/19/using-win-key-in-kde</link>
		<comments>http://blog.cyberborean.org/2006/10/19/using-win-key-in-kde#comments</comments>
		<pubDate>Thu, 19 Oct 2006 14:37:24 +0000</pubDate>
		<dc:creator>Alex Alishevskikh</dc:creator>
				<category><![CDATA[Howtos]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://cyberborean.wordpress.com/2006/10/19/using-win-key-in-kde/</guid>
		<description><![CDATA[It is nearly impossible to buy a PC keyboard without a key with the flag icon, which is usually referred as a &#8220;Win-key&#8221;.   It is, of course, a question if there are any logical reasons to stamp a particular private OS logo on a universal hardware, but I am not going to discuss [...]]]></description>
			<content:encoded><![CDATA[<p>It is nearly impossible to buy a PC keyboard without a key with the flag icon, which is usually referred as a &#8220;Win-key&#8221;.   It is, of course, a question if there are any logical reasons to stamp a particular private OS logo on a universal hardware, but I am not going to discuss it right now. Instead of that, let&#8217;s see how to use this additional key for improving Linux user productivity.<br />
<span id="more-142"></span></p>
<p>I have no idea what is it doing in Windows, but the greatest advantage of this key in KDE is that it does nothing by default. Also, this is a modifier key (like Shift, Ctrl or Alt), so it can be used for setting a lot of custom keyboard shortcuts. While the most of &#8220;Ctrl+&#8221; and &#8220;Alt+&#8221; combinations are usually reserved by applications, &#8220;Win+&#8221; is vacant and ideal for defining various global system shortcuts.</p>
<p>There is my experience of using Win-key combinations:</p>
<h3>&#8220;Win&#8221; is for the windows, I think</h3>
<p>The most of shortcuts are related to the windows and desktop management actions:</p>
<ul>
<li><strong>Win+Return</strong> maximizes a window and <strong>Ctrl+Win+Return</strong> makes it full-screen.</li>
<li><strong>Win+Backspace</strong> minimizes a window.</li>
<li><strong>Win+Esc</strong> closes a window.</li>
<li><strong>Win+Space</strong> shows desktop (minimizes all windows).</li>
<li><strong>Win+<em>number</em></strong> (<strong>Win+1</strong>, <strong>Win+2</strong>&#8230;) switches to the given desktop. Also, <strong>Win+Up/Down</strong> switches to the previous or next desktop (I use vertical desktop pager).</li>
<li><strong>Ctrl+Win+<em>number</em></strong> and <strong>Ctrl+Win+Up/Down</strong> moves active window to the specified desktop.</li>
<li><strong>Win+Menu</strong> shows a list of all windows on all desktops.</li>
</ul>
<h3>AmaroK</h3>
<p>Win-key in combination with additional numeric keypad (aka &#8220;grey keys&#8221;) is used for controlling AmaroK audioplayer.</p>
<ul>
<li><strong>Win+GrayInsert</strong> is for play/pause.</li>
<li><strong>Win+GrayPlus</strong> and <strong>Win+GrayMinus</strong> manage sound volume and <strong>Win+GrayMultiply</strong> mutes volume.</li>
<li><strong>Win+GrayLeft/Win+GrayRight</strong> switches the tracks</li>
</ul>
<h3>Launching the applications</h3>
<p>Combinations of the Win-key with alphabetic keys are used for quick launching the most needed applications and utilities. There are lot of them and it makes no sense to enumerate them here &#8211; every user has her own list of preferred software.</p>
<p>Win-key is a good thing, whatever a logo is there. Finally, everyone might put a penguin or K-gear sticker on it :-)</p>
 <img src="http://blog.cyberborean.org/wp-content/plugins/feed-statistics.php?view=1&post_id=142" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.cyberborean.org/2006/10/19/using-win-key-in-kde/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Tips &amp; Tricks:] Required text fields in Swing</title>
		<link>http://blog.cyberborean.org/2006/05/07/tips-tricks-required-text-fields-in-swing</link>
		<comments>http://blog.cyberborean.org/2006/05/07/tips-tricks-required-text-fields-in-swing#comments</comments>
		<pubDate>Sun, 07 May 2006 17:53:47 +0000</pubDate>
		<dc:creator>Alex Alishevskikh</dc:creator>
				<category><![CDATA[Howtos]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[swing]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">https://cyberborean.wordpress.com/2006/05/07/tips-tricks-required-text-fields-in-swing/</guid>
		<description><![CDATA[
This article starts a &#8220;Tips &#38; Tricks&#8221; serie of &#8220;Chronicles&#8221; which is a result of my comeback to heavy coding. The posts in this serie are the bits of coding experience, a small inventions and solutions which every programmer does everyday. Read the latest Tips&#38;Tricks in Technology::Coding category.

Swing dialogs by default have no idea about [...]]]></description>
			<content:encoded><![CDATA[<p><em><br />
This article starts a &#8220;Tips &amp; Tricks&#8221; serie of &#8220;Chronicles&#8221; which is a result of my comeback to heavy coding. The posts in this serie are the bits of coding experience, a small inventions and solutions which every programmer does everyday. Read the latest Tips&amp;Tricks in <a href="http://cyberborean.wordpress.com/tag/technology/coding/">Technology::Coding</a> category.<br />
</em></p>
<p>Swing dialogs by default have no idea about &#8220;required&#8221; text fields, that is the fields which should be filled to perform a task. In this article I suggest a simple way how to automatically highlight the fields which have to be non-empty.</p>
<p><span id="more-97"></span></p>
<p>Our required fields will be highlighted when empty and switched to default look when a user enters a data into them. To track the changes of a field&#8217;s content we will use <code>DocumentEvent/DocumentListener</code> mechanism. <code>DocumentEvent</code>&#8217;s are generated by underlying <code>Document</code> model when it is changed by some way. Listening to these events is more reliable way than tracking the user actions (such as key pressings) directly, because it is guaranteed that any content change (including possible changes made by program itself, pasting the clipboard content from a context menu etc) will be monitored.</p>
<p>To listen these events, we should create an implementation of <code>DocumentListener</code> interface:</p>
<pre class="brush: java">
import javax.swing.BorderFactory;
import javax.swing.border.Border;
import javax.swing.event.*;
import javax.swing.text.JTextComponent;
...

public class HighlightListener implements DocumentListener {

    JTextComponent comp = null;
    Border defaultBorder = null;
    Border highlightBorder =
            BorderFactory.createLineBorder(java.awt.Color.ORANGE);

    public HighlightListener(JTextComponent jtc) {
        comp = jtc;
        defaultBorder = comp.getBorder();
        // Adding this listener to a specified component:
        comp.getDocument().addDocumentListener(this);
        // Highlight if empty:
        this.maybeHighlight();
    }

    public void insertUpdate(DocumentEvent e) {
        maybeHighlight();
    }

    public void removeUpdate(DocumentEvent e) {
        maybeHighlight();
    }

    public void changedUpdate(DocumentEvent e) {
        maybeHighlight();
    }

    private void maybeHighlight() {
        if (comp.getText().trim().length() &amp;amp;gt; 0)
            // if a field is non-empty, switch it to default look
            comp.setBorder(defaultBorder);
        else
            // if a field is empty, highlight it
            comp.setBorder(highlightBorder);
        // ... more actions
    }
}
</pre>
<p>To add a highlighting functionality to a text component we should simply instantiate our <code>HighlightListener</code> with this component:</p>
<pre class="brush: java">
...
JTextField myField = new JTextField();
new HighlightListener(myField);
...
</pre>
<p>Note that <code>HighlightListener</code> constructor is parametrized with <code>JTextComponent</code> class, so it can work with any children (<code>JEditorPane</code>, <code>JTextArea</code>), not only with <code>JTextField</code>.</p>
<p>Our <code>HighlightListener</code> monitors the updates of a component document model and checks if the text is empty or not. If it is empty, it will be highlighted by adding a thin orange border:</p>
<p><img src="http://cyberborean.org/blog/wp-content/uploads/2006/05/reqfield.png" /></p>
<p>Otherwise, the border will be reverted to its default look.</p>
<p>The code of <code>HighlightListener</code> can be customized for:</p>
<ul>
<li>Another highlighting method</li>
<li>Additional highlighting conditions &#8211; e.g. we can check the content against a regular expression for required input format (valid email adresses for instance)</li>
<li>Additional actions &#8211; e.g. to enable/disable the &#8220;OK&#8221; dialog button if required data is not entered.</li>
</ul>
 <img src="http://blog.cyberborean.org/wp-content/plugins/feed-statistics.php?view=1&post_id=97" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.cyberborean.org/2006/05/07/tips-tricks-required-text-fields-in-swing/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Filesystem is evil</title>
		<link>http://blog.cyberborean.org/2006/04/24/filesystem-is-evil</link>
		<comments>http://blog.cyberborean.org/2006/04/24/filesystem-is-evil#comments</comments>
		<pubDate>Mon, 24 Apr 2006 15:10:41 +0000</pubDate>
		<dc:creator>Alex Alishevskikh</dc:creator>
				<category><![CDATA[Essays]]></category>
		<category><![CDATA[desktop]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[PIM]]></category>
		<category><![CDATA[productivity]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">https://cyberborean.wordpress.com/2006/04/24/filesystem-is-evil/</guid>
		<description><![CDATA[Do we need a better way to store and organize our data or we are doomed to stick with old unefficient tools?

Pete was at his computer when the phone rang.
— There are representatives of XYZ corp. here, — said Pete&#8217;s boss. — They liked our offers and want to sign a contract. Is it ready?
— [...]]]></description>
			<content:encoded><![CDATA[<p><em>Do we need a better way to store and organize our data or we are doomed to stick with old unefficient tools?</em><br />
<span id="more-81"></span></p>
<blockquote><p>Pete was at his computer when the phone rang.<br />
— There are representatives of XYZ corp. here, — said Pete&#8217;s boss. — They liked our offers and want to sign a contract. Is it ready?<br />
— Yes, it is. — answered Pete confidently. He had prepared the text of contract a week ago.<br />
— Great, print it and bring it here, please.<br />
Pete put the receiver down and opened the folder named “Contracts” in his “My documents” hierarchy. There were about two hundreds of files, but there was nothing with name about “XYZ”. He browsed few old subfolders of forgotten purpose and obscure names but found nothing too. Being a bit surprised, Pete opened the &#8220;Recent documents&#8221; list but it was full of newer files. The worst thing was that Pete couldn&#8217;t recall a name of the file. He even didn&#8217;t remember when exactly he had working on this document. Pete sorted the files in &#8220;Contracts&#8221; by date of modification, but there were a couple of dozens of files edited at the last week. “When it was? Tuesday or Wednesday or..?” He started to open the documents one by one and it took for about ten minutes. Nothing like.<br />
Pete browsed the root of “My documents” folder (turned into a dump of useless trash for ages) and some other folders, where as he thought the document accidentally might be. Nope. He mopped his brow and loosened the tie. “I have to remember where I saved that damned file. Well, I came to the office, as usual read my email, then played Lines until the boss called me and asked to prepare the contract for XYZ. I took a standard corporate template for contracts and started to work. I had been interrupted few times for checking and answering email and once for lunch. I remember also that after lunch I worked around another urgent document, then got back to the contract and completed it before the end of workday&#8230;”<br />
“The search! How could I forgot about it!” Pete quickly ran the file search and typed “XYZ contract” in the search field. He leaned back in the chair and started to look at the flitting indicator. On 16 minute of the search, the phone rang again.<br />
— You should not hurry <em>so much</em> anymore. — said boss. — We have lost that customer.</p></blockquote>
<p>Pete could not find the document and upset a deal.</p>
<p>This sad but edifying story might be a source of many fair conclusions. Someone would say that the Pete&#8217;s company needs CRM. Someone else would mind that Pete should spend less time to play Lines but more to keep his harddisk in order and so on. But I told this story not to show the advantages of enterprise automation and not for moralizing on such slovens some users are. This is a typical “use case” story of using a software tool. A tool that is in our way everyday.</p>
<p>This is a filesystem.</p>
<h3>Can we ever live without it?</h3>
<p>A hierarchical filesystem is a sort of fundamental computer concept which has almost never been seriously revised against utility, user efficiency and usability. Everyone knows that computers store data in files and folders. It&#8217;s a matter of course and it seems like a natural phenomenon, like air we breath and like the sun which rises on the East everyday.</p>
<p>Most of the “non-technical” people think that the filesystem is a necessary technological principle of a computer long-term memory. “Ok, if there was no another way, we have to live with it.” And producers of operating systems silently keep this opinion.</p>
<p>It is wrong. It is misleading. You are deceived. Everybody who more or less understands how a computer works knows that the filesystem has no relation to physical organisation of a disk memory. This is merely an invention of early OS developers who cooked that &#8220;convenience&#8221; once in the 60&#8217;s. There are no any &#8220;folders&#8221; and &#8220;files&#8221; inside the computer. This is a programmatic imitation, a phantom superstructure above real physical disk sectors and cylinders and there are myriads of alternative ways for it. <em>The filesystem is not a necessary part of a computer</em>.</p>
<h3>What&#8217;s wrong with it?</h3>
<p>My criticism is not against the filesystems as they are. I believe there is a number of excellent, fast and reliable filesystems with advanced security, journaling and many other useful features. They are doing their job and doing it well. My criticism is against the practice of providing filesystem as an end-user tool.</p>
<p>I&#8217;d be very surprised if I ever met some developers convenience or raw technology feature which became a good user experience. I&#8217;m sure the <em>good things</em> all come from careful studying the human&#8217;s tasks, goals and contexts of use. The task of “to store whatever” is too general to be succesfully implemented. It is nobody&#8217;s experience. It is a bare abstraction in hope of adaptation to the real world by the users themselves. It is like a software for “doing anything” which makes a user to define “what” and “how” to do. Sort of meccano, but not a tool.</p>
<p>Users usually have no task “to store” their data at all. It seems the only case is when they back their data up to DVD-R or to another archival media. Many of them even have troubles with understanding the “saving” and “loading” operations. I&#8217;ve written a document in the Word, isn&#8217;t it already in the computer? The knowledge of “saving” and “loading” files and of distinction between long-term and operating memory, between harddisks and RAM, is needless for users. It makes them to learn for unnecessary things and keep in mind a weird two-part model of a computer storage system. It has no relation to their tasks. It is in their way just because there is a <em>bad design</em> which is countlessly reproduced for 40 years without any improvements.</p>
<p><img src="http://cyberborean.files.wordpress.com/2006/04/macosx.png" alt="macosx.png" align="right" />Try to invent an universal and intuitive definition of a “file” using no technical jargon. “This is a document or an image or an audioclip or a program or anything else&#8230;” Anything else what? “Anything what we can save to disk” — is only answer. It could work in the times when the disks (I mean the floppies) were an important part of everyday user experience. Everybody knew that data and programs were on the disks and the disks were the real tangible things. But many users nowadays have no idea what the disk is at all, except for CD and DVD (remember an anecdote that many Mac users have seen a hard disk first on new OS X icon) . The concept of a file is particularly technical and it can be defined in the best way simply as “a storage unit”. It might be useful in context of eventual data backup, restoring or transferring, but not for user&#8217;s everyday tasks.</p>
<p>Another weakness of filesystem usability is a tree-like hierarchy. The problem with hierarchical structures is that they have extremely poor scalability. They could work well for 720K or 1.4M floppies with few directories and few dozens of files, but now our storage capacities are thousands times greater. It is proven that usability of hierarchical structure falls exponentially with number of levels and number of items in them. In practice, a structure with more than even two levels substantially impedes the search of a specific choice. Creation of a good intuitive structure (e.g. a catalog) is a very complex task of information design which requires special recursive techniques such as prototyping, card-sorting, careful testing etc. The most of us in real life have no time and skills for that, so the structures we create ad-hoc today, become the dreadful puzzles for us tomorrow. And the filesystem provides us with everything to create those puzzles but doesn&#8217;t help us to unscramble them.</p>
<h3>Outlook instead of Explorer?</h3>
<p>New paradygm of personal resource organization should be based on a simple axiom: “Whatever a user does, she does her tasks on her projects.” A <em>task</em> is an activity to achieving specific <em>goals</em> using specific <em>resources</em> and <em>tools</em>. A <em>project</em> is a common context of more than one tasks. For instance, Pete&#8217;s task was to write a text of contract, his goal was to have the text completed and approved, the resource was the contract itself and the project was dealing with XYZ corp. This is a natural model of human horme and it should go out of scope of special project-management and scheduling software to be a foundation of entire human-computer interaction framework. These ideas were (in very roughly and initial form)  implemented in the <a href="http://memoranda.sf.net">Memoranda</a> project. I believe evolution of this kind of software will replace traditional file managers from their position of main user interface to navigate over resource collections.</p>
<p>It should change the way of everyday personal computing and make it more simple and natural. Instead of creating informal and often casual folder structures, a user would have a personal project-management framework for managing information resources as the internals of her projects. Resources are associated with tasks of the projects, so it would be easy to navigate and find them. In fact, it should be enough to go into the specific project context to get all related resources in the way.</p>
<p>It is not too futuristic. Though it seems rather hard to overcome 40 y.o. conventions, there already are the software which is passed through the files and folders and provide high-level, sofisticated and task-centered data structures.</p>
<p>E-mail clients, personal information managers (PIMs) and calendars working this way for decades. Many of the multimedia software provide their own media libraries management without obvious relation to the filesystem. For instance, working with my <a href="http://amarok.kde.org">amaroK</a> mediaplayer, I only care to put my new media files into a known single folder. The program monitors that folder and automatically updates the media collection, so I can easily find any song browsing the collection by artist name, album title, year, genre and so on. All modern Development Environment software (IDE&#8217;s) has advanced project-management tools for software development tasks including resources (sourcecode) management. At last, the Pete&#8217;s favourite Lines remembers the game score results and even if it doing so with files, a gamer doesn&#8217;t care about it.</p>
<h3>Conclusion</h3>
<blockquote><p>
&#8230;<br />
Pete put the receiver down and clicked on “Dealing with XYZ corp” project icon on his desktop. In the list of tasks sorted by date he clicked the “Prepare the contract” item and the first thing that catched his eyes was the icon of the document in the resources area. He selected “Print” in the context menu and there was exactly 10 seconds since he had stopped to talk with the boss.</p></blockquote>
<p>Somebody would object this is how an accurate user usually does with the folders and files. But why our software requires us to be so accurate and doesn&#8217;t help us if we aren&#8217;t get its high standards? Nowadays, the computers are smartest of the artificial things. And I&#8217;m wondered why they still supply us with information storages not smarter than a table or a bookcase.</p>
<p>I have a cranky idea: “Would we have to pay many thousands of bucks for CRM, ERP and other enterprise software functions, if our personal tools were a bit more sophisticated?”</p>
 <img src="http://blog.cyberborean.org/wp-content/plugins/feed-statistics.php?view=1&post_id=81" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://blog.cyberborean.org/2006/04/24/filesystem-is-evil/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
