<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/">
  <author>
    <name>Steve Klabnik</name>
  </author>
  <id>http://blog.steveklabnik.com/</id>
  <title>Literate Programming</title>
  <updated>2015-07-05T00:00:00+00:00</updated>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2015-07-05-ember-data--ds-is-not-defined</id>
    <link href="http://blog.steveklabnik.com/posts/2015-07-05-ember-data--ds-is-not-defined"/>
    <summary>I’m doing a little Ember app, and if there’s one thing I’ve learned from
writing software, it’s to blog about error messages. Two-years-later me has
ended up finding my own posts when searching for he...</summary>
    <title>Ember Data: DS is not defined</title>
    <updated>2015-07-05T00:00:00+00:00</updated>
    <dc:date>2015-07-05T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2014-02-10-announcing-emoji-1-0</id>
    <link href="http://blog.steveklabnik.com/posts/2014-02-10-announcing-emoji-1-0"/>
    <summary>A long time ago, I wanted an emoji gem. So I set out to make one. Turns out,
emoji are damn complex. Emoji
Licensing was one of the
results.  Who'd have guessed the hard part of making a gem was the l...</summary>
    <title>Announcing emoji 1.0</title>
    <updated>2014-02-10T00:00:00+00:00</updated>
    <dc:date>2014-02-10T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-12-31-2013--year-in-review</id>
    <link href="http://blog.steveklabnik.com/posts/2013-12-31-2013--year-in-review"/>
    <summary>Every year I try to do a &quot;year in Review&quot; blog post, and every year I realize I
didn't keep good notes. Sigh.Overall, this was a pretty... meh year, to be honest. :/ Don't get me wrong, a
lot of reall...</summary>
    <title>2013: Year in Review</title>
    <updated>2013-12-31T00:00:00+00:00</updated>
    <dc:date>2013-12-31T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-10-01-new-beginnings</id>
    <link href="http://blog.steveklabnik.com/posts/2013-10-01-new-beginnings"/>
    <summary>TL;DR:WANTED: Proletarian/petite bourgeoisie looking for
capitalist/industrialist/haute bourgeoisie. I've got the labor power, you've
got the money commodity. Let's exchange commodities at full market...</summary>
    <title>New Beginnings</title>
    <updated>2013-10-01T00:00:00+00:00</updated>
    <dc:date>2013-10-01T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-09-16-resque-1-25-0-has-been-released</id>
    <link href="http://blog.steveklabnik.com/posts/2013-09-16-resque-1-25-0-has-been-released"/>
    <summary>I've just released Resque 1.25.0! Resque is the most stable, widely-used job queue for Ruby. It uses Redis as its backing store.This release is thanks to adelcambre, who took the time to get it over t...</summary>
    <title>Resque 1.25.0 has been released</title>
    <updated>2013-09-16T00:00:00+00:00</updated>
    <dc:date>2013-09-16T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-08-03-redis-namespace-1-3-1--security-release</id>
    <link href="http://blog.steveklabnik.com/posts/2013-08-03-redis-namespace-1-3-1--security-release"/>
    <summary>TL;DR: if you use redis-namespace and you use send, Kernel#exec may get called. Please upgrade to 1.0.4, 1.1.1, 1.2.2, or 1.3.1 immediately.Link to the fix: https://github.com/resque/redis-namespace/c...</summary>
    <title>redis-namespace 1.3.1: security release</title>
    <updated>2013-08-03T00:00:00+00:00</updated>
    <dc:date>2013-08-03T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-07-23-resque-1-25-0-pre-has-been-released</id>
    <link href="http://blog.steveklabnik.com/posts/2013-07-23-resque-1-25-0-pre-has-been-released"/>
    <summary>I've just released Resque 1.25.0.pre! Resque is the most stable, widely-used job queue for Ruby. It uses Redis as its backing store.This release is thanks to adelcambre, who took the time to get it ov...</summary>
    <title>Resque 1.25.0.pre has been released</title>
    <updated>2013-07-23T00:00:00+00:00</updated>
    <dc:date>2013-07-23T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-06-25-removing-turbolinks-from-rails-4</id>
    <link href="http://blog.steveklabnik.com/posts/2013-06-25-removing-turbolinks-from-rails-4"/>
    <summary>If you don't want to use Turbolinks with your Rails 4 application, it's easy! Just do this:Remove the gem 'turbolinks' line from your Gemfile.
Remove the //= require turbolinks from your app/assets/ja...</summary>
    <title>Removing Turbolinks from Rails 4</title>
    <updated>2013-06-25T00:00:00+00:00</updated>
    <dc:date>2013-06-25T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-05-30-rust--y-scraps--iterating-with-a-step</id>
    <link href="http://blog.steveklabnik.com/posts/2013-05-30-rust--y-scraps--iterating-with-a-step"/>
    <summary>This blog post works with Rust v 0.6, and may change
in the future :).A common need in various algorithms is to iterate with some sort of step. A
simple way to do this in Rust is with unit::range_step...</summary>
    <title>Rust -y scraps: iterating with a step</title>
    <updated>2013-05-30T00:00:00+00:00</updated>
    <dc:date>2013-05-30T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-05-21-rails-4-0-0-beta1-to-rails-4-0-0-rc1</id>
    <link href="http://blog.steveklabnik.com/posts/2013-05-21-rails-4-0-0-beta1-to-rails-4-0-0-rc1"/>
    <summary>I'm writing Rails 4 in Action along with Ryan
Bigg and Yehuda Katz. In updating the book to Rails 4, I started early: the
sample app (ticketee) was done
with 4.0.0.beta1.Then 4.0.0.rc1 came out. I did...</summary>
    <title>Rails 4.0.0.beta1 to Rails 4.0.0.rc1</title>
    <updated>2013-05-21T00:00:00+00:00</updated>
    <dc:date>2013-05-21T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-05-16-ditching-google--chat-with-xmpp</id>
    <link href="http://blog.steveklabnik.com/posts/2013-05-16-ditching-google--chat-with-xmpp"/>
    <summary>Last week, I decided that it was time to migrate one of my services away from
Google: XMPP for IM. The nice thing about XMPP is that you don't have to
totally drop support for your old identity: since...</summary>
    <title>Ditching Google: Chat with Your Own XMPP Server</title>
    <updated>2013-05-16T00:00:00+00:00</updated>
    <dc:date>2013-05-16T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-04-07-upgrading-from-rust-0-5-to-0-6</id>
    <link href="http://blog.steveklabnik.com/posts/2013-04-07-upgrading-from-rust-0-5-to-0-6"/>
    <summary>Here are some error messages that I got when updating Rust for
Rubyists from Rust 0.5 to the new 0.6, and
how to fix those errors.Error:rust.rs:1:4: 1:16 error: unresolved name
rust.rs:1 use task::spa...</summary>
    <title>Upgrading from Rust 0.5 to 0.6</title>
    <updated>2013-04-07T00:00:00+00:00</updated>
    <dc:date>2013-04-07T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-03-10-travis-build-matrix-for-rails</id>
    <link href="http://blog.steveklabnik.com/posts/2013-03-10-travis-build-matrix-for-rails"/>
    <summary>Do you have a gem that needs to test against multiple versions of Rails? Doing
it all can be complex, and while I have lots to say about this topic, but
here's one of the pieces: Travis build matrix.H...</summary>
    <title>Travis build matrix for Rails</title>
    <updated>2013-03-10T00:00:00+00:00</updated>
    <dc:date>2013-03-10T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-02-24-using-puma-on-heroku</id>
    <link href="http://blog.steveklabnik.com/posts/2013-02-24-using-puma-on-heroku"/>
    <summary>I'm a big fan of Puma these days. Today, I converted my blog
