Challenge: Tell Me Why These Things Happen

The last few weeks has been ripe with weirdness. On three separate occasions I've been jarred into an alternate Macarena universe where I can still get Lucky Charms from WebVan.

The last few weeks has been ripe with weirdness. On three separate occasions I’ve been jarred into an alternate Macarena universe where I can still get Lucky Charms from WebVan. No really.

You see I can be slightly obsessive and when I’m confronted with a situation or some form of left-field reasoning that I can’t figure out, I lose it. Sometimes things just stick in my head and I just … Snow Crash.

My wife and I were once discussing diets and my wife, out of shear frustration, decided to assault me with Gratuitous Negatives:

“Just because they don’t know they’re not fat doesn’t mean they shouldn’t go on a diet”

The conversation ended at that point. I ask her from time to time what she meant, and she literally won’t tell me. I love her so.

So here I am, once again, with my mind tied in a thousand little knots; afflicted by some seriously ridiculous “WTF” logic problems. I need to go to sleep at some point, so I’m going to ask for you help: please help me to figure out the 3 things below, won’t you?

I’m not asking for a virtual shoulder to cry on, nor for a comforting pat on the back as we rage against MAN. What I really want, nay what I CRAVE, is for you to lend me your cortex and (seriously) offer some reason to the madness to follow…

Exhibit A: Your Password SUCKS
For you consideration – the American Express cardholder website. I had to register there tonight and was asked for a password:

Amex_Password

What was I thinking! Let’s just cut to the chase here:

“Passwords cannot be more than 8 characters… as [Deity] intended”.

Completely perplexed, I found their password policy on their Change Password page (buried deep in their site, under “Advanced Services”):

Amex2

This.

Is.

Lame.

SQL Injection fears, special data types on the database, or perhaps a special encryption routine that doesn’t like a lot of extra stuff to encrypt? Laziness?

If it is a data type issue (maybe they have char(8) or something), doesn’t this mean my password is stored in clear text? If you encrypt text with any popular encryption scheme … doesn’t it use “special” characters?

Are they serious?

Exhibit B: Amex Is Not Alone, Apparently
I had to do some work on my retirement stuff tonight (in a strange coincidence) and like I always do – I forgot my password. I assumed it was my “strong” password that I use for sites like this, but it wasn’t. So I decided to change it online. In doing so, I came across this little gem (Scott Hanselman originally wrote about this – but I encountered it just tonite):

Fidelity

The best part here is that my login is my social security number. So if someone managed to nab that, it’s a quick Rainbow hack and you’ve got the retirement money I’m not saving. Seriously – lucky for me I don’t save my retirement, Fidelity seems to want to give it away for me.

Exhibit C: Twitter’s Warp Engines Are Stuck
The other night I was at my hotel and I overheard a classic 1999/2000 Dot Com power dinner where two guys were trying to name their startup. Aside from making me ill with memories of egregious silliness, I found their naming process to be… well … egregiously silly. So I Twittered it – I couldn’t help myself.

They were being loud and obnoxious so I figured I’d let the rest of the world in on my painful flashback and over the course of the next 45 minutes, I sent six Tweets from my cell phone using SMS:

WindowClipping (3)

You’ve probably noticed this looks like gibberish and makes little sense. You may also have noticed that the time on the Tweets are literally seconds apart. What you can’t see is that they are 4 hours late in arriving.

I’m not going to jump on Twitter any more. It’s become obvious that they like that sort of thing and a new “Masochistic Marketing” trend has taken over the industry. Maybe it’s Emo Marketing: “Hey look how bad I suck… /sigh”. Anyway, beating up on Twitter’s not what I want to do here – what I want to do is figure out WTF happened – how could my Tweets have been scrambled?

Assuming that the messages were received when I sent them (otherwise you’d get a delivery failure), The only things I can come up with are:

  1. Twitter has a cluster of servers “listening” for Tweets, and the clock is off between them.
  2. They “bin” the messages as text when they come in and ignore the timestamp from SMS; setting the received time to when they get added to the database.
  3. They know I’m in Hawaii, but got confused when they saw the PDT (Pacific Daylight Time) time zone on my SMS. So they delayed showing the posts until they made sense with what time it is in Hawaii. This would explain the 4 hour delay (my money’s on the fact that they don’t know Hawaii is actually 3 hours behind, not 4).
  4. They were eaten by the Fail Whale and, like Jonah, flew out the blow hole and didn’t know where they were.

I think it’s number 3. It’s strange enough that it must make sense.

But why are they out of order? OK OK OK so let’s assume they were “over capacity” once again – the messaged GET QUEUED right? Otherwise they wouldn’t show up! If they get queued – there has to be some order there, some way for the DB to know which ones came first!

Seriously how do you blow the ordering? And to emphasize: I’m not trying to beat up on Twitter (it’s pointless) – I need to know (given the evidence) how this could happen!