To Tab or not to Tab, that is the question

In the most recent 0.7.2 update, I started a process of usability enhancements in the run up to 1.0 to try and make the Alfred experience more predictable and consistent for new users. It’s only during this process that you realise how very few options there are for fast ‘single tap’ hotkeys to perform certain tasks.

Tab Auto Complete

One of the very hardest changes I made was to the Tab behaviour – something which absolutely had to be done as Tab is synonymous with auto completion. Before I start, I will explain how Tab auto complete works in the Alfred file system navigation view and how efficient it makes finding a file you want.

If I have a photo called ‘kittens15.jpg’ in a folder called ‘Aww Kitties’ on my Desktop, I would use the following process to navigate to the file after bringing up Alfred:

~           takes me to my home folder
de [enter]  results filtered to 'Desktop', enter the folder
aw [enter]  results filtered to 'Aww Kitties', enter the folder
k  [tab]    auto complete to 'kittens'
15 [tab]    auto complete to 'kittens15.jpg'

Clearly having Tab as Auto Complete freakin’ rocks… so what now?

Brain Dump Alert!

Warning: The following is a bit of a brain dump of some of the thoughts I had for changing the Tab behaviour.

1. Tab needs to be Auto Complete, nothing else

As you can action files in both the default Alfred default view and the file system view, the tab behaviour has to be consistent between these views. This rules out having Tab to perform an action completely.

2. The action key needs to be easy to find without looking

By making the action key ctrl or fn it will always be the bottom left key on the keyboard. This is very easy to find with your left pinky without taking your eyes away from the screen.

3. If you like scrolling, group all the action key with the arrows

By allowing the right arrow key to action, this means that you can find the file you want to action, then for example press right, down (to select open with), right, down (to select the application), then Enter to finalise the action. As an added bonus, on Apple laptops, this also makes the action key the bottom right key of the keyboard.

So there we have it

The Tab behaviour now rocks, and the action key is easy to find without having to look for it. But wait, there is one more thing… If you liked using Tab just because of the location on the keyboard, you have another option!

Remapping Caps Lock

Remap Caps LockIf you don’t use Caps Lock (I’m guessing you probably don’t), in the OS X Keyboard preferences, you can select ‘modifier keys’ and remap Caps Lock to Ctrl which then works as the action key! Some have mentioned that this is the most comfortable key to find on the keyboard so everyone’s a winner! :D

Andrew (@preppeller)

Alfred 0.7.2 Brings Clipboard History

The new release brings a brand new feature – Clipboard History – as well as several marked improvements to features that have already been aiding your productivity. Alfred 0.7.2 will make you faster than ever, helping you reclaim all those lost minutes that you spent trying to re-discover information you had saved to your clipboard just minutes ago. Not anymore!

New: Clipboard History

  • Text-based storage of items copied to the clipboard
  • Hotkey access and quickly searchable history
  • Paste selected history item directly into current app from Alfred
  • Persistent (including reboot) for a user-defined amount of time (24h/1w/1m)
  • Easy-to-clear history which ignores user-defined apps (e.g. 1Password & Keychain)

Learn more about using Clipboard History with the Powerpack.

Improved: File System Navigation

New functionality includes:

  • show last browsed path in File System Navigation
  • show Result Actions panel for selected item in Finder
  • the behaviour of Tab has been changed to auto-complete
  • the Result Actions hotkey is now the right arrow, ctrl or fn (not Tab)
  • new actions, including Open folder in, Show package contents for applications, Copy path to clipboard

Improved: iTunes Mini Player

  • ability to ‘Play all songs by Artist’
  • Improved ‘random’ algorithm for random albums
  • Overhaul database structure to improve efficiency and performnce
  • Show Alfred core if using hotkey from iTunes mini player instead of hiding Alfred
  • Toggle to turn off Alfred using its own Playlist when selecting songs

For a complete list of what’s new in 0.7.2, have a look at our updated changelog.

With so many features, don’t forget to check out all that the the Alfred Powerpack can do.

The Mac App Store – First thoughts

It was inevitable – after Apple’s success with the iOS App Store, they would want to get their finger in the pie for OS X Apps too. Is Alfred (and its Powerpack) suitable for the App Store? These are my very initial thoughts about the App Store split into Pros, Cons and Uncertains.

The Pros

Improved reach and visibility – With the positive feedback we get about Alfred, I would hope that we would be listed in the popular and Top Apps in the App store, even if it was only in the Productivity section. If so, this could be absolutely fantastic for Alfred as the visibility would go from reasonably small to millions of users overnight!

