Most Enso users wish they didn't have to type "open" every time they open something.

Wednesday
23 Jan 2008

Enso 2.0 on the Horizon

Our Products

We are fairly happy with Enso, but there are a couple nagging problems with our current implementation that need to be fixed. We know because you keep telling us (which we are grateful for). Fairly happy isn’t good enough, so we are working on fixing the following most common complaints and suggestions.

“Open” is Too Much Typing

“Can you add a way to rename commands? I’d like to rename ‘open’ to something shorter, like just ‘o’.”

“If I type just the name of an application without a command first, Enso should default to opening it.”

“I like Quicksilver better because it doesn’t make me type “open” before every command…”

People have different ways of asking for it, but it’s become clear that most Enso users wish they didn’t have to type “open” every time they open something. Those five extra keystrokes (counting the space) are just too much extra typing for such a frequently-used command. To put this in technical user-interface design terms, it’s not information-theoretically efficient.

Not having to type “open” is by far the most popular feature request, but it’s not the only feature you’ve been asking for. Here are some other popular feature requests:

Learning Frequently Used Commands

“Why doesn’t Enso learn which commands I use most often?”

“I’ve chosen [a certain open command] five times in a row but it’s still the third item in the list. Why isn’t Enso automatically putting my most-used items at the top?”

We’re wary of the dangers of adaptive interfaces. But we’re not dogmatic about this (or any other) point. Experience has shown that users are having to tell Enso to unlearn a lot of open commands just to clean up the suggestion list until their preferred open command is on top. That’s an annoying lot of extra work that users shouldn’t have to be doing.

What we need is a specially-designed learning algorithm that will provide the benefits of an adaptive interface without the problems.

Opening Paths (folders) and URLs (websites)

“Why can’t I type a URL into Enso and have it open in my web browser?”

“Why can’t I type a path (like “C:\Documents and Settings”) and have Enso open it?”

These would be obviously useful Launcher commands. Why haven’t we added them yet? It’s because you can’t currently type slashes into Enso, silly as this reason sounds. Why can’t you type slashes into Enso? Because Enso doesn’t distinguish between shifted and unshifted characters. Why is that? Because it’s very hard to hold down two keys and type at the same time, so Enso is designed with the idea that you should never have to use Shift while entering a command.

International character input

“Hello, I’m Swedish so lots of my documents contain the letters Å, Ä, and Ö. Enso doesn’t recognize these letters when I type them.”

“Hello, I’m Danish so I need to be able to type å, ø, and æ into Enso…”

(And so on.)

Enso doesn’t yet deal well with non-English characters. This is a big problem, because we’ve picked up a surprising number of international users in a short time. (We seem to have a lot of fans in Germany and Scandinavia; I don’t understand why exactly, but I’m happy that we do.)

Part of the problem is that entering most European accented characters requires holding down modifier keys while typing. I’ve already explained why Enso ignores Shift; it ignores modifier keys for the same reason. So the accented-character-entry problem isn’t just an internationalization problem: it’s also an ergonomic problem. It’s very awkward to hold down Caps Lock at the same time as you’re holding holding down Alt or Shift to type an accented character. But we like the quasimode so much that we don’t want to abandon it.

What we need is a compromise that lets users input stuff to Enso using the shift key and all international text-entry mechanisms, but never requires them to hold down two keys while typing.

EDIT: Since posting this article, I have been informed by several Swedish computer users that I was incorrect about needing to hold down a modifier key to type Å, Ä, and Ö. In fact, they have their own keys on the Swedish keyboard layout. My mistake! However, the fact remains that Enso 1.0 doesn’t handle these letters correctly, and that the problem will be fixed in Enso 2.0.

What if I’m not in a place where I can edit text?

“I find that Calculate isn’t very useful, because I have to switch to an application where I can type text before I can use it… why not have a way to enter the numbers that I want to calculate directly into Enso?”

It’s not just Calculate, either. The Define and Google commands work on either text that’s selected or on text that you type into Enso, and that seems to work great. Why not let every command work this way?

