<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Exploring New Technology</title>
	<atom:link href="http://tommyatnitle.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tommyatnitle.wordpress.com</link>
	<description>what exactly do i do all day?</description>
	<lastBuildDate>Wed, 07 Apr 2010 21:14:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='tommyatnitle.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Exploring New Technology</title>
		<link>http://tommyatnitle.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://tommyatnitle.wordpress.com/osd.xml" title="Exploring New Technology" />
	<atom:link rel='hub' href='http://tommyatnitle.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Git repository for the Campus Events web app</title>
		<link>http://tommyatnitle.wordpress.com/2010/04/07/git-repository-for-the-campus-events-web-app/</link>
		<comments>http://tommyatnitle.wordpress.com/2010/04/07/git-repository-for-the-campus-events-web-app/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 21:14:41 +0000</pubDate>
		<dc:creator>tommyr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[event app]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://tommyatnitle.wordpress.com/?p=19</guid>
		<description><![CDATA[I created a git repository for the campus event web application (written in CakePHP) optimized for mobile devices. It is located at git@github.com:rruiz/mobile_events.git<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=19&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I created a git repository for the campus event web application (written in CakePHP) optimized for mobile devices. It is located at</p>
<p>git@github.com:rruiz/mobile_events.git</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tommyatnitle.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tommyatnitle.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tommyatnitle.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tommyatnitle.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tommyatnitle.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tommyatnitle.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tommyatnitle.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tommyatnitle.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tommyatnitle.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tommyatnitle.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tommyatnitle.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tommyatnitle.wordpress.com/19/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tommyatnitle.wordpress.com/19/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tommyatnitle.wordpress.com/19/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=19&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tommyatnitle.wordpress.com/2010/04/07/git-repository-for-the-campus-events-web-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d2ab10e4463210bc7ecce543b7aca82d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tommyr</media:title>
		</media:content>
	</item>
		<item>
		<title>Equal-height columns using css</title>
		<link>http://tommyatnitle.wordpress.com/2010/02/22/equal-height-columns-using-css/</link>
		<comments>http://tommyatnitle.wordpress.com/2010/02/22/equal-height-columns-using-css/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 23:06:01 +0000</pubDate>
		<dc:creator>tommyr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[Design]]></category>

		<guid isPermaLink="false">http://tommyatnitle.wordpress.com/?p=17</guid>
		<description><![CDATA[Ruben wanted the columns on the main page at nitle.org to be the same height. Since the content is dynamically generated, this poses something of a problem, particularly since we want a border around each column. But this post walked me through it without any real problems It&#8217;s a really messy solution because if you [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=17&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Ruben wanted the columns on the main page at nitle.org to be the same height. Since the content is dynamically generated, this poses something of a problem, particularly since we want a border around each column. But <a href="http://www.ejeliot.com/blog/61">this post</a> walked me through it without any real problems</p>
<p>It&#8217;s a really messy solution because if you want a border, you have to fake the bottom edge with an image file (annoyingly created pixel by pixel in gimp &#8212; does anyone have a better idea?), but it does work and looks fine, as long as the columns have an absolute width.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tommyatnitle.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tommyatnitle.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tommyatnitle.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tommyatnitle.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tommyatnitle.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tommyatnitle.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tommyatnitle.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tommyatnitle.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tommyatnitle.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tommyatnitle.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tommyatnitle.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tommyatnitle.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tommyatnitle.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tommyatnitle.wordpress.com/17/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=17&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tommyatnitle.wordpress.com/2010/02/22/equal-height-columns-using-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d2ab10e4463210bc7ecce543b7aca82d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tommyr</media:title>
		</media:content>
	</item>
		<item>
		<title>Bundling an Amazon EC2 instance</title>
		<link>http://tommyatnitle.wordpress.com/2010/02/18/bundling-an-amazon-ec2-instance/</link>
		<comments>http://tommyatnitle.wordpress.com/2010/02/18/bundling-an-amazon-ec2-instance/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 23:51:03 +0000</pubDate>
		<dc:creator>tommyr</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[aws]]></category>
		<category><![CDATA[ec2]]></category>

		<guid isPermaLink="false">http://tommyatnitle.wordpress.com/?p=14</guid>
		<description><![CDATA[I added a startup script to our production blog to automatically mount the remote S3 storage we use for WordPress uploads (to make blog data persistent, rather than storing in the ephemeral EC2 filesystem). Since I did this, I needed to re-bundle the Amazon EC2 instance so that if the server does have to be [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=14&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I added a startup script to our production blog to automatically mount the remote S3 storage we use for WordPress uploads (to make blog data persistent, rather than storing in the ephemeral EC2 filesystem). Since I did this, I needed to re-bundle the Amazon EC2 instance so that if the server does have to be restarted (like it did on Tuesday), the startup scripts will still be there. (Otherwise, what&#8217;s the point of making them??)</p>
<p>I didn&#8217;t remember how to do the bundling, but <a href="//alestic.com/2009/06/ec2-ami-bundle">this blog post</a> walked me through it.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tommyatnitle.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tommyatnitle.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tommyatnitle.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tommyatnitle.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tommyatnitle.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tommyatnitle.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tommyatnitle.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tommyatnitle.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tommyatnitle.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tommyatnitle.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tommyatnitle.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tommyatnitle.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tommyatnitle.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tommyatnitle.wordpress.com/14/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=14&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tommyatnitle.wordpress.com/2010/02/18/bundling-an-amazon-ec2-instance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d2ab10e4463210bc7ecce543b7aca82d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tommyr</media:title>
		</media:content>
	</item>
		<item>
		<title>s3fs</title>
		<link>http://tommyatnitle.wordpress.com/2009/10/23/s3fs/</link>
		<comments>http://tommyatnitle.wordpress.com/2009/10/23/s3fs/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 17:54:47 +0000</pubDate>
		<dc:creator>tommyr</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[s3]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://tommyatnitle.wordpress.com/?p=11</guid>
		<description><![CDATA[The second step in migrating our data from being stored locally on the EC2 instance to persistent S3 storage is to get the WordPress file uploads to be stored in an S3 bucket. I decided to do this by mounting the bucket as a filesystem on the EC2 instance using the s3fs software. (I think [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=11&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The second step in migrating our data from being stored locally on the EC2 instance to persistent S3 storage is to get the WordPress file uploads to be stored in an S3 bucket. I decided to do this by mounting the bucket as a filesystem on the EC2 instance using the <a href="http://code.google.com/p/s3fs/wiki/FuseOverAmazon">s3fs</a> software. (I think there are several different sets of software with that same name, actually; the first one I tried did not seem to work, so there&#8217;s something to be careful of there.)</p>
<p>The software wouldn&#8217;t compile at first because I needed to install some dependencies from the repository (there may be more that I had already&#8230; not sure):</p>
<p><code>sudo apt-get install libfuse-dev libcurl3-dev</code></p>
<p>After that, compiling/installing the program worked fine and mounting a filesystem was as easy as:</p>
<p><code><br />
mkdir s3-storage<br />
sudo /usr/bin/s3fs BUCKET_NAME -o accessKeyId="ACCESS_KEY" -o secretAccessKey="SECRET_KEY" -o allow_other s3-storage/</code></p>
<p>Then I copied everything in the /&lt;wordpress&gt;/wp-content/blogs.dir/ directory to the bucket and mounted the bucket at the blogs.dir location, CLEVERLY TRICKING WORDPRESS into putting all of its file uploads in the S3 bucket. Simple!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tommyatnitle.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tommyatnitle.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tommyatnitle.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tommyatnitle.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tommyatnitle.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tommyatnitle.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tommyatnitle.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tommyatnitle.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tommyatnitle.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tommyatnitle.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tommyatnitle.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tommyatnitle.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tommyatnitle.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tommyatnitle.wordpress.com/11/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=11&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tommyatnitle.wordpress.com/2009/10/23/s3fs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d2ab10e4463210bc7ecce543b7aca82d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tommyr</media:title>
		</media:content>
	</item>
		<item>
		<title>MySQL on Amazon S3</title>
		<link>http://tommyatnitle.wordpress.com/2009/10/22/mysql-on-amazon-s3/</link>
		<comments>http://tommyatnitle.wordpress.com/2009/10/22/mysql-on-amazon-s3/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 18:57:48 +0000</pubDate>
		<dc:creator>tommyr</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[s3]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://tommyatnitle.wordpress.com/?p=7</guid>
		<description><![CDATA[We run our blog on an Amazon EC2 instance, but since data on the instance is lost if we ever take it down for some reason, we want the ability to store our MySQL data in our Amazon S3 storage space, whether that is by somehow running an accessible MySQL server on S3 or by [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=7&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We run our blog on an Amazon EC2 instance, but since data on the instance is lost if we ever take it down for some reason, we want the ability to store our MySQL data in our Amazon S3 storage space, whether that is by somehow running an accessible MySQL server on S3 or by making regular backups there. I&#8217;m writing this blog post to document the process I go through to get that working, in case we have to redo it on another server / after restarting the EC2 instance.</p>
<p>According to <a href="http://www.timlinden.com/blog/server/backup-mysql-amazon-s3/">another blog post</a>, backups can be done using the BackupManager perl application. First, we need to install a particular perl module called Net::Amazon::S3. I found <a href="http://egoleo.wordpress.com/2008/05/19/how-to-install-perl-modules-through-cpan-on-ubuntu-hardy-server/">this</a> post describing how to install perl modules using CPAN. (Note: be sure to run the cpan command with sudo.)</p>
<p>After a lot of configuring of CPAN (I just selected all the defaults), from the CPAN console I ran &#8220;install Net::Amazon::S3&#8243;; installing perl modules is ridiculously long and tedious, involving pressing Enter many times in a row, but it seems to be working without any problems so far.</p>
<p>After that I installed the BackupManager from git (rather than from a tarball like they did in the above-mentioned post):</p>
<p><code>git clone git://github.com/sukria/Backup-Manager.git backup-manager<br />
cd backup-manager<br />
sudo make install</code></p>
<p>and modified the conf file as described by that post.</p>
<p>I had to also install the perl module File::Slurp.</p>
<p>Continuing to follow the other post, I ran an initial &#8216;sudo /usr/sbin/backup-manager &#8211;verbose&#8217; but it failed because the s3 bucket had not yet been created. So, I installed s3cmd from the repository with:</p>
<p><code>sudo apt-get install s3cmd</code></p>
<p>and ran</p>
<p><code>s3cmd mb s3://BUCKET_NAME</code></p>
<p>After that, the &#8216;sudo /usr/sbin/backup-manager &#8211;verbose&#8217; succeeded, and now all that is left is to set up the cron job.</p>
<p><code>sudo crontab -e</code></p>
<p>with the line</p>
<p><code>45 1 * * * /usr/sbin/backup-manager</code></p>
<p>The next thing to do, then, will be mount an S3 bucket as a filesystem on the server to allow wordpress to store it&#8217;s file uploads (and possibly theme data) somewhere persistent.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tommyatnitle.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tommyatnitle.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tommyatnitle.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tommyatnitle.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tommyatnitle.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tommyatnitle.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tommyatnitle.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tommyatnitle.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tommyatnitle.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tommyatnitle.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tommyatnitle.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tommyatnitle.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tommyatnitle.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tommyatnitle.wordpress.com/7/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=7&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tommyatnitle.wordpress.com/2009/10/22/mysql-on-amazon-s3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d2ab10e4463210bc7ecce543b7aca82d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tommyr</media:title>
		</media:content>
	</item>
		<item>
		<title>DSpace and Ruby</title>
		<link>http://tommyatnitle.wordpress.com/2009/09/18/dspace-and-ruby/</link>
		<comments>http://tommyatnitle.wordpress.com/2009/09/18/dspace-and-ruby/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 16:39:30 +0000</pubDate>
		<dc:creator>tommyr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[dspace]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://tommyatnitle.wordpress.com/?p=4</guid>
		<description><![CDATA[The past few days I&#8217;ve spent working with Stephen on a front-end for DSpace written in Ruby. It mostly evolved out of a response to how nasty XSLT is to work with. We chose Sinatra for the web application framework because (1) it is written in Ruby and (2) it is ridiculously simple and lightweight. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=4&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The past few days I&#8217;ve spent working with Stephen on a front-end for DSpace written in Ruby. It mostly evolved out of a response to how nasty XSLT is to work with.</p>
<p>We chose <a href="http://www.sinatrarb.com">Sinatra</a> for the web application framework because (1) it is written in Ruby and (2) it is ridiculously simple and lightweight. We designed the front end to be a separate web application that makes http requests to the actual DSpace server and extracts relevant information from the XML files (that are normally transformed into HTML with XSLT) and constructs an HTML page using Haml.</p>
<p>The advantage of our Ruby front-end over the standard Manakin theming framework is just that it is orders of magnitude simpler to modify the view. (As an example: Manakin themes involve several XSL files of one or two thousand words each; our entire (admittedly incomplete) Ruby app is a couple hundred.) The best part is that the HTML is constructed using the incredibly intuitive Haml (and could very easily be swapped out with ERB or another Ruby HTML template framework), which makes constructing a new view from scratch very simple.</p>
<p>Included in our front-end is a &#8220;DSpace&#8221; Ruby object, which handles the extraction of elements from the DSpace XML files, hiding that level of complexity from the theme designer, who can think of DSpace as some foreign entity they are asking for information (such as lists of files or descriptions of communities), rather than needing to be intimately familiar with the form and syntax of DSpace&#8217;s XML files in order to transform them to HTML.</p>
<p>At this point, my only real misgiving is that I don&#8217;t think we are familiar enough with DSpace to anticipate unknown features or uncommon cases of standard features that it might have, which could lead to us inadvertently implementing a feature in a way that doesn&#8217;t work for every case, or not implement something entirely that we didn&#8217;t know about, unless we spend more time working with DSpace than is really worth it.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tommyatnitle.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tommyatnitle.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tommyatnitle.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tommyatnitle.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tommyatnitle.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tommyatnitle.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tommyatnitle.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tommyatnitle.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tommyatnitle.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tommyatnitle.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tommyatnitle.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tommyatnitle.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tommyatnitle.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tommyatnitle.wordpress.com/4/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=4&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tommyatnitle.wordpress.com/2009/09/18/dspace-and-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d2ab10e4463210bc7ecce543b7aca82d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tommyr</media:title>
		</media:content>
	</item>
		<item>
		<title>What is this?</title>
		<link>http://tommyatnitle.wordpress.com/2009/09/01/what-is-this/</link>
		<comments>http://tommyatnitle.wordpress.com/2009/09/01/what-is-this/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 19:15:50 +0000</pubDate>
		<dc:creator>tommyr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[intent]]></category>

		<guid isPermaLink="false">http://tommyatnitle.wordpress.com/2009/09/01/what-is-this/</guid>
		<description><![CDATA[This is my blog for documenting some of the things I do during a day working for NITLE. My goals are to provide myself and my coworkers with a written description of how I overcome obstacles that others may encounter and to document hopefully interesting ideas for futuristic development, as well as be more intentional [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=3&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is my blog for documenting some of the things I do during a day working for NITLE. My goals are to provide myself and my coworkers with a written description of how I overcome obstacles that others may encounter and to document hopefully interesting ideas for futuristic development, as well as be more intentional about HOW I am working.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tommyatnitle.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tommyatnitle.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tommyatnitle.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tommyatnitle.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tommyatnitle.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tommyatnitle.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tommyatnitle.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tommyatnitle.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tommyatnitle.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tommyatnitle.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tommyatnitle.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tommyatnitle.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tommyatnitle.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tommyatnitle.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tommyatnitle.wordpress.com&amp;blog=9278286&amp;post=3&amp;subd=tommyatnitle&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tommyatnitle.wordpress.com/2009/09/01/what-is-this/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/d2ab10e4463210bc7ecce543b7aca82d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tommyr</media:title>
		</media:content>
	</item>
	</channel>
</rss>