over to use Puma, and I figured I'd share how I did it. This blog uses Sinatra.If you want to look ahead,
here is the commit.GemfileInstall...</summary>
    <title>Using Puma on Heroku</title>
    <updated>2013-02-24T00:00:00+00:00</updated>
    <dc:date>2013-02-24T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-02-13-i-m-writing--rails-4-in-action--</id>
    <link href="http://blog.steveklabnik.com/posts/2013-02-13-i-m-writing--rails-4-in-action--"/>
    <summary>Last night, I took a big step forward in my writing career: I'll be building
upon the work Ryan Bigg was doing to take &quot;Rails 3 in Action&quot; and move it to
Rails 4. I signed the contract a few weeks ago...</summary>
    <title>I'm writing 'Rails 4 in Action.'</title>
    <updated>2013-02-13T00:00:00+00:00</updated>
    <dc:date>2013-02-13T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-02-12-the-next-iteration-of-designing-hypermedia-apis</id>
    <link href="http://blog.steveklabnik.com/posts/2013-02-12-the-next-iteration-of-designing-hypermedia-apis"/>
    <summary>I sent out an email today to everyone who'd previously purchased Designing Hypermedia APIs. Here's
the text:Hey there,

First of all, I want to apologize for sending you an email. I try to
keep these ...</summary>
    <title>The next iteration of Designing Hypermedia APIs</title>
    <updated>2013-02-12T00:00:00+00:00</updated>
    <dc:date>2013-02-12T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-02-11-ruby-on-rails-maintenance-policy</id>
    <link href="http://blog.steveklabnik.com/posts/2013-02-11-ruby-on-rails-maintenance-policy"/>
    <summary>Recently, the Rails team has committed to a specific policy related to release
maintenance. Due to the rapid pace of recent releases, it's good to understand
how your apps relate to this policy.The po...</summary>
    <title>Ruby on Rails maintenance policy</title>
    <updated>2013-02-11T00:00:00+00:00</updated>
    <dc:date>2013-02-11T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-01-23-node</id>
    <link href="http://blog.steveklabnik.com/posts/2013-01-23-node"/>
    <summary>Soooo there's this thing:
http://harthur.wordpress.com/2013/01/24/771/First of all, unequivocally, I said it before, and I'll say it again: I'm
sorry, and feel terrible that I made someone feel terrib...</summary>
    <title>Node, Twitter, and Apologies</title>
    <updated>2013-01-23T00:00:00+00:00</updated>
    <dc:date>2013-01-23T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2013-01-14-draper-1-0-0-released</id>
    <link href="http://blog.steveklabnik.com/posts/2013-01-14-draper-1-0-0-released"/>
    <summary>Today, I released Draper 1.0.0! Draper is a gem that gives you decorators/view
models for Rails.Rubygems: https://rubygems.org/gems/draper
GitHub: https://github.com/drapergem/draper
README: https://g...</summary>
    <title>Draper 1.0.0 released</title>
    <updated>2013-01-14T00:00:00+00:00</updated>
    <dc:date>2013-01-14T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-12-29-2012--year-in-review</id>
    <link href="http://blog.steveklabnik.com/posts/2012-12-29-2012--year-in-review"/>
    <summary>I always enjoy reading patio11's year in review
posts,
and while I didn't take enough notes for this year to do a GOOD one, I figure
that I should at least leave some notes so that when I do one next ...</summary>
    <title>2012: Year in Review</title>
    <updated>2012-12-29T00:00:00+00:00</updated>
    <dc:date>2012-12-29T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-12-19-an-early-christmas-present-for-you</id>
    <link href="http://blog.steveklabnik.com/posts/2012-12-19-an-early-christmas-present-for-you"/>
    <summary>Normally, I'm a bit of a grinch. I'll admit it, I really hate Christmas. It
reminds me of all of the worst parts of America: You know, how the baby Jesus
commands us to literally shop until we kill ea...</summary>
    <title>An early Christmas present for you!</title>
    <updated>2012-12-19T00:00:00+00:00</updated>
    <dc:date>2012-12-19T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-12-17-announcing-requeststore</id>
    <link href="http://blog.steveklabnik.com/posts/2012-12-17-announcing-requeststore"/>
    <summary>Last night I had some insomnia, so I wrote a gem.Here it is: https://github.com/steveklabnik/request_store.TL;DR:If you're using Thread.current in your Rails app to store global-ish data,
don't do it!...</summary>
    <title>Announcing RequestStore</title>
    <updated>2012-12-17T00:00:00+00:00</updated>
    <dc:date>2012-12-17T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-12-13-getting-started-with-chruby</id>
    <link href="http://blog.steveklabnik.com/posts/2012-12-13-getting-started-with-chruby"/>
    <summary>If you're looking for crazy simplicity in your 'switch between multiple Rubies'
life, you may want to check out chruby.
Written by Postmodern, it's basically the simplest possible thing that can
work....</summary>
    <title>Getting started with chruby</title>
    <updated>2012-12-13T00:00:00+00:00</updated>
    <dc:date>2012-12-13T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-12-03-draper-1-0-0-beta2-release</id>
    <link href="http://blog.steveklabnik.com/posts/2012-12-03-draper-1-0-0-beta2-release"/>
    <summary>I've relased the second beta for Draper 1.0.0! Many thanks to all of you who
gave the first beta a shot. We've fixed some issues, and I'd apprecaite you
giving this one a try. This solves all known is...</summary>
    <title>Draper 1.0.0.beta2 release</title>
    <updated>2012-12-03T00:00:00+00:00</updated>
    <dc:date>2012-12-03T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-11-30-draper-1-0-0-beta1-release</id>
    <link href="http://blog.steveklabnik.com/posts/2012-11-30-draper-1-0-0-beta1-release"/>
    <summary>I'm happy to announce the release of Draper 1.0.0.beta1 today. If you use
Draper, I'd appreciate you checking out the beta release in your app, kicking
the tires, and letting me know what's up.You can...</summary>
    <title>Draper 1.0.0.beta1 release</title>
    <updated>2012-11-30T00:00:00+00:00</updated>
    <dc:date>2012-11-30T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-11-22-introducing-the-rails-api-project</id>
    <link href="http://blog.steveklabnik.com/posts/2012-11-22-introducing-the-rails-api-project"/>
    <summary>Ruby on Rails is a great tool to build websites incredibly quickly and easily.
But what about applications that aren't websites? Rails is still a first-class
choice for this use-case, but why settle f...</summary>
    <title>Introducing the Rails API Project</title>
    <updated>2012-11-22T00:00:00+00:00</updated>
    <dc:date>2012-11-22T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-11-08-how-to-squash-commits-in-a-github-pull-request</id>
    <link href="http://blog.steveklabnik.com/posts/2012-11-08-how-to-squash-commits-in-a-github-pull-request"/>
    <summary>So you've contributed some code to an open source project, say, Rails. And
they'd like you to squash all of the commits in your pull request. But you're
not a git wizard; how do you make this happen?N...</summary>
    <title>How to squash commits in a GitHub pull request</title>
    <updated>2012-11-08T00:00:00+00:00</updated>
    <dc:date>2012-11-08T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-10-04-run-rails-with-custom-patches</id>
    <link href="http://blog.steveklabnik.com/posts/2012-10-04-run-rails-with-custom-patches"/>
    <summary>I often see comments like this
