‘General’ Category

  1. Intuitive user interface design failure… when a doorknob isn’t.

    April 23, 2012 by Mathew Eis. No Comments

    Sometimes, designing an intuitive user interface takes only stepping away from the project, and trying to think about how someone else might try to use an object. Most of the time though, you really need to see how the interface is used in the real world. The very best example I can think of this involved a so-called “inactive” doorknob. It was the door to a closet in an apartment that I rented.

    For nearly two months, I was unable to open the door, instead thinking that perhaps management had located a hot water heater or some similar utility behind the door, locking it away from tenants. Inactive Doorknob

    It looked like a doorknob, but it didn’t act like one. It didn’t turn, and it didn’t latch. Instead, I found the doorknob worked like a handle on a cabinet rather than the usual doorknob. One needed only to give the knob a firm tug and the door would open.

    On paper, and to those that installed the knob, it probably made perfect sense. But to me, who had never seen that kind of doorknob, it was not an intuitive interface.

    These are the kinds of things that can be easily worked out through user testing.


  2. Why you can’t build that in a week

    April 16, 2012 by Mathew Eis. No Comments

    The recent news that Instagram was bought by Facebook has many in the industry protesting that such a simple app could be worth $1 billion. After all, they say, they could have built the app themselves in a week. Really though, this is largely just wishful thinking – and here’s why:

    1) Instagram wasn’t built in a week.

    Coding and releasing is only a small step in the process of building a successful app or company. Founder Kevin Systrom said himself that although it took eight weeks to build and deploy, it was the result of more than a year of planning, not counting a previous failed attempt at a similar app! Such deceptively simple apps are more often than not the culmination of years of work – finding out exactly which parts of a program are important to users, and refining even the tiniest of bugs from a program. These kinds of things don’t happen overnight.

    2) The founders were Stanford graduates

    For better or worse, where you go to college has an enormous impact on the connections that you make. They also had connections with the Twitter founders and Google. Systrom and Krieger had a $500,000 seed investment to start building Instagram – without much more than a concept!

    3) I could do that + yeah, but you didn’t

    This meme going around, originating from artist Craig Damrauer sums it up nicely. Maybe this can be motivation for the rest of us who, just maybe, might be able to build the next Instagram. Taking the plunge is more often than not all that keeps us from here to there.


  3. Windows 8-bit 256 color palette

    December 16, 2011 by Mathew Eis. No Comments

    Some people like to say the internet is forever. Unfortunately, it’s not. I recently needed to track down a 256 color Windows system palettes from the Windows 95/98 era. In less than 20 years, the internet has all but forgotten what the color palette might have been.

    This is my best attempt at reconstructing it from various pieces of information I was able to find around the web. This is a true-to-color gif image, so the color values haven’t been corrupted by downsampling.

    The actual color values can be downloaded here.

    256 color 8-bit Windows system palette


  4. JAVA Diamond Square Generator

    October 27, 2010 by Mathew Eis. No Comments

    For a proof-of-concept GLSL shader I’ve been working on, I needed a random Diamond Square texture as input; a little bit of work yielded me this JAVA applet, which I then was able to easily fine-tune for my needs: Source Code: (Download)


  5. Magic Triangle w/Kerberos in OS X 10.6

    September 23, 2010 by Mathew Eis. No Comments

    I was recently handed the task of integrating Mac OS X 10.6 into our so-called Magic Triangle authentication environment. To make things more interesting, Macs here are treated as UNIX workstations, and thus not bound to AD.

    A quick search on Google yielded a long discussion on Kerberos support (or not) in Mac OS X 10.6 on RedHat Engineer Vincent Danen’s blog, and eventually to a his Wiki discussing Kerberos on Mac OS X

    I’ll summarize the relevant tips here:

    • /etc/krb5.conf is /Library/Preferences/edu.mit.Kerberos on Mac OS X
    • /System/Library/LaunchAgents/com.apple.Kerberos.renew.plist should use -R instead of -B (to auto-renew tickets)


    Thanks to Apple’s support of Open Source, I was able to check out the source code for the pam_krb5.so module that they use in OS X 10.6. With this, I was enable to enable debugging in a custom application and determine how to get authentication working.

    Apple has some additional tips here: http://support.apple.com/kb/TA20987