Why security is hard, and why it’s not going to get easier

22 03 2015
Bruce Schneier summed it up well: the good guys have to secure all the doors and windows; the bad guys only have to find one. In a nutshell, that’s why security is hard. Real-world security has to deal with that problem all the time.
If you think of writing software as filling a feature space, sometimes you accidentally provide functionality that you didn’t intend to, while providing what you meant to. You meant to provide an exhaust port but you also created a vulnerability.
Read the rest of this entry »

Take back your control-space keybinding in Ubuntu w/ Cinnamon

30 09 2014

I use Emacs and just switched to Cinnamon when upgrading to Trusty Tahr. It somehow stole the control-space keybinding, which I use in Emacs a lot; it is used for setting the current mark, so I can cut or delete a region of a buffer. This is also used for the autocomplete feature in Eclipse, which is one of the main reasons I use Eclipse.

Solution found: some built-in thing called IBus binds that for setting the input method. I like the input method I already have set up & I don’t need to change it, so here’s how to disable that: answer on askubuntu.com.



Using a Lite-On eTDU-108 DVD drive with a Mac

24 03 2013

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.

Read the rest of this entry »

Tips for Programmer Interviews at Large Tech Companies

9 03 2012

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.
Read the rest of this entry »

Patch to make Ubuntu’s GNU Screen bash completion work better

1 02 2012

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.