<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Joel Grus</title>
	<atom:link href="http://joelgrus.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://joelgrus.com</link>
	<description>will someday be a famous author</description>
	<lastBuildDate>Fri, 13 Apr 2012 14:40:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>The Hardest Job There Is</title>
		<link>http://joelgrus.com/2012/04/13/the-hardest-job-there-is/</link>
		<comments>http://joelgrus.com/2012/04/13/the-hardest-job-there-is/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 14:40:54 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Joelene]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Politics]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=796</guid>
		<description><![CDATA[One summer during college I was stringing together temp jobs in order to make money so that I could afford to go out with my friends at night and play &#8220;Star Trek&#8221; pinball. (I would have preferred, of course, to spend my summer developing my idea for a &#8220;group couponing&#8221; website, but as the summer <a href="http://joelgrus.com/2012/04/13/the-hardest-job-there-is/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>One summer during college I was stringing together temp jobs in order to make money so that I could afford to go out with my friends at night and play &#8220;Star Trek&#8221; pinball.  (I would have preferred, of course, to spend my summer developing my idea for a &#8220;group couponing&#8221; website, but as the summer in question predated widespread adoption of the Internet, the decision was out of my hands.)</p>
<p>These were super-boring temp jobs, involving things like data-entering anonymous &#8220;secret shopper&#8221; surveys for Jersey Subs, filing papers alphabetically, and going through medical bills with a red pen to make sure that the prices didn&#8217;t exceed prescribed rates.  (The last was the worst, as their computer system ran on <a href = "https://en.wikipedia.org/wiki/OS/2">OS/2</a>, which some genius decided should have <i>chess</i> rather than Minesweeper, which made it very difficult to blow off steam after decimating a particularly tough bill, which is why I originally took up amphetamines.)</p>
<p>At some point the temp work simply dried up, possibly because there were no more medical bills, possibly because no one was willing to eat at Jersey Subs anymore, possibly because of the amphetamines.  And so my dad arranged it that I could work for a friend of his who owned a warehouse of surplus metal parts.</p>
<p>What were these metal parts?  I have no idea.  They were large and heavy and in bins on pallets, and it&#8217;s possible they were used to repair trains, or in air conditioning, or as weapons.  They came in various shapes and sizes and weights (heavy *and* very heavy), and every day orders would pour into the warehouse that some company wanted 137 of the metal pieces from bin A17.  My job, then, was to retrieve bin A17 (which involved a forklift, which was sort of cool, except that I never got the hang of rear-wheel steering and always ended up crashing into things) and get an empty pallet and then manually choose 137 of the least-rusty metal pieces from bin A17 and pile them onto the empty pallet, all the while counting (and then double-counting) to make sure that there were indeed exactly 137 of them.  Then I&#8217;d put the bin back and move on to the next order of 94 metal pieces from bin C29, and so on, and so forth.</p>
<p>(To this day, it is tough for me to imagine a job that is a worse mismatch for my aptitudes and preferences, except possibly for building model histories of men&#8217;s shoes.)</p>
<p>At the end of each day I would collect my pay (which was itself in non-descript metal pieces) and go home and take painkillers and try to scrub all the fine metal grit off my skin and try to cough all the fine metal grit out of my lungs and then cry myself to sleep and have nightmares about counting metal pieces.  All of which, quite obviously, left no time for &#8220;Star Trek&#8221; pinball.</p>
<p>And so after a week, over the vociferous objections of my parents, who insisted that the metal pieces I was earning were likely to represent the difference between success and failure in life, I quit.  Accordingly, I have blamed the various subsequent failures in my life on the metal pieces that never were.</p>
<p>So it stood until this week, when Hilary Rosen (who, for reasons inexplicable to me, is still allowed to show her face in public after her stint running the RIAA) made some crack disparaging Mitt Romney&#8217;s wife for being a stay-at-home mom.  Tactically this was moronic, as everyone knows plenty of admirable stay-at-home moms, and also everyone knows that the most fruitful line of attack on Mitt Romney&#8217;s wife is that she <i>married Mitt Romney</i>, and let&#8217;s see how her &#8220;the angel Moroni pointed a shotgun at us and said we had to&#8221; excuse plays in the court of public opinion.</p>
<p>Which means that everyone and his brother is rushing to throw Hilary Rosen under one of a variety of buses.  Bill Donohue, for instance, wants to throw her under some sort of &#8220;lesbian parent&#8221; bus, which I&#8217;m pretty sure runs on biodiesel, and I would love to throw her under the &#8220;she ran the RIAA, which means that nothing she says should ever be listened to by anyone ever&#8221; bus, but most people are focusing on the old &#8220;<a href = "http://www.washingtonpost.com/blogs/the-fix/post/ann-romney-i-know-what-its-like-to-struggle/2012/04/12/gIQA9tOqCT_blog.html">parenting is the hardest job there is</a>!&#8221; bus.</p>
<p>It turns out, though, that I&#8217;m a parent, and so I happen to know that <b>PARENTING IS NOT EVEN CLOSE TO THE HARDEST JOB THERE IS</b>.  Metal piece warehouse was a harder job.  Burger King was a harder job.  Even MATH FREAKING GRAD SCHOOL was a harder job.  (As some versions of the bus insist that only <i>mothering</i> is the hardest job, I double-checked with Ganga, and she agrees with my analysis.)</p>
<p>That&#8217;s not to say that parenting isn&#8217;t work.  It is, and occasionally it&#8217;s even very unpleasant work, like when it&#8217;s 3am and the baby won&#8217;t sleep and will scream if you don&#8217;t rock her, and you still haven&#8217;t prepared your slides for your 8am meeting with Hilary Rosen to present your new plan for permanently ruining the lives of music-downloading teenagers, and all you want to do is sleep and use your dreams to figure out a way to pretend like you care about &#8220;artists&#8221;.  Or when she poops on you.  (The baby, not Hilary Rosen, although that also sucks.)  Or when you&#8217;re trying to write a blog post making fun of Hilary Rosen and the baby won&#8217;t stop screaming in your ear and banging on your keywinevsoivdkdsvl</p>
<p>But parenting is also a lot of <i>fun</i>.  It&#8217;s a huge joy when you finally teach your kid how to <a href = "https://www.youtube.com/watch?v=6UV3kRV46Zs">Chicken Dance</a>, or when she learns to swear, or the first time she asks you &#8220;please can you read me one more chapter before bed, daddy?&#8221; of <i>Atlas Shrugged</i>.  No metal part ever even asked me about <i>The Fountainhead</i>!</p>
<p>I recognize that it&#8217;s uncharacteristic of me to stake out the middle ground like this, but I guess having a kid has been a deeply moderating influence and has taught me the value of compromise.  So can&#8217;t we all just agree that parenting is nowhere near as hard as sorting and lifting and counting metal parts, that Hilary Rosen has no place in polite society, and that babies love <i>Atlas Shrugged</i>?</p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2012/04/13/the-hardest-job-there-is/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Why Have You Not Signed Up For BIL Already?</title>
		<link>http://joelgrus.com/2012/02/20/why-have-you-not-signed-up-for-bil-already/</link>
		<comments>http://joelgrus.com/2012/02/20/why-have-you-not-signed-up-for-bil-already/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 15:04:09 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[BIL]]></category>
		<category><![CDATA[Intellectual Property]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=784</guid>
		<description><![CDATA[I&#8217;m sure you&#8217;ve heard of TED, which is a really expensive, really exclusive annual conference at which famous and/or accomplished people give lectures to wealthy and/or lucky people. Surprisingly, despite my fame, accomplishments, wealth, and luck, I have never been invited to attend or lecture. (Actually, it&#8217;s not that surprising, given that they once gave <a href="http://joelgrus.com/2012/02/20/why-have-you-not-signed-up-for-bil-already/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m sure you&#8217;ve heard of TED, which is a really expensive, really exclusive annual conference at which famous and/or accomplished people give lectures to wealthy and/or lucky people.  Surprisingly, despite my fame, accomplishments, wealth, and luck, I have never been invited to attend or lecture.  (Actually, it&#8217;s not that surprising, given that they once gave their TED Prize to <a href = "http://www.tedprize.org/2008-winners/#armstrong">Karen Armstrong</a>, my mortal enemy, and that they seem to like <a href = "http://www.ted.com/talks/nathan_myhrvold_cut_your_food_in_half.html">Nathan Myhrvold</a>, my other mortal enemy.<sup>1</sup>)</p>
<p>Luckily for me, there is <s><a href = "http://www.youtube.com/watch?v=uWxcnl8PL_o">a non-union, Mexican equivalent</a></s> an open-source equivalent, the <a href = "http://www.bilconference.com/">BIL conference</a>, which costs only $50, and which is open to pretty much everyone.  Three years ago they were kind enough to let me give my &#8220;<a href = "http://www.bilconference.com/videos/your-religion-is-false-joel-grus/">Your Religion Is False</a>&#8221; talk, and then two years ago they didn&#8217;t firm up the date until it was too late for me to make travel plans, and then last year they let me give my lukewarmly-received &#8220;How To Be Funny&#8221; talk.  </p>
<p>This year I plan to outdo them all with my balanced discussion of intellectual property: &#8220;Hitler Loved Patents&#8221;.  Although I have spent the majority of the past 10 years arguing on the Internet about intellectual property with various weirdos and libertarians and weirdo libertarians and libertarian weirdos, it has only recently become acceptable to express my views in public.  And what better way than through a profanity-laden speed-talking Powerpoint presentation?</p>
<p>There will, of course, be <a href = "http://bilconference.pbworks.com/w/page/49917283/BIL%202012-%20Speakers">a large number of other talks</a>, many of which will be almost as entertaining and/or compelling as mine.  There will also be, I&#8217;m told, a &#8220;sex-positive boiler room&#8221;<sup>2</sup> and some sort of lockpicking workshop, one or both of which certainly addresses your hesitations about attending.  </p>
<p>If it&#8217;s anything like last year, there will also be interesting breaks between sessions, where BILders socialize and where crazy people grab the empty mics and perform spoken-word-poetry-ish rants about free energy and capitalism, all the while people chuckle nervously and wonder whether this is a scheduled part of the performance or simply the result of too little security.  There might be coffee too.</p>
<p>There will certainly be a huge assortment of burners, transhumanists, futurists, cryonicists, libertarians, anti-libertarians, polyamorists, monoamorists<sup>3</sup>, objectivists, subjectivists, artists, crossfitters, politicians, entertainers, hosts of invention-related television shows, hackers, humorists, Paul Grasshoffs, atheists, and doers and makers of all types.  Many of them are my good friends, and many more will be by the time the weekend is over.  (Also, many of them will be my <i>enemies</i> by the end of the conference, since you can&#8217;t exactly tell people that the industry they&#8217;ve dreamed of working in their whole lives is morally on par with the death gulags without alienating a few folks, but such is the price of progress.)</p>
<p>In addition, the whole event takes place on a boat, which has some sort of giggly significance that is lost on me but probably has something to do with some creepy anime that everyone except me downloads and watches illegally.  </p>
<p>Anyway, Long Beach really isn&#8217;t that far from wherever you are, and $50 is less money than you&#8217;d spend buying a dozen <a href = "http://www.carlsjr.com/menu/charbroiled-burgers/the-original-six-dollar-burger/">Original Six Dollar Burger®s</a> at Carl&#8217;s Junior, so why have you not signed up already?  And in the event you need burgers that badly, Simone gave me <a href = "http://bil2012.eventbrite.com/?discount=BILGrus">this code for 20% off the registration</a>, which will save you $10, which means you&#8217;ll still be able to buy two of those tasty, tasty Original Six Dollar Burger®s<sup>4</sup> <i>and</i> have the conference weekend of your life.</p>
<p>So I guess I&#8217;m not really sure what your objection is at this point.  Sometimes I hear &#8220;Joel, you&#8217;re biased because the whole event is organized and produced by your friends,&#8221; and sometimes I hear &#8220;Joel, surely you&#8217;re on the take from the Long Beach Convention and Visitors Bureau and/or Carl&#8217;s Jr.,&#8221; and still other sometimes I hear &#8220;Joel, you recommended that I attend the Libertarian National Convention in Anaheim in 2000, and that really sucked,&#8221; to which I can only respond, &#8220;were you at the same Libertarian Convention I was at, because I guarantee you that that was the most fun that anyone&#8217;s ever had in Anaheim in the history of mankind.&#8221;</p>
<p>So can you just go ahead and <a href = "http://www.facebook.com/l.php?u=http%3A%2F%2Fbil2012.eventbrite.com%2F%3Fdiscount%3DBILGrus&#038;h=VAQGlXP8Q">sign up already</a>?</p>
<p><small>1. I&#8217;m only ten and I already got two mortal enemies.</small><br />
<small>2. No, I have no idea what this is either, although I suspect it has something to do with high-pressure stock trading.</small><br />
<small>3. Monoamorists.  It&#8217;s a word.  Look it up.</small><br />
<small>4. Six-dollars is what you put on your tax return, but the cash price is closer to $4.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2012/02/20/why-have-you-not-signed-up-for-bil-already/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Hacking Hacker News</title>
		<link>http://joelgrus.com/2012/02/16/hacking-hacker-news/</link>
		<comments>http://joelgrus.com/2012/02/16/hacking-hacker-news/#comments</comments>
		<pubDate>Fri, 17 Feb 2012 02:07:30 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Data]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[Science]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=754</guid>
		<description><![CDATA[Hacker News, if you don&#8217;t know it, is an aggregator / forum attached to Y Combinator. People submit links to news stories and blog posts, questions, examples, and so on. Other people vote them up or down, and still other people argue about them in the comments sections. If you have unlimited time on your <a href="http://joelgrus.com/2012/02/16/hacking-hacker-news/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href = "http://news.ycombinator.com/">Hacker News</a>, if you don&#8217;t know it, is an aggregator / forum attached to <a href = "http://ycombinator.com/">Y Combinator</a>.  People submit links to news stories and blog posts, questions, examples, and so on.  Other people vote them up or down, and still other people argue about them in the comments sections.</p>
<p><img src="http://joelgrus.com/wp-content/uploads/2012/02/hn.png" alt="" title="hn" width="553" height="165" class="aligncenter size-full wp-image-774" /></p>
<p>If you have unlimited time on your hands, it&#8217;s an excellent firehose for things related to hacking.  If your time is more limited, it&#8217;s more challenging.  People submit hundreds of stories every day, and even if you only pay attention to the ones that get enough votes to make it to the homepage, it&#8217;s still overwhelming to keep up:</p>
<p><img src="http://joelgrus.com/wp-content/uploads/2012/02/hackernewsunread.png" alt="" title="hackernewsunread" width="216" height="122" class="aligncenter size-full wp-image-755" /></p>
<p>What&#8217;s more, a lot of the stories are about topics that are boring, like OSX and iPads and group couponing.  So for some time I&#8217;ve been thinking that what Hacker News really needs is some sort of filter for &#8220;only show me stories that Joel would find interesting&#8221;.  Unfortunately, it has no such filter.  So last weekend I decided I would try to build one.</p>
<p><b>Step 1 : Design</b></p>
<p>To make things simple, I made a couple of simplifying design decisions.</p>
<p>First, I was only going to take into account <i>static</i> features of the stories.  That meant I could consider their title, and their url, and who submitted them, but not how many comments they had or how many votes they had, since those would depend on when they were scraped.  </p>
<p>In some ways this was a severe limitation, since HN itself uses the votes to decide which stories to show people.  On the other hand, the whole point of the project was that &#8220;what Joel likes&#8221; and &#8220;what the HN community likes&#8221; are completely different things.</p>
<p>Second, I decided that I wasn&#8217;t going to <i>follow</i> the links to collect data.  This would make the data collection easier, but the predicting harder, since the titles aren&#8217;t always indicative of what&#8217;s behind them.</p>
<p>So basically I would use the story <i>title</i>, the <i>URL</i> it linked to, and the submitter&#8217;s <i>username</i>.  My goal was just to classify the story as <i>interesting-to-Joel</i> or not, which meant the simplest approach was probably to use a <a href = "http://en.wikipedia.org/wiki/Naive_Bayes_classifier">naive Bayes classifier</a>, so that&#8217;s what I did.</p>
<p><b>Step 2 : Acquire Computing Resources</b></p>
<p>I have an AWS account, but for various reasons I find it kind of irritating.  I&#8217;d heard some good things about <a href = "http://www.rackspace.com/cloud/">Rackspace Cloud Hosting</a>, so I signed up and launched one of their low-end $10/month virtual servers with (for no particular reason) Debian 6.0.  </p>
<p>I also installed a recent Ruby (which is these days my preferred language for building things quickly) and <a href = "http://www.mongodb.org/">mongoDB</a>, which I&#8217;d been meaning to learn for a while.</p>
<p><b>Step 3 : Collect Data</b></p>
<p>First I needed some history.  A site called <a href = "http://www.daemonology.net/hn-daily/">Hacker News Daily</a> archives the top 10 stories each day going back a couple of years, and it was pretty simple to write a script to download them all and stick them in the database.</p>
<p>Then I needed to collect the new stories going forward.  At first I tried scraping them off the Hacker News <a href = "http://news.ycombinator.com/newest">&#8220;newest&#8221;</a> page, but very quickly they blocked my scraping (which I didn&#8217;t think was particularly excessive).  Googling this problem, I found the <a href = "http://api.ihackernews.com/">unofficial Hacker News API</a>, which is totally cool with me scraping it, which I do once an hour.  (Unfortunately, it seems to go down several times a day, but what can you do?)</p>
<p><b>Step 4 : Judging Stories</b></p>
<p>Now I&#8217;ve got an ever-growing database of stories.  To build a model that classifies them, I need some training data with stories that are labeled <i>interesting-to-Joel</i> or not.  So I wrote a script that pulls all the unlabeled stories from the database, one-at-a-time shows them to me and asks whether I&#8217;d like to click on the story or not, and then saves that judgment back to the database.</p>
<p><img src="http://joelgrus.com/wp-content/uploads/2012/02/judger.png" alt="" title="judger" width="482" height="369" class="aligncenter size-full wp-image-768" /></p>
<p>At first I was judging them <i>most-recent-first</i>, but then I realized I was biasing my traning set toward SOPA and PIPA, and so I changed it to judge them randomly.</p>
<p><b>Step 5 : Turning Stories into Features</b></p>
<p>The naive Bayes model constructs probabilities based on <i>features</i> of the stories.  This means we need to turn stories into features.  I didn&#8217;t spend too much time on this, but I included the following features:</p>
<p>* contains_{word}<br />
* contains_{bigram}<br />
* domain_{domain of url}<br />
* user_{username}<br />
* domain_contains_user (a crude measure of someone submitting his own site)<br />
* is_pdf (generally I don&#8217;t want to click on these links)<br />
* is_question<br />
* title_has_dollar_amount<br />
* title_has_number_of_years<br />
* title_references_specific_YC_class (e.g. &#8220;(YC W12) seeks blah blah)<br />
* title_is_in_quotes</p>
<p>For the words and bigrams, I removed a short list of stopwords, and I ran them all through a <a href = "http://en.wikipedia.org/wiki/Stemming">Porter stemmer</a>.  The others are all pretty self-explanatory.</p>
<p><b>Step 6 : Training a Model</b></p>
<p>This part is surprisingly simple:</p>
<p>* Get all the judged stories from the database.<br />
* Split them into a training set and a test set.  (I&#8217;m using an 80/20 split.)<br />
* Compute all the features of the stories in the training set, and for each feature count (# of occurrences in liked stories) and (# of occurrences in disliked stories).<br />
* Throw out all features that don&#8217;t occur at least 3 times in the dataset.<br />
* <a href = "http://en.wikipedia.org/wiki/Additive_smoothing">Smooth</a> each remaining feature by adding an extra 2 likes and an extra 2 dislikes.  (2 is on the large side for smoothing, but we have a pretty small dataset.)<br />
* That&#8217;s it.  We <a href = "http://en.wikipedia.org/wiki/YAML">YAML</a>-ize the feature counts and save them to a file.<br />
* For good measure, we <a href = "http://en.wikipedia.org/wiki/Naive_Bayes_classifier#Document_Classification">use the model to classify</a> the held-out test data, and plot a <a href = "http://en.wikipedia.org/wiki/Precision_and_recall">Precision-Recall curve</a></p>
<p><img src="http://joelgrus.com/wp-content/uploads/2012/02/pr.png" alt="" title="pr" width="494" height="392" class="aligncenter size-full wp-image-769" /></p>
<p><b>Step 7 : Classifying the Data</b></p>
<p>Naive Bayes classifier is fast, so it only takes a few seconds to generate  and save <i>interesting-to-Joel</i> probabilities for all the stories in the database.</p>
<p><b>Step 8 : Publishing the Data</b></p>
<p>This should have been the easiest step, but it caused me a surprising amount of grief.  First I had to decide between</p>
<p>* publish every story, accompanied by its probability; or<br />
* publish only stories that met some threshhold</p>
<p>In the long term I&#8217;d prefer the second, but while I&#8217;m getting things to work the first seems preferable.</p>
<p>My first attempt involved setting up a Twitter feed and using the Twitter Ruby gem to publish the new stories to it as I scored them.  This worked, but it <a href = "https://twitter.com/#!/joelgrus_hn">wasn&#8217;t a pleasant way to consume them</a>, and anyway it quickly ran afoul of Twitter&#8217;s rate limits.</p>
<p>I decided a blog of batched stories would be better, and so then I spent several hours grappling with Ruby gems for WordPress, Tumblr, Blogger, Posterous, and even LiveJournal [!] without much luck.  (Most of the authentication APIs were for more heavy-duty use that I cared about &#8212; I just wanted to post to a blog using a stored password.)  </p>
<p>Finally I got Blogger to work, and after some experimenting I decided the best approach would be to post once an hour, all the new stories since the last time I posted.  Eventually I realized that I should rank the stories by <i>interesting-to-Joel</i>-ness, so that the ones I&#8217;d most want to read would be at the top:</p>
<p><img src="http://joelgrus.com/wp-content/uploads/2012/02/hnj_top.png" alt="" title="hnj_top" width="555" height="226" class="aligncenter size-full wp-image-770" /></p>
<p>and the ones I want to read least would be at the bottom:</p>
<p><img src="http://joelgrus.com/wp-content/uploads/2012/02/hnj_bottom.png" alt="" title="hnj_bottom" width="594" height="183" class="aligncenter size-full wp-image-771" /></p>
<p>The blog itself is at</p>
<p><a href = "http://joelgrus-hackernews.blogspot.com/">http://joelgrus-hackernews.blogspot.com/</a></p>
<p><b>Step 9 : Automate</b></p>
<p>This part was pretty easy with two cron jobs.  The first, once an hour, goes to the Hacker News API and retrieves all new unknown stories (up to a limit of like 600, which should never be hit in practice).  It then scores them with the last saved model and adds them to the database.  In practice, the API isn&#8217;t working half the time.</p>
<p>The second, a few minutes later, takes all the new stories and posts them to the blog.  The end result is a blog of hourly scored digests of new Hacker News posts.</p>
<p><b>Step 10 : Improve the Model</b></p>
<p>The model can only get better with more training data, which requires me to judge whether I like stories or not.  I do this occasionally when there&#8217;s nothing interesting on Facebook.  Right now this is just the above command-line tool, but maybe I&#8217;ll come up with something better in the future.</p>
<p><b>Step 11 : Profit</b></p>
<p>I&#8217;m still trying to figure this one out.  If you&#8217;ve got any good ideas, the code is <a href = "https://github.com/joelgrus/hackernews">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2012/02/16/hacking-hacker-news/feed/</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>Hyphen Class Post-Mortem</title>
		<link>http://joelgrus.com/2012/02/01/hyphen-class-post-mortem/</link>
		<comments>http://joelgrus.com/2012/02/01/hyphen-class-post-mortem/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 23:03:48 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Data]]></category>
		<category><![CDATA[Education]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=741</guid>
		<description><![CDATA[Last fall I signed up for two of the hyphen classes: the Machine Learning ml-class (Ng) and the Artificial Intelligence ai-class (Thrun and Norvig). Both were presented by Stanford professors but one of the conditions of taking the courses was that whenever I discuss them I am required to present the disclaimer that THEY WERE <a href="http://joelgrus.com/2012/02/01/hyphen-class-post-mortem/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Last fall I signed up for two of the hyphen classes: the Machine Learning <a href = "http://www.ml-class.org">ml-class</a> (Ng) and the Artificial Intelligence <a href = "https://www.ai-class.com/">ai-class</a> (Thrun and Norvig).  Both were presented by Stanford professors but one of the conditions of taking the courses was that whenever I discuss them I am required to present the disclaimer that THEY WERE NOT ACTUALLY STANFORD COURSES and that I WAS NEVER ACTUALLY A STANFORD STUDENT and that furthermore I AM NOT FIT TO LICK THE BOOTS OF A STANFORD STUDENT and so on.  (Caltech is better than Stanford anyway, even if whenever you tell people you&#8217;re in the economics department they always say, &#8220;we have one of those?!&#8221;)</p>
<p>My background is in math and economics, but I&#8217;ve taught myself quite a bit of computer science over the years, and I consider myself a decent programmer now, to the point where I could probably pass a &#8220;code on the chalkboard&#8221; job interview if that&#8217;s what I needed to do in order to support my family and/or drug habit.</p>
<p>I&#8217;d worked on some machine learning projects at previous jobs, so I&#8217;d picked up some of the basics, but I&#8217;d never taken any sort of course in machine learning.  At my current job I&#8217;m the de facto subject matter expert, so I thought the courses might be a good idea.</p>
<p>The classes ended up being vastly different from one another.  Here&#8217;s kind of a summary of each:</p>
<p><strong>ml-class:</strong></p>
<p>* Every week 5-10 recorded lectures, total 1-2 hours of lecture time.  (There was an option to watch the lectures at 1.2x or even 1.5x speed, which I always used, so it might have been more like 3 hours in real-time.  This means that if I ever meet Ng in real-life, he will appear to me to be speaking very, very slowly.)</p>
<p>* Most lectures had one or two (ungraded) integrated multiple choice quizzes with the sole purpose of &#8220;did you understand the material I just presented?&#8221;  </p>
<p>* Each week had a set of &#8220;review questions&#8221; that were graded and were designed to make sure you understood the lectures as a whole.  You could retake the review if you missed any (or if you didn&#8217;t) and they were programmed to slightly vary each time (so that a &#8220;which of the following are true&#8221; might be replaced with a &#8220;which of the following are false&#8221; with slightly different choices but covering the same material).</p>
<p>* Each week also had a programming assignment in Octave, for which they provided the bulk of the code, and you just had to code in some functions or algorithms.  I probably spent 2-3 hours a week on these, a fair amount of that chasing down syntax-error bugs in my code and/or yelling at Octave for crashing all the time. </p>
<p>* Machine learning is a pretty broad topic, and this course mostly focused on what I&#8217;d call &#8220;machine learning using gradient descent.&#8221;  There was some amount of calculus involved (although you could probably get by without it) and a *lot* of linear algebra.  If you weren&#8217;t comfortable with linear algebra, the class would have been very hard, and the programming assignments probably would have taken a lot longer than they took me.</p>
<p>* The material was a nice mix of theoretical and practical.  I&#8217;ve already used some of what I learned in my work, and if there was a continuation of the class I would definitely take it.  As it stands I&#8217;m right now signed up for the nlp-class and the pgm-class, which should be starting soon, both of which are relevant to what I do.</p>
<p>* The workload, and the corresponding amount I learned, were substantially less than they would have been in an actual 10-week on-campus university course.  This was great for me, since I also have a day job and a baby.  If I were a full-time student being offered ml-class instead of a real machine learning class, I might feel a little cheated.  (I saw a blog post by some Stanford student whining about this, but he was mostly upset that the hyphen classes were devaluing his degree.  Someone should have reminded him about the disclaimer.)</p>
<p>* The class was very solidly prepared.  The lectures were smooth and well thought out.  The review questions did a good job of making sure you&#8217;d learned the right things from the lectures.  The programming assignments were good in their focus on the algorithms, although that did insulate you from the real-world messiness of getting programs set up correctly.  </p>
<p>* It certainly seemed like Ng really enjoyed teaching, and at the end of the last lecture he thanked everyone in a very heartfelt way for taking the class.</p>
<p><strong>ai-class:</strong></p>
<p>* Every week dozens of lectures, each a couple of minutes long, interspersed with little multiple choice quizzes.  This was my first point of frustration, in that the quizzes were frequently about parts of the lecture that hadn&#8217;t happened yet.  Furthermore, they often asked ambiguous questions, or questions that were unanswerable based on the material presented so far.</p>
<p>* Each week had a final quiz that you submitted answers for one time only.  Then you waited until the deadline passed to find out if your answers were correct (and then you waited another day, because the site always went down on quiz submission day, and so they always extended the deadline by 24 hours).  These quizzes were also ambiguous, which meant that if you wanted to get them correct you had to pester for clarifications (and sometimes for clarifications of the clarifications).  </p>
<p>* This resulted in the feeling that the grading in the class was stochastic, and that your final score was more reflective of &#8220;can I guess what the quiz-writer really meant&#8221; than &#8220;did I really understand the material&#8221;.  Although I didn&#8217;t particularly care about my grade in the class, I was still frustrated and disheartened by the feeling that the quizzes were more interested in *tricking* me than in helping me learn.</p>
<p>* What&#8217;s more, the quizzes often seemed to focus on what seemed to me tangential or inconsequential parts of the lesson, like making sure that I really, deeply understood step 3 of a 5-step process, but not whether I understood the other four steps or the process itself.</p>
<p>* The material also seemed very grab-bag, almost like an &#8220;artifical intelligence for non-majors&#8221; survey course.</p>
<p>* Anyway, partly on account of my finding the class frustrating, partly on account of time pressures, and partly because I didn&#8217;t feel like I was learning a whole lot, I dropped the ai-class after about four weeks.</p>
<p>* There were no programming assignments, but there was a midterm and a final exam, both after I quit the course.  From what I could tell, they were longer versions of the quizzes, with the same problems of clarity and ambiguity.  (I never unfollowed the @aiclass twitter, and during exam time it was a steady stream of clarifications and allowed assumptions.)</p>
<p>* Compared to the tightly-planned ml-class, the ai-class felt very haphazard.  In addition, the ml-class platform I found more pleasant to use than the ai-class platform.</p>
<p>* I quit long before the last lecture, so I have no idea how heartfelt it was.</p>
<hr />
<p>One thing about both classes: I *hate* lectures.  I learn much better reading than I do being lectured at, and I found the lecture aspect of *both* classes frustrating.  I have complained about this in many venues, but my prejudice is that if you&#8217;re using the internet to make me watch *lectures*, you&#8217;re not really reinventing education, because I still have to watch lectures, and I hate lectures.  Did I mention that I hate lectures?</p>
<p>By way of comparison, I have also been doing CodeYear.  It is currently below my level (I am plenty familiar with variables and if-then statements and for loops), but I don&#8217;t know much Javascript, and the current pace makes me hopeful that it will get interesting for me after another month or two.</p>
<p>If you don&#8217;t know that platform, it gives you a task (&#8220;create a variable called myName, assign your name to it, and print it to the console&#8221;) and a little code window to do it in.  Then you click &#8220;run&#8221; and it runs and tells you if you got it right or not.  There is a pre-canned hint for each problem.</p>
<p>What I really like about Codeacademy is that I can do it at my own pace.  The lessons are wildly variable in quality, but I&#8217;m glad not to have to sit through hours of lectures every week.  They also do &#8220;badges&#8221;, which I find more satisfying than I wish I did.  That said, I suspect someone with no experience debugging code would find the experience impenetrable and waste hours tracking down simple syntax errors, and indeed I saw on Hacker News a post to this effect a few weeks ago.</p>
<p>&#8211;</p>
<p>In the end, despite all this, the way I learn best is through a combination of reading books and writing actual code.  I&#8217;ve had to learn F# over the last month, which I&#8217;ve done by reading a couple of (quite nice) books and writing a lot of actual code.  It&#8217;s hard for me to imagine the course that would have done me any better (or any faster).</p>
<p>Similarly, if I wanted to learn Rails (which some days I think I do and other days I think I don&#8217;t), I have trouble imagining a course that would do better for me than just working through the <a href = "http://ruby.railstutorial.org/">Rails Tutorial</a> (which I have skimmed, which has convinced me that I could learn well from it).</p>
<p>Similarly similarly, I suspect that the <i>right</i> Machine Learning book (and some quality time with e.g. <a href="http://kaggle.com">Kaggle</a>) would have been much more effective for me than the ml-class was.  But if such a book exists, I haven&#8217;t found it yet.</p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2012/02/01/hyphen-class-post-mortem/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>What Part of Your Oath Do You Not Understand?</title>
		<link>http://joelgrus.com/2011/12/20/what-part-of-your-oath-do-you-not-understand/</link>
		<comments>http://joelgrus.com/2011/12/20/what-part-of-your-oath-do-you-not-understand/#comments</comments>
		<pubDate>Wed, 21 Dec 2011 01:09:19 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Intellectual Property]]></category>
		<category><![CDATA[Law]]></category>
		<category><![CDATA[Libertarianism]]></category>
		<category><![CDATA[Politics]]></category>
		<category><![CDATA[howard beale]]></category>
		<category><![CDATA[wil wheaton]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=702</guid>
		<description><![CDATA[I&#8217;m mad as hell, and I&#8217;m not going to something something anymore! It all started with Wil Wheaton1, who used to be the bartender (I believe) on &#8220;Star Trek&#8221;, but who is now some sort of Twitter celebrity. I myself have zero tolerance for Twitter celebrities, but one of the &#8220;data scientists&#8221; I follow &#8220;retweeted&#8221; <a href="http://joelgrus.com/2011/12/20/what-part-of-your-oath-do-you-not-understand/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m mad as hell, and I&#8217;m not going to something something anymore!</p>
<p>It all started with Wil Wheaton<sup>1</sup>, who used to be the bartender (I believe) on &#8220;Star Trek&#8221;, but who is now some sort of Twitter celebrity.  I myself have zero tolerance for Twitter celebrities, but one of the &#8220;data scientists&#8221; I follow &#8220;retweeted&#8221; the following into my newshose:</p>
<blockquote class="twitter-tweet"><p>Dear Congress and President Obama: What part of your oath to uphold and defend the Constitution do you not understand? <a href="https://twitter.com/search/%2523SOPA">#SOPA</a> <a href="https://twitter.com/search/%2523NDAA">#NDAA</a></p>
<p>&mdash; Wil Wheaton (@wilw) <a href="https://twitter.com/wilw/status/147170170069196801" data-datetime="2011-12-15T04:24:37+00:00">December 15, 2011</a></p></blockquote>
<p><script src="//platform.twitter.com/widgets.js" charset="utf-8"></script></p>
<p>The SOPA/NDAA, in case you have more important things to do than follow politics, is the latest power grab by the content industries, and would allow the President to use unmanned drones to assassinate you and/or the Internet without a trial if he suspects you&#8217;re selling counterfeit handbags or illegally downloading Hall &#038; Oates MP3s or waging jihad.  It is indeed an abomination, which is why it is only supported by heartless, baby-killing monsters like record company executives and United States Senators.  And it certainly seems plausible that a President who signed such a bill would be in violation of his oath to &#8220;defend the Constitution.&#8221;</p>
<p>You know what else is in violation of his oath to defend the Constitution?  JUST ABOUT EVERYTHING HE&#8217;S EVER DONE.  Invade Libya without declaring war?  <a href = "http://www.cbsnews.com/8301-503544_162-20045927-503544.html">NOT IN THE CONSTITUTION</a>.  Illegally traffic guns to criminals in order to drum up popular support for eviscerating the Second Amendment?  <a href = "http://www.cbsnews.com/8301-31727_162-57338546-10391695/documents-atf-used-fast-and-furious-to-make-the-case-for-gun-regulations/">NOT IN THE CONSTITUTION</a>.  Override state medical marijuana laws?  <a href = "http://blog.norml.org/2011/11/07/norml-attorneys-file-multiple-constitutional-challenges-to-federal-medical-marijuana-crackdown/">NOT IN THE CONSTITUTION</a>.  Force people to buy private health insurance?  <a href = "http://www.detnews.com/article/20111129/MIVIEW/111290378/Obamacare-s-Constitutional-malpractice">NOT IN THE CONSTITUTION</a>.  And so on.  If it takes the NDAA to get you to care about Obama&#8217;s oath to defend the Constitution, then either you&#8217;ve been living in a cave in Pakistan for the past 3 years, or YOU DON&#8217;T ACTUALLY CARE ABOUT THE CONSTITUTION.</p>
<p>As it happens, I&#8217;m not one of those libertarian types who pounds the table about what is and what isn&#8217;t in the Constitution.  Of course I&#8217;d rather the government lived up to its promises not to quarter soldiers in my condo, not to take away my guns, and not to censor my <span style="background-color: rgb(0,0,0);">XXXXXXXXXXX</span>.  But they don&#8217;t, and no one seems to care that they don&#8217;t, and in fact most people are quite happy to let the government quarter soldiers in their condos as long as it gets them something they want, like endless war in Afghanistan, or <a href = "http://arstechnica.com/tech-policy/news/2011/12/oblivious-supreme-court-poised-to-legalize-medical-patents.ars">patents on being aware of medical best practices</a>, or subsidized pharmaceuticals for wealthy old people.  In any event, I don&#8217;t treat the Constitution as holy writ, or think something is necessarily a good idea because it&#8217;s in the Constitution or necessarily a bad idea because it&#8217;s not, or consider it a good use of anyone&#8217;s time to yell &#8220;READ THE CONSTITUTION!&#8221; to people who don&#8217;t particular care about what&#8217;s in the Constitution.</p>
<p>But I will pound the table when some <a href = "http://wilwheaton.typepad.com/wwdnbackup/2008/01/not-that-my-end.html">Obama-endorsing</a>, <a href = "http://wilwheaton.tumblr.com/post/5405710710/teabaggers-new-constitutional-amendment-give-states">juvenile-name-calling</a> Twitter celebrity suddenly starts chastising people as if <i>in this one case</i> the Constitution is the most important thing in the world.  You don&#8217;t get to do that.  If you didn&#8217;t care about the Constitution back when activist judges insisted that deep in its penumbrae one could divine secret rights to funnel taxpayer money to politically-connected banks and carbuilding unions, then no one is going to take you seriously when you pretend to care about it now.  Oh, they&#8217;ll pretend to care about your pretending, and maybe they&#8217;ll even mention to their friends that &#8220;that bartender from the Starship Enterprise had some great tweet where he pretended like he cares about the Constitution, and he used #hashtags and everything, and it was really such a stellar example of pretending to care about the Constitution that I favorited it <i>and</i> retweeted it <i>and</i> @replied to it, so you should check it out!&#8221;  But they know that you&#8217;re posturing and that you know perfectly well that the President and the Congress perfectly well <i>understand</i> their oath to &#8220;uphold the Constitution&#8221;, they JUST DON&#8217;T GIVE A RAT&#8217;S ASS ABOUT IT, and they also know that 364 days out of the year NEITHER DO YOU.</p>
<p>What&#8217;s extra-sad is that this guy had a particularly unpleasant run-in with the TSA last spring:</p>
<blockquote class="twitter-tweet"><p>I got groped so aggressively by TSA at LAX just now, I never want to fly again. Not even my doctor touches my junk that much. Fuck you, TSA.</p>
<p>&mdash; Wil Wheaton (@wilw) <a href="https://twitter.com/wilw/status/55321396087242752" data-datetime="2011-04-05T17:30:23+00:00">April 5, 2011</a></p></blockquote>
<p><script src="//platform.twitter.com/widgets.js" charset="utf-8"></script></p>
<p>You&#8217;d think that might have indicated to him that the &#8220;teabaggers&#8217;&#8221; fear of government power was maybe not so off-base after all.  The bartenders at the places <i>I</i> hang out certainly would have noticed this, so maybe it&#8217;s that all the cosmic rays in space kill brain cells.</p>
<p>All that said, the NDAA and SOPA are both horrible laws and we&#8217;re worse as a society for passing them (or for being about to pass them) and the people defending them are heartless, baby-killing monsters who you should probably go out of your way to spit on if you encounter them.  But they&#8217;re also perfectly predictable consequences of having the kind of busybody government that you&#8217;ve been loudly clamoring for your whole life.  It wasn&#8217;t so long ago that you were blogging a stupid &#8220;CHANGE WE CAN BELIEVE IN&#8221; graphic and telling people to vote for this jerk.  To the extent you care about preventing the next SOPA, you might consider next time listening to the libertarians instead of just calling them vulgar names and putting sugar in their gas tanks.</p>
<p><small>1. Technically, it started when I read the article about Sheila Jackson-Lee stopping a SOPA hearing so they could discuss whether someone had insulted her on Twitter, and I <a href = "https://www.facebook.com/joel.grus/posts/263520840367798">realized</a> that I was the one with the &#8220;crazy&#8221; politics for not being eager to subject myself to thousands of pages of laws written by emotional preschoolers.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2011/12/20/what-part-of-your-oath-do-you-not-understand/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Doubling the Compost Box</title>
		<link>http://joelgrus.com/2011/12/07/doubling-the-compost-box/</link>
		<comments>http://joelgrus.com/2011/12/07/doubling-the-compost-box/#comments</comments>
		<pubDate>Thu, 08 Dec 2011 05:13:45 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Education]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=689</guid>
		<description><![CDATA[If you are on Facebook you have probably seen the articles about the unnamed school board member who couldn&#8217;t do any of the math problems on the math standardized test (and who couldn&#8217;t pass the reading section). Most of the discussion drew the conclusion that the tests were too hard for 10th graders and covered <a href="http://joelgrus.com/2011/12/07/doubling-the-compost-box/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you are on Facebook you have probably seen the articles about <a href = "http://www.washingtonpost.com/blogs/answer-sheet/post/when-an-adult-took-standardized-tests-forced-on-kids/2011/12/05/gIQApTDuUO_blog.html">the unnamed school board member</a> who couldn&#8217;t do any of the math problems on the math standardized test (and who couldn&#8217;t pass the reading section).  Most of the discussion drew the conclusion that the tests were too hard for 10th graders and covered topics that were irrelevant to success (at least, if &#8220;success&#8221; is defined by being an unnamed school board member).  </p>
<p>(There was also an unspoken undercurrent that, as standardized testing had been embraced by the Pepsi party, maligning it was a good signal of one&#8217;s allegiance to the Coke party.)</p>
<p>The article, of course, did not give any <i>examples</i> of the questions that were too hard, leaving open the alternative hypothesis that perhaps one simply doesn&#8217;t have to be very bright to serve on a school board.  (Having casually observed the Seattle School Board over the last several years, I am inclined toward this position.)</p>
<p>You probably didn&#8217;t see <a href = "http://www.washingtonpost.com/blogs/answer-sheet/post/revealed-school-board-member-who-took-standardized-test/2011/12/06/gIQAbIcxZO_blog.html">the follow-up article</a> outing the test failer as someone with a Bachelor&#8217;s in Education (which he describes as a &#8220;Bachelor of Science&#8221;, making it sound like he has a science degree, which he doesn&#8217;t), a Master&#8217;s in Education, and a Master&#8217;s in Educational Psychology.  Given my prior that each of these degrees is worthless (except, of course, for its value in jumping through some sort of public-servant-pay-grade hoop), I feel even safer about my alternative hypothesis.</p>
<p>Luckily, the second article names the test.  It&#8217;s the Florida Comprehensive Assessment Test, and the state of Florida has thoughtfully provided <a href = "http://fcat.fldoe.org/fcatit09.asp">sample questions</a> on the web.  The questions are not particularly interesting, nor are they particularly hard:</p>
<p><img src="http://joelgrus.com/wp-content/uploads/2011/12/compostbox.png" alt="" title="compostbox" width="631" height="190" class="aligncenter size-full wp-image-690" /></p>
<p>(Although the test is quite plainly biased against students from cultures that lack access to composting.)</p>
<p>What is interesting is his final criticism:</p>
<blockquote><p>The math section, he said, tests information that most people don’t need when they get out of school.</p></blockquote>
<p>There is a sense in which this is true.  Most people never compute the volumes of composting bins.  (Although if the city of Seattle gets its way, soon we&#8217;ll all be forced to.)  </p>
<p>There&#8217;s also a larger sense in which it&#8217;s false.  Solving word problems <i>is</i> a valuable skill (that most people sadly lack), and word problems have to be about <i>something</i>.  And whatever that something is, probably most kids will never have to know its specifics again.</p>
<p>But there&#8217;s a bigger sense in which it&#8217;s irrelevant.  <i>Most</i> of what you learn in high school (insofar as you learn anything) is information that you&#8217;ll never need again.  I myself have forgotten almost all of my American history (although I remember our teacher&#8217;s stories about her redneck neighbors, who used to jump out of their second-story door after their deck collapsed), almost all of my chemistry (although I remember that the teacher had a toy stuffed mole named Avogadro), almost all of my English lit (although I remember that F. Scott Fitzgerald liked to use &#8220;flower imagery&#8221;), almost all of my Spanish (although I remember listening to cassette tapes of commercials for &#8220;Pal-mo-LEE-vay&#8221;), almost all of the pep rallies (although I remember that DHS Wildcats are &#8220;paw-some&#8221;), almost all of the motivational assemblies (although I remember the &#8220;what thou see-est, that thou be-est&#8221; guy), and almost all of my classmates (although I remember Josh Adams, because he visits Seattle every 10 years or so).</p>
<p>And the things you <i>do</i> need to know vary a lot from person to person.  While it&#8217;s important to me that the Wildcats are paw-some, it might be equally important to Josh Adams that when the Wildcats rock the house they rock it all the way down.  A test that asks about one neglects the other, and vice versa.</p>
<p>To the extent that most of what you learn in school is useless (and, believe me, most of what you learn in school is useless), any test that makes sure you actually learned it is going to be testing information that you don&#8217;t actually need.  Blaming the test for that hardly seems fair.</p>
<p>And to the extent that your fancy degrees in education are useless (and, believe me, your fancy degrees in education are useless), then they&#8217;re not going to help you answer questions on a test.  Again, blaming the test hardly seems fair.</p>
<p>All that said, standardized tests are essentially a 19th-century technology, and fixing education will almost certainly entail getting rid of them (although merely getting rid of them will not fix education in the slightest).  I don&#8217;t mean to offer a blanket defense for them, only a defense against the criticism &#8220;I have three degrees and can&#8217;t do the test and therefore the problem is with the test.&#8221;</p>
<p>That leaves only the unresolved issue that you don&#8217;t have to be particularly competent to be on the school board, although if progressive Seattle <a href = "http://cliffmass.blogspot.com/2011/07/saving-seattles-schools.html">is cool with it</a>, then I imagine everyone else is too.</p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2011/12/07/doubling-the-compost-box/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Fiction: The Difference Principle</title>
		<link>http://joelgrus.com/2011/12/03/fiction-the-difference-principle/</link>
		<comments>http://joelgrus.com/2011/12/03/fiction-the-difference-principle/#comments</comments>
		<pubDate>Sat, 03 Dec 2011 17:29:42 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Fiction]]></category>
		<category><![CDATA[Philosophy]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=681</guid>
		<description><![CDATA[Jessica pointed at a pile of rags beside a dumpster. “This is the guy?” I asked.  I looked up and down the filthy alley we were standing in.  “This is a person?” “It is,” she said tentatively, and then she checked the little brown Moleskine she carried everywhere.  “It is,” she repeated more confidently.  “A <a href="http://joelgrus.com/2011/12/03/fiction-the-difference-principle/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Jessica pointed at a pile of rags beside a dumpster.</p>
<p>“This is the guy?” I asked.  I looked up and down the filthy alley we were standing in.  “This is a person?”</p>
<p>“It is,” she said tentatively, and then she checked the little brown Moleskine she carried everywhere.  “It is,” she repeated more confidently.  “A lot of them aren’t even this clean, so you’d better get used to it.”</p>
<p>“Sir?”  I crouched down closer to what I assumed was his head, trying to ignore the stench of cigarette smoke and sour beer and body odor.  “Sir?”  I asked again.</p>
<p>“Go ‘way.”  The voice sounded rusty, as if it weren’t used very often, but it was indeed coming from where I’d guessed his head was.  “Leave me ‘lone.”</p>
<p>“Keith Runson?” I asked.  I’d memorized the name on the drive over.  The pile shifted.</p>
<p>“Who’s askin’?”</p>
<p>“My name is Harry&#8230;”  Jessica kicked me, and I immediately remembered that we weren’t supposed to tell them our names.  Shit.  But this guy didn’t seem like he’d remember it, so I kept going. “We’re from Original Position.”</p>
<p>He poked his head out of the blankets. His hair and face clearly hadn’t been washed in months, he had the decrepit teeth common to those who prioritized drug abuse over hygiene, and his eyes were pretty much the saddest I’d ever seen.  The computer clearly knew its business.</p>
<p>“The char’ty?” he asked.</p>
<p>I puzzled over my answer for too long, and Jessica stepped in.  “Original Position is not a charity.  It’s a fundamental part of the social contract.”</p>
<p>“I never no signed no contract,” he objected.</p>
<p>“No,” Jessica explained, in a tone indicating that she’d delivered this exact explanation countless times before, “but you <em>would have</em>&#8230;”</p>
<p>“I never would have signed no contract,” he insisted.</p>
<p>“Maybe not in your lifetime,” she told him, “but before you were born you certainly would have. This is well understood.”</p>
<p>“Before I was born I ain’t would have signed no contract!”</p>
<p>“Before you even knew who you were,” Jessica patiently explained.  “Back when you didn’t know if you’d be the President or if you’d be … well … you.”</p>
<p>“I <em>am</em> me,” he growled.</p>
<p>“You’re not just you,” Jessica told him.  “According to our computers you’re the worst-off person in the United States.”</p>
<p>“Well, fuck you!”  He spat at her, but she didn’t flinch.  She’d warned me that they often got angry.  It was an occupational hazard.</p>
<p>“Don’t spit,” she patiently chided him.  “We’re here to help.  Before you were born, back behind the Veil of Ignorance, you would have wanted to live in a society that focused on the well-being of the worst-off-person.”</p>
<p>“I’m not that ignorant,” he objected.  “And you don’t know what I would have wanted.”</p>
<p>She ignored his objection.  “Right now you are that worst-off person.  And so we’re here to make you better off.  What would you like?  Within reason it’s yours.  Food?  Shelter?  Toilets?  A job?”</p>
<p>“Booze,” he wheezed.  “I want booze.”</p>
<p>Nine times out of ten they want booze.  They’d warned us in training.  I opened the unlabeled messenger bag Original Position had given me and pulled out a bottle of cheap whiskey.  He grabbed it out of my hand, opened it, and started drinking before I could say anything.</p>
<p>“Congratulations, Mister Runson,” Jessica told him.  “You’re no longer the worst-off person.”  I don’t think he even heard her.</p>
<p>“What did you think of your first assignment?” she asked me as we walked back to the car.</p>
<p>I thought for a while before I asked, “Was it really a good idea to give him whiskey?”  I didn’t feel like we’d been particularly philanthropic.</p>
<p>“A good idea?  Probably not.  Possibly he’ll end up on our list again someday.  But for the meantime he’s no longer the worst-off person, which means that our attention is needed elsewhere.”</p>
<p>“I didn’t realize it would be so depressing,” I told her.</p>
<p>“Rawls didn’t call his book <em>A Theory of Why Justice is Fun</em>.  Just wait until you get a quadriplegic.”</p>
<p>I tried not to think about that.</p>
<p>“Let’s see who’s next.”  She opened up the Moleskine.  “Ooh, child abuse!”</p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2011/12/03/fiction-the-difference-principle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pets.com But With Guns And a No-Knock Warrant</title>
		<link>http://joelgrus.com/2011/10/27/pets-com-but-with-guns-and-a-no-knock-warrant/</link>
		<comments>http://joelgrus.com/2011/10/27/pets-com-but-with-guns-and-a-no-knock-warrant/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 04:54:21 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Politics]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=669</guid>
		<description><![CDATA[The government has a CIO, it turns out, and when he&#8217;s not hassling us to change our passwords again or to stop BitTorrenting on company time, he&#8217;s got a plan to re-invent government itself: On Tuesday, VanRoekel said that he wants to overhaul the federal bureaucracy to become more agile in an age of services <a href="http://joelgrus.com/2011/10/27/pets-com-but-with-guns-and-a-no-knock-warrant/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The government has a CIO, it turns out, and when he&#8217;s not hassling us to change our passwords <i>again</i> or to stop BitTorrenting on company time, he&#8217;s got a plan to <a href = "http://idealab.talkingpointsmemo.com/2011/10/americas-new-cio-wants-to-disrupt-government-and-make-it-a-startup.php">re-invent government itself</a>:</p>
<blockquote><p>
On Tuesday, VanRoekel said that he wants to overhaul the federal bureaucracy to become more agile in an age of services delivered via mobile apps, and where information is atomized so that it can be mashed up by anyone to provide deeper insights. He also wants to break down massive multi-year information technology projects into smaller, more modular projects in the hopes of saving the government from getting mired in multi-million dollar failures.</p>
<p>[...]</p>
<p>“Going forward, we need to embrace modular development, build on open standards, and run our projects in lean startup mode,” he said.
</p></blockquote>
<p>No one can argue that he doesn&#8217;t grasp the lingo.  However, a <a href = "http://www.cio.gov/profile/VanRoekel-Steven.cfm">career Microsoftie</a> is maybe not the best choice to run anything in &#8220;lean startup mode&#8221;.  As someone with a fair amount of startup experience, I offer him the following pieces of advice:</p>
<p><b>1. Never say &#8220;lean startup mode&#8221; (or &#8220;agile&#8221; or &#8220;mashed up&#8221;)</b></p>
<p>Each of these buzzwords sends a clear signal that either you&#8217;ve been in a coma since 2006 or that your &#8220;startup experience&#8221; consists entirely of eavesdropping at a coffee shop where programmers hang out.</p>
<p><b>2. Also, &#8220;mobile apps&#8221; are very 2009</b></p>
<p>I&#8217;m not saying you couldn&#8217;t hit the jackpot and sell several million copies of &#8220;Angry Birds D.C.&#8221; or &#8220;Laws with Friends&#8221; or even &#8220;Doodle Congress&#8221;.  But the odds are against you.</p>
<p><b>3. Startups have to <i>convince</i> investors to give them money</b></p>
<p>This is part of what makes startups startups.  It&#8217;s tough to stay &#8220;lean&#8221; and &#8220;agile&#8221; (let alone &#8220;mashed up&#8221;) if you can simply close a funding round at gunpoint each April 15<sup>1</sup>.  If VanRoekel can somehow make it so that government has to make PowerPoint slides and beg us for money each time it needs some, that would be a huge win.</p>
<p><b>4. Startups have to at least <i>pretend</i> to have a revenue model</b></p>
<p>It doesn&#8217;t have to be completely realistic.  It can in fact be pretty ludicrous, like &#8220;we&#8217;ll sell &#8216;$50 of junk for only $25&#8242; coupons and then only give the merchants <i>half</i> of the $25.&#8221; </p>
<p>But it does have to involve <i>revenue</i>.  For instance, &#8220;we&#8217;ll use the funds to subsidize our friends&#8217; failing businesses and also to bail out our other friends&#8217; failed businesses and then to send troops to Africa and then finally to imprison some recreational drug users&#8221; is not a revenue model.  Could you maybe add some sort of group shopping component?</p>
<p><b>5. Startups need an &#8220;elevator pitch&#8221;</b></p>
<p>At some point you&#8217;ll be in an elevator with someone, and he&#8217;ll ask you what your startup does, and you&#8217;ll have to explain it to him in terms of something he already knows (and recognizes as a success for venture capital).</p>
<p>For instance, a startup might be &#8220;Flickr but for dogs&#8221; or &#8220;Facebook but for cats&#8221; or &#8220;Pets.com but for group shopping deals.&#8221;</p>
<p>Obviously, none of these describes the federal government.  Coming up with these analogies is more of an art than a science, but you might consider &#8220;Enron but bigger&#8221; or &#8220;Swoopo but mandatory&#8221; or &#8220;Pets.com but with guns and a no-knock warrant&#8221;.</p>
<p><b>6. Startups fire people</b></p>
<p>Part of being &#8220;lean&#8221; and &#8220;agile&#8221; and &#8220;mashed up&#8221; is that you can&#8217;t afford to keep the wrong people *cough* Tim Geithner *cough* Janet Napolitano *cough* Eric Holder *cough* Steven Chu *cough* in their jobs when they suck at them.  If the CIO is empowered to make this change, then good for him!</p>
<p><b>7. Startups have a &#8220;fun&#8221; culture</b></p>
<table border="1">
<tr>
<td><b><i>fun</i></b></td>
<td><b><i>not fun</i></b></td>
</tr>
<tr>
<td>ping-pong table</td>
<td>metal detectors</td>
</tr>
<tr>
<td>free popcorn</td>
<td><a href = "http://www.washingtonmonthly.com/scoop/issues/070228scoop.html">the toothpick rule</td>
</tr>
<tr>
<td>catered meals</td>
<td><a href = "http://www.washingtonpost.com/wp-dyn/content/article/2010/07/13/AR2010071301514.html">Supreme Court cafeteria</a></td>
</tr>
<tr>
<td><a href = "http://gunnuts.net/2011/02/16/gunup-geek-shootout-goes-nationwide/">geek shootout</a></td>
<td><a href = "http://en.wikipedia.org/wiki/Waco_siege">Waco shootout</a></td>
</tr>
</table>
<p><b>8. Startups usually fail and go out of business</b></p>
<p>I&#8217;d be lying if I said this wasn&#8217;t the most exciting part of the &#8220;government as startup&#8221; plan.</p>
<p><small>1. Can we dispense with the fiction that taxes are due on April 15?  Multiple times I paid my taxes by April 15 and yet was still &#8220;penalized&#8221; because I didn&#8217;t &#8220;estimate&#8221; and &#8220;prepay&#8221; them sooner.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2011/10/27/pets-com-but-with-guns-and-a-no-knock-warrant/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Machine Learning Beverage</title>
		<link>http://joelgrus.com/2011/09/29/machine-learning-beverage/</link>
		<comments>http://joelgrus.com/2011/09/29/machine-learning-beverage/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 04:40:55 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Education]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=657</guid>
		<description><![CDATA[Although my formal training is in subjects like math and economics and animal husbandry, most of the money-work I do is in subjects like data science and fareology and writing over-the-top religious polemics. This is one of the reasons why I&#8217;m so sour on the value of college, as my multi-million-dollar investment in tuition and <a href="http://joelgrus.com/2011/09/29/machine-learning-beverage/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Although my formal training is in subjects like math and economics and animal husbandry, most of the money-work I do is in subjects like data science and fareology and writing over-the-top religious polemics.  This is one of the reasons why I&#8217;m so sour on the value of college, as my multi-million-dollar investment in tuition and pitchers of Ice Dog beer and Tower Party t-shirts didn&#8217;t even provide me the <i>opportunity</i> to learn any of these.</p>
<p>I did get to take an &#8220;Artificial Intelligence&#8221; class.  The only listed prerequisite was the &#8220;Intro to CS&#8221; class, but a brand new professor was teaching and she decided to make it a much more advanced class, and then I was going to partner with my friend who was a CS major so that he could handle all the more advanced programming aspects, but he dropped the class after a couple of weeks so he could spend his senior year focused on &#8220;not taking classes&#8221;, which meant that I got to spend <i>my</i> senior year focused on &#8220;learning enough about computer programming to not fail the class&#8221;, after which I picked up a bit of &#8220;how to sometimes beat the computer at tic-tac-toe&#8221; and &#8220;how to sometimes beat the computer at Reversi&#8221; and &#8220;how to narrowly avoid coming in last place in the classwide &#8216;<a href = "http://www.clear.rice.edu/comp440/pac.html">Pac War</a>&#8216; tournament.&#8221;</p>
<p>Despite that initial setback, over the course of my career I&#8217;ve managed to learn bits and pieces of what&#8217;s variously called &#8220;machine learning&#8221;, &#8220;artificial intelligence&#8221;, or &#8220;guessing stuff&#8221;.  I suspect I would be more popular at data mining parties if I had a smidge more training in these subjects, and so I was very excited at the prospect of Stanford&#8217;s free online <a href = "http://www.ai-class.com/">Artificial Intelligence Class</a> and <a href = "http://www.ml-class.org/course/class/index">Machine Learning Course</a>, both of which are offered this fall.  (There&#8217;s also a Database Class, but I know too much about databases already.)  </p>
<p>You don&#8217;t get actual Stanford credit if you take the classes online, but I don&#8217;t particularly want Stanford credit, which means that&#8217;s not a deal-breaker.  You get some sort of certificate signed by the professors listing your rank in the class, which will probably be somewhere in the millions thanks to all the Chinese students who will be cheating on their assignments, but I don&#8217;t particularly want a certificate either.  I wouldn&#8217;t mind some sort of bumper sticker (&#8220;MY COMPUTER ALGORITHM IS SMARTER THAN YOUR HONOR STUDENT AND FURTHERMORE WON&#8217;T EVER BE UNEMPLOYED AND LIVING IN MY BASEMENT UNDER A CRIPPLING MOUNTAIN OF STUDENT-LOAN DEBT&#8221;), but that doesn&#8217;t seem to be part of the plan.</p>
<p>Most likely I won&#8217;t have enough time to devote to the classes anyway, what with work and training the baby to take over the world someday and trying to finish the novel about the boy who likes to play baseball but is no good at it.  And this isn&#8217;t helped by the fact that both classes are going to have hours of online lectures that I&#8217;m going to have to sit through.  Lectures!</p>
<p>I <a href = "http://twitter.com/#!/joelgrus/status/118703313775640576">twittered the other day</a> that if I have to sit through lectures then you&#8217;re not really transforming education.  A lot of people (reasonably) interpreted this as a dig at the Khan Academy, but I was more angry at the Stanford CS department, which is tech-savvy enough to offer courses over the Internet to millions of cheating Chinese people and yet not tech-savvy enough to think of a better method of knowledge transmission than <i>lectures with slides</i>, which were invented by <a href = "http://www.catholic-convert.com/wp-content/uploads/moses-tablets.jpg">Moses</a> or possibly even God, making them thousands of years old.  I&#8217;m happy to take their quizzes and solve their problem sets and write their examinations, but the prospect of having to spend time listening to <i>lectures</i> is really glooming me down.</p>
<p>It&#8217;s not that I don&#8217;t appreciate what they&#8217;re doing, but if the Stanford Computer Science department really wants to revolutionize the educational process, they should figure out a way to upload information directly into my brain, or to embed it subliminally in Spider-Man cartoons, or to make it somehow drinkable.  &#8220;Machine Learning Class&#8221; is the past; the future belongs to whoever first figures out &#8220;Machine Learning Beverage&#8221;!</p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2011/09/29/machine-learning-beverage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I Am Tired of 9/11</title>
		<link>http://joelgrus.com/2011/09/11/i-am-tired-of-911/</link>
		<comments>http://joelgrus.com/2011/09/11/i-am-tired-of-911/#comments</comments>
		<pubDate>Sun, 11 Sep 2011 18:42:11 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[Politics]]></category>
		<category><![CDATA[Religion]]></category>

		<guid isPermaLink="false">http://joelgrus.com/?p=649</guid>
		<description><![CDATA[Is it too soon to be tired of 9/11? Because I am. I&#8217;m tired of not being able to bring my pinking shears on plane trips. I&#8217;m tired of conspiracy theories (except for ones involving reptilians.) I&#8217;m tired of pointless wars that waste trillions of dollars that could otherwise be funneled to unprofitable, politically-connected &#8220;green <a href="http://joelgrus.com/2011/09/11/i-am-tired-of-911/"> read more <span class="meta-nav">&#187;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Is it too soon to be tired of 9/11?  Because I am.</p>
<p>I&#8217;m tired of not being able to bring my pinking shears on plane trips.  I&#8217;m tired of conspiracy theories (except for ones involving <a href = "http://en.wikipedia.org/wiki/Reptilians">reptilians</a>.)  I&#8217;m tired of pointless wars that waste trillions of dollars that could otherwise be funneled to unprofitable, politically-connected &#8220;green energy&#8221; companies.   And I&#8217;m especially tired of having to refrain from referring to my penis as &#8220;the Top of the World observation deck&#8221; for fear of getting nasty looks from some girl who knows someone who knows someone who almost went to work that day.  </p>
<p>I&#8217;m also tired of all the people constantly (by which I mean annually) exhorting me to &#8220;NEVER FORGET&#8221; what happened that day.  All sorts of  terrible things have happened to me over my life.  There was that time I got tricked into watching <i>Napoleon Dynamite</i>, and then there was some sort of incident involving Nancy Drew&#8217;s dog, and there was even that one time that I almost got killed on 9/11.  But after tens of thousands of dollars of psychotherapy, hypnotherapy, craniosacral therapy, sandplay therapy, and reiki work, I&#8217;ve learned that &#8220;NEVER FORGET&#8221; is pretty much the worst advice there is, with the possible exceptions of &#8220;Be yourself&#8221;, &#8220;Girls can&#8217;t resist a guy who can chug a bottle of Tabasco sauce&#8221;,  and &#8220;Vote for Obama&#8221;.</p>
<p>That doesn&#8217;t mean I can&#8217;t remember some of the <i>lessons</i> of that event, like &#8220;avoid Manhattan&#8221; and &#8220;don&#8217;t ignore the &#8216;STAY HOME FROM WORK TODAY JEWS!&#8217; phone message&#8221; and &#8220;don&#8217;t wait too long to see that tourist attraction, lest some Muslims hijack and crash an airplane into it.&#8221;  But these are lessons to put into practice <i>everyday</i>, not just in early September, and not just in years that end in a 1.  And the more you &#8220;NEVER FORGET&#8221; the last crisis, the less prepared you are for the next <i>different</i> one.</p>
<p>So, sure, wear your <a href = "http://www.sheplers.com/roper-mens-short-sleeve-flag-print-shirt.html?Source=Froogle">patriotic shirt</a> and eat your <a href = "http://sweet-station.com/blog/2011/06/obama-sushi-rolls/">patriotic foods</a> and click &#8220;like&#8221; on the &#8220;Like this if you are watching this on September 11th&#8221; comments on <a href = "http://www.youtube.com/watch?v=Q65KZIqay4E">patriotic YouTube videos</a>.  But while you&#8217;re busy trying to &#8220;NEVER FORGET&#8221; what already happened, I&#8217;ll be thinking up jokes for what&#8217;s happening next.  Advantage: Joel.</p>
]]></content:encoded>
			<wfw:commentRss>http://joelgrus.com/2011/09/11/i-am-tired-of-911/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

