I had an idea today when navigating around in the shell. All my work related files are stored in `~/Work`. Under that there's a folder for each project. Sometimes there are multiple variations on a project or project with a similar prefix such as:

* radiopaedia
* radiopaedia-stable
* radiant-sites

When I type `rad [Tab]` in my shell (<a href="http://www.zsh.org/">zsh</a>) it kindly completes this to `radi` and gives a list of the other completions since there are several to choose from. I though it would be nice if the shell could learn from the choices I make. So if I generally choose radiopaedia then `rad [Tab]` would complete to radiopaedia but still show the list of option. 

I'm sure there are several other areas where an adaptive shell that learnt from usage patterns could be applied.