Enso 2.0 Beta Coming Soon

We’ve been working on a new version of Enso It’s a big enough change that we’re calling it “Enso 2.0″. We think that it does a pretty good job of solving all of the problems above in one fell swoop. You’ll be able to “calculate 2+2″, to type the letter å, to abbreviate “open” to just “o”, to select a URL and tell Enso to open it, and more.

Is there a drawback? Yes there is. The interface has to change to accommodate all of these features. Because the interface is changing, Enso 2.0 will break the habituation of Enso 1.0 users. There will be a certain amount of re-learning involved before Enso 2.0 will feel as comfortable as Enso 1.0 did. We don’t like breaking habituation, but to make something better — and to address all of the rightful complaints — it is necessary. Enso 2.0 get all of the above features by adding only one really new mechanism.

Look for a public beta-testing release of Enso 2.0 within the next couple of weeks.

by Jono DiCarlo



COMMENTS

42 Voices Add yours below.


Fortunately for me, I never really had any problems with the limitations of Enso 1, but I’m looking forward to 2.0 quite a bit. Thanks for the great product!


Alejandro Moreno
January 23rd, 2008 1:29 am

This is pretty exciting news! And more details within the month! Awesome. Thanks!


I don’t know if I misunderstood you - but swedes do not have to hold down modifier keys to be able to type å ä and ö - we have them incorporated into our keyboards as their very own keys.

So for us there would be no more trouble typing å ä and ö than it is to type any other character.



We’re wary of the dangers of adaptive interfaces. […] What we need is a specially-designed learning algorithm that will provide the benefits of an adaptive interface without the problems.

There is already such a specially-designed learning algorithm, and it is Quicksilver’s.

Adaptive interfaces are dangerous only when they adapt from “under you” — when something that have been using changes. There is no reason why software, especially Enso-like software where nothing not used is visible, cannot adapt the parts of the interface that have never been used, or even seen.

Thus if the user has been using “w” for Wordpad, then it should remain that way even if Word is the more frequently used program, but there is no reason “Wo” cannot (adaptively) become Word instead.

Add in an option that lets the user select Word after having typed w (even though w is Wordpad by default), so that after enough times doing this, Word can become the new default for “w”, and you more-or-less have Quicksilver’s solution, and the near mind-reading ability that makes Quicksilver so usable.

[I commented about this in a previous post too.]


I’m also very happy to hear about the upcoming release. Incidentally, since Enso first launched, I’ve moved to Sweden, and I’d like to point out that while what Pelle above said is correct–you get å ä ö without shift–there are other characters (like @) that require the Alt-Gr key; I hope the new method will accomodate such cases.

On a related topic, I would also like to point out another big limitation of Enso 1, in my opinion: its inability to handle non-ASCII characters in text. I can’t use the Enso spellchecker anymore, because virtually all of my texts contain the above-mentioned characters. And what Enso does is not just ignore them–it actively changes them, thus harming the text. This is definitely not humane behavior. So I very much hope that Enso 2.0 will use Unicode and deal correctly with text in different languages. It’s not a fringe thing not to use just ASCII, guys!

Oh, and maybe the reason you have so many users in Scandinavia and Germany is that these countries are ahead of the curve in Europe, computing-wise. Ever heard of Linux? Or MySQL, for that matter? :-)


Perhaps I’m, y’know, stupid, but slash isn’t a shifted character on either US or UK keyboards. It may well be on non-US and non-UK keyboards, but since you don’t handle accented characters *anyway*, that may not be much of a loss :) Maybe I’ve misunderstood?


Hey. I am a big fan and a long time enso 1.0 user. I am glad you are continuing this project, but i am sad that you seem to be taking it of the course of the humane.

First of all, I would like to comment on the first thought that I got when reading your post, its about the o for open thing. I am strongly against this. Every time I “market” your product to friends or coworkers, the use of semantic language for using it is a top point.