in the Rails bugtracker. Generally, someone is running an older version of
Rails, and some bug they face has been fixed on edge. But they may be running
a version that's...</summary>
    <title>Run Rails with custom patches</title>
    <updated>2012-10-04T00:00:00+00:00</updated>
    <dc:date>2012-10-04T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-09-27-seriously--numbers--use-them-</id>
    <link href="http://blog.steveklabnik.com/posts/2012-09-27-seriously--numbers--use-them-"/>
    <summary>&lt;iframe src=&quot;http://player.vimeo.com/video/50340416&quot; width=&quot;500&quot; height=&quot;313&quot; frameborder=&quot;0&quot; webkitAllowFullScreen mozallowfullscreen allowFullScreen&gt;&lt;/iframe&gt; &lt;p&gt;&lt;a href=&quot;http://vimeo.com/50340416&quot;&gt;...</summary>
    <title>Seriously. Numbers. Use them.</title>
    <updated>2012-09-27T00:00:00+00:00</updated>
    <dc:date>2012-09-27T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-09-22-resque--let-s-do-this</id>
    <link href="http://blog.steveklabnik.com/posts/2012-09-22-resque--let-s-do-this"/>
    <summary>If you've ever done background job stuff with Rails, you've probably used
Resque. Resque is &quot;Yet Another GitHub
Project They've Open Sourced and Then Abandoned.&quot; But Resque is super awesome:
it builds...</summary>
    <title>Rescuing Resque: Let's do this</title>
    <updated>2012-09-22T00:00:00+00:00</updated>
    <dc:date>2012-09-22T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-09-09-random-ruby-tricks--class-new</id>
    <link href="http://blog.steveklabnik.com/posts/2012-09-09-random-ruby-tricks--class-new"/>
    <summary>If you didn't know, classes are first-class objects in Ruby:1.9.3p194 :001 &gt; String.class
 =&gt; Class 
1.9.3p194 :002 &gt; Class.class
 =&gt; Class 
How is this useful, though?InheritanceYou may create very s...</summary>
    <title>Random Ruby Tricks: Class.new</title>
    <updated>2012-09-09T00:00:00+00:00</updated>
    <dc:date>2012-09-09T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-09-01-random-ruby-tricks--struct-new</id>
    <link href="http://blog.steveklabnik.com/posts/2012-09-01-random-ruby-tricks--struct-new"/>
    <summary>One of my favorite classes in Ruby is Struct, but I feel like many Rubyists
don't know when to take advantage of it. The standard library has a lot of
junk in it, but Struct and OStruct are super awes...</summary>
    <title>Random Ruby Tricks: Struct.new</title>
    <updated>2012-09-01T00:00:00+00:00</updated>
    <dc:date>2012-09-01T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-08-31-new-blog--words</id>
    <link href="http://blog.steveklabnik.com/posts/2012-08-31-new-blog--words"/>
    <summary>I've started a new blog: Words.You may have noticed that it's a part of the Svbtle blogging network.
I'm super excited about this, but you may be confused. Let me explain.My relationship with writingI...</summary>
    <title>New Blog: Words</title>
    <updated>2012-08-31T00:00:00+00:00</updated>
    <dc:date>2012-08-31T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-07-25-dayz</id>
    <link href="http://blog.steveklabnik.com/posts/2012-07-25-dayz"/>
    <summary>I've recently come across one of the most addicting, interesting experiences
I've ever had online: DayZ. I hesitate to call it a
'video game,' because while it is a mod for a first person shooter game...</summary>
    <title>DayZ: Worse is Better</title>
    <updated>2012-07-25T00:00:00+00:00</updated>
    <dc:date>2012-07-25T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-07-21-sparrow</id>
    <link href="http://blog.steveklabnik.com/posts/2012-07-21-sparrow"/>
    <summary>I purchased Sparrow back when it was $9, and didn't find it particularly
amazing. I did like it, but ended up using the web interface more. I certainly
got my $9 of value out of it, though, even thoug...</summary>
    <title>Sparrow, Part 1</title>
    <updated>2012-07-21T00:00:00+00:00</updated>
    <dc:date>2012-07-21T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-07-14-why-i-don-t-like-factory_girl</id>
    <link href="http://blog.steveklabnik.com/posts/2012-07-14-why-i-don-t-like-factory_girl"/>
    <summary>Once upon a time, I was building my First Serious Rails App. I was drawn to
Rails in the first place because of automated testing and ActiveRecord; I felt
the pain of not using an ORM and spending abo...</summary>
    <title>Why I don't like factory_girl</title>
    <updated>2012-07-14T00:00:00+00:00</updated>
    <dc:date>2012-07-14T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-07-05-how-can-i-contribute-to-ruby-on-rails-</id>
    <link href="http://blog.steveklabnik.com/posts/2012-07-05-how-can-i-contribute-to-ruby-on-rails-"/>
    <summary>After RailsConf this year, I joined the Rails Issue Team. This means that I
help triage issues that people have filed, try to reproduce errors, and point
core team members at ones that are most import...</summary>
    <title>How can I contribute to Ruby on Rails?</title>
    <updated>2012-07-05T00:00:00+00:00</updated>
    <dc:date>2012-07-05T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-06-29-introducing-issue2pr</id>
    <link href="http://blog.steveklabnik.com/posts/2012-06-29-introducing-issue2pr"/>
    <summary>Ever had an issue on GitHub, and then you fixed the bug? Opened a brand new 
pull request, which becomes a new issue, and then you have to remember to link
the two via a comment, or manually go back a...</summary>
    <title>Introducing issue2pr</title>
    <updated>2012-06-29T00:00:00+00:00</updated>
    <dc:date>2012-06-29T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-05-31-show-solidarity-to-all-who-resist</id>
    <link href="http://blog.steveklabnik.com/posts/2012-05-31-show-solidarity-to-all-who-resist"/>
    <summary>I found this on a flyer in my neighborhood.&lt;hr /&gt;
On may 19th, three people associated with the Occupy movement were arrested in Chicago, just before the anti-NATO protest. Two infiltrators had been w...</summary>
    <title>Show solidarity to all who resist</title>
    <updated>2012-05-31T00:00:00+00:00</updated>
    <dc:date>2012-05-31T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-05-30-finale</id>
    <link href="http://blog.steveklabnik.com/posts/2012-05-30-finale"/>
    <summary>This morning, my mother woke up and found that my father had passed away in the
night.Thanks for all the love and support you all have shown me over the last two
months. It's been hard, but you all ha...</summary>
    <title>Finale</title>
    <updated>2012-05-30T00:00:00+00:00</updated>
    <dc:date>2012-05-30T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-05-25-shoes-4-work-is-starting--get-involved</id>
    <link href="http://blog.steveklabnik.com/posts/2012-05-25-shoes-4-work-is-starting--get-involved"/>
    <summary>As you know, I've been doing a lot of work over the last few years to keep
_why's Shoes project going. A few other intrepid
individuals have been doing a lot as well. We're starting to work on Shoes 4...</summary>
    <title>Shoes 4 work is starting: get involved</title>
    <updated>2012-05-25T00:00:00+00:00</updated>
    <dc:date>2012-05-25T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-05-07-mixins--a-refactoring-anti-pattern</id>
    <link href="http://blog.steveklabnik.com/posts/2012-05-07-mixins--a-refactoring-anti-pattern"/>
    <summary>I spend an unusually large amount of time thinking about interactions between
