Wednesday, July 29, 2009

Some thoughts on password input visualization

I've been seeing a few of these things floating around. Supposedly, they make it easier to figure out if you typed your password correctly just by glancing at a hashed graphic representation of the password.

My first thought is of the eating-your-own-dogfood type: how do you type your password? Do you actually look at the screen as you're typing? Do you click the button or press enter to submit? If the latter, do you pause before pressing enter? Can you easily override your muscle memory and not press enter if, say, you feel you see one less * than what you think you should see? Well, maybe you're a geeky freak. Ask your friends the same questions.

Another thing that I'm wondering is whether the whole thing is redundant. Why do you need to visualize your password? Did you make a mistake? Were you not aware that you may have made a mistake?

And one last thing. What was the last ad you saw about? Chances are you didn't even see it. What makes a graphic feedback icon any different? It's very easy to miss things that you aren't expecting. For example, I often miss a "check user ID availability" button when signing up for a free game simply because it's just a bit off of where I'd expect an interactive piece to be next.

I don't know about anyone else, but I don't really care about hash strength and all that crap people throw around to make themselves look smart in HN or whatever. If people really wanted to get your password, they would. There are so many non-cryptographic ways to do it, it's not even funny.

What matters for an UI experiment is that it plays well with users' behaviours: I type my passwords looking at the keyboard and press enter by muscle memory. I subconsciously dismiss things as visual noise when they are not absolutely required to the task at hand.

So far, the password visualization experiments I've seen don't address any of those behaviours.

Friday, July 17, 2009

Bullying

What the hell was wrong that school? o_o

Since everyone is talking about their experiences now, here's mine too: Sometime in the first month of high school, I bit the guy's finger (I was actually trying to rip it off). Then life was nice and quiet.

Tuesday, July 14, 2009

Why give software away?

Zed Shaw on his choice of licenses.

I still don't get why people would want to give stuff out for free. It's one thing to collaborate with random programmers who are interested in the same technology as you, it's quite another to be Mother Teresa.

Friday, July 10, 2009

What is a browser?

I should do that sometime.

Digg and IE6

Now we can point to this whenever someone makes yet another one of those obnoxious upgrade warnings.

Wednesday, July 8, 2009

Tuesday, July 7, 2009

Surfing with the aliens

So, I was playing with my old radio and by some strange stroke of fate, I stumbled across some sort of alien communication channel. Apparently they look like what we know as unicorns: four legs and a horn on their heads.

By tweaking the frequency knob just a bit, I was somehow able to access and understand their fantastic intergalactic Extertube(tm) network, where apparently millions of these aliens can share information at the speed of thought.

I listened avidly. Some of things I learned about them is that their numbering system counts the number of legs plus the horn, kinda like how we humans count the 10 fingers in our hands. Counting for them goes like this: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14, 20, 21, and so on.

I came across a particularly lively discussion involving their strange numbering system. The question: Is 0.444... == 1?

So basically, is a zero followed by infinite fours the same as one? Well, not in my planet.

But wait, if their 10 is equal to our 5, their 11 is equal to our 6, their 12 is equal to 7, and so on, what the hell is their 0.444... equal to anyways?

I scribble some math in my trusty notepad. Is 3 / 2 equal to 0.444...?

 3 | 2  I can fit one 2 in a 3
    1

 3 | 2  but I still have a remainder of 1
-2  1   let's put a dot and add a zero
 1      to the remainder like my 1st grade teacher taught

 3 | 2  There.
-2  1.
 10

 3 | 2  Ok, so 5 now, right?
-2  1.5 Wait. They don't have a 5.
 10     Their 10 is worth 5.
        Argh. I'm getting confused.

 3 | 2  I can fit two 2's in a 4.
-2  1.2 Two 3's would only fit in 11.
 10     So 2 it is. I get 10 - 4 = 1. Right?
- 4     But 1.2 is definitely not 0.444...
  1     This can't be right.

I scratch that and try a new fraction.

Is 1 / 3 equal to 0.444...? Scribble, scribble. No. Is 23 / 34 equal to 0.444...? Scribble, scribble. No. Is 34110 / 21300 equal to 0.444...? Scribble, scribble. No. After a bit of fumbling, I tried this:

 1 | 4  I can fit zero 4's in a one 
    0

 10 | 4  so I put a dot and add a 0
     0.

 10 | 4  now I can fit two 4's.
     0.1  Oh wait, no, I can't, because their
          one-followed-by-a-zero is actually
          only worth 5. So I can only fit one
          4 in a 10 and I get 1 left.

 10 | 4  so I have 0.1 and 1 left. Right?
- 4 0.1
  1

 10 | 4  repeat...
- 4 0.11
  10
 - 4
   1

 10 | 4  repeat...
- 4 0.111
  10
 - 4
   10
  - 4
    1

Ok, great, if I keep calculating this forever I will have 0.111... (with infinite ones). So 1/4 = 0.111... for our alien friends.

Awesome, since I know 0.111... will be an infinite number of ones (and no other number), I think I can do this then:

 0.1  0.11  0.111  0.1111...
 0.1  0.11  0.111  0.1111...
 0.1  0.11  0.111  0.1111...
+0.1 +0.11 +0.111 +0.1111...
 0.4  0.44  0.444  0.4444...

Alright! I figured out that 1 divided by 4, times 4 is 0.444...

Wait.

Anything divided by 4, times 4 is itself. Right? I try it with my super powerful Windows calculator to make sure I'm not getting confused by their weird number system.

1 / 4 = 0.25
0.25 * 4 = 1

Yeah. I'm not crazy.

Their 0.111... is the same as our 0.25
Their 0.222... is the same as our 0.50
Their 0.333... is the same as our 0.75
Their 0.444... is the same as our 1

And our 1 is the same as their 1.

Excited, I decide to share my discovery with the aliens. I tune my old walkie-talkie in the same frequency and start spelling out my calculation. 0.444... is equal to 1!

I disconnect my radio, feeling accomplished that I helped extraterrestrial beings in a intergalactic discussion. I grab some juice and decide to surf the 'net a bit to relax.

Hey, what is this? A new forum post. Apparently it's also a math question. Hah. I'm good at those. I just helped some aliens!

I rub my hands anxiously, pick my pencil and paper and start reading the question: is 0.999... == 1?

Lisp Toronto Meetup

Snap, it's starting right now!