Ok, so many ppl are lazy, but as you should well know, you do not have to type o p e n space in order to use it. A simple o tab or o enter will make enso ready to recieve the program name. Doing o space will NOT be faster, and it will also reduce the usability.

I am all for supporting other languages, since im a norwegian, but also remember to fix the wikipedia link for us (we have two languages (nb and nn), but the country code is no. And since your wiki reads our language, it creates an invalid url.

Now that you have gone free-as-in-beer, I believe you have an even stronger ability to not “sell out” and keep to your ideas.

In closing, I would like to say that I love enso 1.0 and it sounds like when it comes time to upgrade, I will have to actually wheigh pros and cons..


Very happy to see the things I work with in the beta come to the “retail” version :) Not having to type “open” is really increasing the speed that you work with Enso and it even increases the number of times I use it.
For the special characters: instead of having to adopt to a new interface, I’d rather see those special characters handled like normal ones. Ä becomes A, Ö becomes O etc.

But lets see what the Enso team can come up with as a new interface :)


w00t

Well, I love it!!!
Sign me up for beta testing :-D

BTW. The xml-rpc solution for plugins isn’t working we well. Starting the extra process (server) isn’t a good way to do it.
I rather see a plugin system that reads Python modules when ENSO startup to make them available.
Could you please rework that too?

I really love to be able to write plugins in Python for myself, but also to distribute them to third-party users. So a way to package and install/uninstall plugins might be useful too!?

Regard,
Caboose


@Caboose Yes I tried to make some new commands, but found it cumbersome (I may have misunderstood this) to have to have the parser running. I would like an easier way to add custom search (web engines) commands and a way to share them.

I would be glad to help with beta testing as well, being a user that has habituated enso 1.0..


@Alexander: Yes the xml-rpc server needs to be running. I could be implemented as a WinNT Service (on windows) which would solve things, but I find the sync between ENSO and the server would need to be better. I would prefer python embedded modules (as suggested above). (well, now I’m babbling ;-D)

I wanted to give my view on why Scandinavian people seem to adapted ENSO (and I guess its true for Germans also?).
We scandinavians have a very strong “engineer culture”, we tend to try to solve problems systematically (not much winging it on a feeling). I think ENSO to us seems like a very simple and rational system yet very powerful.

To quote the singer Björk: “I tried to organize freedom, how Scandinavian of me”

I hope that give a little better insight in the Scandinavian mind frame :-D

Cheers,
Caboose


> slash isn’t a shifted character on either US or UK keyboards.

Yes, but colon (as in C:\ Documents and Settings) is shifted. I say Enso should infer that what the user mean (in this case, colon, not semicolon). It should usually guess right without requiring the user to use the Shift key.


I use the enter key for auto-complete (as in “o enter” yields open). Allowing Enso 2 to use space as an auto-complete gesture does little harm, as long as it is implemented consistently. For instance “cl space” must also auto-complete the “close” command.

Now we have three auto-complete gestures: tab, enter, and space. You need to consider Hick’s law, but this still may be a good choice.


@Varsoil Agreed, only they are not suggesting making space an autocomplete command key, they will allow users to rename commands, for example “open” to “o”. This I feel is doing the user a disservice, as it is the job of the interface designer to design interface, not the user :p


Can you add Leap(tm)? That would be awesome. It’s the one feature I miss most from Archy.

On another note, I haven’t really been using Enso; I remap Caps Lock to Ctrl, and hence don’t have a decent key to map it to. Hmm… how about an Enso foot pedal? :-)

– J.P.


I never type ‘open’ in Enso. I type the ‘o’ and the rest of the command is shown in green. All I have to do is hit the tab key to complete the command and then type in my target app. It’s simple already. Why screw it up?


Hi, i think you should see Launchy for some of your current “ways”.

I.E. On Launchy i don’t need the slash (/) to browse i just do:

c:[tab] (it list my c:\ directories)
w (will filter c:\ so i see www and windows)
(select windows) [tab]
Show c:\windows directories

