kd@
10/21/2013
Guild Responsibilities
I had a bad experience recently. I’ve explained it in person to a few close friends, but I haven’t written it down yet, and I want to, to try and think it through.
Two months ago I interviewed a woman for a sysadmin position. She was great- knowledgeable, cheerful, good at asking questions. I told my manager he should definitely hire her.
I was a contractor at the time, but owned enough of the customer facing code that I guessed I was indispensable. A few weeks later, they hired me as an employee proper. I was happy- signing bonus, pay raise, and I signed out of my timeclock the moment I signed the letter of intent.
It took me a little while to get my ducks in a row on the health care front, I didn’t finish until after my first paycheck was supposed to come ( a day or two later ). I didn’t get paid, but I figured it was going to be OK, it was my fault for being slow with the paperwork.
Then I got pulled in to a meeting with the CEO, who told me that the next round of funding was going to be a little late, and they were telling the Systems Administrator that she couldn’t start early anymore, she had to start a week later on the exact start date in her offer letter. He assured me that I was valued, that the money would come in, that I would get paid.
The Sysadmin we had just hired showed up just in time for the next paycheck. It never went out. I spent another two weeks at work, hoping things would work out. She was great, by the way, everything we’d hoped for, and twice as organized as anyone else.
I had her resume, I had her email. I knew there was a high probability of trouble. I did not reach out to warn her. I fucked up.
kd@
10/10/2013
Trying Gnome 3 Again
I have a weird relationship with Gnome 3. I think in many respects, it’s the most technically impressive of the linux desktops. It’s reasonably fast even on slow and old machines, and they made all the right decisions about animation timing. It’s filled with nice touches- modal dialog homing, the blink-into-existence animation for dialogs, the automatic ‘next workspace’. The Google Calendar integration is wonderful.
On the other hand, it has a whole raft of goofy, annoying behaviors that I am a hundred percent sure will never be fixed, and I am a “bad person” for wanting to get fixed. Alt-tab behavior, for example. Instead of embracing the workspace concept, they neuter it, and alt-tab will randomly shove you between workspaces instead of letting you navigate between windows in your workspace. When alt-tabbing to a firefox window, I’ve even seen it move me to a different workspace even though there was a firefox window in the current workspace. It’s true that this is OS X’s behavior, and that OS X is popular and well regarded, but it’s hard to regard this as correct or useful. For people who want this behavior super-tab also does this- which will ‘just work’ for Mac users. Compromise! Configuration! Things that will never happen! Of course, now that I’m talking about 3.10 instead of 3.0, it’s probably too late to change- but people have been grumbling about it the whole time, to no great effect.
This is fixable, of course, with an extension. Installing these has become quite seamless, I have to admit. It’s still a goofy band-aid, and if you look at the list of popular extensions, the top ten all like that- unnecessary papercuts. Lots of them from the Gnome team.
I just can’t understand why this fight goes on. Sometimes you lose, and that’s OK.
kd@
9/6/2013
How shall Emacsy support running multiple jobs some of which are in the
background? I’m going to suggest a cooperative multitasking approach rather
than a pre-emptive multitasking approach. Heresy, I know, and I know it’s not
the ’90s, but hear me out.
I think you should try it! My only thought is that the combination of cooperative multitasking, no isolation, and code that comes from lots of different sources sounds a little scary. Perhaps no scarier than “totally shared state and parallel execution”, but without a discussion of “how do you deal with an accidental infinite loop?” it’s hard to be super enthusiastic.
kd@
8/6/2013
Long week
I moved out at the last minute this weekend, and then I spent monday morning, monday night, tuesday morning, tuesday night, wednesday morning, cleaning packing and unpacking. Driving around. Throwing shit out. I didn’t sleep much. It’s entirely my fault, I know.
The rest of the week I was still getting up at six am and getting home at ten pm. Not sleeping that much. Around four o’clock on Friday I squeezed my eyes and then couldn’t shake the little shooting stars for a couple of minutes. I knew I had to get home.
I left the office around six. I got home around eight. I made dinner, fed my cat, called my girl. Now I’m writing this.
I don’t want to do this any more. Even when I’m not overworked, it’s too much. I am responsible for too much. The company does not make enough money. I am increasingly certain I will be sacked the week after I move close enough to live like a real person.
kd@
6/12/2013
Note to self regarding Fog & AWS
So I’ve been using fog, a ruby library, to try and write a fairly slick deployment UI for my client. The documentation occasionally suffers from a lack of examples or explanation though, so I decided to write this down in case someone else has similar problems.
If you want to filter servers, don’t try to look at the method implementation or whatever. You’ll merely be frustrated. Instead, use Amazon’s documentation to figure out how to use it. Obligatory demo:
c = Fog::Compute.new({:provider => 'AWS',
:aws_access_key_id => id,
:aws_secret_access_key => secret})
results = c.servers.all({'tag:Name' => name, 'instance-state-name' => 'running'})
Maybe Google will pick this up, and save someone else 45 minutes of trying to figure out where the rubber met the road.