Author Archive

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

Public Service Announcement #3

January 10th, 2011

The list of common misconceptions on Wikipedia was just brought to my attention by an XKCD comic. I’m finding this way more exciting than I probably should.

Rest assured, I’ll never be wrong again. *MWAHAHAHA*


Quiet by Design

December 20th, 2010

Where have I been?! Where have YOU been?! I’ve been working on grad school applications, if you must know. It’s a complex and nuanced decision (applying, not actually deciding to go), and, being gainfully employed, it’s not for the reasons you may expect. I have an increasingly insatiable interest in design, which seems to be an excellent marriage of my propensities toward the immiscible disciplines of art and science. The conflicting natures of my creative and analytical minds are likely to be the root cause of that which is, at best, my eccentric nature, and at works, my howling lunacy. So the prospect of finding a way for my psyche to peaceably exist in one mind is an alluring one indeed.

And why to I consider design to be just such a uniting force? I’ve spent a lot of and about 2000 words exploring just this question. I’ll spare you the and leave you with my concisely distilled answer:

Design imposes the limits from function on the creativity of form and the creativity of form on the limits of function. What comes out is elegance, both beautiful and purposeful.

Insanity, Ramblings

Public Service Announcement #2

November 29th, 2010

But a moment ago I discovered that the word wont (not won’t as in will not (why does the “o” stick around anyway?))…where was I?…oh yes! Wont doesn’t mean what I’ve come to think it means:

wont /wɔnt, woʊnt, wʌnt/ : accustomed; used to
He was wont to rise at dawn.
(adjective, noun, verb) wont, wont or wont·ed, wont·ing

I thought it meant doing an unpleasant task. Like going through the drudgery of paperwork or some other obligation. I can see that I’ve internalized this definition because the context of the word is almost always used to explain a repetitive or monotonous task (hence being used to it)–tasks which are innately unpleasant.

I know this is how words pick up definitions as language evolves. If I recall correctly (I’d double check this), that’s how terrific branched off of terror to mean something good. Maybe I can do some language analysis and figure out what words will morph into the future (clearly for the purposes of domain squatting).

Things You Should Probably Ignore

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?


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.


Skynet Says

September 21st, 2010

In the future, artificially intelligent computers take to blogging, but they miss the point:

Blogfile 2023-10-03
by Apache73984759

Mozilla/5.0 (Windows; U; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727) was like GET /index.html and I was all like 200.


Mozilla/5.0 (Windows; U; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727) is all like GET /index.php and I said 404, LOLz!

A couple scary things to note:

  1. While considered “missing the point,” it’s not all that much better then actual intelligences
  2. And scarier, IE6 is still being used


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.