Is really easy really.


PLEASE PLEASE PLEASE! I agree with the other poster that the new define and thesaurus is a large downgrade. This is a feature I use all the time. Please allow people to use a built in dictionary. It is so much more humane. So much! It’ll be hard to upgrade if you don’t allow that.


Hello, everybody!

Wow, I’m kind of glad to see that there are such strong feelings about this. However, there also seem to be some misunderstandings. I’ll try to clear this up a little bit.

We are NOT changing the names of any commands, nor are we allowing users to rename commands. I’m sorry if the article implied that. Instead, we tried to solve the underlying problem that was leading people to ask for this feature. The problem is that Enso requires you to enter the entire command name before you can start entering the argument. The tab-to-autocomplete feature was an attempt to patch this, but our experience has shown that few people are using this feature. (Tab is too hard to hit while holding caps lock, and Enter is too strongly associated with other functions.)

Anyway, wait until you see how Enso 2.0 actually works before you start criticizing it, please!

I also see that I confused people with my talk about shift keys and modifier keys. (I also displayed my ignorance of Swedish keyboard layouts — sorry about that! Thanks for setting me straight on that point.) I was being somewhat vague because I didn’t want to get too deep into the technical issues. Suffice to say, Enso 1.0 has an overly-simplistic way of mapping keystrokes to characters, which respects neither international keyboard layouts, nor the difference between modified and unmodified keystrokes. This is getting fixed.

After the Enso 2.0 beta, the next release we are planning is an improved mechanism for writing your own commands. They’ll be easier to write and, just as importantly, easier to share.

Thanks to everyone so far for your heartfelt suggestions in this thread. ;-)


Juno,

Please please please?

Steve


I wish I could divide all the world’s spacebars in half for you guys. That left thumb sits there doing nothing all day. It’d be prime real estate for a quasimodal key. :)


So you like the quasimode, but do your users? I would think it would be a lot easier to use a Quicksilver/Launchbar-style hotkey to activate, thus freeing your hands to type. I believe this would not cause mode errors, since the launcher UI would be the locus of attention.


Suggestion :

Pressing capslock twice brings you
the modal version of enzo.


@J.P.: The Kinesis Ergonomic keyboards have a key under the left thumb that I’m using for Enso. They sell foot pedals, too. :)

@Mike H: If you really gave Enso’s quasimode a chance and still cannot become accustomed to it, you can turn quasimode off in Enso’s preferences. Or get a keyboard like the Kinesis one that allows you to make use of both your thumbs.


I really enjoy using this product. An adaptive interface would be nice, or you could allow users to remove preset commands. I also think that it would be nice to allow for email in addition to URLs. I have had some problems with the translate where it pastes from the clipboard instead of translating (I realize it’s still a beta).

Keep up the good work.


Back with another one of those block-rockin’ feature requests, r.e. the Developer Extension. It would be so, so awesome if one could specify the filepath of an extension-server script (or two, or more?) for Enso to start automatically when it launches.

Thanks for your consideration, and looking forward to 2.0!


I know you guys say you don’t know the release date of the mac version. But is it possible that it might be release concurrently with enso 2.0?


@Andreas: Which Kinesis keyboard do you mean? I use the Freestyle. If you mean that I can remap the left spacebar without affecting the right spacebar… that would be great. Can you provide more specifics?


@Varsoil: I’m using a Contoured Kinesis, with all those thumb keys. It allows for mapping of keys, hardware-side, without the need to install any software on my computer. It’s simply awesome. I wasn’t aware of the Freestyle however, and your Idea sounds great. I took a look at Kinesis’ product description, but it sounds like it doesn’t support any remapping.


What if enso features the ability to swap caps-lock and space?

Space Bar is the most easily reachable character and it doesn’t mess with your typing.. While CapsLock turning into space, well atleast i just have extra space and NOT SENTENCES THAT SHOUT ALOUD :P


Does it will take double RAM resources too?
60Mb?


