<?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>Nathan VanHoudnos &#187; Uncategorized</title>
	<atom:link href="http://www.stat.cmu.edu/~nmv/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.stat.cmu.edu/~nmv</link>
	<description>Statistics and Public Policy Ph.D. Student</description>
	<lastBuildDate>Thu, 07 Feb 2013 20:43:49 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
		<item>
		<title>Fighting with git: error: object file &#8230; is empty</title>
		<link>http://www.stat.cmu.edu/~nmv/2012/09/11/fighting-with-git-error-object-file-is-empty/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2012/09/11/fighting-with-git-error-object-file-is-empty/#comments</comments>
		<pubDate>Tue, 11 Sep 2012 17:20:58 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=286</guid>
		<description><![CDATA[I did eventually get git to give me back my repository. My steps are posted over on Stack Overflow in case it ever happens again. (Which is won&#8217;t because I&#8217;ll have a backup that isn&#8217;t Ubuntu One!)]]></description>
			<content:encoded><![CDATA[<p>I did eventually get git to give me back my repository. <a href="http://stackoverflow.com/a/12371337/419842">My steps are posted over on Stack Overflow</a> in case it ever happens again. (Which is won&#8217;t because I&#8217;ll have a backup that isn&#8217;t Ubuntu One!)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2012/09/11/fighting-with-git-error-object-file-is-empty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Managing Latex packages manually in Ubuntu 12.04</title>
		<link>http://www.stat.cmu.edu/~nmv/2012/06/14/managing-latex-packages-manually-in-ubuntu-12-04/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2012/06/14/managing-latex-packages-manually-in-ubuntu-12-04/#comments</comments>
		<pubDate>Thu, 14 Jun 2012 13:51:42 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=268</guid>
		<description><![CDATA[Ubuntu is great, but making it play nice with latex is a bit of a pain. There are three parts to this: Ubuntu comes with APT, a really nice package management system that lets you easily install, update, and remove software that has &#8230; <a href="http://www.stat.cmu.edu/~nmv/2012/06/14/managing-latex-packages-manually-in-ubuntu-12-04/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Ubuntu is great, but making it play nice with latex is a bit of a pain. There are three parts to this:</p>
<ol>
<li>Ubuntu comes with <a href="https://help.ubuntu.com/community/AptGet/Howto">APT</a>, a really nice package management system that lets you easily install, update, and remove software that has been helpfully packaged by both <a href="http://www.canonical.com/about-ubuntu">Canonical</a> and the wider <a href="http://www.debian.org/">Debian community</a>.</li>
<li><a href="http://www.tug.org/texlive/">Tex Live</a>, the official release of latex, comes with <a href="http://www.tug.org/texlive/tlmgr.html">tlmgr</a>, an equally great package manager for managing the all of the latex packages on <a href="http://www.ctan.org/">CTAN</a>.</li>
<li>Ubuntu&#8217;s distribution of latex omits tlmgr and forces developers to repackage the latex packages to fit into the APT scheme. (<a href="http://tex.stackexchange.com/a/13710">source</a>)</li>
</ol>
<p>This seems to be why <a title="moderncv won’t work on Ubuntu 10.04 because of marvosym.sty" href="http://nathanvan.wordpress.com/2011/01/11/moderncv-wont-work-on-ubuntu-10-04-because-of-marvosym-sty/">my previous post</a> about fixing moderncv for Ubuntu was so popular. It is not obvious to most users that to fix the</p>
<p><code> LaTeX Error: File `marvosym.sty' not found.<br />
</code><br />
error, the user has to both (1) find the Ubuntu package that provides marvosym.sty and then (2) install that Ubuntu package along with every other latex package that happens to be bundled with it.</p>
<p>All of that is fine if a kind-hearted developer had the foresight to bundle the latex package you want/need in a convient form for installation with APT. If not, you have two options:</p>
<ol>
<li>Keep Tex Live under the control of Ubuntu&#8217;s package management and manually install the Latex packages you need. An easy way to do this is described below.</li>
<li>Break out Tex Live from Ubuntu&#8217;s package manager and use tlmgr for Latex package management. This gives you MikTex style latex package management for Ubuntu, but you are responsible for keeping Tex Live up to date. See the answers to <a href="http://tex.stackexchange.com/questions/1092/how-to-install-vanilla-texlive-on-debian-or-ubuntu">this Stack Exchange question</a> for details of how to do it.</li>
</ol>
<p>For now I&#8217;m sticking with Option 1. Here is a worked example to install the Latex package <a href="http://www.ctan.org/tex-archive/macros/latex/contrib/outlines/">outlines</a> for Ubuntu:</p>
<ol>
<li>Look at the path Latex searches to find packages with &#8216;kpsepath tex&#8217; which should give output similar to:
<pre class="brush: bash; title: ; notranslate">
nathanvan@nathanvan-N61Jq:~$ kpsepath tex | sed -e 's/:/\n:/g'
.
:/home/nathanvan/.texmf-config/tex/kpsewhich//
:/home/nathanvan/.texmf-var/tex/kpsewhich//
:/home/nathanvan/texmf/tex/kpsewhich//
:/etc/texmf/tex/kpsewhich//
:!!/var/lib/texmf/tex/kpsewhich//
:!!/usr/local/share/texmf/tex/kpsewhich//
:!!/usr/share/texmf/tex/kpsewhich//
:!!/usr/share/texmf-texlive/tex/kpsewhich//
:/home/nathanvan/.texmf-config/tex/generic//
:/home/nathanvan/.texmf-var/tex/generic//
:/home/nathanvan/texmf/tex/generic//
:/etc/texmf/tex/generic//
:!!/var/lib/texmf/tex/generic//
:!!/usr/local/share/texmf/tex/generic//
:!!/usr/share/texmf/tex/generic//
:!!/usr/share/texmf-texlive/tex/generic//
:/home/nathanvan/.texmf-config/tex///
:/home/nathanvan/.texmf-var/tex///
:/home/nathanvan/texmf/tex///
:/etc/texmf/tex///
:!!/var/lib/texmf/tex///
:!!/usr/local/share/texmf/tex///
:!!/usr/share/texmf/tex///
:!!/usr/share/texmf-texlive/tex///
</pre>
</li>
<li>Note that the entry on line 21 is &#8216;/home/nathanvan/texmf/tex//&#8217;, which tells latex to search every subdirectory under &#8216;/home/nathanvan/texmf/tex&#8217; to find packages that haven&#8217;t been found yet. You&#8217;ll have something similar for your home directory.</li>
<li>Make a &#8216;texmf/tex/latex&#8217; directory under your home directory:<code><br />
nathanvan@nathanvan-N61Jq:~$ mkdir -p ~/texmf/tex/latex<br />
</code></li>
<li>Find the pacakge you want on CTAN, say <a href="http://www.ctan.org/tex-archive/macros/latex/contrib/outlines/">outlines</a>, because you read <a href="http://dataninja.wordpress.com/2006/10/25/essential-latex-packages-for-school/">this blog post</a> and want to try it out.</li>
<li>Download the &#8216;the contents of this directory bundled as a <a href="http://mirror.ctan.org/macros/latex/contrib/outlines.zip">zip file</a>&#8216;, as CTAN likes to say it, and save it to &#8216;~/texmf/tex/latex&#8217;</li>
<li>Unzip it right there:<code><br />
nathanvan@nathanvan-N61Jq:~$ cd texmf/tex/latex<br />
nathanvan@nathanvan-N61Jq:~/texmf/tex/latex$ ls<br />
outlines.zip<br />
nathanvan@nathanvan-N61Jq:~/texmf/tex/latex$ unzip outlines.zip<br />
Archive: outlines.zip<br />
creating: outlines/<br />
inflating: outlines/outlines.pdf<br />
inflating: outlines/outlines.sty<br />
inflating: outlines/outlines.tex<br />
inflating: outlines/README<br />
nathanvan@nathanvan-N61Jq:~/texmf/tex/latex$ ls<br />
outlines outlines.zip<br />
</code></li>
</ol>
<p>And then you are done installing the latex package. It works great without any big hassles.</p>
<p>Edit: If the package you were installing contains fonts, this won&#8217;t quite work. See <a href="#comment-58">Steve Kroon&#8217;s comment</a> below for details of how to fix it.</p>
<p>Edit: Thanks to <a href="http://tex.stackexchange.com/users/8528/jon">jon</a> for pointing out the correct directory structure for ~/texmf in the first comment to <a href="http://tex.stackexchange.com/a/59862/15611">this answer</a>. For the curious, more details, including why the directory is called texmf, can be found <a href="http://www.tex.ac.uk/tex-archive/tds/tds.html">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2012/06/14/managing-latex-packages-manually-in-ubuntu-12-04/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>next few weeks</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/03/28/next-few-weeks/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/03/28/next-few-weeks/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 14:59:43 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=166</guid>
		<description><![CDATA[Today is the due date for abstracts to Educational Data Mining 2011 in Eindhoven. I&#8217;m submitting two things. In a week the paper is due. A week after that I&#8217;m at AISTATS 2011. A week after that I&#8217;m presenting the &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/03/28/next-few-weeks/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Today is the due date for abstracts to <a href="http://educationaldatamining.org/EDM2011/">Educational Data Mining 2011 in Eindhoven</a>. I&#8217;m submitting two things. In a week the paper is due. A week after that I&#8217;m at <a href="http://www.aistats.org/">AISTATS 2011</a>. A week after that I&#8217;m presenting the last year of my work to the faculty as part of my <a href="http://www.stat.cmu.edu/programs/graduate/joint-phd-program-in-statistics-and-public-policy">Advanced Data Analysis / Heinz first paper</a> / <a href="http://www.cmu.edu/pier/pdfs/07FBE-IIPrequirements.pdf">PIER IIP</a> project requirements. Expect to hear very little from me for a bit. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/03/28/next-few-weeks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My first citation in a published work</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/03/01/my-first-citation-in-a-published-work/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/03/01/my-first-citation-in-a-published-work/#comments</comments>
		<pubDate>Tue, 01 Mar 2011 14:05:29 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=146</guid>
		<description><![CDATA[Back in undergrad, I wrote a term paper for May Berenbaum&#8217;s Insects &#38; People honors seminar. The assignment was to relate something about insects to people&#8217;s daily lives. At the time, I was finishing up the first course in the &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/03/01/my-first-citation-in-a-published-work/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Back in <a href="http://physics.illinois.edu/">undergrad</a>, I wrote a term paper for <a href="http://www.life.illinois.edu/entomology/faculty/berenbaum.html">May Berenbaum&#8217;s</a> <a href="http://courses.illinois.edu/cis/archive/catalog/2002Spring/courses/IB109.html">Insects &amp; People</a> honors seminar. The assignment was to relate something about insects to people&#8217;s daily lives. At the time, I was finishing up the <a href="http://courses.illinois.edu/cis/archive/catalog/2002Spring/courses/PHYCS225.html">first course</a> in the year long classical mechanics sequence, so my daily life was physics problem sets. For the first time, I noticed something. There are a lot of insects in mechanics word problems (if a roach is walking on a turntable&#8230;; if a bee files in a spiral parametrized by&#8230; ). It seems they were always there, but take a class on insects and all of sudden you notice them making cameos. So, that&#8217;s what I wrote about. It was a fun paper.</p>
<p>Seven years later, this paper makes it into the first chapter of her book: <a href="http://www.amazon.com/gp/product/0674035402?ie=UTF8&amp;tag=nathvanh-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0674035402">The Earwig&#8217;s Tail: A Modern Bestiary of Multi-legged Legends</a><img src="http://www.assoc-amazon.com/e/ir?t=nathvanh-20&amp;l=as2&amp;o=1&amp;a=0674035402" width="1" height="1" border="0" alt="" style="border:none!important;margin:0!important;" />. </p>
<p>It&#8217;s kinda funny; reading it on <a href="http://books.google.com/books?id=FOlpPl_15csC&amp;pg=PA5&amp;dq=nathan+van+houdnos&amp;hl=en&amp;ei=PrFmTfeZN8H_lgeU-7H_AQ&amp;sa=X&amp;oi=book_result&amp;ct=result&amp;resnum=1&amp;ved=0CCkQ6AEwAA#v=onepage&amp;q=nathan%20van%20houdnos&amp;f=false">Google Books</a>. My only complaint is that she misspelled my last name. It&#8217;s not Van Houdnos; it&#8217;s VanHoudnos. That&#8217;s why I didn&#8217;t know about it; I had never google stalked myself with the alternate spelling of &#8220;nathan van houdnos&#8221; before. </p>
<p>I&#8217;m pretty excited about this. I&#8217;ll have to see if she&#8217;ll send me a signed copy. &#058;&#041; </p>
<p><strong>UPDATE 5/9/2011</strong><br />
<a href="http://www.entsoc.org/PDF/Pubs/Periodicals/AE/AE-2003/spring/Buzzwords%20pg3-4.pdf">This essay</a> in the American Entomologist is actually my first citation in a published work. It&#8217;s from Spring 2003, so it beats the book by several years. (Of course, the essay <strong>is</strong> the relevant part of the book; it&#8217;s not like I have two citations or anything.) </p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/03/01/my-first-citation-in-a-published-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is my bounce rate due to my HIT display?</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/02/17/is-my-bounce-rate-due-to-my-hit-display/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/02/17/is-my-bounce-rate-due-to-my-hit-display/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 18:41:02 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=137</guid>
		<description><![CDATA[My HITS have a rather high bounce rate. Between 40-50% of the Turkers who preview my HIT, choose not to accept it. I previously posted a histogram of the screen widths that I observed from workers who had accepted at &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/02/17/is-my-bounce-rate-due-to-my-hit-display/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My HITS have a rather high bounce rate. Between 40-50% of the Turkers who preview my HIT, choose not to accept it. I <a href="https://nathanvan.wordpress.com/2011/02/06/a-better-way-to-interact-with-amt-from-the-command-line/">previously posted</a> a histogram of the screen widths that I observed from workers who had accepted at least one HIT. That is very clearly a biased sample; it could be that only workers with screens large enough to comfortably display my HIT choose to accept it. I was curious to see if there was another population of Turkers that chose not to accept my HIT because their screens were too small. </p>
<p>I made the necessary modifications to my <a href="https://nathanvan.wordpress.com/2011/02/09/general-purpose-amt-webapp-based-on-web2py/">webapp</a> and then generated the following graph:<br />
<div id="attachment_138" class="wp-caption aligncenter" style="width: 490px"><a href="http://www.stat.cmu.edu/~nmv/wp-content/uploads/2011/02/widthhist-split.png"><img src="http://www.stat.cmu.edu/~nmv/wp-content/uploads/2011/02/widthhist-split.png" alt="Histogram split by worker acceptance" title="Histogram split by worker acceptance" width="480" height="480" class="size-full wp-image-138" /></a><p class="wp-caption-text">Screen resolution observed for Experiment 15</p></div></p>
<p>You&#8217;ll notice that there isn&#8217;t much of a practical difference between the workers who accept the HIT and those that do not. This makes me feel a little better. I&#8217;m not worried that my bounce rate is due to a display artifact. It does make me wonder though, is my bounce rate typical? </p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/02/17/is-my-bounce-rate-due-to-my-hit-display/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>General Purpose AMT webapp based on web2py</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/02/09/general-purpose-amt-webapp-based-on-web2py/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/02/09/general-purpose-amt-webapp-based-on-web2py/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 22:09:12 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=119</guid>
		<description><![CDATA[I wrote in my previous post about some scripts I developed to make interacting with Amazon Mechanical Turk a bit easier from the command line. I didn&#8217;t talk much about the web2py + Google AppEngine piece that actually serves the &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/02/09/general-purpose-amt-webapp-based-on-web2py/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I wrote in my <a href="https://nathanvan.wordpress.com/2011/02/06/a-better-way-to-interact-with-amt-from-the-command-line/">previous post</a> about some scripts I developed to make interacting with Amazon Mechanical Turk a bit easier from the command line. I didn&#8217;t talk much about the <a href="http://web2py.com/">web2py</a> + <a href="http://code.google.com/appengine/">Google AppEngine</a> piece that actually serves the <a href="http://docs.amazonwebservices.com/AWSMechanicalTurkRequester/2008-02-14/ApiReference_ExternalQuestionArticle.html">ExternalQuestion</a> HITS. I realized after talking to another PhD student that people might be interested in a way to host general purpose HITS for free. My web2py application does that.</p>
<p>Getting it running is pretty simple. Sign up for an AppEngine account, install their SDK, install web2py into the SDK, and copy my application (really a directory) into your web2py installation. Use the development webserver included with the SDK to test that your installation is sane. Push it to google to make sure your account is working right. Once you have it running on appspot, install the Amazon Command line tools, install my wrapper scripts to make them behave better, and run the test experiment on the sandbox to verify that AMT + GAE + web2py are talking nicely in the clouds. </p>
<p>Once that&#8217;s done, defining your own rubrics for HITS is pretty easy: </p>
<ol>
<li>Define a new controller to handle your custom rubrics. Example: <code>grade6.py</code> to hold  <code>grade6_test2_problem35_version1</code></li>
<li>Copy the provided method template and modify it to handle a given rubricCode. The template builds a <a href="http://web2py.com/book/default/chapter/07#SQLFORM.factory">SQLFORM.factory</a> to present the questions to Turkers and then validate the form input. Once the form is accepted, the method processes the result (scores it) and forwards it to a generic method to write it to the GAE datastore and sends it back to AMT.  Example: <a href="https://gist.github.com/819384#"><code>def grade6_test2_problem35_version1() ....</code></a></li>
<li>Copy the provided view template and modify it to ask the question you want for a given rubric code. The template extends a view class that knows how to display an informed consent in preview mode and track whenever a Turker clicks on a form element. It uses standard web2py tricks to protect you against injection and give you form validation for free. Example: <a href="https://gist.github.com/819384#file_grade6_test2_problem35_part_a_version1.html"><code>grade6_test2_problem35_version1.html</code></a></li>
<li>Prep the HITS by using <a href="https://github.com/nathanvan/DOE-for-AMT">my scripts</a> to cross the rubricCode with the image (or whatever) you want to display. Run it on the sandbox and test it out. Promote the experiment and run it on production when you are ready.</li>
</ol>
<p>Okay. Well maybe the setup doesn&#8217;t look easy, but a complete definition of a HIT is just over 125 lines of code including comments. That&#8217;s not really that bad. It&#8217;s a heck-of-a-lot easier than trying to put an ExternalQuestion together from scratch. If the internet is interested, I&#8217;ll clean up the application code (read: remove the parts pertinent to my research and IRB restrictions) and post it on GitHub. Leave a comment or send me mail if you are interested. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/02/09/general-purpose-amt-webapp-based-on-web2py/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A better way to interact with AMT from the command line</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/02/06/a-better-way-to-interact-with-amt-from-the-command-line/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/02/06/a-better-way-to-interact-with-amt-from-the-command-line/#comments</comments>
		<pubDate>Sun, 06 Feb 2011 04:27:55 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=108</guid>
		<description><![CDATA[Amazon Mechanical Turk is a useful thing. Interacting with it can be a giant pain. My &#8220;standard&#8221; approach is to use web2py running on top of Google AppEngine to serve ExternalQuestion HITs. This allows me to have quite a bit &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/02/06/a-better-way-to-interact-with-amt-from-the-command-line/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Amazon Mechanical Turk is a useful thing. Interacting with it can be a giant pain. </p>
<p>My &#8220;standard&#8221; approach is to use <a href="http://web2py.com/">web2py </a>running on top of <a href="http://code.google.com/appengine/">Google AppEngine</a> to serve <a href="http://docs.amazonwebservices.com/AWSMechanicalTurkRequester/2008-02-14/ApiReference_ExternalQuestionArticle.html">ExternalQuestion</a> HITs. This allows me to have quite a bit of control over the Turker&#8217;s experience and collect useful data like when they click on each button in the webapp. Although my current project doesn&#8217;t use this click history, a related, later project will. It also let&#8217;s me do fun things like use a bit of JavaScript to figure out the distribution of screen widths across workers so that I can optimize their viewing experience.</p>
<div id="attachment_113" class="wp-caption aligncenter" style="width: 490px"><a href="http://www.stat.cmu.edu/~nmv/wp-content/uploads/2011/02/widthhist2.png"><img src="http://www.stat.cmu.edu/~nmv/wp-content/uploads/2011/02/widthhist2.png" alt="Width histogram" title="Width histogram" width="480" height="480" class="size-full wp-image-113" /></a><p class="wp-caption-text">Anything under 700 pixels is fair game.</p></div>
<p>But that&#8217;s not what this post is about. I&#8217;d like to eventually use <a href="http://code.google.com/p/boto/">boto</a> to build the control of AMT directly in to the webapp itself. For now, I&#8217;m using the <a href="http://mturk.s3.amazonaws.com/CLT_Tutorial/UserGuide.html">command line interface that Amazon provides</a>. The CLT is an ugly hack that implements the Java API in a bunch of shell scripts. I have written my own wrapper around their scripts that enforces a certain amount of sanity. You can get <a href="https://github.com/nathanvan/DOE-for-AMT">the scripts over on gitHub</a>. </p>
<p>There isn&#8217;t really any documentation beyond the scripts themselves. The idea is that you create an <code>amt-script</code> directory where the new-and-improved scripts live. Under that directory, you create several <code>exp#</code> directories that hold the info that you need for experiments. Even ones are for production runs. Odd ones are for sandbox runs. Once you get a sandbox run working you run <code>buildGoLiveExp.sh</code> and it makes a copy from the staged experiment to a new go-live experiment. It&#8217;s a bit of a hack at the moment, but it works for me. I like it because it gives me an audit trail for each thing I run on AMT. Feel free to use them yourself. (Or use them as inspiration for something better that you can write yourself!) </p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/02/06/a-better-way-to-interact-with-amt-from-the-command-line/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fixing appengine SSL error on Ubuntu 10.04</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/01/26/fixing-appengine-ssl-error-on-ubuntu-10-04/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/01/26/fixing-appengine-ssl-error-on-ubuntu-10-04/#comments</comments>
		<pubDate>Wed, 26 Jan 2011 19:56:02 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=104</guid>
		<description><![CDATA[I figured I&#8217;d document this since I have to do it again. If you are using Google App Engine and you get the following: 2011-01-26 14:17:45,892 WARNING appengine_rpc.py:405 ssl module not found. Without the ssl module, the identity of the &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/01/26/fixing-appengine-ssl-error-on-ubuntu-10-04/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I figured I&#8217;d document this since I have to do it again. If you are using Google App Engine and you get the following:<br />
<code><br />
2011-01-26 14:17:45,892 WARNING appengine_rpc.py:405 ssl module not found.<br />
Without the ssl module, the identity of the remote host cannot be verified, and<br />
connections may NOT be secure. To fix this, please install the ssl module from<br />
http://pypi.python.org/pypi/ssl .<br />
To learn more, see http://code.google.com/appengine/kb/general.html#rpcssl .<br />
</code><br />
You download the file from <a href="http://pypi.python.org/pypi/ssl">the page suggested in the error</a>. Then do this:<br />
<code><br />
vanhoudn@gauze:~/Downloads$ tar xzf ssl-1.15.tar.gz<br />
vanhoudn@gauze:~/Downloads$ cd ssl-1.15/<br />
vanhoudn@gauze:~/Downloads/ssl-1.15$ python2.5 setup.py build<br />
</code></p>
<p>If it worked, great! Just do <code>sudo python2.5 setup.py install</code> and you are done. If not, you may have run into this error:<br />
<code><br />
vanhoudn@gauze:~/Downloads/ssl-1.15$ python2.5 setup.py<br />
looking for /usr/include/openssl/ssl.h<br />
looking for /usr/local/ssl/include/openssl/ssl.h<br />
looking for /usr/contrib/ssl/include/openssl/ssl.h<br />
Traceback (most recent call last):<br />
  File "setup.py", line 167, in<br />
    ssl_incs, ssl_libs, libs = find_ssl()<br />
  File "setup.py", line 142, in find_ssl<br />
    raise Exception("No SSL support found")<br />
Exception: No SSL support found<br />
</code></p>
<p>You can fix that by installing the relevant parts of the SSL source code with <code>sudo apt-get install libssl-dev</code>. Trying again you might get:<br />
<code><br />
vanhoudn@gauze:~/Downloads/ssl-1.15$ python2.5 setup.py build<br />
looking for /usr/include/openssl/ssl.h<br />
looking for /usr/include/krb5.h<br />
looking for /usr/kerberos/include/krb5.h<br />
running build<br />
running build_py<br />
running build_ext<br />
building 'ssl._ssl2' extension<br />
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I./ssl/2.5.1 -I/usr/include/python2.5 -c ssl/_ssl2.c -o build/temp.linux-i686-2.5/ssl/_ssl2.o<br />
ssl/_ssl2.c:17:20: error: Python.h: No such file or directory<br />
In file included from ssl/_ssl2.c:76:<br />
./ssl/2.5.1/socketmodule.h:112: error: expected specifier-qualifier-list before ‘PyObject_HEAD’<br />
.... lots of other errors ....<br />
error: command 'gcc' failed with exit status 1<br />
</code></p>
<p>You can fix that by installing the headers for python2.5. Apparently, when I initially <a href="http://kovshenin.com/archives/installing-python-2-5-on-ubuntu-linux-10-10/">installed deadsnakes</a> I forgot to install the headers. Easy enough with <code>sudo apt-get install python2.5-dev</code>. But not I get a bluetooth related error:</p>
<p><code><br />
In file included from ssl/_ssl2.c:76:<br />
./ssl/2.5.1/socketmodule.h:45:33: error: bluetooth/bluetooth.h: No such file or directory<br />
./ssl/2.5.1/socketmodule.h:46:30: error: bluetooth/rfcomm.h: No such file or directory<br />
./ssl/2.5.1/socketmodule.h:47:29: error: bluetooth/l2cap.h: No such file or directory<br />
./ssl/2.5.1/socketmodule.h:48:27: error: bluetooth/sco.h: No such file or directory<br />
</code></p>
<p>So, you guessed it: <code>sudo apt-get install libbluetooth-dev</code>. Then finally success! Finish with <code>sudo python2.5 setup.py install</code> and the GAE error goes away!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/01/26/fixing-appengine-ssl-error-on-ubuntu-10-04/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Giving up the internet</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/01/20/giving-up-the-internet/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/01/20/giving-up-the-internet/#comments</comments>
		<pubDate>Thu, 20 Jan 2011 14:32:04 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=102</guid>
		<description><![CDATA[I&#8217;m one of those people who often gets lost on Wikipedia. I also get distracted with the news. And Arts &#38; Letters Daily and just about everything it links to. I&#8217;ve been know to follow several blogs. I spend too &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/01/20/giving-up-the-internet/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m one of those people who often gets <a href="http://xkcd.com/214/">lost on Wikipedia</a>. I also get distracted with the news. And <a href="http://www.aldaily.com">Arts &amp; Letters Daily</a> and just about everything it links to. I&#8217;ve been know to follow several blogs. I spend too much time on Twitter pursuing the links that people share. All in all, I spend a lot of time reading and thinking about the wider world (or, really, just the parts of it that I am interested in). </p>
<p>This semester I&#8217;m much too busy to do this. I&#8217;ve got too many things to do to just keep up, one huge thing to get off the ground, and a giant plane to land before May. So, here it goes. I&#8217;m giving up the internet. I&#8217;ll still blog because I need the practice writing, but unless it&#8217;s a comment on the blog, I&#8217;m not going to follow it. Email will also work, if you want to get a hold of me. But I&#8217;m no longer allowing myself to check the dozens of RSS feeds I follow. No more twitter. No more news or blogs. I&#8217;ve got work-related reading to do if I&#8217;m bored. I&#8217;ll come out of the cave eventually. This too shall pass. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/01/20/giving-up-the-internet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>moderncv won&#8217;t work on Ubuntu 10.04 because of marvosym.sty</title>
		<link>http://www.stat.cmu.edu/~nmv/2011/01/11/moderncv-wont-work-on-ubuntu-10-04-because-of-marvosym-sty/</link>
		<comments>http://www.stat.cmu.edu/~nmv/2011/01/11/moderncv-wont-work-on-ubuntu-10-04-because-of-marvosym-sty/#comments</comments>
		<pubDate>Tue, 11 Jan 2011 01:53:02 +0000</pubDate>
		<dc:creator>nmv</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://nathanvan.wordpress.com/?p=98</guid>
		<description><![CDATA[I&#8217;m updating my resume/cv for content and style. To help with the latter, I&#8217;m following some examples that use the moderncv LaTeX package. I had trouble getting it to work. I like the look of this example, but I couldn&#8217;t &#8230; <a href="http://www.stat.cmu.edu/~nmv/2011/01/11/moderncv-wont-work-on-ubuntu-10-04-because-of-marvosym-sty/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m updating my resume/cv for content and style. To help with the latter, I&#8217;m following some <a href="http://www.math.uic.edu/~hurder/math589/vita.html">examples</a> that use the <code>moderncv</code> LaTeX package.</p>
<p>I had trouble getting it to work. I like the look of this <a href="http://www.math.uic.edu/~hurder/math589/cv/CV_Holly.pdf">example</a>, but I couldn&#8217;t get the <a href="http://www.math.uic.edu/~hurder/math589/cv/CV_Holly.tex">provided TeX</a> to compile. Instead, the error I got was:<br />
<code><br />
LaTeX Error: File `marvosym.sty' not found.<br />
</code></p>
<p>Googling didn&#8217;t help me find an answer, so I searched the apt repository manually to see if this file was provided by a missing package:</p>
<p><code>root@gauze:~# apt-cache search marvosym<br />
texlive-fonts-recommended - TeX Live: Recommended fonts<br />
ttf-marvosym - Symbol font for school and office<br />
</code></p>
<p>Installing<br />
<code><br />
root@gauze:~# apt-get install texlive-fonts-recommended<br />
</code><br />
fixed the problem. So now, Google, index this page and be more useful to the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.stat.cmu.edu/~nmv/2011/01/11/moderncv-wont-work-on-ubuntu-10-04-because-of-marvosym-sty/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
	</channel>
</rss>