You're looking at Less Wrong's discussion board. This includes all posts, including those that haven't been promoted to the front page yet. For more information, see About Less Wrong.

gwern comments on Open Thread, November 23-30, 2013 - Less Wrong Discussion

4 Post author: passive_fist 23 November 2013 06:04AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (295)

You are viewing a single comment's thread. Show more comments above.

Comment author: gwern 01 December 2013 03:53:28AM 3 points [-]

I'm not sure I should also count the time spent learning about causality in the first place (which I would probably estimate at ~2 weeks), but it's striking how much of the investment in generating the results is capital, and how little of it is labor. That is, now that I have the package downloaded, I can do this easily for other datasets. Time to start picking some low-hanging fruit.

Absolutely. When I look at my own projects, they go like 'gathering and cleaning data: 2 months. Figuring out the right analysis the first time: 2 days. Runtime of analysis: 2 hours.'

The first time this happened to me, it drove me nuts. It reminded me of writing my first program, where it took maybe 20 minutes to write it even looking everything up, and then 2 hours to debug. That was when the true horror of programming struck me. Years later, when I came across the famous quote by Wilkes that "I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs." I instantly knew it for truth.

(Same for http://lesswrong.com/lw/j8f/anonymous_feedback_forms_revisited/ - downloading the data and figuring out how to join up the two CSVs in just the right way, an irritating hour. The logistic regression? Maybe 3 minutes playing around with different predictor variables.)

Comment author: Vaniver 01 December 2013 04:08:59AM 2 points [-]

That was when the true horror of programming struck me. Years later, when I came across the famous quote by Wilkes that "I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs." I instantly knew it for truth.

This realization caused one of my big life mistakes, I think. It struck me in high school, and so I foolishly switched my focus from computer science to physics (I think, there might have been a subject or two in between) because I disliked debugging. Later, I realized that programming was both powerful and inescapable, and so I'd have to get over how much debugging sucked, which by then I had the emotional maturity to do (and I suspect I could have done back then, if I had also had the realization that much of my intellectual output would be programming in basically any field).

Comment author: irrational 02 December 2013 05:55:27AM 1 point [-]

I think the whole experience is also interesting on a meta-level. Since programming is essentially the same as logical reasoning, it goes to show that humans are very nearly incapable of creating long chains of reasoning without making mistakes, often extremely subtle ones. Sometimes finding them provides insight (especially in multi-threaded code or with memory manipulation), although most often it's just you failing to pay attention.

Comment author: lmm 02 December 2013 11:13:40PM 0 points [-]

Threading is not normally part of logical reasoning. Compare with mathematics, where even flawed proofs are usually (though not always) of correct results. I think a large part of the difficulty of correct programming is the immaturity of our tools.