Tuesday, February 28, 2006
My mousepad

Lils was working in my cube the night we launched. She had her little cameraphone with her, took a shot of my mousepad, and blogged it.
Monday, February 27, 2006
Of Montreal
Alex had a post today about getting into The Go Team! as a result of getting tipped off to the Morning Becomes Eclectic podcast seven months ago.

In my old job, I used to sometimes fumble through the iTunes radio stations when I got sick of my own music. I listened to WEMU's jazz and blues a lot (music without lyrics can be less distracting when programming). Because of the time difference between CST and PST, I'd also listen to KCRW in the mornings so I could listen to NPR news. When that ended, Morning Becomes Eclectic would come on, but I'd generally not take an interest and flip the station.

But it's in podcast form now, so I loaded it up (two of my other favorites: Radio Economics and Feldman's weekly monologue). I started on the first one, today's episode with Of Montreal.

Holy crap I loved it. It was so Bowie's Berlin Trilogy. I love the Berlin Trilogy. But I never went on into Eno or anything.

I listened to the podcast three or four times, over and over. I then ordered their latest two albums from Amazon.

It was totally a butterfly-effect thing. Somebody tells Alex about the Morning Becomes Eclectic podcast seven months ago, gets into a band because of it, blogs about it, I read it, sign up for the podcast, then get into another band because of it.
Saturday, February 25, 2006
Nice friggin' meatloaf
Jessica, who left this message, was one of my roommates last year.

Back then, I worked half-time during my last year of school as a programmer for University Housing. Most of my work was in PHP creating little web apps to handle employment data and other things. It was really, really important for everything to work in every browser, so mostly everything was done by generating HTML, having the user fill out a form, and making a POST or GET request, just like every other web app since 1932. Being part of the state, accessibility was very high concern for us (this is an extremely big problem with AJAX and Web 2.0, by the way). I used Javascript rarely and, if I did, I did it in such a way that it would "degrade gracefully" if you didn't have Javascript on (I don't know, maybe there are some Lynx users out there).

Jessica helped teach a class concerned with web design. We were once discussing the topic. I was complaining about how much of a mess Wiscmail was and how slow and Javascript-dependent it was. I described my philosophy on the subject:

"Javascript is like a spice. You can use it to make things a little better, but you can't make an entire meatloaf out of spice. Don't make Javascript meatloaf."

She loved the analogy and started using the phrase in class.

Of course, I get here, and, due to my frontend/design background, I'm placed on Google Page Creator, which is the biggest piece of Javascript meatloaf I've ever seen.

The irony of this hit me very hard when I started, but I couldn't say anything to Jessica about it as the project was still internal. Of course, it's out now. So this morning, I have this this comment on the last post:

"Nice friggin' meatloaf, Nathan"

Of course, once you restrict to a set of browsers, you can start doing some very impressive things with Javascript (Maps floored me when I first saw it). I have, in the process of being here, become a convert.

Here's to browser apps. And meatloaf.
Thursday, February 23, 2006
In the trenches...
Google Page Creator

That would be my project. I'm at work, hard at work. Something I did got Slashdotted. I'm so proud.

More info as time permits.
Friday, February 17, 2006
Movin' on up...
...to San Francisco.

I think there's a song that goes like that. Or something.

On Monday, I interviewed to be a roommate in a house in Duboce Triange (a coworker is moving out and alerted me to the opening). As part of that karma kick I've been on, today, they called back and offered the room. I'm taking it.

I'm going to keep two places for a bit so I can move leisurely and have time to find a replacement for me in my current house.
Wednesday, February 15, 2006
Things are looking up...
Between not getting eaten by a mountain lion, the fact that today's 5.35-mile run was easy, the fact that I bowled a 203 tonight (with another five bagger!), nearly matching my 207 of last week, and a bunch of other things, I'm actually having a good week. This hasn't been the case for a while.

Gets me on the topic of superstition. My similarly rationally minded roommate and I had a discussion on superstition. Something on television sparked it. I commented on how John Lennon thought that the number nine had followed him around in life. Me, I've found that the number twelve has done that.