what I call 'past me' and 'future me.' It seems that my life changes
significantly every few years, and I like to ground m...</summary>
    <title>Mixins: A refactoring anti-pattern</title>
    <updated>2012-05-07T00:00:00+00:00</updated>
    <dc:date>2012-05-07T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-04-30-on-the-eve-of--m1gs</id>
    <link href="http://blog.steveklabnik.com/posts/2012-04-30-on-the-eve-of--m1gs"/>
    <summary>Walking down the street, a woman cries for help. She's blind, and the curb is
large, and she's unsure of herself. Knowing it's not safe, she seeks the help
of a stranger to guide her on her way. Three...</summary>
    <title>On the eve of #M1GS</title>
    <updated>2012-04-30T00:00:00+00:00</updated>
    <dc:date>2012-04-30T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-04-22-cards-for-dad--follow-up</id>
    <link href="http://blog.steveklabnik.com/posts/2012-04-22-cards-for-dad--follow-up"/>
    <summary>Hey everyone! It's been a few weeks, and I wanted to update you guys on the
card situation.First of all, thank you so much. Every single one of you who sent cards, thank
you! It was truly amazing to s...</summary>
    <title>Cards for Dad: Follow-up</title>
    <updated>2012-04-22T00:00:00+00:00</updated>
    <dc:date>2012-04-22T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-04-05-building-storeengine</id>
    <link href="http://blog.steveklabnik.com/posts/2012-04-05-building-storeengine"/>
    <summary>So I said I was gonna build antisocialne.ws. But I'm changing gears instead:
I'd rather do this project, which has a better spec and needs a reference
implementation.&lt;iframe src=&quot;http://player.vimeo.c...</summary>
    <title>Building StoreEngine</title>
    <updated>2012-04-05T00:00:00+00:00</updated>
    <dc:date>2012-04-05T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-04-03-about-antisocialne-ws</id>
    <link href="http://blog.steveklabnik.com/posts/2012-04-03-about-antisocialne-ws"/>
    <summary>&lt;iframe src=&quot;http://player.vimeo.com/video/39718634?title=0&amp;amp;byline=0&amp;amp;portrait=0&quot; width=&quot;400&quot; height=&quot;300&quot; frameborder=&quot;0&quot; webkitAllowFullScreen mozallowfullscreen allowFullScreen&gt;&lt;/iframe&gt;&lt;p&gt;&lt;...</summary>
    <title>About Antisocialne.ws</title>
    <updated>2012-04-03T00:00:00+00:00</updated>
    <dc:date>2012-04-03T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-03-31-anti-capitalism-101</id>
    <link href="http://blog.steveklabnik.com/posts/2012-03-31-anti-capitalism-101"/>
    <summary>People are often surprised to find out that I identify as an anti-capitalist.
At least in America, many people see capitalism as inevitable, or even as the
way things always were. Unfortunately, there...</summary>
    <title>Anti-capitalism 101</title>
    <updated>2012-03-31T00:00:00+00:00</updated>
    <dc:date>2012-03-31T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-03-26-birthday-cards-for-dad</id>
    <link href="http://blog.steveklabnik.com/posts/2012-03-26-birthday-cards-for-dad"/>
    <summary>Hey everyone. If you follow me on Twitter, you'll know that I've been a bit
absent lately. Basically, my dad has
angiosarcoma. It's a really rare
cancer of the blood vessels. A city the size of Pittsb...</summary>
    <title>Birthday Cards for Dad</title>
    <updated>2012-03-26T00:00:00+00:00</updated>
    <dc:date>2012-03-26T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-03-08-transmuting-philosophy-into-machinery</id>
    <link href="http://blog.steveklabnik.com/posts/2012-03-08-transmuting-philosophy-into-machinery"/>
    <summary>I'm so very close to releasing the beta of Get Some REST. 
However, I'm about to get on a plane to Poland, and that's a bad time to launch
things. ;) wroc_love.rb, here I come!Anyway, I figured I'd gi...</summary>
    <title>Transmuting Philosophy into Machinery</title>
    <updated>2012-03-08T00:00:00+00:00</updated>
    <dc:date>2012-03-08T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-02-27-hypermedia-api-reading-list</id>
    <link href="http://blog.steveklabnik.com/posts/2012-02-27-hypermedia-api-reading-list"/>
    <summary>Originally, this post was titled &quot;A RESTful Reading List,&quot; but please note that REST is over. Hypermedia API is the new nomenclature.I've been doing an intense amount of research on Hypermedia APIs ov...</summary>
    <title>A Hypermedia API Reading List</title>
    <updated>2012-02-27T00:00:00+00:00</updated>
    <dc:date>2012-02-27T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-02-23-rest-is-over</id>
    <link href="http://blog.steveklabnik.com/posts/2012-02-23-rest-is-over"/>
    <summary>&lt;div style=&quot;text-align: center&quot;&gt;
&lt;h1 style=&quot;
padding:25px 0;
margin-left: 40px;
margin-right: 40px;
margin-top: 0px;
margin-bottom: 10px;
font-size: 800%;
letter-spacing: -0.04em;
background-color: #4...</summary>
    <title>REST is OVER!</title>
    <updated>2012-02-23T00:00:00+00:00</updated>
    <dc:date>2012-02-23T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-02-22-two-pomodoros</id>
    <link href="http://blog.steveklabnik.com/posts/2012-02-22-two-pomodoros"/>
    <summary>I'd been thinking about doing this for a while, and yesterday, actually got
around to it. The basic idea is this: record me during normal development, and
then post it to the internet.Here's the video...</summary>
    <title>Two Pomodoros</title>
    <updated>2012-02-22T00:00:00+00:00</updated>
    <dc:date>2012-02-22T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-02-13-an-api-ontology</id>
    <link href="http://blog.steveklabnik.com/posts/2012-02-13-an-api-ontology"/>
    <summary>NOTE: The alpha of my book on APIs is out! Check it out at http://designinghypermediaapis.com.As I've done research on APIs for Designing Hypermedia APIs, I've
become increasingly interested in differ...</summary>
    <title>An API Ontology</title>
    <updated>2012-02-13T00:00:00+00:00</updated>
    <dc:date>2012-02-13T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-01-23-introducing-metadown</id>
    <link href="http://blog.steveklabnik.com/posts/2012-01-23-introducing-metadown"/>
    <summary>Because I don't have enough gems made already, I made another one last night:
metadown.What's Metadown do?This blog originally used Jekyll. When I moved it to my own personal blog
implementation, I no...</summary>
    <title>Introducing Metadown</title>
    <updated>2012-01-23T00:00:00+00:00</updated>
    <dc:date>2012-01-23T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-01-17-moving-from-sinatra-to-rails</id>
    <link href="http://blog.steveklabnik.com/posts/2012-01-17-moving-from-sinatra-to-rails"/>
    <summary>I love both Sinatra and Rails, for different reasons. I've heard a few
different heuristics for which framework would be better for your application,
but I'm not sure the answer is all that simple, re...</summary>
    <title>Moving from Sinatra to Rails</title>
    <updated>2012-01-17T00:00:00+00:00</updated>
    <dc:date>2012-01-17T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2012-01-06-implementing-hateoas-with-presenters</id>
    <link href="http://blog.steveklabnik.com/posts/2012-01-06-implementing-hateoas-with-presenters"/>
    <summary>I'm a big fan of using the presenter pattern to help separate logic from
