Hi there! 👋 I'm Steve. This is my website. It's a work in progress, based on this starter.


The CXX Debate

Let's talk about safe and

Today is my first day at Oxide Computer Company


The next iteration of my blogs

I've had a few different

How often does Rust change?

I’ve been thinking a lo

A sad day for Rust

`actix-web` is dead. Thi

Porting steveklabnik.com to Workers Sites and Zola

One fun thing about havin

I'm joining Cloudflare


What comes after open source

In [a previous post](http

Rust has finally outgrown me

Today is a very interesti

Learning Ada

I decided to try and lear

The culture war at the heart of open source

There’s a war going on.

What's next for SemVer

On December 18, 2009[1](a

thank u, next

I started working at 15,

Thoughts on Rust in 2019

Each year, [we ask the co

Six years with Rust

Today is six years since

Why is Clojure so stable?

There’s been some Progr

Who authors the most popular crates on crates.io?

I had a question this mor

Should you learn C to "learn how the computer works"?

I’ve often seen people

You can't "turn off the borrow checker" in Rust

Every once in a while, so

Is WebAssembly the return of Java Applets & Flash?

In my [last post on WebAs

WebAssembly is more than just the web

While WebAssembly was giv

"The Expressive C++17 Coding Challenge (in Rust)" revisited

In October of last year,


As someone who has [signi

Looking back at Rust in 2018

> A careful reader will n

Five years with Rust

Today is five years since

User-Agent: moz://a

Every six months, Mozilla

"The Expressive C++17 Coding Challenge" in Rust

A few weeks ago, two C++

Want to join the Rust docs team?

One of Rust’s major goa

An overview of macros in Rust

Rust has had a lot of stu

Announcing Rust Contributors

When I was working with R

Fire Mario not fire flowers

[My post yesterday](http:

Rust is more than safety

Rust is most well-known f

Four years with Rust

Today is four years since

What's new with "The Rust Programming Language"

It’s been a while since

Structure literals vs. constructors in Rust

Learning the basics of a

A eulogy for my 20s

Today is the last day of


There are few things I ap

Rescuing Resque (again)

A long time ago, there wa

Community Versions for Rust


Ember Data: ‘DS’ is not defined

I’m doing a little Embe

The language strangeness budget

I’ve always loved progr


One of the things that I


“The people are unstopp

An introduction to economics under capitalism

The dismal science a diff

A new introduction to Rust

Lately, I’ve been givin

Update GitHub Pages with Travis CI

Ever wanted to have your

I'm going writeonly on Twitter for a while

This is something I’ve

Rust's documentation is about to drastically improve

Historically, [Rust](http


> @steveklabnik <small>in

Hypermedia FizzBuzz

I read a really great blo

How to be an open source gardener

I do a lot of work on ope

Is npm worth 26MM?

Yesterday, npm, Inc. ann

Announcing Emoji 1.0

A long time ago, I wanted

A 30 minute introduction to Rust

I recently gave a [propos

2013: year in review

Every year I try to do a

Rust is surprisingly expressive

Do you remember the first

How Dogecoin changed my perspective on cryptocurrency

I have long been a Bitcoi

git, history modification, and libuv

There has been a recent k

Why I'm partnering with Balanced

My next venture will be j

On leftist infighting

There used to be a post h

Abstract vs concrete

When I talk to people abo

Pointers in Rust, a guide

Rust’s pointers are one

New Beginnings

TL;DR: > WANTED: Proleta

Keep Saturdays sacred

There are obviously a lot


I recently attended GoGaR

Resque 1.25.0 has been released

I’ve just released Resq

Just the regularly scheduled apocalypse

Every once in a while, I

The CLOSURE companion

Today is the fourth [_why

Emoji licensing

I recently decided to mak

redis-namespace 1.3.1 security release

TL;DR: if you use [redis-

Beware subclassing Ruby core classes

TL;DR: Subclassing core c

Resque 1.25.0.pre has been released

I’ve just released Resq

Removing Turbolinks from Rails 4

If you don’t want to us

Twitter ghosts

I’ve been thinking abou

Returning to Free Software, a guide

A month or two ago, I mad

Rust-y Scraps: iterating with a step

This blog post works with

Rails 4.0.0-beta1 to Rails 4.0.0-rc1

I’m writing [Rails 4 in

Ditching Google Chat with XMPP

Last week, I decided that

The profile link relation and you

I was quite pleased when


I spent six weeks of last

Upgrading from Rust 0.5 to 0.6

Here are some error messa

Travis build matrix for Rails

Do you have a gem that ne

Announcing security_release_practice

Security is hard. One of

Going vimgan

I’m going vim-gan. Basi

Using puma on Heroku

I’m a big fan of [Puma]

I'm writing "Rails 4 in Action"!

Last night, I took a big

The next iteration of "Designing Hypermedia APIs"

I sent out an email today

Ruby on Rails maintenance policy

Recently, the Rails team

Ember.js and accessibility

Hey everyone! I made a vi

How to not rely on rubygems.org for development

Due to the recent [situat


Soooo there’s this thin

_why is a role, not a person


Draper 1.0.0 released

Today, I released Draper

Rails has two default stacks

Rails’ greatest strengt

2012: year in review

I always enjoy reading [p

Most things I do are interconnected

I work on a *lot* of diff

I invented hypermedia APIs by accident

Long long ago, I got an i

An early Christmas present for you

Normally, I’m a bit of

Announcing request_store

Last night I had some ins

Getting started with chruby

If you’re looking for c

Deleuze for developers: deterritorialization

If you truly want to unde

Deleuze for developers: assemblages

If you truly want to unde

Draper 1.0.0.beta2 release

I’ve relased the second

Draper 1.0.0.beta1 release

I’m happy to announce t

Introducing the rails-api project

Ruby on Rails is a great


Occasionally in this big

How to squash commits in a GitHub pull request

So you’ve contributed s

Theory and practice


I got hit by a car today

“Humans are really squi

Living with a terrible taste in music

Music has always been ver

Run Rails with custom patches

I often see comments [lik

How do you find the time?

I’m often asked the que

Seriously: numbers: use them!

[Turbolinks test](http://

Resque: let's do this

If you’ve ever done bac

Software and community

“Are you sure you’re

Random Ruby Tricks: Class.new

If you didn’t know, cla

Protocol and language

This is the second part o

Random Ruby Tricks: Struct.new

One of my favorite classe

New blog: Words

I’ve started a new blog

Protological Control: an introduction

> “I finished by pointi


I’ve recently come acro


I purchased Sparrow back

Why I don't like factory_girl

Once upon a time, I was b

How can I contribute to Ruby on Rails?

After RailsConf this year

Introducing issue2pr

Ever had an issue on GitH

Show solidarity to all who resist

I found this on a flyer i


This morning, my mother w

Shoes 4 work is starting: get involved!

As you know, I’ve been

Mixins: a refactoring anti-pattern

I spend an unusually larg

On the eve of #m1gs

Walking down the street,

Cards for dad - follow-up

Hey everyone! It’s been

Building StoreEngine

So I said I was gonna bui

About antisocialne.ws

[About Antisocialne.ws](h

Anti-capitalism 101

People are often surprise

Birthday cards for Dad

Hey everyone. If you foll

Transmuting Philosophy into Machinery

I’m so very close to re

Hypermedia API reading list

Originally, this post was

REST is over

# REST is ![REST%20is%20

Two pomodoros

I’d been thinking about

An API ontology

**NOTE**: The alpha of my

Introducing metadown

Because I don’t have en

Moving from Sinatra to Rails

I love both Sinatra and R

Implementing HATEOS with presenters

I’m a big fan of using

ActiveRecord considered harmful

> It is practically impos

Redcarpet is awesome

It’s true. If you have

Write better cukes with the rel attribute

The other day, I was work

Marx, anarchism, and web standards

### An aside for software

Fast Rails tests with CanCan

If you haven’t used it,

Book review: New Programmer's Survival Manual

Disclaimer: I do have a s


I have a confession to ma

Your startup is not a platform

No, seriously. This is a

For science: I'm killing my cell phone

Yep. Doin’ it. This mor

Matz is nice so we are nice

Rubyists have a saying, o

Rubinius is awesome

You walk into work tomorr

GitHub is anarchy for programmers

I finally got to see Zach

Real, modern Ruby development

I came across a blog post

I'm deleting my Facebook tonight

Well, [it’s the end of

More rstat.us refactoring

Hey everyone! I just want

Extracting domain models: a practical example

Hey everyone! We’ve bee

Better Ruby Presenters

My [last blog post](/2011

The secret to Rails OO design

UPDATE: I also have a fol

The self improvement pomodoro

By now, the [pomodoro tec

We forget that open source is made of people

Programmers like to think

Some people understand REST and HTTP

This is a follow-up post

Twitter is too important to be owned by Twitter

When I spoke on a panel a

Nobody understands REST or HTTP

## **HI [HN](http://news.

Single text, many masters

Hey everyone. Here’s a

Contributing to Ruby's documentation

### Update! I’m now ma

The next iteration of my blog

Well well well, some thin

Announcing rstat.us

Whew. If you’ve been [

I'm quitting Hacker News

I’ve been thinking abou

A few notes on Foucault

I’ve almost always been

Goals for 2011

This year I’m happy to

Hackety Hack v1.0

It’s been a long journe

The hardest decision I've ever made

I’ll cut to the chase:

Trolling is a art

I find it incredibly hard

80% of success is showing up

It’s funny how true thi

Trouble with Diaspora

So, Wednesday, Diaspora w

A word about _why, Whyday, and Hackety Hack

Today is Whyday. A progra

A blip in time

Sometimes, insight comes

A case study in being excellent: Divvy

The images in this post h

Productivity Waves

Right now, I’m having a

A Declaration of the Independence of Cyberspace

I just saw this today. It

A break with the past

[Pretty soon](http://www.

Living in the cloud

I’ve been joking for a

Book review: Rework

I’ve been waiting for t

Writing a su feature with Authlogic

Sometimes, when respondin

Why bother creating?

Kanye West posted somethi

Reddit drama: an interesting look at community values

I bet social psychologist

The Hackety Manifesto

For those of you that don

The Little Coder's Predicament

For those of you that don

About Crows

A short time ago, the G20