Making Your Interns Addicts: a How-To Guide
I was thinking back last week on why I started working at Fog Creek. If you don’t know, I got started on this thing called Project Aardvark, which eventually ended up becoming Copilot, the project I worked on for my first couple of years at Fog Creek. I don’t generally reminisce much about that time, simply because that was a very different point in my life, back before I found fashion, yet after I figured out how to end up in front of cameras constantly.
![Jump, jump, jump…
Why how is boring and how why is awesome
Last fall, Joel came to me and said, “Congratulations! We’re doing another World Tour. Also, we want to teach distributed version control. That’s your job. Make it happen.”
This sounded totally awesome. Not only would I get to one-up George Clooney in flight time; I was made for doing something like this. In high school, I was in the NFL, which, sadly, means the National Forensics League, which means the National People Who Talk Good and Wanna Learn To Do Other Stuff Good Too, and not the…
Finding Literate Programmers
So we’re making candidates nervous by using C, and we’re not gaining anything by using C.
But are we losing anything by using C?
Yes. We’re losing any ability to test for literacy.
“Smart and gets things done” is a famous mantra, and one that I agree with and believe has served us very well. But even at Fog Creek, we don’t go entirely by “smart and gets things done” when it comes to developers. If we did, we’d happily hire anthropology majors who had gotten a few papers published. After all,…
Drowning in a C of Interviews
The Guerrilla Guide. It is the be-all, end-all of how to look for candidates.
Except for one paragraph.
And I’ve come to realize that I agree with that paragraph; just not Fog Creek’s implementation of it.
In The Paragraph In Question, Joel writes:
I’ve come to realize that understanding pointers in C is not a skill, it’s an aptitude.
The paragraph goes on. But for Fog Creek, it stops right there. In fact, it stops even earlier. The version that Fog Creek has implemented, in practice,…
Have a mission
You know why I love working on Kiln every day?
Because we’ve got a mission, dammit.
Mission, not mission statement. The Kiln team doesn’t have a mission statement, and I’ll fight to keep it that way. Mission statements, no matter how well intentioned, become these trite little soundbites that you parrot indefinitely until they just become a meaningless jumble of syllables—kind of like what happens if you just say the word “marmalade” about 40 times in a row.
But that’s totally different from…
When things go well
It was a lot of fun to vet dirty laundry in my last post on how one of our deployments went really wrong. But part of why that incident stuck out so strongly in my mind is that things so rarely go wrong.
Why is that? I think it’s because we do a lot right: we make it extremely easy for ourselves to keep features from going out to customers until we’re ready, and we give ourselves a lot of time to bang on the exact same version of the software, on the exact servers, that we’ll be pushing out to…
Midnight deploys are for idiots, and other revelations at 12:30 AM Monday morning
Every once and awhile, you have an idea that you totally think is the bee’s knees but which ends up being the bee’s ass.
When Kiln and FogBugz went to a weekly release cycle a few weeks ago, we had what we thought, if not a brilliant idea, was a pretty good one: we’d upgrade Fog Creek On Demand at midnight on Saturday, when all the normal people were asleep. It’s pretty common practice, it minimizes customer impact, overall a good thing. Right?
By 12:30 AM on Monday, I had developed a very…
Announcing Miniredis
When I attended Open Source Bridge two weeks ago, I wanted something
to hack on while I was there. The upcoming version of Kiln moves from
relying on a combination of explicit threads and FogBugz’ heartbeat
mechanism to using a very lightweight queuing system backed by Redis.
The only problem is that Redis doesn’t run on Windows, and while that’s not
a problem for Kiln On Demand, where we rely heavily on FreeBSD for key
parts of Kiln’s infrastructure, the licensed version Kiln needs to run on…
Kiln 1.2 is Out!
I try not to throw too many out-and-out advertisements into this blog, but I’m very proud to announce that Kiln 1.2 is out.
When Kiln 1.0 shipped back in February, it was awesome, but still very much a 1.0 product. While Kiln’s still under heavy development, we’ve tremendously improved a lot of the little things that make the difference between “functional” and “fun,” and I’m happy to say that Kiln’s increasingly strongly in the latter camp.
Since our initial launch, we’ve:
Added custom…
The fighting's been fun and all, but it's time to shut up and get along
About once a week, I get an email in my mailbox that reads like this:
Hey, Kiln looks neat, but Git is totally the bee’s knees, so why the fuck are you using Mercurial?
Note that these emails are rarely (if ever) actually interested in why Kiln chose Mercurial; what they’re instead interested in is trying to piss me off enough that I get into a flamewar about why Mercurial is going to bring about Nirvana while Git causes people to eat babies using nothing but A1 sauce and a spork.
This is…