presentation. There's a great gem named
Draper that can help facilitate this
pattern in your Rails apps. When doing research fo...</summary>
    <title>Implementing HATEOAS with Presenters</title>
    <updated>2012-01-06T00:00:00+00:00</updated>
    <dc:date>2012-01-06T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-12-30-active-record-considered-harmful</id>
    <link href="http://blog.steveklabnik.com/posts/2011-12-30-active-record-considered-harmful"/>
    <summary>It is practically impossible to teach OO design to students that have
had a prior exposure to Rails: as potential programmers they are mentally
mutilated beyond hope of regeneration.Edsger W. Dijkstra...</summary>
    <title>ActiveRecord (and Rails) Considered Harmful</title>
    <updated>2011-12-30T00:00:00+00:00</updated>
    <dc:date>2011-12-30T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-12-21-redcarpet-is-awesome</id>
    <link href="http://blog.steveklabnik.com/posts/2011-12-21-redcarpet-is-awesome"/>
    <summary>It's true.If you haven't used it yet, Redcarpet is
the Markdown parser that GitHub uses
to work all that magic on their site. So of course, it's awesome.You can use it and abuse itWhat makes it really...</summary>
    <title>Redcarpet Is _awesome_!</title>
    <updated>2011-12-21T00:00:00+00:00</updated>
    <dc:date>2011-12-21T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-12-20-write-better-cukes-with-the-rel-attribute</id>
    <link href="http://blog.steveklabnik.com/posts/2011-12-20-write-better-cukes-with-the-rel-attribute"/>
    <summary>The other day, I was working on some Cucumber features for a project, and I
discovered a neat technique that helps you to write better Cucumber steps.Nobody wants to be cuking it wrong,
but what does ...</summary>
    <title>Write Better Cukes With the Rel Attribute</title>
    <updated>2011-12-20T00:00:00+00:00</updated>
    <dc:date>2011-12-20T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-12-15-marx-anarchism-and-web-standards</id>
    <link href="http://blog.steveklabnik.com/posts/2011-12-15-marx-anarchism-and-web-standards"/>
    <summary>&lt;script src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

An aside for software devsYou might not care about anarchism, and I can almost guarantee that you don't
care about Marx, but ...</summary>
    <title>Marx, Anarchism, and Web Standards</title>
    <updated>2011-12-15T00:00:00+00:00</updated>
    <dc:date>2011-12-15T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-12-12-fast-rails-tests-with-cancan</id>
    <link href="http://blog.steveklabnik.com/posts/2011-12-12-fast-rails-tests-with-cancan"/>
    <summary>If you haven't used it, CanCan is a great
