F1 Website Challenge

A few months ago, Chris linked me to Sierra Bravo’s F1 Overnight Website Challenge. It’s somewhere between a grownup lock-in, a charity event, and work. The premise is that you (as a developer) sign up to help out a bunch of non-profits spruce up their websites in 24 hours. I thought it sounded like fun, and signed up. I also conned a bunch of my co-workers into doing it too, so we’ve got a team that’s worked together before, and should be able to actually pull something together in the alloted timeframe.

Chris isn’t local anymore, so he won’t be there (too bad, really), but there are a surprising number of other people I’ve worked with who are also doing the event. I’m looking forward to seeing (and competing against) approximately eighty other web developers all at once.

I’ll have my camera with me, and definitely intend to do some flickr uploading while I’m there. (Or if the network is bad, after it’s over.)

Wish me luck!

Marketa Inglova at this year’s Oscars

I just spent the last twenty minutes googling for a good image of Marketa Inglova’s dress at the oscars (for florence). I didn’t really come up with anything, but in the process we watched her and Glen Hansard performing their Oscar winning song, Falling Slowly, both at the oscars, and then, randomly, in a much earlier performance. Then we watched their acceptance speech, which was cut off after Hansard spoke by the infamous music of cutting-people-off, and before Inglova could get a single word in edgewise. But then… later, she was brought back out onto the stage to speak her piece! I really have no idea whether that has ever happened before, but it seems unprecedented to me.

Anyway, the point is that, after all that, her speech was quite moving. Here is an excerpt:

“No matter how far out your dreams are it’s possible and, you know, fair play to those who dare to dream and don’t give up. And this song was written from a perspective of hope. And hope, at the end of the day, connects us all, no matter how different we are.” -Marketa Inglova

Stop Animation in Video Games and movies

Florence, Mike, Jason and I went to see Be Kind, Rewind last Sunday, (the new one Directed by Michel Gondry). I love Gondry’s style so much, but this one fell pretty flat for me. Maybe my expectations were inflated because I have loved his other movies so much, but it didn’t really live up to something. I liked The Science of Sleep better, and I remember feeling pretty similarly disappointed when that one came out.

Anyway, this morning a co-worker sent out a link to the Game Over Project‘s Human Space Invaders, which of course I think is brilliant. They also made a version of stop animation human tetris, (not to mention Pong and Pole Position).

Bonus link to a blog post that outlines a pretty sweet tetris variant the author thought up. (lazyweb!!!)

My Fabulist Love

I have recently re-discovered the magical site that is fabulist.org. For some reason, all the mp3s they post are gold. Or anyway, about 80% of them I like… which, believe it or not, is a fucking HUGE amount for me. And even the stuff I don’t really like (Johny Cash covers Rainbow Connection?) I can _appreciate_ why someone else might like it. I’ve been listening to a playlist I downloaded over there for about a week now, and am totally in love with Laura Marling, Lisa Hannigan, Vampire Weekend and Noah & The Whale.

UPDATE: I now HATE the fabulist.org for introducing me to music that is neigh impossible to obtain!!! Laura Marling’s CD has only just been released in the UK… Import rates are not terrible from amazon.co.uk, but Noah & the Whale have not even released an album yet!!! Vampire Weekend is readily available, and I haven’t yet looked into Lisa Hannigan. I have listened to all the Noah and the Whale songs on myspace, and they are fucking awesome. I’m retiring from the internet to play Mass Effect now. *cries*

disturbing iphone correlation

I have to do more testing to be sure, but I think I’ve noticed a disturbing correlation between days when I listen to music on my iPhone on the way to work, and days when my iPhone decides to randomly show “No Service” and disconnect itself from AT&T.

I don’t really use my phone as an iPod all that often, and this issue hasn’t shown itself all that often either.

Notably:

  • A power-cycle has (so far) always fixed the issue.
  • I usually just unplug my headphones when I get into work, having verified once or twice that this “turns off” music playback.

Anyone else noticed this?

Two Poems for Florence

It’s Valentine’s day, and seeing as how I haven’t posted any poems on here in monthsandmonthsandmonths, I decided I’d look back and see if I ever posted any of the poems I wrote for Florence when we first met. Turns out the answer is no, I didn’t. The first of these was the first poem I wrote for her, and I’m almost embarrassed to say how early in our relationship it was. It was the first time I told her I loved her. (Although I copped out and told her about it before I actually sent her the poem.) The second is one I remember feeling particularly proud of, and it seems to stand the test of time as well… enjoy!

A Single Sticky Thought

My sleepy foggy brain is clogged with
three words so big
they won’t fit out of my mouth.