Of course, my rational side recognizes this as bunk. The only reason I notice a pattern of twelves is that the pattern already exists, and if I spent my time searching for other patterns, I'd find something. Our noticing such things is exemplative of our psychological tendency towards superstition.

But still, I notice a pattern making up my good week. It's flawed logic, yes. But it's probably evolutionarily advantageous to make quick associations and theories of causation, even if they're often premature and wrong (yeah, so dancing doesn't bring rain. But eating the wrong plants can kill you).

There's something fatalist about reading into signs and patterns for deeper meaning—totally against my rational nature. But I still find myself doing it.
Sunday, February 12, 2006
Getting the hell out of Dodge
Silicon Valley is much more sexy in concept than in person.

From Po Bronson's The Nudist on the Late Shift:
[There] are two problems of portraying Silicon Valley:
  1. There is very little there, there.
  2. What is is shrouded in secrecy
Silicon Valley isn't particuarly pretty. It's a big flat part of the inner peninsula that was near a big city, had plenty of space to put in big ugly office buildings, and happened to be near Stanford. Yes, cool stuff happens here. But it happens in cubes and boardrooms. The constant churning tides of capitalism are crushing and surging different companies' fortunes, but you'd never know it standing on University Avenue. We, too, have to read about it in newspapers, magazines, and the web.

