I bought a Lite-On eTDU-108 DVD writer, as a companion for my MacBook Air which lacks a built-in optical drive.
Using this drive with a Mac is strange because it has a lid, so the Mac cannot physically eject the media. This leads to odd circumstances such as when you tell the Finder (or iTunes) to eject the disc, and it makes the icon disappear and suddenly it’s back, as if you had inserted it into the drive again at superhuman speed.
Most of the sequences of ejecting discs that I came up with resulted in error messages, failure to eject the disc, spinning beachballs, or unplugging the USB cable from the drive in frustration. I finally figured out the right sequence to eject a disc from this drive when it’s connected to a Mac.
Continue reading “Using a Lite-On eTDU-108 DVD drive with a Mac”
Interviewing at large tech companies is different from interviewing at a startup. Here are some tips about how the interview process differs, and some specific advice for how you can prepare.
Continue reading “Tips for Programmer Interviews at Large Tech Companies”
If you make a screen with a name using
screen -S foo and then try and reattach later using
screen -R f[tab] it doesn’t work. It only completes the full name as seen in
screen -ls which starts with the PID of the detached screen, like
9972.foo. Not very convenient. Why can’t it just complete using the name you gave it?
Someone else solved this problem three years ago but nobody accepted their patch, and now /etc/bash_completion.d/screen has been overhauled and the patch no longer applies.
I updated the patch so it works and resubmitted it to Ubuntu.
If you don’t wanna wait, grab the code from this gist and do this:
sudo patch /etc/bash_completion.d/screen screen.patch
This will probably work on Debian too since that’s where the completion script came from.
In the past few weeks, I’ve had a few conversations with web developers and back-end engineers who are unfamiliar with Ruby, in which I’ve tried to explain how Ruby can be nearly as expressive as Perl (tiny amounts of code can accomplish a lot) while being as readable as Python or Java. In fact, I think that Ruby’s expressiveness can remove distracting boilerplate code, allowing compact expressions to be far more readable than a more verbosely written version of the same algorithm.
Continue reading “On Ruby’s Expressiveness- The Littlest Microframework Explained”
Kent Beck tweeted:
User story: “As a princess I want to confirm my royalty so I get bruised after sleeping on 40 mattresses over a pea”. Just tell real stories”
That sounded so much like a Cucumber feature that I decided to write it as one:
Feature: Physical Sensitivity
In order to confirm my royalty
As a princess
I want to be very delicate
Scenario: 40 mattresses on a pea
Given there is a pea on the bed
And there is a stack of 20 mattresses on the pea
And there is a stack of 20 featherbeds on the mattresses
When I try to sleep on top of the stack of featherbeds
Then I should not be able to sleep