I think them as you’re touching,
kissing, me awake.
My hands discover your
still naked, freshly clean body.
My eyes too fresh in dream to open.
I tell you about the dream instead,
trying to push the words out of the way.

They bubble to the surface
again in the elevator with you.
Stopping at the main floor, my exit,
This isn’t goodbye. I think, but
my mouth is full of I love you,
and I say nothing.

Synesthesia Aphrodisia

Your touch rings in my ears, your voice
a brush on my skin, your smell so physical
it moves me, the curve of your hips
so potent I taste them with my eyes.

I sense you, a languid memory.
I absorb you, an osmosis dream.
You have invaded me, your presense
a shadow I hear in pastels.

I kneel at an alter of you, take you
whimpering and whispering into my mouth,
swimming in the quiet purr of your voice,
the beautiful pulse of your green gold eyes.

Con-damnation!

I was just reminded about Con of the North, which is a local gaming convention. I’ve been meaning to go for years, but I never really know when it is. Well, guess what, it’s this weekend.

But I’m already signed up for Frozen Perl on Saturday, so I’ll probably just pay the one-day fee, and go on Sunday or something. (I have plans Friday night to see Jumper with Florence.)

In con-pletely unrelated news, I am someone’s version of nice stuff.

BigText.org

I spent a bit of time (probably too little) one afternoon this week searching for a website that created ascii versions of text. Instead, I found a command line utility called FIGlet, and approximately 4 hours of dev time later, (including 3 hours after about 11:30pm last night), BigText.org was born onto the internets.

Feedback is welcome/desired. I’m especially curious whether anyone can break it, as obviously security is a concern.

UPDATE: There are many other web-based figlet servers out there. I’m glad I didn’t notice them until now. I probably would have given up.

Typography in Code: A Field Guide to Whitespace, Part 1

We all know what we like and what we don’t like when it comes to whitespace in programming. I can only speak for myself, but here are some elements to consider.

One of the universally accepted natures of code is to indent where appropriate, and this first installment of Typography in Code: A Field Guide to Whitespace will focus on the various incarnations of the all-important topic of (queue thundering god voice) indentation.

Topic: Tabs versus Spaces

This primordial, often invisible question is at the heart of the indentation beast. Like good and evil, right and wrong, vim and emacs — tabs and spaces are diametric opposites, warring factions facing one another across a never-ending epoch in which all our text files are smoking battlefields. One kicker is that both sides use ninja assassins. YOU CANNOT SEE THEM COMING, until… that is… you find them lurking in your legacy code, buried at the beginnings of lines near the ends of your files, like trip mines in long forgotten functions.

This is when you spend hours constructing that one perfect regex to rid your code of the enemy once and for all. (Also, unless, of course, you are one of those odd ducks who likes to see their whitespace characters. I respect you, even if you are crazy.)

Where I fall on this fence: My heart titters for tabs. But I didn’t always believe in them! I admit it, I was once an indentation swing state. But here’s why tabs are king for indenting: Tabs are like using semantic markup. We all (mostly) want code to all indent the same width (no matter what that width is), and a single tab character means that width. You can even change this width (tab stop) with a single command in any decent editor. This alone should be enough for the triumph of tabs over spaces.

Topic: How wide?

Tabs are 8 characters, and thus indentations are also 8 characters. There are heretic movements that try to make indentations 4 (or even 2!) characters deep, and that is akin to trying to define the value of PI to be 3. (Linus Torvalds, From Documentation/CodingStyle of Linux, via wikipedia)

This is a trickier beast. I believe in the power of four. It’s more legible (discernible) than two, especially across dozens of lines, and eight is just too wide a gap. With a tabstop of eight, you only get ten indentations before you’re out of 80 column width entirely! This is as opinionated as I get, since four just looks right to me, and I can’t really cite any good reasons for it. Just take it from me: you’re an IDIOT if you prefer anything else.

Yea, and the number of spaces to equal one tab shall be four. No less, and no more. The number shall not be three, and the number shall not be five. Fuck that the number shall definitely not be odd. The number shall not be two, and the number shall not be eight. The number shall be four.

Truthfully, I don’t care what your tabstop is set to, as long as these things are true:

  1. I can set my tabstop to something different and the code doesn’t look all fucked up. This means, yes, tabs.
  2. Never use a combination of tabs and spaces. (Fuck you, default dreamweaver settings.)
  3. Tabs should never be used anywhere but at the beginnings of lines. (This violates #1, but is also a really bad practice for other reasons that maybe I’ll get into in a later article.)
  4. Consistency, consistency, consistency. (WTF BSD, WTF!?)

Extra Credit: Read (and care about) the wikipedia article on Indent Style.

Next topic: How many line breaks look the best: Between Function Definitions, In Functions, Around Comments, and more!