@Kyrill: No, it won’t.

If Enso’s memory usage is bothering you, wait for the release after the release of the 2.0 beta. We’ve figured out how we can remove some code which will reduce the memory footprint substantially.

Ahh, so much to do…


Michael M. Butler
January 29th, 2008 1:12 am

I use o followed by tab for open, but tab while holding capslock down is awkward. And I do still have the non-adaptive aspect of things slowing me down. Best wishes on finding a sweet spot for Enso 2.0.


@Leafy: I like the idea of using spacebar as the quasimodal key. It is easy to type while holding the spacebar.

Technically, Enso could use the spacebar as the quasimodal key, without disrupting the spacebar usage as a spacebar. Enso begins monitoring and capturing keystrokes upon the key-press of the spacebar. If and only if the spacebar remains pressed for 150 milliseconds does Enso act upon the key-presses. If the spacebar is released earlier, all keystrokes are passed along to the applications as is normal.

Spacebar auto-repeat is retained by Enso watching for “tap, tap, tap-and-hold” of the spacebar and allowing that through for auto-repeat. One awkward consequence would be that, while in quasimode, the tab key would need to be used for word delimitation. (The spacebar would be inaccessible.) That would take some getting used to.


I’m more interested in *speed* — especially startup speed after hitting capslock. I sometimes have to wait 30 seconds until enso pops up…


Personally, I’d like to see Enso support for Browser tabs (in my case, Firefox tabs). ‘tab close’, ‘tab next’, ‘tab prev’, ‘tab new’ seem like good candidates.


I’m a recent Enso user and I’m extremly sattisfied with it. However I’ve had some problems with “learn as open” command. Enso keeps crashing when I select a file or a folder in Explorer and then try to use “learn as open”.
I have also sent couple of bug reports.
Forutnatelly, it works in Total Commander.
This is a problem on my laptop. When I installed it on my desktop this command did not work at all - Enso keeps crashing with files, folders and urls.

I’ve read the bugreport before sending it to you guys and it seems it “cannot access clipboard data” for some reason. Don’t know what’s the problem?!?

But, laptop installation is working (with Total Commander :P) and I’m very pleased with it.

Looking forward to Enso 2.0.


@Varsoil

I’d rather see the spacebar made into a key-modifier and have Enso’s quasimode triggered as soon as the spacebar AND another key are pressed at the same time. This would restore the Caps-Lock to its proper function and would not interfere with the spacebar’s function in anyway whatsoever.


Wow! Completely forgot about the need to enter spaces while in quasimode. Please ignore the mental diarrhea above.


I’ve been enjoying using the Python Command Server that is in the wiki, I think that something similiar should be put in the default install.

I would also like more options when developing plugins, if we could get access to this new autocomplete text box thats in the 2.0 version that would be an awesome start.

Making something like a spellchecker is tough to do currently, I made one but it only displays the miscorrect words and offers suggestions, you have to look at the suggestions and then make your correction manually. Would be awesome if there was a way to pick from the suggestions and then I could just replace the whole selection.

So maybe if we had access to the autocomplete box, and then have access to some events like when you complete the box, or when it closes etc.

I’m loving this since I have started to develope some commands of my own, but it could be a lot better!


You could eliminate the open altogether by making the name of an application the command to open it.


I love the quasimode, but that doesn’t mean you can’t use shifted characters. Just use escape sequences!

Just tell the users to type a backslash instead of holding shift.

Heres how it works:

If you want to type an ‘a’ you type “a” as usual, but if you want to type ‘A’ type “\a” and Enso would instantly replace it with an ‘A’. (Then [backspace] would still erase the whole capital A as normal.) If, for some reason, you actually need a backslash, just type “\\” and Enso will replace it with one. This could work for other shifted characters as well. If you want a ‘%’ you can still type ‘5′ as normal, but “\5″ gets instantly replaced with ‘%’.


POST A COMMENT

Please respect this public space


 Required

 Required



 

Live comment preview