Archive

Archive for the ‘Fleeting Sanity’ Category

The JavaScript Fallacy

April 26th, 2011

As someone with a rampant interest in UI engineering, I work a lot with JavaScript. I’d venture to say that it’s one of my favorite languages, mainly because it’s quick and flexible, but relatively clean…like a cat. Also like a cat, it can be a fickle, fickle beast. Here’s something I ran into yesterday:


// true stuff
0 == false;
1 == true;  

// also true
"0" == false; 
"1" == true;

// to be expected
0 ? true : false == false;

// WTF?
"0" ? true : false == true;

// or in another light
if ("0") { alert("I will show up"); }
if ("0" == true) { alert("I will not"); }

Clearly we have some temperamental1 loose typing. Stupid cats2.

1 This is, not at all, how I thought this word was spelled. From now on, I’m saying temp-er-a-mental.
2 Note, I actually like cats… Even if they are whorish.

A Coder's Guide to Life, Fleeting Sanity

Our new computer overlords

February 21st, 2011

Like many others, I watched Watson on Jeopardy last week, feeling a sense of simultaneous wonder and foreboding. Watson, for those of you who haven’t been keeping an eye on the rise of the machines, is a computer system built and programmed by IBM for the singular purpose of destroying… err umm…competing on Jeopardy as part of their most recent “Grand Computing Challenge.” Having experimented in building AIs before, I know it’s no easy feat to get a computer to understand people on a natural level. Granted, this was only me playing around for a few hours–not a team of mad computer scientists working for 3 years–but I’m sure we bumped up against the same hurdles.

I found it amusing that the category Watson seemed to have the most trouble with was the one relating to keys found on a keyboard. Also quite amusing, were the fairly significant wagers (in the digit sense), like the $937 (ish?) dollars wagered on Final Jeopardy. In the end, I’m sure they were the reflection of a sophisticated probabilistic calculation wherein I can only hope the variable for “killing all humans before my plug is pulled” was given fairly little weight.

Though, were I pitted against Watson, mano y machina, my compulsion would be to try to crash it with questions computers really have problems with:

This is the quotient of 3 / 0.

This is the third highest prime number.

You need to fill out the green form to get the blue form and you need to fill out the blue form to get the green form. This is the first form you need to fill out to get the green form.

And then there is the whole realm of SQL injection possibilities, which I would explore more deeply had I more faith in WordPress at the moment.

Musings, Visions

I’m innoventing!

November 16th, 2010

I just read a pretty interesting article by Robert Scoble entitled “Why Google can’t build Instagram”. It centers on why big companies have trouble innovating. In this particular instance, the company is Google, which is somewhat vindicating to me for reasons I won’t get into now.

I have an ever increasing interest in both innovation practices and how large companies operate and found a lot of interesting theories related to both there-in. Allow me to paraphrase the important points:

  1. It’s difficult to innovate without small teams
  2. It’s difficult to innovate without reducing scope
  3. It’s difficult to innovate when you have lots of groupies
  4. It’s difficult to innovate with pre-established infrastructure
  5. It’s difficult to innovate if you have to support everyone from the get-go
  6. It’s difficult to innovate without leveraging the work of outside parties
  7. It’s difficult to innovate behind an iron curtain (although Apple seems to handle it well)
  8. It’s difficult to innovate without Eric Ries-style “lean methodology”

These is a direct translation of the 8 reasons that Google has trouble with innovation listed in the article (and I’d encourage you to read them if you haven’t already). There is some overlap and I don’t necessarily agree that Google can’t do some of them (particularly the last two), but I think the key idea present in all of these points is:

It’s difficult to innovate unless you can move quickly and flexibly.

As companies get larger, they tend to become more bloated with bureaucracy, process, and opinions, which naturally slows down innovation. Consequently, as mentioned in the article, it can come to the point where the only way for a large company to be “innovative” is to exert its power (and not it’s agility) by buying smaller companies or doing things that are prohibitively expensive/risky that could easily destroy a weaker company.

So the question to ask is, how can large companies continue to innovate?

Musings

I am job

October 4th, 2010

I’ve been going through resumes again in a search for a good system operations engineer with mad deployment, automation, and communication skills (on can dream). It astounds me how many resumes aren’t written using proper (or even discernible) grammar. Now I understand the challenges faced by the ESL community of the world, on this front, but I feel like it couldn’t be too hard to have someone with a good sense of English sentence structure do a once (or twice) over to clean things up. Especially if you have sparkling little gems like these:

  • Am superior communication skilled
  • Am good worker at collaboration
  • Have technical experience writing for many levels

I feel like I could/should start up a small service wherein people would send me their resumes for some verbal recalibration. This would be an all around win for the applicant, who would be rendered ostensibly more qualified, the resume comber, who would be spared the brow-furrowing frustration of creatively worded ideas, and me, who would be charging a nominal fee for the aforementioned services. Of course, this would all be at the cost of some pretty amusing resumes which, lets face it, can sometimes help pass the time.

Musings

Removing input focus rings in Safari

September 19th, 2010

You know, the little blue glowing border that highlights the text box you are working in. I was looking for a way to get rid of it as it was detrimental to the visual flow of my site.

I found this little bit of css gets rid of it easy as cake:

:focus {
    outline: none;
}

Presumably, you can add other stylings to the border if you’re not looking to remove it. For instance, the following gave my input boxes an evil red glow:

:focus {
    outline-color: red;
}

Thanks are in order to this post on removing the ring, as this could have been a fairly tricky google search.

Fleeting Sanity

Go be alone somewhere…

September 14th, 2010

I heard some person being interviewed on the radio recently. He was, among other things, a medical doctor turned professional ballet dancer turned Goldman Sachs broker. And, from what I gathered, he was actually good at all these things–not just someone with a healthy dose of ADHD.

Clearly I don’t remember much of what he was being interviewed about, but something he did say struck a chord with me. To paraphrase:

Go where no one else is. That is, instead of clamoring for attention in an overloaded trend, become an expert in something you like that no one else is studying. Your time will come eventually.

I thought that was pretty good advice. Unless you become an expert in type setting or something. To further that line of thought, I offer this corollary:

Go become an expert in something in an area that no one else has focused on…so long as a machine can’t do it better than you.

Musings

Public service announcement

August 15th, 2010

I overheard someone saying the “coupe de grass” recently. At the extreme risk of appearing scornfully arrogant, I thought I would offer up some clarification which, at the very least, would have benefitted me at times in the past:

  • Coup de gras == “coo-de-gra” && !”coupe-de-grass”
  • For all intents and purposes != “For all intensive purposes”
  • Dog eat dog world != “Doggy-dog world”
  • I couldn’t care less != “I could care less”
  • Peruse == To go over something in great detail.

Musings

Employee Satisfaction

May 18th, 2010

A while back, I heard something on NPR.  Some study (I forget exactly where it came from) found that the three most important things behind employee satisfaction are, in order:

  1. Being proud of the work you are doing.
  2. Enjoying (or not hating, I suppose) the people you work with.
  3. Believing that upper management is doing the right thing.

Personally, I tend to agree with this—particularly with number 1.  I don’t know how big the initial data set was, but my subscription to the ideology is only based on a single bit of data—me.  So, by all means, give me your two cents.

Musings