library for Rails that handles authorization for you. Its calling card is
simplicity; just do this:class Ability
  include CanCan::Ability

  def initialize(u...</summary>
    <title>Fast Rails Tests With CanCan.</title>
    <updated>2011-12-12T00:00:00+00:00</updated>
    <dc:date>2011-12-12T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-12-11-devise-actioncontroller-routingerror-no-route-matches-get-slash-users-slash-sign-out</id>
    <link href="http://blog.steveklabnik.com/posts/2011-12-11-devise-actioncontroller-routingerror-no-route-matches-get-slash-users-slash-sign-out"/>
    <summary>Just a quick note about Devise, and its RESTful implications. I ran across this
error today, and thought I'd share.I was trying to log out, so I hit the normal route for such things with my browser. H...</summary>
    <title>Devise: ActionController::RoutingError (No Route Matches [GET] /users/sign_out)</title>
    <updated>2011-12-11T00:00:00+00:00</updated>
    <dc:date>2011-12-11T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-11-28-book-review-new-programmers-survival-manual</id>
    <link href="http://blog.steveklabnik.com/posts/2011-11-28-book-review-new-programmers-survival-manual"/>
    <summary>Disclaimer: I do have a small credit in this book. A long time ago, the
author mentioned that he was looking for people to help out, so I stepped up.
It was only participating in discussions like &quot;Wha...</summary>
    <title>Book Review: New Programmer's Survival Manual</title>
    <updated>2011-11-28T00:00:00+00:00</updated>
    <dc:date>2011-11-28T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-11-17-burnout</id>
    <link href="http://blog.steveklabnik.com/posts/2011-11-17-burnout"/>
    <summary>I have a confession to make: Other than one little stint at RubyC, I
haven't really written code in almost a month. And I haven't really written a
'real' blog post in almost six weeks.It happens. I wa...</summary>
    <title>Burnout</title>
    <updated>2011-11-17T00:00:00+00:00</updated>
    <dc:date>2011-11-17T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-10-25-your-startup-is-not-a-platform</id>
    <link href="http://blog.steveklabnik.com/posts/2011-10-25-your-startup-is-not-a-platform"/>
    <summary>No, seriously. This is a public service announcment to all MBAs who want to do
startups: 'platform' does not mean 'web site.'I know that 'platform' is a hot thing right now. But seriously, the term ha...</summary>
    <title>Your Startup is NOT a Platform</title>
    <updated>2011-10-25T00:00:00+00:00</updated>
    <dc:date>2011-10-25T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-10-19-for-science-im-killing-my-cell-phone</id>
    <link href="http://blog.steveklabnik.com/posts/2011-10-19-for-science-im-killing-my-cell-phone"/>
    <summary>Yep. Doin' it. This morning I swung by the Sprint store and picked up a 4G
hotspot. Gonna transfer my number to Google Voice this evening.lolwhut?Yep. I'm terribly addicted to my phone right now. This...</summary>
    <title>For Science: I'm Killing My Cell Phone</title>
    <updated>2011-10-19T00:00:00+00:00</updated>
    <dc:date>2011-10-19T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-10-04-rubinius-is-awesome</id>
    <link href="http://blog.steveklabnik.com/posts/2011-10-04-rubinius-is-awesome"/>
    <summary>You walk into work tomorrow morning, and your boss says this:Boss: Hey, we're gonna need to go ahead and have you implement
require_relative in rubinius. We have some new servers coming in, and we'll
...</summary>
    <title>Rubinius Is Awesome</title>
    <updated>2011-10-04T00:00:00+00:00</updated>
    <dc:date>2011-10-04T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-10-01-github-is-anarchy-for-programmers</id>
    <link href="http://blog.steveklabnik.com/posts/2011-10-01-github-is-anarchy-for-programmers"/>
    <summary>I finally got to see Zach Holman give his talk, How GitHub Uses GitHub to Build GitHub.
It was awesome. Zach is a great speaker, and the slides don't do it justice. I
highly recommend catching it on v...</summary>
    <title>GitHub Is Anarchy for Programmers</title>
    <updated>2011-10-01T00:00:00+00:00</updated>
    <dc:date>2011-10-01T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-09-28-real-modern-ruby-development</id>
    <link href="http://blog.steveklabnik.com/posts/2011-09-28-real-modern-ruby-development"/>
    <summary>I came across a blog post the other day titled Modern Ruby Development.
While it's a perfectly fine blog post (other than the digs at rvm...) it really
should have been titled something more along the...</summary>
    <title>(Real) Modern Ruby Development</title>
    <updated>2011-09-28T00:00:00+00:00</updated>
    <dc:date>2011-09-28T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-09-26-im-deleting-my-facebook-tonight</id>
    <link href="http://blog.steveklabnik.com/posts/2011-09-26-im-deleting-my-facebook-tonight"/>
    <summary>Well, it's the end of the web as we know it.
I'd already been thinking about this all weekend, and last night, I decided. I
just can't deal with Facebook's crazy privacy stuff anymore. I mean, I alrea...</summary>
    <title>I'm Deleting My Facebook Tonight.</title>
    <updated>2011-09-26T00:00:00+00:00</updated>
    <dc:date>2011-09-26T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-09-23-more-rstat-dot-us-refactoring</id>
    <link href="http://blog.steveklabnik.com/posts/2011-09-23-more-rstat-dot-us-refactoring"/>
    <summary>Hey everyone! I just wanted to share One More Thing with you about this rstat.us
refactoring.The main thrust of the last article I posted was to show you a technique for
extracting a class, getting it...</summary>
    <title>More rstat.us Refactoring</title>
    <updated>2011-09-23T00:00:00+00:00</updated>
    <dc:date>2011-09-23T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-09-22-extracting-domain-models-a-practical-example</id>
    <link href="http://blog.steveklabnik.com/posts/2011-09-22-extracting-domain-models-a-practical-example"/>
    <summary>Hey everyone! We've been doing a lot of refactoring on rstat.us lately, and I
wanted to share with you a refactoring that I did. It's a real-world example
of doing the domain models concept that I've ...</summary>
    <title>Extracting Domain Models: A Practical Example</title>
    <updated>2011-09-22T00:00:00+00:00</updated>
    <dc:date>2011-09-22T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-09-09-better-ruby-presenters</id>
    <link href="http://blog.steveklabnik.com/posts/2011-09-09-better-ruby-presenters"/>
    <summary>My last blog post caused a bit
of a stir in some circles. I got a bunch of emails. Apparently, I need to expand
on a few things. So here we go. Let's rap about the Presenter pattern, shall we?No serio...</summary>
    <title>Better Ruby Presenters</title>
    <updated>2011-09-09T00:00:00+00:00</updated>
    <dc:date>2011-09-09T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-09-06-the-secret-to-rails-oo-design</id>
    <link href="http://blog.steveklabnik.com/posts/2011-09-06-the-secret-to-rails-oo-design"/>
    <summary>UPDATE: I also have a follow-up here.I often tell people that I learned Ruby via Rails. This is pretty much the worst
way to do it, but I'd learned so many programming languages by then that it
didn't...</summary>
    <title>The Secret to Rails OO Design</title>
    <updated>2011-09-06T00:00:00+00:00</updated>
    <dc:date>2011-09-06T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-09-04-the-self-improvement-pomodoro</id>
    <link href="http://blog.steveklabnik.com/posts/2011-09-04-the-self-improvement-pomodoro"/>
    <summary>By now, the pomodoro technique is pretty
well-known amongst programmers. I forget where I heard of it first, but
if you haven't, here it is: Break your day up into 30 minute chunks.
Work for 25 minute...</summary>
    <title>The Self-Improvement Pomodoro</title>
    <updated>2011-09-04T00:00:00+00:00</updated>
    <dc:date>2011-09-04T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-08-22-im-making-it-dead-simple-to-contribute-to-ruby-s-documentation</id>
    <link href="http://blog.steveklabnik.com/posts/2011-08-22-im-making-it-dead-simple-to-contribute-to-ruby-s-documentation"/>
    <summary>Okay! So, if you'd read my previous article on
this, you'd know how
easy it is to contribute to Ruby's Documentaiton.But Steve, I'm still kinda scared.Okay, so here we go: I'm making it even easier on...</summary>
    <title>I'm Making It Dead Simple To Contribute To Ruby's Documentation</title>
    <updated>2011-08-22T00:00:00+00:00</updated>
    <dc:date>2011-08-22T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-08-19-matz-is-nice-so-we-are-nice</id>
    <link href="http://blog.steveklabnik.com/posts/2011-08-19-matz-is-nice-so-we-are-nice"/>
    <summary>Rubyists have a saying, or at least, we used to. &quot;Matz is nice so we are
nice.&quot; This has sort of been lost over the years... some people who have
been around Ruby for a long time still say this, but i...</summary>
    <title>Matz is Nice So We Are Nice</title>
    <updated>2011-08-19T00:00:00+00:00</updated>
    <dc:date>2011-08-19T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-08-12-we-forget-that-open-source-is-made-of-people</id>
    <link href="http://blog.steveklabnik.com/posts/2011-08-12-we-forget-that-open-source-is-made-of-people"/>
    <summary>Programmers like to think that software is the purest form of
meritocracy. We like to consider ourselves scientists; what we do is
entirely impersonal. I'm at Lone Star Ruby right now, and the first t...</summary>
    <title>We Forget That Open Source is Made of People</title>
    <updated>2011-08-12T00:00:00+00:00</updated>
    <dc:date>2011-08-12T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-08-07-some-people-understand-rest-and-http</id>
    <link href="http://blog.steveklabnik.com/posts/2011-08-07-some-people-understand-rest-and-http"/>
    <summary>This is a follow-up post to my post here. You probably want to
read that first.UPDATE: Please note that 'REST is over'.
'Hypermedia API' is the proper term now.A few words on standards versus pragmati...</summary>
    <title>Some People Understand REST and HTTP</title>
    <updated>2011-08-07T00:00:00+00:00</updated>
    <dc:date>2011-08-07T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-07-24-twitter-is-to-important-to-be-owned-by-twitter</id>
    <link href="http://blog.steveklabnik.com/posts/2011-07-24-twitter-is-to-important-to-be-owned-by-twitter"/>
    <summary>When I spoke on a panel at RTLM NY '11, I got a little rise out of
the crowd when I said &quot;Twitter is too important to be owned by Twitter.&quot;
This is still absolutely true, and yesterday was a great exa...</summary>
    <title>Twitter is too important to be owned by Twitter</title>
    <updated>2011-07-24T00:00:00+00:00</updated>
    <dc:date>2011-07-24T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-07-03-nobody-understands-rest-or-http</id>
    <link href="http://blog.steveklabnik.com/posts/2011-07-03-nobody-understands-rest-or-http"/>
    <summary>HI HN, PLEASE READ THIS!!!Since I've posted this, I've refined a few of my positions on things. Everyone learns and grows, and while I still stand by most of what I said, I specifically don't agree th...</summary>
    <title>Nobody Understands REST or HTTP</title>
    <updated>2011-07-03T00:00:00+00:00</updated>
    <dc:date>2011-07-03T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-05-21-single-text-many-masters</id>
    <link href="http://blog.steveklabnik.com/posts/2011-05-21-single-text-many-masters"/>
    <summary>Hey everyone. Here's a draft of an essay I've been working on. I'd love
to hear your feedback.The word 'engineering' has a deep connection to the word 'trade-offs' in
my mind. Most engineering decisio...</summary>
    <title>Single text, many masters</title>
    <updated>2011-05-21T00:00:00+00:00</updated>
    <dc:date>2011-05-21T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-05-12-the-next-iteration-of-my-blog</id>
    <link href="http://blog.steveklabnik.com/posts/2011-05-12-the-next-iteration-of-my-blog"/>
    <summary>Well well well, some things never change. Long ago, I hosted my own
blog, and here we are again. I've moved everything over to Jekyll, if
that means anything to you. You can now look at my blog on
Git...</summary>
    <title>The next iteration of my blog</title>
    <updated>2011-05-12T00:00:00+00:00</updated>
    <dc:date>2011-05-12T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-05-10-contributing-to-ruby-s-documentation</id>
    <link href="http://blog.steveklabnik.com/posts/2011-05-10-contributing-to-ruby-s-documentation"/>
    <summary>Update!I'm now making it even easier than this: Read my new post about how
I'll do this for you. That said, if you want to do it yourself, the following will tell you how.Original ArticleRuby 1.9.3 is...</summary>
    <title>Contributing to Ruby's Documentation</title>
    <updated>2011-05-10T00:00:00+00:00</updated>
    <dc:date>2011-05-10T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-03-30-the-first-week-of-rstat-us-users-press-scaling-oh-my</id>
    <link href="http://blog.steveklabnik.com/posts/2011-03-30-the-first-week-of-rstat-us-users-press-scaling-oh-my"/>
    <summary>Hey everyone. A lot of people have been asking me about rstat.us lately,
so I figured I'd tell a little bit of the story as it's gone down so far.StatsFirst, here's some numbers:Users: 4553
Uniques: 2...</summary>
    <title>The first week of rstat.us: Users, Press, Scaling, oh my!</title>
    <updated>2011-03-30T00:00:00+00:00</updated>
    <dc:date>2011-03-30T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-03-23-announcing-rstat-us</id>
    <link href="http://blog.steveklabnik.com/posts/2011-03-23-announcing-rstat-us"/>
    <summary>Whew.If you've been following me on Twitter at all lately, you'll know that
I've been working hard on a new project lately. Tonight, even though it's
late, I'm finally getting it out there. Please wel...</summary>
    <title>Announcing rstat.us</title>
    <updated>2011-03-23T00:00:00+00:00</updated>
    <dc:date>2011-03-23T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-03-18-did-you-hear-i-m-ruby-mendicant-university-s-first-visiting-teacher</id>
    <link href="http://blog.steveklabnik.com/posts/2011-03-18-did-you-hear-i-m-ruby-mendicant-university-s-first-visiting-teacher"/>
    <summary>I've heard Ruby Mendicant University (also known as RMU, not to confuse
you Robert Morris alums!) described as &quot;the best kept secret of the Ruby 
community.&quot; High praise, indeed. If you haven't heard ...</summary>
    <title>Did you hear? I'm Ruby Mendicant University's first Visiting Teacher</title>
    <updated>2011-03-18T00:00:00+00:00</updated>
    <dc:date>2011-03-18T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-03-03-i-m-quitting-hacker-news</id>
    <link href="http://blog.steveklabnik.com/posts/2011-03-03-i-m-quitting-hacker-news"/>
    <summary>I've been thinking about this post for a while.I freaking love Hacker News. It's my favorite place on the Internet. It's