I oftentimes forget how boring it is here and spend my weekends hanging around the area, hitting up University Avenue or (Mountain View's) Castro Street, or, worse, putting in a few hours at work so I can grab some food and not cook.

This is stupid. In nearly every direction, there's marvelous beauty. To the south is Santa Cruz and Monterey. To the west there's a bunch of state parks and the gorgeous coastline-hugging Highway 1. To the north, there's the city of San Francisco and Marin County. And if you're willing to put in the time in the car, there's Tahoe and Yosemite within a reasonable drive.

When I have friends in town, it's a good time to play tourist. As I said, Ali's around, so we've been hanging out a lot. Last week we spent some time in San Francisco, Oakland, Berkeley, and the Marin Headlands.

I had decided I wanted to visit the famous Muir Woods (one for reputation, and two since Muir was a Wisconsin alum and used to live in North Hall where the political science department is today. The small woods between Bascom and Lake Mendota there are also called Muir Woods).

On Saturday, I called Justin and Ali, picked them up in Oakland, and headed back into the city and over the Golden Gate into Marin. I suggested we stop by to see Point Bonita (to which I've never been), as it's only open 12:30 to 3:30 on Mondays and weekends. The lighthouse is gorgeous, but it ended up chewing up a bunch of time. Justin wanted to be back in the city for the Chinese New Year, so we ended up just getting a late lunch in Sausalito and dropping him off in the city. Ali and I met up with a another Wisconsin alum and went to see Why We Fight. We then crashed at Ali's cousin's house in Oakland.

The next morning, we got out the door bright and early and headed right for Muir Woods. It was gorgeous. We ended up hiking all the way from Muir Woods to the Pacific Ocean at Stinson Beach and back, walking a huge loop and going covering elevations from 0 to 1500 feet and probably covering 10 or 15 miles. After a late lunch at Stinson, we took the less-traveled Matt Davis Trail back up.

When hiking, I have the unfortunate habit of ignoring when the sun sets. This is a regrettable attribute. At some point while laboring up the Matt Davis Trail switchbacks, we realized we were running out of daylight. We ended up coming down some pretty steep and dangerous trails with little light. We came out of Muir Woods in near darkness, without a flashlight. An annoyed ranger was there to greet us in the parking lot, wondering if the last car belonged to us.

What was did was pretty irresponsible. In the last few hundred yards, walking across the boardwalk in the short deserted touristy path through a patch of redwoods, I said to Ali, "You know, we're pretty stupid."

"Yeah, but just smart enough," he replied. A half hour more might have been real trouble.
Wednesday, February 08, 2006
Bowled a 207 tonight. First time I've ever broken 200. Six strikes, including a five bagger.
People I'm thanking my stars for tonight
It was during college. I believe I was driving the time, listening to Simply Folk on the radio, back when Judy Rose was still the host. She played For All the Good People. I hadn't heard the song in likely a decade, but it was recognizable and familiar.

As a kid, my parents had me listening to Tom Pease and Robbie Clement. They were local folksy children's artists that played in the area. We would go to concerts. I had all of Tom Pease's tapes.

Tom Pease used to play For All the Good People, so when I heard it again, it struck an emotional chord. The song was written by Ken Hicks, but was popularized by a folk singer from Chicago named Fred Holstein, who played in a folk club owned by him and his brother in Chicago.

The version played on Simply Folk was Holstein's. I remembered the name, looked it up, and was intrigued. I planned on eventually making it down to Chicago to see him play--take the Van Galder bus.

I went back to the website sometime during the spring of 2004, looking to see if there were any dates I could attend that spring. I was saddened to find that Fred passed away in January. I've regretted not going earlier ever since.

During my last year in Madison, I had built up a desire to get on a stage again. Ben and I made a pact to start attending open mics. We started with the Union, in the Rathskellar, playing occasionally to crowds that were largely disinterested in anything we played that wasn't flashy or familiar. We eventually lost interest ourselves and quit going.

But on a fateful night at the Mickey's, Ben and I found a newspaper with a listing of open mics in the city. Ben picked out the open mic with Stephen Lee Rich (which used to be in a little market near Tenney Park called the Urban Market and Coffeehouse. I wrote an entry about it before).

We attended regularly until I moved away. I decided to play For All The Good People the last time I went. The chorus is very simple, and the other folks in the audience sang along for each one:

This is the song for all the good people,
All the good people that touched up my life.
This is the song for all the good people,
People I'm thanking my stars for tonight.

It was really touching. Stephen Lee Rich was very happy to have heard it played and talked about seeing Fred perform it. Fred traditionally played it as his closing song.

I haven't really performed (excepting the opera story) again since I've moved, at least until last night. Ali's in town, and his cousin lives in Oakland near Justin, so we made plans to all meet the open mic at the Starry Plough (the same place I saw Robbie Fulks last August). I played a very slow and emotive version of Good Year for the Roses and a very fast and playful Rocky Raccoon. I was particularly impressed by the audience's attention during the slow ballad. The room was almost quiet, and I tried to focus all my emotional strength into delivering the lyrics.

It comes full circle, somehow. Serendipity determines who we meet along the way. Justin and Ali only became friends of mine by chance in college--I was fairly sure I'd never see Justin again after he moved out, nor did I expect to see Ali again after I moved. Ali used to come with to see me play at open mics in Madison.

On Monday, a CD arrived at my desk. It was Fred Holstein: A Collection. I listened to the whole thing through. The last track, appropriately, was his closer, For All the Good People. Fortunately, I sit behind a divider, so nobody could see my eyes water up when I heard it.

Anyway, Ali, Justin, Fred Holstein, and everyone else I've mentioned are just some of the people I'm thanking my stars for tonight.
The best liner notes I've ever read
Fred Holstein is from Chicago, and with any kind of luck, he'll end up there. Not because he's some kind of outcast from legit folkie circles. Let's face it, Chicago without Fred Holstein would still be Chicago, but Fred Holstein without Chicago would be Mel Torme. The love for Chicago is there, but it takes the form of a comfortable pride as if to say, "You can live in Chicago or someplace else--so why not Chicago?" What, the diligent reader may ask, does this have to do with Folk Music? Not a goddamn thing, except that here is a guy with a great voice and a presence on stage that makes Enzio Pinza look like Arnold Stang who decides to make his livelihood doing our music. I mean OUR music! Write? Shit, I don't even know if he can write his own name. So what! We got singer/songwriters like Lilian Carter's got little liver spots. But singers--well, as they say in Georgia, that's a horse of a separate but equal color. Fred knows songs. And the song Fred doesn't know hasn't been written yet. Sure, it's a camel filter, make-a-buck-world where if you don't write you're on the corner with a tin cup. But what about the guy who can sing Goodnight Irene to a packed house and make them believe he made it up on the spot? That's Fred. And we need him. You know why? Because the most radical idea in America is the long memory. School bussing in Chicago? Fred sings "If you can't find me in the back of the bus--" and there you are. The past and present become one and the future is yours to choose. So all you walkers and talkers, singers, humdingers and all-night flingers standing by on the ramp with your thumb out and a mouth full of words-a little piece of advice: sometimes the song's not enough. There's the craft, see? The sitting down and earning your money part. Well, tilt your thumb Fred's way, because there's craft you won't find in any college or book or cowboy fantasy. Sitting in a Fred Holstein audience is like going to school, and if this is your trade, listen and learn. Better finish off before I sober up and get sentimental.

-Utah Phillips 1977. Excerpt from Fred Holstein's "Chicago and Other Ports."

I've got more to write on this later.
Good Headline, Bad Headline
In the past, I've complimented CNN for their well-written headlines.

But I saw this one this morning.

Bush urges end to cartoon violence

Not well written. At first, I was assuming he was railing against Warner Bros. cartoons.
Tuesday, February 07, 2006
Just add water.
My mom sent me a Valentine's Day card. Now that I'm a Californian, she enclosed in the envelope two packets of SnoWonder Instant Snow.

Really, really cute. I've got snow at my desk.
Monday, February 06, 2006
This morning, I had a headache. I took some painkillers. My stomach was still weak and was pissed. I had my garbage can next to my desk at work in case breakfast wanted out.

I ran cross country in high school. I was always amazed at how I could be feeling like crap during the day, be forced to go on a run by Mr. Steve, and feel fantastic afterwards.

Not wanting to ruin my committment to running thrice a week, I sucked it up and went for a run over lunch. By the time I got back, I felt great. So much easier than my last run. I've been feeling great all day.

The run is mapped here.

Having showers at work is a great thing. They also promote bicycle commuting.

Update: I'm actually curious for feedback on the running log thing. A friend told me it was pretty slow, even on a faster machine. Usability problems out there? Does the thing on the left kill your browser when you load? There are workarounds...
I knew it'd come in handy...
My first year in college, I was a music major. More specifically, I was a vocal performance major. And in my performance classes, we didn't do fluffy show tunes. No sir. We did full-on, balls-to-the-wall opera.

I enjoyed it, but my curiosity eventually led me to other majors, as I didn't love it enough to try to make a career out of it (which is no easy task). I took the easy way out and studied practical things.

Anyway, the Google ski trip was last week (no, not all week). I was there Friday and Saturday. Friday night, we were in one of the convention rooms at the party. I, admittedly, had been drinking. On stage, there was an improv comedy group that had been hired for the evening.

From the stage, they announced that the next game would be an "improv opera." The folks I had been standing with knew my background and pushed me to volunteer. As nobody else in the crowd had a hand up, they called me up onto the stage.

At this point, I'm dressed in a plain blue polo and a pair of ratty jeans. I stumble up, and hand off my beer to one of the actors. I'm sure they expected not much more than a drunken frat boy performance.

The opera starts after somebody yells out "narcolepsy!" as a topic. The actors begin their warbly, quasi-operatic voicing of a scene where a young lady brings home her new narcoleptic boyfriend to meet the parents.

After a bit, I make up some throw-away lyrics, belt them out, and blow the room away.

Rapturous applause.

Thanks so much.
Sunday, February 05, 2006
Together Again
Ali's in town. He's got a job interview in San Francisco. If he gets it and moves out, we'll become roommates in the city.

At the airport, I was standing next to all the chauffers holding signs with names of businessmen on them. Ali walked out of the terminal and I walked up, saying, "Hello, I'm Nathan. I'll be your driver today." He laughed.

By the time we got his luggage and everything, it was a bit too late to get back to Mountain View for a Super Bowl party, so we just headed up to the city, dropped off his junk at the hotel, and headed for the Marin Headlands. We cruised up to the Golden Gate Bridge overlook.

An aside for potential San Francisco tourists: if you want a gorgeous view of the bridge, don't even bother with the rest area. Take the last exit before the tunnel, head right up into the park, and stop at Battery Spencer. Most tourists don't even realize it's there.

We then wandered around Sausalito a bit and grabbed a nice dinner. We caught the end of the game in a bar, but I was resigned to downing Diet Cokes, as my stomach is still recovering from last Friday. We parked the car in the Haight and wandered the neighborhoods down to the Castro (partially in anticipation of moving there).

It was nice to see an old friend again. We'll be hanging out more this week. We're going to try to hit the open mic at the Starry Plough in Berkeley on Tuesday and I'll play a few things. Justin will probably come with.
Saturday, February 04, 2006
At least I accomplished something today.
Since my day of skiing in Tahoe got rained out, I grabbed an early bus home and ended up mostly rewriting my AJAXy running log.

Doctor Awesome's New(ly rewritten) Running Log

Here's how it works. There's an XML data file that I export from ForeAthlete Logbook. That sits on the server. Two scripts, menu.php and run.php generate two (1, 2) quasi-JSON pages on the fly from that XML file. It ends up being a lot less data to transfer, and evaling is a lot easier and faster than parsing the same XML file client side. Of course, doing a server-side XML parse for every page and map load is a bit inefficient, but putting in caching isn't high on my priority list.

The Javascript handles setting up the Google Maps API stuff, fetching and populating the menus, and the importing of the coordinate data into the map.

Pretty hot. Of course, there's only one run in there right now, so I've got to work on populating it (which just takes pounding the pavement). Keep watching, as I'll continually be throwing more features in (any particular ideas can be added in the comments). I'm eyeing putting in dynamically created client-side graphs of speed and altitude using some using VML in IE and SVG (or Canvas) in other browsers.

Also, if you'd like to use the code, go nuts. It's nothing special. Let me know if you want comments in there or something.

Update: I modified the constructor for Loader so that the map is passed in and the menu is optional. That allowed me to make a fullscreen version that looks at the menu data and always displays the latest one. That allows me to put an iframe on this page pointing to that URL. As you can see, it makes a nice little addition to the left-side menu.
Thursday, February 02, 2006
"Its" hard to tolerate
When I was a super senior (my second senior year, for those of you not hip to that colloquialism), I had a part-time job working for University Housing. I worked in the marketing office (I even had the title "Marketing Specialist"), but my job was primarily web programming. I had some larger projects, but there were a lot of little random things that always needed doing. I'd crack open Photoshop or Illustrator and make little graphics or have to throw some "copy" up on a page.

I had to do a lot of proofreading too--try to catch obvious mistakes from getting up on the site (bad) or going off to the printers (really bad). This wasn't anything I saw as out of the ordinary. I had to write a lot in college.

I was a triple major, so, every semester, I had some combination of political science, economics, and computer science classes. At the end of the term, I'd have CS projects due, then I'd have to shift gears entirely and pump out a paper or seven.

I am, now, a bona fide software engineer. I go to work and I work with other software engineers. They talk to me. They send me e-mails. They send me IMs. They write comments in their code. And I'm constantly correcting their spelling and grammar. It drives me nuts.

For a lot of engineers, it's apathetic ignorance. Other than variable and method names, spelling doesn't matter in programming. I realize now that not everybody had to write extensively in college. That's kind of foreign concept to me.

Sometimes, I'm worried that I'm pushing the boundary of becoming a grammar nazi. I can't really tell if my coworkers' patience is wearing thin.

My interest in writing grammatically is appearance. Subconsciously or not, I know I judge a person's intelligence by his or her writing. Good word usage, flow, spelling, and grammar all convey to me that the person on the other end isn't a moron. As I don't want to appear a moron, I make a point of being careful when writing.

But a lot of the really crappy prose I get from people at work is from very smart people. I'm still getting over this fact.

This, I guess, is what happens when you turn a BA into an engineer.

This page is powered by Blogger. Isn't yours?