Code 52 - a new coding project every week

carnac

A new week means a new announcement, and this one is a bit obscure. First off, watch this clip:

What does this have to do with anything, you might ask?

Carnac the Magnificent Keyboard Utility

This idea was spawned from a previous project written by Roy Osherove called Keyboard Jedi. At its core, the tool is about displaying keyboard shortcuts to users. It does some cool things to help (force?) the user to become better acquainted with the keyboard.

To complement that vein of functionality, I present to you exhibit B.

String Calculator from Corey Haines on Vimeo.

Watch the stream of characters in the bottom-left corner of the screen as Corey works his way through the kata. I am not familiar with the tool (perhaps someone in the audience knows it) but I fell in love with it's purpose immediately. While not practical for all scenarios, it is something that can be very useful for viewers to follow along with during a presentation. You could even filter it to only show keyboard shortcuts (like Keyboard Jedi).

Taking it to eleven

The JabbR room were throwing around ideas last on Sunday around what other cool things you could do with this tool:

  • Is it possible to export shortcuts captured to a video editing program (rather than displaying them onscreen)?
  • What about tracking statistics about the session - mistakes, navigating with keyboard, time spent using mouse, etc. What about over time? Is someone overusing specific shortcuts?
  • Can we bundle keyboard shortcuts for typical apps you use? Can we detect shortcuts used by that user for that application and share them with the world?
  • Can we bring back Typing of the Dead already?

The technology underneath

As we have a few contributors who are familiar with WPF, we will be using that to write it. Sorry Winforms developers. Hopefully we can show off some cool tricks along the way about visuals and animations work with WPF.

Follow the chatter

What we're looking for this week is coders and testers. Its a very specific app, but could open up a number of possibilities for developers to work on stuff. We use JabbR heavily to discuss stuff in real-time - if you want to get involved, drop in on the action. If you can't keep up, don't worry - JabbR also supports browsing the conversation history of a room (just scroll up to go back in time), so you can catch up on the discussion easily.

How can I get involved?

The initial project is up on GitHub. The Trello board will be updated over the course of today/tomorrow as we sketch out the UI and features to implement. And of course the JabbR room is worth checking out too!

blog comments powered by Disqus