incredibly valuable. I have learned so much from my time there.  With that
said...</summary>
    <title>I'm quitting Hacker News</title>
    <updated>2011-03-03T00:00:00+00:00</updated>
    <dc:date>2011-03-03T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-01-22-a-few-notes-on-foucault</id>
    <link href="http://blog.steveklabnik.com/posts/2011-01-22-a-few-notes-on-foucault"/>
    <summary>I've almost always been in a habit of reading. When I was younger, I spent a
lot of time in the library. I'd just grab an entire series of novels, and read
them all, right in a row. Sometimes I'd end ...</summary>
    <title>A few Notes on Foucault</title>
    <updated>2011-01-22T00:00:00+00:00</updated>
    <dc:date>2011-01-22T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2011-01-02-goals-for-2011</id>
    <link href="http://blog.steveklabnik.com/posts/2011-01-02-goals-for-2011"/>
    <summary>This year I'm happy to report that I have much more upbeat plans than last
year's kind of sad post. With that said, here's my 2011 goals:I want to work for other people 2 days per week on average for ...</summary>
    <title>Goals for 2011</title>
    <updated>2011-01-02T00:00:00+00:00</updated>
    <dc:date>2011-01-02T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-12-25-hackety-hack-v1-0</id>
    <link href="http://blog.steveklabnik.com/posts/2010-12-25-hackety-hack-v1-0"/>
    <summary>It's been a long journey. I have a lot to say about this, but it'll have to
wait until I'm not in the middle of nowhere spending some time with Maria's
family. I just wanted to tell you all Merry Chri...</summary>
    <title>Hackety Hack v1.0</title>
    <updated>2010-12-25T00:00:00+00:00</updated>
    <dc:date>2010-12-25T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-11-17-the-hardest-decision-i-ve-ever-made</id>
    <link href="http://blog.steveklabnik.com/posts/2010-11-17-the-hardest-decision-i-ve-ever-made"/>
    <summary>I'll cut to the chase: I've stepped down as CTO of CloudFab. I don't
want to discuss details, but life is too short to not be doing what
you want with it. And, after a period of careful thought and
co...</summary>
    <title>The hardest decision I've ever made.</title>
    <updated>2010-11-17T00:00:00+00:00</updated>
    <dc:date>2010-11-17T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-09-24-trolling-is-a-art</id>
    <link href="http://blog.steveklabnik.com/posts/2010-09-24-trolling-is-a-art"/>
    <summary>I find it incredibly hard not to be judgmental.I'm not sure what part of my personality makes this happen, but even
when I try to curb tearing down other people, I end up doing it
anyway. I'm not sure...</summary>
    <title>Trolling is a art</title>
    <updated>2010-09-24T00:00:00+00:00</updated>
    <dc:date>2010-09-24T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-09-21-80-of-success-is-showing-up</id>
    <link href="http://blog.steveklabnik.com/posts/2010-09-21-80-of-success-is-showing-up"/>
    <summary>It's funny how true this quote is.There are three people that I really admire: _why, Zed Shaw, and Yehuda Katz.
And to simplify my tenses a bit, I'll speak of _why in the present tense. What
do these ...</summary>
    <title>80% of success is showing up</title>
    <updated>2010-09-21T00:00:00+00:00</updated>
    <dc:date>2010-09-21T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-09-17-trouble-with-diaspora</id>
    <link href="http://blog.steveklabnik.com/posts/2010-09-17-trouble-with-diaspora"/>
    <summary>So, Wednesday, Diaspora was released.If you're not familiar, a few months ago everyone was up in arms about the
latest Facebook privacy change. So four college kids started a Kickstarter
project with ...</summary>
    <title>Trouble with Diaspora</title>
    <updated>2010-09-17T00:00:00+00:00</updated>
    <dc:date>2010-09-17T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-08-19-a-word-about-why-whyday-and-hackety-hack</id>
    <link href="http://blog.steveklabnik.com/posts/2010-08-19-a-word-about-why-whyday-and-hackety-hack"/>
    <summary>Today is Whyday. A programmer's holiday. Today is the day that we
don't forget that programming isn't all Agile and driven by behavior
and Serious Business. Inside each cubicle, the hacker spirit is t...</summary>
    <title>A word about why, whyday, and Hackety Hack</title>
    <updated>2010-08-19T00:00:00+00:00</updated>
    <dc:date>2010-08-19T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-07-24-a-blip-in-time</id>
    <link href="http://blog.steveklabnik.com/posts/2010-07-24-a-blip-in-time"/>
    <summary>Sometimes, insight comes from very unlikely places.I'm keenly interested in the music industry, and how it will evolve, or
possibly die. I care deeply about music; it's had a profound effect on my lif...</summary>
    <title>A blip in time</title>
    <updated>2010-07-24T00:00:00+00:00</updated>
    <dc:date>2010-07-24T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-07-17-what-to-know-before-debating-type-systems</id>
    <link href="http://blog.steveklabnik.com/posts/2010-07-17-what-to-know-before-debating-type-systems"/>
    <summary>Recently, it was brought up on Proggit that Chris Smith's &quot;What to Know Before
