Blogs
Falling on the Floor, Getting Back Up
Yikes!
So I was giving my talk at Madison Ruby: Epilogue, or “this really is the last one, we mean it everybody”. Watch the whole talk, about doing HR in small consulting shops. About five minutes in I was making a very incisive point about annual reviews when:
Gravity is very effective
And suddenly, nobody remembers my incisive point about annual reviews. (Which was, for the record, that editing them for a year is kind of soul-destroying, even if everybody involved is basically nice and good at their jobs.
Focus Your RSpec Workflow
RSpec has options that will help you see your specs more clearly
RSpec is a big library and the way you use it makes a big difference in how efficiently you can run specs. It has a lot of default configuration options that are generated when your application is created, but if your application is older than a few months, it’s likely there are some new and useful configuration options that you might like to add.
Write Bigger Code So You Can Focus
All your blocks should have whitespace…
After two blog posts where I was very non-doctrinaire about really big topics, today I’m going to be absurdly doctrinaire about something trivial.
Yep, it’s The Continuing Adventures of the Person Who Cares A Little Too Much About Whitespace.
There are about four things that I do which appear to be different from the work setup of nearly every other developer I’ve ever worked with:
Rails Core Stack and Rails Prime Stack
It’s my software stack, with complexity!
It’s not an unusual observation that there are two major philosophies about designing Rails applications, sometimes called the “Core” and “Prime” stacks. (Specifically, the name Prime stack comes from Steve Klabnik, though he calls the main stake the “Omakase Stack”, from DHH’s Rails is Omakase post)
The Core stack is based on the way the Rails core team recommends Rails should be used, and is how Basecamp uses Rails, at least based on David Heinemeier Hansson’s public descriptions.
Development-Driven Testing
The testing cycle goes from red to green to red to green
One of Kent Beck’s first articles about unit testing is called Test Infected: Programmers Love Writing Tests. It was written, I think, in 1998. What’s interesting about the Test Infected article is how Kent describes the process: “code a little, test a little, code a little, test a little”.
Which is backwards. Or not-backwards, depending on your perspective, but in any case, it’s not the TDD process that Kent would eventually describe in the XP book, among other places.
The Boring Software Manifesto
I noticed that I didn’t have a copy of the Boring Software Manifesto on my own site, so here’s the original version from 2007 (yikes!) and a video version from 2013.
Several years ago, I coined the phrase The Boring Software Development Process, in response to a former employer where project management really didn’t think anything was happening unless we were trying to solve seven crises simultaneously.
The manifesto goes like this:
Sharp Knives and Safe Handles
These knives all have handles
The first time I was in a programming debate that used the argument “I want a sharp knife”, my friend was arguing that real programmers wrote C and accessed memory directly. I was arguing for Java as the easier, if less flexible, solution.
One generation’s sharp knife is the next generation’s whirling machete blade.
The phrase “sharp knife” has been bouncing through the Rails community the last day or so.
I love my Mobile Writing Setup
I haven’t written about my writing setup, tools, things like that in a while, and I’ve got some show and tell.
Here’s my current mobile writing setup – really, my preferred writing setup if I’m not coding or otherwise doing something that requires a full operating system.
That’s an iPad Air 2, the Logitech Keys-To-Go keyboard, and a Kanex plastic stand that you can only kind of see.
Why do I like this setup:
RSpec and Rails Are Mocking Me
This post is about a very small Rails design decision. A Rails design decision that I’ve made over and over without thinking about it. You probably have, too. And then a weird test failure made me think about it. And then it made me overthink it.
Let me explain.
I like the idea of writing Rails code such that there is minimal logic in ActiveRecord classes, and then writing a lot of tests that don’t need to touch the database, and therefore run fast.
This Week In Stuff I Really Want You To Look At: May 16, 2016
The Week of Me A couple of quick things.
The Web Payment book is out for 50% review, which means that the draft is about half complete, and about a dozen or so people, including the publisher, will be the first readers (well, I guess it got an editorial review at the ⅓ mark). This is a little terrifying. I did a quick breakfast talk this week on trust and projects.