Easier purchase / installation process – Apple’s installation process has always been a bit broken. I know this as I had to explain it to my mother recently. Allowing people to single-click to purchase / install Alfred and instantly activate it is definitely a positive. Over the past month, I have been working hard to change our checkout process to make it much easier for all users but it still won’t be as easy as the App Store will make it. This work may now be shelved.

The Cons

The review process – This shouldn’t cause a problem for Alfred as it is 100% 64 bit Obj C / Cocoa / Carbon and after a quick read of the T&Cs, Alfred would satisfy every requirement. However it may make us stumble in the future as it has done already with some legitimate apps in the current iOS App Store – I am a touch wary of this for now.

Fast Release Cycle and Pre Releases – I love doing fast release cycles and dev builds for our users. It gives them a sense of being involved in the development process, learning the App as it grows and feeling instantly comfortable when there are releases. The App Store would abstract the users from the process as they would only be getting the released versions. I could still do pre-releases from our own site but this would be a massive pain for the users as they would have to use two separate update processes for Alfred.

The user doesn’t get a tangible License Key – They are locked to downloading and ‘owning’ the software through Apple. While this may not be a problem, it adds a level of dependency to Apple which I hope isn’t going to become a problem for the customer beyond 10.7 Lion.

The Uncertains

The 30% Cut – While this works for simple apps which can be impulse buys and small $1 apps which subsequently require no customer support, I’m concerned that the App Store will drive the value of desktop apps down into this model. If it does, then we simply couldn’t continue the near-instant and thorough support that we currently pride ourselves by. We love our users and we can see that they love our feedback – I don’t want this to change.

Unable to provide support in The App Store ratings / reviews – So many times on the App Store I have seen people publish negative feedback and 1 star ratings because they don’t understand the software. On Twitter, this can be rectified in a second and convert a frustrated customer into a happy customer in seconds.

Unanswered Questions

  • Current Powerpack users – Can they be migrated to the App Store update process for free? If we did go to the App Store, we want these users to get the benefit of the easy update process but without an additional cost.
  • Family packs and Mega Supporters – Can we still separate the purchase types? Apple has a family pack for iLife / iWork so I am assuming that this will be possible.
  • Will the App Store be in all our target market countries? Otherwise we will have to have a separate checkout / licensing / deployment process anyway.
  • No support for Leopard deployment – What does this mean for our leopard users? Will we need a separate deployment process for these users?

In Conclusion

As you may have gathered from Twitter and the way that we interact with our community – our users are the main focus and we want to do the very best for them.

On the one hand I would prefer to keep Alfred completely independent, improve our checkout and update process and keep the sense of community that we have built since initial release in March 2010. On the other hand, I am worried that if Alfred doesn’t go into the App Store, it will be forgotten about or dwarfed by alternatives.

I would be very interested in hearing your views on this.

Andrew (@preppeller)

Baking Alfred – The Release Cycles

I love interacting with our Twitter followers, giving them sneak peeks of things I am working on for Alfred at that particular moment in time. Screenshots of upcoming features, keeping the change log up-to-date, discussing future ideas. However, this poses a bit of a problem.

Alfred is under heavy development and currently releases very regularly with pre-releases every 2 to 3 weeks and a general beta release every 4 to 5 weeks… Even so, posting these tidbits brings a response that I would liken to when I was younger, gently and methodically prodding the back of my dad’s seat on a car journey…

“Are we there yet, are we there yet, are we there yet…?”

While I absolutely LOVE the enthusiasm from the users for Alfred’s development, creating and releasing native software isn’t an easy thing. Just because a screenshot looks complete doesn’t mean it’s ready for everybody to use. The UI may not even be wired up or functional, or it may have quirky or missing behaviour, resulting in software that does not yet work properly.

I pride myself on the quality and stability of my releases so I simply will not release something until I am entirely happy that YOU, our fantastic users, will also be happy with it… I re-learnt this lesson 100 times over by releasing the iTunes mini player too early. I spent more time supporting this unfinished feature by email than I did trying to improve it for the 0.7.1 release.

Think of the software release cycle as baking a cake. You put some ingredients in, you mix them up, maybe add a few additional ingredients that weren’t in the recipe to make the cake extra special and then you start baking.

After spending all this effort making the cake, the last thing you want to do is take it out of the oven too early and ruin it.

With that in mind, just remember that I have big plans for Alfred, and even BIGGER plans for the Powerpack. Be patient and don’t make me get the cake out too early, as it will be oh so much more delicious when it’s ready. :)

Andrew (@preppeller)