Debating Type Systems&quot; was no longer online. This is a really great article,
and in an effort to make sure it survives, I...</summary>
    <title>What To Know Before Debating Type Systems</title>
    <updated>2010-07-17T00:00:00+00:00</updated>
    <dc:date>2010-07-17T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-06-30-case-study-in-being-excellent-divvy</id>
    <link href="http://blog.steveklabnik.com/posts/2010-06-30-case-study-in-being-excellent-divvy"/>
    <summary>The other day I wrote a post about being excellent to each other.
Today, I've got a great example of that for you: Divvy.What would you do if you received an email like this?![]3Here's what happened:!...</summary>
    <title>Case Study in being excellent: Divvy</title>
    <updated>2010-06-30T00:00:00+00:00</updated>
    <dc:date>2010-06-30T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-06-08-productivity-waves</id>
    <link href="http://blog.steveklabnik.com/posts/2010-06-08-productivity-waves"/>
    <summary>Right now, I'm having a bit of a 'darkness before the dawn' kind of moment. I
feel like I might soon start to become productive again.It's sort of strange, how these things travel in waves. Just a mon...</summary>
    <title>Productivity Waves</title>
    <updated>2010-06-08T00:00:00+00:00</updated>
    <dc:date>2010-06-08T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-05-01-you-are-terrified-of-your-own-children-since-they-are-natives-in-a-world-where-you-will-always-be-immigrants</id>
    <link href="http://blog.steveklabnik.com/posts/2010-05-01-you-are-terrified-of-your-own-children-since-they-are-natives-in-a-world-where-you-will-always-be-immigrants"/>
    <summary>I just saw this today. It kind of goes along with my &quot;Move to the Internet&quot;
post from a few days ago.Enjoy.Date: Fri, 9 Feb 1996 17:16:35 +0100To: barlow@eff.orgFrom: John Perry Barlow &lt;barlow@eff.org...</summary>
    <title>You are terrified of your own children, since they are natives in a world where you will always be immigrants.</title>
    <updated>2010-05-01T00:00:00+00:00</updated>
    <dc:date>2010-05-01T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-04-27-a-break-with-the-past</id>
    <link href="http://blog.steveklabnik.com/posts/2010-04-27-a-break-with-the-past"/>
    <summary>Pretty soon, Twitter is going to turn off Basic Authentication and switch
entirely to OAuth. People are upset. It's natural. If apps aren't updated,
they'll stop working, entirely. This could be bad.B...</summary>
    <title>A Break with the Past</title>
    <updated>2010-04-27T00:00:00+00:00</updated>
    <dc:date>2010-04-27T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-04-24-living-in-the-cloud</id>
    <link href="http://blog.steveklabnik.com/posts/2010-04-24-living-in-the-cloud"/>
    <summary>I've been joking for a while that I'd like to &quot;move to the Internet.&quot;
Generally I cite my familiarity and love with online culture as opposed to
American culture. I don't really care what's going on i...</summary>
    <title>Living in the Cloud</title>
    <updated>2010-04-24T00:00:00+00:00</updated>
    <dc:date>2010-04-24T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-03-10-book-review-rework</id>
    <link href="http://blog.steveklabnik.com/posts/2010-03-10-book-review-rework"/>
    <summary>I've been waiting for this book for a while. &quot;Rework&quot; is the new book by Jason
Fried and David Heinemeier Hansson from 37signals. It hit stores on Tuesday.
Here's a (non-affiliate) link to Rework on A...</summary>
    <title>Book Review: Rework</title>
    <updated>2010-03-10T00:00:00+00:00</updated>
    <dc:date>2010-03-10T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-03-08-create-a-more-compelling-experience-for-your-users-through-game-mechanics</id>
    <link href="http://blog.steveklabnik.com/posts/2010-03-08-create-a-more-compelling-experience-for-your-users-through-game-mechanics"/>
    <summary>Ever wonder why some websites are so addictive? Certain sites always keep you
going back, time after time after time. Well, I can't speak for all of them,
but there's a subtle reason that some sites d...</summary>
    <title>Create a more compelling experience for your users through game mechanics</title>
    <updated>2010-03-08T00:00:00+00:00</updated>
    <dc:date>2010-03-08T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-03-05-writing-a-su-feature-with-authlogic</id>
    <link href="http://blog.steveklabnik.com/posts/2010-03-05-writing-a-su-feature-with-authlogic"/>
    <summary>Sometimes, when responding to a support request, it's nice to see what your
users see. At the same time, you don't want to ask your users for their
passwords, out of respect for their privacy. So what...</summary>
    <title>Writing a &quot;su&quot; feature with Authlogic</title>
    <updated>2010-03-05T00:00:00+00:00</updated>
    <dc:date>2010-03-05T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-03-03-why-bother-creating</id>
    <link href="http://blog.steveklabnik.com/posts/2010-03-03-why-bother-creating"/>
    <summary>Kanye West posted something interesting about the nature of creativity today.
I'm going to make a copy of it here, because I find the presentation also
interesting. Here's his post, for reference.![]2...</summary>
    <title>Why bother creating?</title>
    <updated>2010-03-03T00:00:00+00:00</updated>
    <dc:date>2010-03-03T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2010-03-01-reddit-drama-an-interesting-look-at-community-values</id>
    <link href="http://blog.steveklabnik.com/posts/2010-03-01-reddit-drama-an-interesting-look-at-community-values"/>
    <summary>I bet social psychologists are having a field day with the Internet. I know
nothing about the field, so I don't know if there are thousands of papers
about it already written or not, but there should ...</summary>
    <title>Reddit drama: an interesting look at community values</title>
    <updated>2010-03-01T00:00:00+00:00</updated>
    <dc:date>2010-03-01T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2009-12-31-the-hackety-mainfesto</id>
    <link href="http://blog.steveklabnik.com/posts/2009-12-31-the-hackety-mainfesto"/>
    <summary>For those of you that don't know, I've taken over a project by someone named
_why. He dropped off of the face of the Internet back in March, and the
community has picked up his works. Because I'll be ...</summary>
    <title>The Hackety Mainfesto</title>
    <updated>2009-12-31T00:00:00+00:00</updated>
    <dc:date>2009-12-31T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2009-12-28-the-little-coder-s-predicament</id>
    <link href="http://blog.steveklabnik.com/posts/2009-12-28-the-little-coder-s-predicament"/>
    <summary>For those of you that don't know, I've taken over a project by someone named
_why. He dropped off of the face of the Internet back in March, and the
community has picked up his works. Because I'll be ...</summary>
    <title>The Little Coder's Predicament</title>
    <updated>2009-12-28T00:00:00+00:00</updated>
    <dc:date>2009-12-28T00:00:00+00:00</dc:date>
  </entry>
  <entry>
    <id>http://blog.steveklabnik.com/posts/2009-12-02-about-crows</id>
    <link href="http://blog.steveklabnik.com/posts/2009-12-02-about-crows"/>
    <summary>A short time ago, the G20 came right here to Pittsburgh. With an event of such
worldwide importance happening in our backyards, several people decided to
document it via social media. The Mattress Fac...</summary>
    <title>About Crows</title>
    <updated>2009-12-02T00:00:00+00:00</updated>
    <dc:date>2009-12-02T00:00:00+00:00</dc:date>
  </entry>
  <dc:date>2015-07-05T00:00:00+00:00</dc:date>
</feed>