What happened to the hackerhat?

September 13, 2010

In Davis, there’s a company that’s going to release a flying car sometime in the next few years. Seriously. It’s a real thing. The only thing is, they’ve been “just about to release” said flying car for about thirty years, and it’s become a bit of a joke.

I bring this up because this week I got a lot of emails that looked like this

Hey, I downloaded your hackerhat software, and it’s really cool, but are you going to go beyond the alpha version ever?”

Is anything still happening on this project or is it dead in the water?”

Obviously, people are worried that this will go the way of the flying car. I’ll try to allieve your worry:there is now a beta version that’s almost completely done, and is just waiting for a few finishing touches. It’s much more polished than the alpha, and has a whole bunch of new features like

  • Layers that can be installed, uninstalled, etc. like regular apps
  • An API for layer development
  • Integration with mini-keyboards and text-to-speech systems
  • A whole bunch more layers
  • Better performance, especially when a lot  of layers are turned on

It’s true, the hackerhat has been one of my longer-running projects. This is due to a couple of reasons: I’ve just started college, which means that all my equipment was basically living in a box for a couple of weeks. And at the start of the semester I’ve been ridiculously busy anyways.

Another part of the challenge is processing speed. The human visual system is, from a design standpoint, absolutely incredible in terms of its resolution, optical quality, and most of all, framerate and latency.unfortunately, these last two factors also present significant challenges for design.

The frame rate is the number of times the image is updated each second. Generally speaking, the brain begins to interpret an input as signifying movement when the frame rate is above 20 frames per second. At lower framerates, the “video” begins to look more like a slideshow of still photos. Because the screen always shows the last frame received, a high frame rate is also required for precise control of movement, and very low frame rate can result in a time-shifting effect, where the image displayed may represent not the current situation, but the situation 0.5 seconds ago.

This leads into the second issue, latency. Basically, what we see is never actually in real time. It takes time for light to travel to your eyes, after which the information must be encoded to neural code and passed through a variety of filters and processors before you really “see” it. The amount of time between when a visual event actually happens and when you perceive it is the latency value. Although it’s difficult to measure precisely, average human visual latency is estimated to be slightly less than 150-300 milliseconds

So how does this figure into the hackerhat? As you might imagine, running the standard hackerhat UI, plus any layers that are turned on, plus the software to stream data to a display requires quite a lot of CPU power–in fact, more than my test system(and probably the systems of a significant number of hackerhat users) possesses.

In an overload situation, latency will increase because the system cannot transfer data as fast as the data is coming in. This results in the formation of a “backlog” of video frames, and ultimately in a noticeable and increasing delay in the video signal that the user sees on the screen, which can seriously affect the safety and usability of the hackerhat.

One way to deal with this is to reduce the frame rate, thus reducing the amount of data that must be transmitted each second to a level that the system can deal with. Unfortunatley, if this is done in excess, it actually results in the introduction of more latency, because an image can persist on the screen for a relatively long time after the actual input has changed.

This is the basic problem that’s been keeping me up at night:given the ambitious goals of the hackerhat project, it’s unlikely that all but the highest-power computing systems will be able to supply truly high-quality video.Since this is a basic fact, the main challenge has been re-engineering the hackerhat code to be more efficient with CPU use.

Enhanced by Zemanta

One Response to “What happened to the hackerhat?”

  1. Anonymous said

    I hope you become a great hacktivist someday.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: