Entries for March, 2009

My hands are so chafed right now. 

(I was thinking this phrase after I got back sailing, and then I realized how incredibly dirty it sounded. Obviously, the best thing to do was to post said comment in my journal... along with the internalization. Jeez, I'm weird.).

This weekend was pretty chill - Damien and I went out on a quick photography tutorial session on Saturday with his new digital SLR - his pictures came out pretty great. One of the benefits of getting friends hooked on the photography bug is it reduces my need to bring my camera to every event I go out on - somebody else'll take pictures! Yay for laziness!

As is the case for today's sailing (All pictures courtesy of Damien). Damien, Melody (Damien's GF), and I went hit up Mission Bay for some sailing in a 16'. The winds were pretty great, and we got some great sailing in. While we were in the bay, we ran into a Somalian pirate ship captained by the infamous Max Mass: (GREAT JUXTAPOSITION: the pirate flag behind the rainbow sail...)

But instead of boarding our ship for oil, they instead threw over a couple of beers. Nice! Of course, that inevitably led to this picture:

This exposure was immediately followed by this exchange: (this conversation is not verbatim)

Me: Wait, a picture of me drinking beer while sailing a boat ... kind of irresponsible.
Damien: Yeah, there might be something wrong with that.
Me: Let's try again.

Much better.

Us: Totally responsible, mature adults. Right...

Posted by roy on March 2, 2009 at 02:30 AM in Ramblings, San Diego | 9 Comments

At what point does past knowledge become prohibitive? Experience and wisdom, the fruits from life's lessons, are supposed to guide you in your future decision making process. But at what point has everything already moved on, to the point that your decision becomes flat-out wrong?

I'll be a bit more concrete. I have always believed that Javascript-heavy applications are the worst things. My complaints about them boil down to a list:

  • Accessibility - Javascript is not always enabled in browsers. As amazing as the progress of browsers, the surge of mobile web applications clearly shows that scripting-heavy applications do not carry across into mobile territory.
  • CPU Performance - One application causes your browser to crash? Say goodbye to all your tabs.
  • User experience - Instead of relying on UI patterns that people are familiar with (the "back" button), Javascript applications tend to reinvent UI flows ("click this link to get a permalink, because we don't update the URL field). Every new application is a potential source of frustration.
  • Development time - All web applications are written with a server-side language. So you want to add another language that your app will need? Not to mention that all browsers interpret ECMAscript in different ways - have fun with compatibility!
  • Network degradation - Writing a server application that's 500K in code versus 25K in code has nearly no difference to the client. But try loading a site which has 500K Javascript versus 25K of Javascript. If the response time numbers are correct, a 500K Javascript application will certainly break a user's "uninterrupted" train of thought
  • Product direction - Have you ever tried to stop an engineer from implementing a "cool new feature" they hacked up in a couple of minutes (or maybe a late weekend session) which has absolutely nothing to do with anything? Trying to cut code to keep your application speedy requires some social capital.

But most of these (with the exception of the last point, which is more of a social problem), will be solved. But when do you make the jump?

At some point, browsers will fix the threading issue, and they will have faster Javascript interpreters (Webkit is already blazing forward on this front). UI patterns will emerge and be adopted by product managers. Faster networks and smarter caching (if Gears ever catches on) will reduce the network degradation issues with large Javascript applications. Javascript libraries like jQuery already make development across browers much easier (although jQuery's primary goals are to simplify cool UI effects for CSS/HTML wizards). Assistive technologies for disabled visitors will get much better and be able to handle scripted pages more effectively. Section 508 will become less of an engineering drag on web application development.

And at some point, applications that didn't make the jump to take advantage of these technologies will be left behind. But it seems to be a matter of timing, more than anything. IE6 still still have a noticeable presence on the net. Working for an enterprise software company, how far ahead of the curve do we want to be?

With limited resources, we can only pick and choose certain battles - which ones do we pick? Make it work well for older generations of browsers, or work on the latest and greatest which only work on certain browsers?

The argument from the business side is not as difficult as one would imagine when trying to justify accessibility: "Do you want to automatically slice yourself out of 35% (an arbritrary number I made up) of the market by making this *not* work in a particular subset of browsers?"

The easiest path out is always the one which only works on people who have your particular set-up. UI designers are currently burdened with multiple browsers, on multiple platforms, in completely variable environments. That's where expertise really comes into play.

And this doesn't even begin to factor in another huge issue for effective software development: maintenance. We once had an employee who was fully capable of "making things work" for all the different browsers, but the solutions were hacks on top of hacks, to the point that the application became unmaintainable. It became impossible to add new features to the front-end, or to fix other issues.

This is why server-side languages are so awesome to me - you write something, and it works. The same way. Every time.

But the scariest part is that a lot of technologies, like Flash, are actually "catching up" in addressing many of these concerns (they are successfully following the "feature checklist" software development methodology). At some point, they will become as accessible as heavily Javascripted applications (possibly even moreso). At that point, do you build something in Adobe Flex? Ten years from now, will it make more sense to write Flex applications? It's possible - there's a reason why Flash's file uploaders kick the living bejesus out of every browser's native uploader. I shudder when I think of a world where there become more examples of this.

Reinventing the wheel is evil, but with enough time, it becomes worth it. With time, you work out the kinks, and make it par with the accepted "standards."

So the original question, posed again: When do the rules you impose ("Javascript only for progressive enhancement - rely on scripting languages for rendering pages" become prohibit to your software's evolution?

Posted by roy on March 3, 2009 at 02:48 AM in Web Development, MindTouch | Add a comment

The Juice linked me to LyricsSift.com, which is my kind of site. They highlight cool lyric snippets (mostly emo ... just my style!) ... and from there, I found this song, which I've been digging today:

Motion City Soundtrack - Even if it Kills Me

I've got a lot of things to do tonight.
I'm so sick of making lists of things I'll never finish.
I've lived here for the last twelve years.
Since early 1995 all my shit has been in boxes.
But if I had a little more time to kill,
I'd settle every little stupid thing.
Yeah, you'd think that I would.

But I'm too tired to go to sleep tonight,
And I'm too weak to follow dreams tonight.
For the first time in a long time I can say that I want to try,
To get better and overcome each moment,
In my own way...

I wonder if I'll ever lose my mind.
I tried hard for a while but then I kind of gave up.
Winter is a killer when the sun goes down.
"I'm really not as stubborn as I seem."
Said the knuckle to the concrete.

But I'm too tired to go to sleep tonight,
And I'm too weak to follow dreams tonight.
For the first time in a long time I can say that I want to try,
To get better and overcome each moment,
In my own way...

I'm not saying that I've given up.
I'm just trying not to think as much I used to,
'Cause never is lonely little messed up word.
Maybe I'll get it right someday.

For the first time in a long time,
I can say that I want to try.
I feel helpless for the most part, but I'm learning to open my eyes.
And the sad truth of the matter is I'll never get over it,
But I'm gonna try,
To get better and overcome each moment,
In my own way...

I so want to get back on track,
And I'll do whatever it takes,
Even if it kills me...

Download or preview:

Posted by roy on March 3, 2009 at 06:27 PM in Music | Add a comment

OK, I know a lot of the songs I post here tend to be on the crappy end of the musical spectrum. But this song I'm about to post ... is by far, the cutest, funnest song I've posted on here.

Just listen to it. It's fun... it makes me want to learn those '50s dances! (Who's down?!)

Download or preview Pat Boone's "Speedy Gonzalez":

Posted by roy on March 3, 2009 at 11:52 PM in Music | Add a comment

Flight of the Conchords singing Korean karaoke ...

This reminds me of this video; watch the drummer as he gets a little too into the song:

Posted by roy on March 6, 2009 at 12:14 AM in Ramblings, Music | 3 Comments

Amazing how a little thing like a metallic stud finder could provide such office entertainment:


Posted by roy on March 6, 2009 at 11:29 PM in MindTouch | Add a comment

Final result of Saturday night project:

The frameset comes from RedEnvelope and it looks pretty gorgeous. I'm a little peeved that the two 5x7 frames came chipped - I'll have to follow-up with them and try to get them replaced (or buy some paint, I guess).

Installation wasn't that hard - I don't know what people are complaining about in the reviews of the thing. I did need a level - the paper template had me installing the thing slightly crooked. 

I am a little nervous - I don't have a drill, so I've been mounting everything directly into the drywall (recipe for disaster, I'm sure of it). I'll have to buy a drill and remount this sometime in the future with the proper drywall anchors.

Since I'm all about giving props for ideas: Idea originally came from Melody (Damien's GF), and the idea for the photos came from Jennifer - I was originally going to buy classic b&w photographic prints, but she convinced me just to use my own ones.

Posted by roy on March 8, 2009 at 01:11 PM in Loft, San Diego | 7 Comments

Oh, it really is a vicious cycle. About five months ago, as I was standing at my dentist's office, I probably thought to myself, "Gee, it'd be a good idea to schedule a dentist's appointment real early, so it would force me to get into work early!"

Well, March me was not happy with November me for making that decision this morning. NOT VERY HAPPY AT ALL. It reminds me of college, when night-time me would want to stay up playing poker and eating Waffle House with friends ... much to the dismay of morning me, who would have to wake up early to deal with some academic nonsense.

Just cause March me was angry at November me, March me decided to screw over July me with another 8am appointment! And guess what? It's after the 4th of July weekend ... ooh boy, July me is gonna be real happy coming back from an extended break with an 8am dentist appointment... and getting into work early.

Game, set, MATCH.

P.S. I'll be in Seattle this weekend! Any of you Seattle people want to grab some drinks, drop me a line. I'll be with some other people, but I'm sure I can squeeze away some time to grab some coffee (or hot chocolate).

P.P.S. I need to buy a winter coat. Crap, it's gonna be cold up there.

P.P.P.S. Morning me is gonna be so pissed that night-time me is writing this post.

P.P.P.P.S. Will this post ever end? No, YOU stop reading! Ok, I'll stop writing, but you have to stop reading! On the count of 3. 1..2..3.. (silence) YOU DIDN'T STOP READING! okokok I'll stop writing now. Good night!

Posted by roy on March 10, 2009 at 01:16 AM in Ramblings | 11 Comments

Dear intarwebs,

Does anybody know a quick and simple application for Windows that will quickly let me take a screenshot and crop it quickly? (I already have a good one for Mac that works well). It needs to be able to stay in my taskbar without consuming a lot of memory! (I have a crappy laptop, and running a VM and Firefox already drain my limited RAM)

I oftentimes see little UI gems on random sites I'd like to start clipping and storing for future reference, but it becomes such a hassle for me to use Photoshop to do this.

Bonus points if it'll auto-post to Flickr.

Posted by roy on March 10, 2009 at 11:44 AM in Ramblings | 12 Comments

Just thought I'd share this awesome website to any hip-hop fans out there: SnacksAndShit.com

It's a site that takes rap lyrics out of context to highlight how ridiculous they can be. For example: (italicized commentary is from the site).


"Whoo! The snakes, the grass, too long, to see! UH! The lawnmower. UH! Sittin right next, to the tree! C'mon!" - DMX, Who We Be

I feel like here DMX is trying to really get things pumped up and amped. But you can't really do that by describing where lawnmowers are.

And #155:

"It's a privilege to breathe the same air that I farted in." - Joe Budden, Dumb Out

I just picture Joe Budden farting really loudly in the park and then saying, in all seriousness, "You're welcome."

It simply doesn't get much better than that.

Some other random links I'd like to share from my recent readings:

Posted by roy on March 12, 2009 at 12:23 AM in Ramblings, Music | 2 Comments

There has to be some type of psychological boon when daylight savings begins. Lately, I've been leaving work in a much better mood 'cause it's still light outside. It just doesn't seem like my day is over - that I didn't spend all day at work and that I can still get some stuff done.

In fact, I remember how much it sucked to have everything go dark at 4:45 PM just a few months ago... I wish they could keep the time adjusted like this permanently!

. . .

And because sharing is caring, check out Scanwiches.com - high quality scans of sandwiches - a site that Joey would approve of. (I love the catchphrase: "Scans of sandwiches for education and delight.")

My favorite? BLT on wheat:

Now that I think about it, you know what would be great? If somebody took these photos, printed them all out, and made a huge poster with all of them. That would be fantastic. (I'm only halfway joking right now. I must be tired, cause the more I think about it, the better of an idea it seems. Crap. I'm gonna do it).

. . .

I have many thoughts on the economy, but it just got long-winded and boring. So I'll just summarize: I feel very optimistic right now. At some point, all the things that have been taking place lately (guaranteed debt for corporations courtesy of the US government, a low Fed funds rate, banks having incredible liquid reserves, American households paying down debt and increasing their savings rates, companies cutting fat, all the money that is simply being hoarded, AND the economic stimulus plan) is all gonna hit the economy, and BOY are we gonna feel it.

Is all the deleveraging over yet???

Posted by roy on March 12, 2009 at 11:28 PM in Ramblings, Finances | 3 Comments

I had a great time in Seattle; I got to catch up with Oliver (and also meet Oliver's GF, Linda, who apparently has friends who internet-know me!), Borst, and Stephanie. The weather was what I expected: rainy. It was also especially cold and windy while I was there, but fortunately I came prepared with a winter jacket and a scarf!

I'm always amazed at how different cities feel - Seattle definitely had a more cultured/hipster feel to it than San Diego does. (Washington D.C. has this academic feel when I walk around downtown, while the MIT/Harvard part of Boston has this nerdy feel.)

While there, I learned to appreciate a good latte - I guess I never liked lattes here cause they all taste horrid. If I lived in Seattle, I'd probably be a coffee fiend (the weather seems to have a lot to do with it).

Trying to be cool, I decided to only take a film point-and-shoot camera on this trip - so no digital pictures! I'll need to send in the film (Tri-X) to get developed, then I need to scan them. Soooo, you'll only probably see those pictures a few weeks from now... unless somebody else uploads some pictures!

Had a great time seeing you Seattle folks ... and thanks to Borst for letting me couch-surf the weekend!

Posted by roy on March 16, 2009 at 01:03 AM in Travel, Ramblings | 1 Comments

Six years ago today, I started Tabulas. It's so odd, because I own almost nothing in my life as old as Tabulas.

It's so odd.

Six years of planning, designing, scripting, building, hacking, maintaining, and supporting Tabulas. Given how much of a non-committal person I am, it's an impressive feat that I've kept it up for six years, all by myself.

Tabulas has meant a lot to me because of what it represented and how it shaped who I became. It's been the common thread in my life since college ... and all the changes I made to become who I am today, that project played a huge role (Tabulas also epitomizes my shortcomings as well). I know it sounds vaguely pathetic to try to find metaphors for my life in a website project, but I have poured a lot of my ideas and time into this project.

I started Tabulas while I was still in school. My then-girlfriend went to study abroad in Australia, so I had a lot of free time. All my friends were using Xanga at the time, and I knew I could do a better job. In a typical show of overconfident male bravado, I decided it'd only take me a week or two to build a better Xanga/Livejournal. And here I sit six years later :)

Without Tabulas, I would have never taught myself scripting. Without that, I would have never gotten a job at MindTouch. I'm honestly not sure what I would have done - I might have been a miserable chemist/economist/med student right now. While Tabulas isn't a smashing success (it was never meant to be a commercially viable product, just something I shared with the world), I can still point to it and say, "Hey, my early twenties weren't wasted." (MindTouch is what I'm incredibly proud of in my mid-twenties).

There's so much I still want to do with Tabulas. To see random strangers post replies to my Tabulas birthday post is encouraging - people still find vaue in it.

I can honestly say that I never found as close of a sense of community of strangers than I did in the early days of Tabulas. The most random people got to be friends, and it was really cool and exciting. It's sad that six years later, community software still cannot achieve this goal (Facebook doesn't count - it is meant as a method of keeping in touch, not for discovering new and exciting people).

Mark Cuban recently wrote about how the Internet is dead: "My point is that the internet is a stable platform. Its a utility. Its evolved to the point where you can count on it and develop applications for it without much fear that its going to change." I can understand the sentiments, but I still see huge ways that the Internet is simply failing to help people connect (Twitter, interestingly enough, becomes less useful as its networks grow larger - consider it the reverse of the network effect).

Statements like these make me want to work on Tabulas again, to start bringing back a real sense of fun and excitement back to connecting with people. (Not that I have any revolutionary ideas - I'm sure all my ideas have already been well-executed).

The Internet is powered by writing. As much as video and audio are important, fundamentally, writing drives the quality of the web. And the problem with writing is that we all want validation of our ideas. And existing blogging tools (WordPress, etc.) do NOT facilitate this. How many times have we written something fun, and then watch it get ignored by the void? How many people have their own WordPress blog, but no communities around it?

I am not an interesting person, nor am I particularly a good writer. But I get more feedback on my posts than other people with stand-alone sites. This is because of the community that I'm plugged into, and the repartees (through comments) that keep people interested.

While blogging isn't even remotely a good medium for conversation and discussion, it's (sadly) still the best medium for it on the net. It reflects pretty poorly on existing projects like WordPress and LJ when a site like Twitter can come and "replace" conversations on blogging like that. Sad, indeed. 

If I weren't so constantly drained from MindTouch, I might try to kick-start Tabulas again. Maybe I'll shelve some of my recent new hobbies to focus on Tabulas for a couple of weekends.

Here are some responses from Tabulas users:

Posted by roy on March 16, 2009 at 10:17 PM in Personal, Tabulas | 7 Comments

I'll be honest: I understand this song and am pretty guilty of having this mentality towards certain people.

All-American Rejects - Gives You Hell

I wake up every evening
With a big smile on my face
And it never feels out of place
And you're still probably workin'
At a 9 to 5 pace
I wonder how bad that tastes

When you see my face
Hope it gives you hell
When you walk my way
Hope it gives you hell

Now where's your picket fence, love?
And where's that shiny car?
It didn't ever get you far
You've never seemed so tense, love
I've never seen you fall so hard
Do you know where you are?

And truth be told, I miss you
And truth be told, I'm lyin'

When you see my face
Hope it gives you hell
When you walk my way
Hope it gives you hell

If you find a man
That's worth a damn
And treats you well
Then he's a fool
You're just as well
Hope it gives you hell
I hope it gives you hell

Tomorrow you'll be thinking to yourself
"Where did I go wrong?"
But the list goes on and on

Now you'll never see
What you've done to me
You can take back your memories
They're no good to me
And here's all your lies
You can look me in the eyes
With the sad, sad look
That you wear so well

When you see my face
Hope it gives you hell
When you walk my way
Hope it gives you hell
When you hear this song
And you sing along
But you never tell
Then you're a fool
I'm just as well
Hope it gives you hell

Download or preview:

Posted by roy on March 18, 2009 at 04:05 PM in Music | 3 Comments

Just because I want to give Bert a hard time, I'm going to post his LAME-O attempt at persuading me to visit him in Vegas this weekend for March Madness... he starts off pretty strong, and then ... well... let's just say he gives up.

Funny, funny.

Currently feeling: amused
Posted by roy on March 19, 2009 at 12:38 AM in Ramblings, Foolishness | 1 Comments

Always stellar reporting from Fox News: 'World's Deadliest Spider' Found in Whole Foods Produce Section.

It starts off:

One of the most deadly spiders in the world was found in the produce section of an upscale Oklahoma grocery store.

Intriguing byline. I wonder how it ends:

"We're hoping eventually this will end up in the development of real drugs for the treatment of erectile dysfunction."

Wait, what?

America, fuck yeah! Awesome!

. . .

Been listening to the All-American Rejects' latest, "When the World Comes Down." Really digging this track (it's a duet!)

The All-American Rejects - Another Heart Calls
Do you remember when we didn't care?
We were just two kids
That took the moment when it was there
Do you remember you at all?
Another heart calls

Yeah, I remember
When we stole the night
We'd lie awake but dream
Until the sun would wash the sky

Just as soon as I see you
I didn't lie
But didn't I tell you?
As deep as I need you
You wanna leave it all

What can I do?
Say it's true
Or everything that matters breaks in two
Say it's true
I'll never ask for anyone but you

Talk to me
I'm throwing myself in front of you
If this could be the last mistake
That I would ever wanna do
Yeah, all I ever I do is give
It's time you see my point of view

Just as soon as I see you
I didn't lie
But didn't I tell you?
As deep as I need you
You wanna leave it all

What can I do?
Say it's true
Or everything that matters breaks in two
Say it's true
I'll never ask for anyone but you
And I know that you want us
To figure it out
And God knows I do, too
What can I do?
Say it's true
I'll never ask for anyone but you

I'm sorry
So what?
That you don't think I've said enough
I'm sorry
I don't care
You were never there

Just as soon as I see you
I didn't lie
But didn't I tell you?
As deep as I need you
You wanna leave it all

What can I do?
Say it's true
Or everything that matters breaks in two
Say it's true
I'll never ask for anyone but you
And I know that you want us
To figure it out
And God knows I do, too
Yeah, what can I do?
Say it's true
I'll never ask for anyone but you

Download or preview:

Posted by roy on March 20, 2009 at 10:46 PM in Ramblings | 1 Comments

After being a poor excuse for a Tar Heel fan throughout the year, I promised myself I'd catch every possible Carolina game during March Madness.

At home, I don't have cable, so I generally go out to the bars to catch games. But today, CBS had blacked out the Carolina game in favor of the Washington/Purdue game (no real surprise, since it *is* a West Coast team).

Much to my surprise, ALL the March Madness games are streamed from ncaa.com! The site's using Silverlight to stream the games, and I am pretty surprised at high how quality the video is - it's just like watching TV. Unfortunately, I can't seem to get Silverlight installed on my Mac PPC, so I had to come into the office and watch the game on my office laptop - I hope nobody is on my floor, hearing from the random yells of joy (and anguish) as I watch the Carolina/LSU game.

Kudos to CBS and kudos to the Silverlight team (now please make it work on my Mac!)

Posted by roy on March 21, 2009 at 04:39 PM in Ramblings, Sports | 8 Comments

You know what'll pump you full of testosterone? Buying tools from Home Depot. After consulting with Corey, I am now the proud owner of my first electric tool: a Ryobi 12 Volt Cordless Drill. I am decidedly old fashioned (don't use the dishwasher, did not own electric tools, refuses to get a smartphone), but holy CRANK, what was I missing with this drill?! How did I live without this?!

I had a TON of fun just drilling holes into the walls. I finally got the free-standing shelf installed by my front-entrance, and I also put up a nice picture frame for the bathroom. This week, I'm going to try to finally finish up mounting a bunch of framed posters to one wall (an idea which sounds awesome in theory, but may fall flat upon its execution), so I'll get to make FULL use of the drill.

And like Corey, I will be mounting my television to the wall this week. Fun times ahead!

Posted by roy on March 22, 2009 at 11:26 PM in Loft, Ramblings | 1 Comments

this is miserable roy, checking in at 3am. just thought i'd like to share my pain with you (arrrgggghhh).

about 6 hours ago, i dropped a poster frame on my left big toe. it caused an immense amount of pain, that i hoped would pass. (i also re-enacted that family guy scene with peter going "ahhhh" for a couple minutes)

unfortunately, this seems to be the opposite of what is actually happening - the pain has actually been getting worse, to the point where i can no longer fall asleep. i'm convinced this pain is in my head, cause there's no reason my toe should be feeling worse - i have not been walking on it, and have been very careful not to touch anything with it. mind over body ... come on! kick in, advil! block those pain signals!

argh. i remember the last time i was up all night cause of my body - it was in high school, after i downed too much medicine, and my body was dry heaving it up all night. oops. my threshold for pain must be lower than a five year olds or something. pain cause of something on a dropped toe? man... how embarrassing.

hopefully this pain passes in the next hour or two ... or i'm gonna have to skip work - all cause of a stupid toe. lame!

Currently feeling: PAINED
Posted by roy on March 23, 2009 at 03:16 AM in Ramblings | 4 Comments

1.) Toe still hurts. I doubt it's broken - I think it's still bleeding underneath the toenail, which causes some discomfort. I think I will run to a doctor today or tomorrow to get it checked out (if I can figure out who I'm supposed to - I hate insurance).

2.) I decided to bike to work today - and halfway through, the front derailleur decided to be obnoxious. Had to gimp my bike back to the store, then take a trolley up to work. Never has it taken longer to get into work. And now I'm gonna be out another $50 as they replace the front derailleur. Awesome.


Posted by roy on March 23, 2009 at 12:06 PM in Ramblings | 7 Comments

It's really great to know that if I ever feel down-in-the-dumps about not getting comments, all I need to do is injure myself. That brings out ALL the sympathy commenters.

Of course, certain people (*cough*) seem intent on calling me up and ridiculing me for writing multiple posts about the most inane of all injuries.

Just for that, this will be post #3 about my ... TOE! YES! JUST WHAT YOU WANTED!

I have a picture of my toe as of today. It is lovely looking. I will be a gentleman and simply link to the photo, if you're curious to see what it looks like.

(ok seriously, this should be my last post dedicated solely to my toe. if i wrote another post on this, i'm pretty sure i'd have to start a new category for it. of all the things i've been working on lately, it's vaguely pathetic that i spend so much time writing about this)

Currently feeling: TOErrible
Posted by roy on March 23, 2009 at 08:42 PM in Ramblings | 3 Comments

On Tuesday Night's, I've been attending Quiz Night at Bondi's. Normally I do alright in helping my team out, but tonight was just NOT my night. The categories and questions just weren't things I knew much about (the focus was the '80s).

A combination of drinks and my desperation to contribute to my team led to an amusing moment where apparently I got really animated at being able to identify the song and movie for one of the questions (category was "Music in Movies"). 

Unfortunately for my manliness, the song and movie I identified was Leann Rimes' "Can't Fight the Moonlight" from "Coyote Ugly." Ohhhhhh crap.

(In my defense, that movie was SO INCREDIBLY deceptive - it seemed like a totally awesome guy movie ("hot girls dancing in skimply clothes"), but it turned out to be a TOTAL chick flick. DUDES BE WARNED. IT'S NOT WORTH IT TO SEE PIPER PERABO.)

The second contribution I made in that category was identifying "Irene Cara" as the singer whose career launched from the songs from the movie Footloose.

Dear LORD, I have REALLY suspect musical tastes.

But that's not the worst of it. Last week when Hannah visited, I decided to let my iPod do a random song selection for our ride back. Guess what the first song was?

Vanessa Carlton's "A Thousand Miles."

And the third song? The Spice Girls' "2 Becomes 1." Annnnnnndddd I guess that's Hannah's first impression of me!

I know some guys are burdened with having that "quality" that makes them seem gay when they're really not - unfortunately in my case, I don't have anybody else to blame except myself.

. . .

In all seriousness, I oftentimes wonder what people who've read this Tabulas extensively think when they first meet me in real life. As much as I have always loathed it, my reputation tended to precede me back in high school and college (the reason I loathed it is that my relationships with people always ended up confined based on their perception of what they heard - and my shyness - oftentimes confused for aloofness - never improved those relationships. This is also why I try very, very hard to be too swayed by first impressions, or to even generate them). 

I don't take writing in this Tabulas very seriously (this entry should be a clear indication of that) - I tend to highlight either the (1) most embarassing events or (2) the most depressing events.

So people who have just gotten to know me through this journal generally get the most absurd events, or the most depressing ones. What kind of picture that must paint!

I've just been thinking about this lately because I've been meeting up with a lot of random Tabulas users lately (Steph in Seattle, Hannah in SD, and looks like there's a couple San Diegans who want to meet up, too!). I guess they're all able to see through the sarcasm and silliness, cause otherwise they'd just be meeting up with one weird dude.

Currently listening to: metallica - nothing else matters
Posted by roy on March 24, 2009 at 11:16 PM in Ramblings, Foolishness | 6 Comments

I went to O! Brothers for dinner - this is a chain that caters to people who love organic food and who love burgers. An interesting mix, I know. I had been there once for opening, and their burgers are actually pretty good! They don't leave you feeling greasy, and they're quite flavorful. Think of it as an upscale In-N-Out.

When I got my meal, I noticed something odd-looking sitting at the top of my organic (non-pesticided, I'm sure) salad. I turned it over with my fork ... and realized it was a larvae. (Blast me for not taking a picture now) Gross.

What's pretty funny is I called the waiter over, and when I first ask him what that is, he goes, "Oh, it's feta cheese." Then I point again, and he sort of stammers and says ... "looks like a French fry."

A FRENCH FRY?! I nearly busted out laughing. I mean, come on... am I seven years old?

Anyways, they were cool about it - I actually only wanted them to take the larvae away (I was pretty hungry at this point), but they away my whole plate and remade it (totally unnecessary).

That leads me to wonder, though ... how many times have I blindly chomped into my salad, not inspecting it for bugs? How many bugs have I consumed in my life?!

Most importantly, I'm not sure I can support organic farming anymore. I say, use the pesticides! Kill the bugs! Would I rather eat salads laced with toxic chemicals I can't see, or would I rather eat protein-filled bugs that are clearly gross? The answer's obvious, guys.

Or maybe I'll just be like Damien and not eat vegetables anymore.

"O! Brothers: For a truly organic experience!"

Posted by roy on March 25, 2009 at 09:00 PM in Ramblings | 8 Comments

Edit: Crap, this was a long one. Because I know none of you will read this, here is a picture of the beautiful Alona Tal as a peace offering:

Sadly, this picture is more valuable than all the words below :(

. . .

Doug Bowman (visual designer) wrote an interesting post about leaving Google: (emphasis mine)

Without a person at (or near) the helm who thoroughly understands the principles and elements of design, a company eventually runs out of reasons for design decisions. With every new design decision, critics cry foul. Without conviction, doubt creeps in. Instincts fail. "Is this the right move?" When a company is filled with engineers, it turns to engineering to solve problems. Reduce each decision to a simple logic problem. Remove all subjectivity and just look at the data. Data in your favor? Ok, launch it. Data shows negative effects? Back to the drawing board. And that data eventually becomes a crutch for every decision, paralyzing the company and preventing it from making any daring design decisions.

A response from somebody a little less critical of Google: (emphasis mine)

I don't think Google had to be a bad fit for you, but that you were put in to the wrong role. Back when Irene Au was building the User Experience team at Yahoo, visual designers (VisDes) were often paired with interaction designers (Gooeys) and usability researchers (UER) and together they would tackle design problems at the product level. This kind of arrangement would have probably been more effective at Google as well. Hiring visual designers only to silo them together means the visual design team lacks the benefit of sufficient inroads in to the product teams the interaction designers have been working with for years. This makes your job impossibly hard, because what product team welcomes a design that is handed to them without their involvement?

Scott Stevenson cuts through the personal feelings and summarizes the crux of the issue:

Visual design is often the polar opposite of engineering: trading hard edges for subjective decisions based on gut feelings and personal experiences. It's messy, unpredictable, and notoriously hard to measure. The apparently erratic behavior of artists drives engineers bananas. Their decisions seem arbitrary and risk everything with no guaranteed benefit.

The important thing is that design decisions are made based on personal experiences. Design decisions are made based heavily on context. The human mind is wonderful in its ability to synthesize seemingly disparate thoughts and ideas at once and to reach a singular conclusion. Subconsciously, I remember bad as well as good UIs, then draw on those ideas when I'm trying to solve a problem.

Engineering decisions can largely be made without any context - and their results are far easier to measure with unit tests. Well written code prevents the need to understand the whole environment you're in - each feature can be modularized and you can have decent success without any cross-pollination of engineers between features. In fact, technologies nowadays are all about gluing together functionality from different languages through the usage of APIs - talk about not needing context! (Caveat reader: This is a slight simplification so I can drive home this point.)

Good design decisions cannot be made without context - while engineering is more about making your puzzle piece fit with the adjoining pieces, good design is about understanding how your piece affects the whole puzzle.

My experiences about data (from chemistry and economics) was that they always assumed a perfect situation. Does a cannonball and feather fall at the same speed if dropped? If you're in a vacuum, sure. But when are you ever in a vacuum? In the same vein, I'm a little skeptical about relying purely on data - it makes the assumption that the same set of factors that gave you that initial data still are applicable.

A good example of this is Amazon. Amazon is notorious for A/B testing to maximize their revenues. While I don't doubt their methodology (they are people who are smarter and more experienced running those teams), are their product pages the shining pinnacle of usability? The human experience in me tells me a big fat no. But what do I know?

What's particularly interesting for Amazon is when they redesigned their homepage to remove strong emphasis on signing-in. Go to their homepage and try to quickly identify the log-in link. It's bured as "Sign in to receive personalized recommendations." Apparently this works - but I feel it's "very wrong." Guess in this case, data wins?

. . .

I believe that software succeeds based on two key components: the strength of its user interface and its ease of installation. PHP and mySQL succeeded because they were always bundled together, and they were installed on every Linux distro by default. Flickr blew all other photo hosting sites because of their humanizing user interface. phpBB and WordPress, both technical disasters (have you ever looked at the source for either of these?) blew out Perl-based scripts (which had first mover advantage) because PHP apps were simply easier to install - it also helped that WordPress and phpBB had passably good user interfaces.

Even at MindTouch, this is clearly evident. Wik.is, our SaaS offering, is our top distribution channel. No need to install - just sign up through your web browser. Our VM image (easiest server offering to install) is incredibly popular - and that's followed up with our Linux RPMs. While we don't have specific numbers yet, I would hazard a guess that pure source downloads account for a negligible number of installs.

While maintaining all these packages remains a huge drag on releases (Pete and Mathieu truly are superstars), I'm firmly of the belief that these multiple packages are the lynchpin of our success. You have to ask yourself: Why would you wittingly lock yourself out of success in a 10% market because you don't make it easy to install?

I throw a stink anytime any feature/design implementation only works on one browser. Either way, you've locked yourself out of 40% of the market out of the gate. When is 40% ever an acceptable (40% FF + IE, 20% misc browsers) percentage? Why would you set such low standards? Unless you can hit 90% of your audience, there seems really no point in building that feature or doing that particular design.

I've been fortunate in the sense that Aaron and Steve are patient with my never-ending obsession with creating usable software (although lately I've been slipping on this just because I've been so busy). I remember in the early days how obsessed we all were with creating the best user experience. It took us nearly two years of real effort to complete the Ace skin (which is hideous, but I'm still proud with how well it's stood the test of time).

An example of this is the control panel of MindTouch. Over the past two major releases, we've iterated through it twice. This goes somewhat contrary to my previous statement, but this is a section that only appeals to less than 1% of the users who ever use MindTouch. So why would we ever spend so much time fixing and refining a feature that affects so little of our user base?

Well, the easiest justification to use is that administrators tend to be the ones who make the judgement call on the software - and making their lives easier helps them to understand the value of MindTouch.

The real answer I tell myself is that it's a part of the application, and any part that looks or acts like crap reflects poorly on the whole application. Mediocrity spreads since it's the path to least resistance - and to have such poor design principles and usability in one component of the site makes it very easy to bleed that crappines to other components.

After two years, I finally decided to throw the Deuce skin I had been working on (off and on) for two years into the latest release. It was my hope that I could run usability tests and get some more data points on what the optimal skin is for utilizing the front-end, but I realized that given how many different use cases there are, that would be a futile task.

I had been using MindTouch for about 4 years. All the data I needed was tucked away somewhere in my mind, and I just needed to trust my mind and instincts to create a cohesive design that would be usable, aesthetic, without taking away from MindTouch.

I have no data points to support any of the design decisions in Deuce - the main design was put together based on my feelings and instincts. Yet it seemed to turn out fine - I've enjoyed using it on my personal VM (it's been a pleasure drafting content in it). You can check out the skin in action at http://trunk.mindtouch.com/

. . .

I was showing my friend MindTouch, and I even surprised at how much progress we've made with such a small team. Not only on the technological front (the stuff we do is pretty awesome), but how much polish the whole application has. Even the roughest parts of our application (link + image dialog) aren't horrid compared to some other applications (hel-lo, WordPress). The file upload process? Pretty great. The control panel experience? Awesome.

It was nice to take a step back and appreciate the hard work we had done. While each battle to create the best UI seemed distinct, at the end, it all came together to create an application that is truly beautiful to use.

What does the future hold? I'm concerned that as I get spread even thinner at work, my ability to truly focus on the user interface, one of MindTouch's unpublicized strengths (good user interface is simply something you don't really sell against, unfortunately) will wane. And that would truly suck.

One of the realities of my job is I have to deal with internalizing different conflicts and finding the best solution. Decisions must oftentimes be made at the expense of something else. We can cut corners on a feature and "just get it done", or we can spend the extra time really making it awesome. You can either pay big costs to build an architecture to build a feature (getting the benefit of being able to build more stuff on it), or you can simply build the feature by itself in a quarter of the time. Each release must be balanced by having features people want to buy, features we know will be great but aren't requested ("looking ahead"), and code refactors to pay down technical debt (from when we cut corners or we know it can be done in a better way) which do not exhibit to end-users in ANY way.

All three are necessary for a successful product, and that seems to be the role of a successful product manager - balancing these acts into good releases.

Posted by roy on March 28, 2009 at 01:05 AM in Ramblings, Web Development, MindTouch | 9 Comments

I'm going to start this post off by saying that I absolutely think Kanye West is one of the best artists alive. Remember that his first album came on in 2004, and he's still going strong. In a field where one-hit wonders are the norm, Kanye has managed to execute at a high level for five years. Can you imagine how difficult this must be? How draining it must be, emotionally, physically, and creatively? For comparison, remember that Eminem blew up in 1999 then took a hiatus after 2004. Five years of topping the charts and creating fantastic album after fantastic album is something way harder than anybody that's reading this site could probably comprehend, and I have an appreciation for that level of excellence.

Another thing I truly respect about Kanye is his understanding of art and creativity. He has commissioned remixes of his own works (the Sky High remix was absolutely fantastic) and he's also given creativity liberty for his music videos: after seeing Zach Galifinakis lip sync the whole Fiona Apple song "Not About Love", Kanye commissioned an alternate video ... two white guys on a North Carolina farm lip syncing to hip-hop:

When it comes to giving credit where credit is due, I've seen nothing but humbleness from Kanye - he has not been shy about attributing his success to the artists he sampled (look at early interviews for College Dropout) - even recently: "On July 3, 2007, West, who had repeatedly expressed being an avid fan of Daft Punk, told Zane Lowe on BBC Radio 1 that although he believes "Stronger" is a great song, it does not compare to the sampled original."

But sometimes he can get a bit ... too big for his britches. I was watching his VH1 Storytellers for his latest album 808s and Heartbreak, which really was a fantastic show - the lighting/set was amazing, and the live performance brought a whole different feel to the song.

In this particular song Amazing from the VH1 set, Kanye got a bit carried away with himself:

At the end of this song, Kanye starts talking about the need to be amazing. I'll quote the transcript for you:

Amazing ...
Michael Jackson ... amazing (crowd cheers loudly)
Michael Phelps ... amazing (crowd cheers)
OJ Simpson ... amazing

The crowd goes silent. Kanye tries to justify himself with this comment:

Is he not? What he did, when he did, what he did, was he not amazing, though?

Come on now, Kanye. First time I heard this, I nearly busted out laughing. And you know what makes this funnier? Quoting those lines over and over again after some Sapporo and sake!

Posted by roy on March 29, 2009 at 01:53 AM in Music | 4 Comments

I decided on my Seattle trip to take a film point-and-shoot camera. It sounded much cooler as an idea than in reality - I forgot how long it took to get film back (a week for Tri-X) and that I would actually have to scan them ... (unfortunately my film scanner was in NC).

All I really had to do was wait for somebody else to post the pictures! Winner: Stephanie!

Of particular interest is this picture of me, Oliver, and Steph celebrating the sixth birthday of Tabulas:

Look at that SUPERSWEET shirt Oliver's wearing! More pictures at Steph's post.

One thing that Seattle is known for is beautiful (and tasty!) cappuccinos:

Shows you how ignorant I am when it comes to all things coffee: I never knew they could do art with the milk.

Posted by roy on March 30, 2009 at 10:46 PM in Ramblings, Tabulas | 5 Comments
« 2009/02 · 2009/04 »