Sunday, August 2, 2009

How to ask questions

Questions follow the Anna Karenina principle, which comes from the opening of Anna Karenina:

Happy families are all alike; every unhappy family is unhappy in its own way.


Like families, good questions are all the same, and bad questions are bad for many different reasons. Some kinds of bad questions really irritate me.

Leading Questions: These look like questions, but they're really just asking for confirmation of a piece of information. People ask them a lot when they think they know the answer, or they think that providing possible answers makes them look smart.
Bad: "Is this the gas cap?"
Bad: "Is the gas cap on the right or the left"
Good: "Where's the gas cap?"
(Actually, if someone is terrible at communicating information and you just need to get them to spit something out, you might have to resort to leading questions.)

Questions Asked to Make the Asker Look Good: General categories include inappropriately advanced or detailed questions, leading questions where the asker knows the answer, and questions which are actually statements. God knows you get plenty of these in a college setting, and they piss me off to no end.
Don't be this douche: "Is that similar to the behavior in Apache 1.2, where malformed cgi scripts could cause runaway memory usage?"
Me: "Shut it, motherfucker! This is CS 3!"

There is another type of question that lots of people don't like, and those are questions that you can answer yourself. I think this mostly only applies on the internet. After all, you're already on the net, so why not google it. But in real life, it's still probably a good idea to ask yourself the following, "Am I asking for data, or analysis?" If it's data you're after, check the web. The web is chock full of that shit: elimination half-lives of prescription drugs, dates of historical events, how to write a comment in c++, the nutritional contents of a bowl of cheerios, etc. But if it's analysis you want, go for it. Go ahead and ask your doctor for ideas for a healthy breakfast, or your programmer friends about which style of comments they prefer in python.

Good questions are motivated by curiosity, reveal ignorance, and are open ended. It's only one sentence, but I think it pretty much sums up most good questions.

You would think curiosity would be obvious, since questions that nobody cares about don't get asked, but think about questions that people ask to make themselves look good; they don't actually care about the answer.

Revealing ignorance is scary, but don't try to avoid it. The more ignorance you reveal, and the faster you reveal it, the faster the helpful, smart people around you will help you fill in the gaps.

Asking an open ended question means not supplying possible answers along with the questions, and fully putting yourself in the hands of the person you're asking. If you can, use question-word questions that start with "why", "how", and "what", as opposed to yes/no questions.

I'll also say that the fastest way to impress me is to ask an honest, open ended question that shows that you're not worried about looking stupid. If a pretty girl walked up to me and said, "Why can't I dereference a void*?" I would probably just throw in the towel right there and propose to her.

Tuesday, July 21, 2009

Auto tune the news

This is amazing, because it turns the non-stop stream of bullshit that is the news*, and turns it into something great.

And it's really equally absurd as the original broadcast, except by removing the pretensions of importance and adding some uplifting music, it's beautiful.

*Let me just tell you why I hate The News. I hate it because it's ugly, it's nothing but sound bytes and stupid little tickers, overwhelming you with useless information. It also turns the non-context-free grammar of the world's events, and turns it into a tune-in-at-any-time context-free show. It's like a cartoon where each episode resets from the same premise, so you don't need to know anything to watch one.

Monday, July 20, 2009

There's something about "A Treatise on the Astrolabe"

From this paper on natural language classification by character frequency:

A strange result I found was that nearly all of the incorrect classifications of Middle English were in a specific file of A Treatise on the Astrolabe by Chaucer. The other texts by Chaucer had much greater accuracy than the average shown in the graphs.

Driven Development

Why and how does software get made? While Nicholas and I were pondering ways to make program development easier, I decided to waste some time and search google for "* driven development". Here are the results, sorted into some pretty arbitrary categories:

development driven by your desires:
resume driven development
curiosity driven development
employee driven development
brain driven development
asshole driven development (based on avoiding suffering, assuming that someone else is the asshole)

specification:
test driven development (evolving specifications)
model driven development (executable specification)
feature driven development
example driven development
documentation driven development (non-executable specifications)
storytest driven development
dialogue driven development
annotation driven development
bug driven development (implicit specification)
behavior driven development (implicit specification)
interface driven development
specification driven development
exception driven development
user-guide driven development


outside desires:
dilemma driven development
turmoil driven development
demand driven development
community driven development
task driven development
mission driven development
omoiyari driven development (Japanese for "what other people are thinking")

beverage:
tea driven development
coffee driven development

ill defined:
anecdote driven development
neo-liberal driven development
reality driven development
secret driven development
worksheet driven development
rup driven development
ontology driven development
pattern generator driven development
pajama driven development - working remotely
platform driven development
semantics driven development
diary driven development

Friday, June 12, 2009

Humorous gmail rendering problems

[So this blog's title is now out of date, since I'm back from Sweden. But, as they say, whatever. -Ed.]

Huh, gmail?

Tuesday, May 26, 2009

Strange fruit, hanging from the web

Someone wrote a blog post right before they and their sister were murdered: http://toto247.xanga.com/261268578/item

The police used it to track down the killer.

Tuesday, May 12, 2009

Do your shoelaces come undone?

[Song of Sverige has been delivering the hard-hitting, relevant journalism that you demand for over two years, and we think you'll find this post to hit especially hard. -editor]

Do your shoelaces come undone? Mine do, all the time. Or at least, they did... Now, thanks in large part to Wikipedia's page on reef knots and Ian's Shoelace Site, I have corrected this terrible problem.

It is a fact almost too shameful to admit, but it is true... Unbeknownst to myself, I, a 26-year-old nearly-college-educated man, have been tying my shoes with granny knots for the whole of my adult life.

I'll leave the technical details out of this hard-hitting blog post, but if your shoelaces come undone, forcing you to resort to double knots, you too may have this problem.

Fortunately, there is hope. Visit Ian's page on slipping shoelaces, and rid yourself of undone-coming shoelaces once and for all!