- What Free Speech Isn’t
The Constitution of the United States limits Congress from making laws to limit the freedom of speech of United States...
- Use One Field to Store Names or Addresses
Collect personal information from users, such as their names or addresses, in a single field rather than multiple fields.
- Form Filling is Formulaic
Filling out a form with Capybara can be very tedious. With Formulaic, we aim to make the process less repetitive...
- Don’t Talk to (Just) Me
Company chatrooms aid communication, especially across multiple locations; they provide an archive for past conversations for those who were not...
- Come for the Git Commits, Stay for the Power
I have a confession to make: I wasn't always a Vim user. There was a time when I used such...
- Implementing Multi-Table Full Text Search with Postgres in Rails
Easily searching across an application's data is a pervasive need. If you are lucky, you can get away with simple...
- Use RSpec.vim with tmux and Dispatch
As you may know, there are quite a few of us now working at thoughtbot. While we share a...
- Iceberg Classes
An “Iceberg Class” is loosely defined as a class with more private than public methods, but we will be specifically...
- External Posts in Jekyll
If you contribute to more than one blog, you may want to have all of your posts show up in...
- Store Page Titles in I18n
<title>element is one of the only required tags in HTML, it is often overlooked by developers...
- Apples and Oranges
This is probably the best cocktail concoction I have ever created.
- Solving crontab: temp file must be edited in place
Solution for error crontab: temp file must be edited in place
- Google Authorship on Giant Robots
You may have noticed a recent addition to thoughtbot’s blog posts. We concluded an experiment to add a “Written by...
- Sandi Metz’ Rules for Developers
Back in January, Sandi Metz introduced her rules for developers in a Ruby Rogues podcast episode episode. Around...
- It’s for the Orphans!
Too often, I come across GitHub Pages branches (
gh-pages) branches that are simply forks from the
masterbranch of the...
- 5 Useful Tips for a Better Commit Message
You're already writing decent commit messages. Let's see if we can level you up to awesome. Other developers, especially you-in-two-weeks...
- Love Your Eyes
If you are a developer or designer, you spend a good portion of your day writing, reading, and generally looking...
- Wrong, Sir, Wrong!
You are wrong about a few things, and that is okay. All of history's smartest people have been wrong, so...
- How to Write a README
There is a science and an art to writing an effective README for an open source project.
- Strong Parameters as Documentation
Besides moving attribute whitelisting to the controller rather than the model, Rails 4’s move to Strong Parameters over
- Stop Counting Hours
An Open Letter To the Management of (Generally) Small Companies with Internal Software Teams
- Piracy is a Service Problem
Not that I ever pirated anything in my life, but if I allegedly had, I would have stopped when I...
- Thoughts on the Google Reader Redesign
I was one of the power users. I fucking loved Google Reader.