How To (Not) Get an Interview With The Google

Posted June 27th, 2007 in Rant, Software by erich

A week or so ago, I read Tim Bray’s post about X-Me on Facebook being a virus, and I had to respond, being one of the “little guys” that has low usage numbers. A friendly Google tech recruiter read my post, found this dusty blog, wandered over to CLG where I work, and emailed me to ask if I had any interest in working for Google.

At first glance, seems kind of cool. But I’m not moving to California, as I’ve got all my family and extended family in the Chicago area. The recruiter kindly mentions that they have a Chicago office. Nice! Let me google them up…

*stomach lurches*

It appears that the Chicago office for Google is essentially an ad sales office (fine) with 3 developers who work in a corner. The developers are (mostly) the people behind subversion, which is one of my least favorite technologies that exists right now. I am struggling to understand why so many people are in love with it, apache/jakarta is switching their projects to it, and yet CVS works just fine, barring some warts. Eclipse covers up most of those warts, and since I breathe Eclipse 24×7, I’m fine with it.

But subversion… Well, I am one of the few non-believers, apparently. It was forced on me at CLG (long story), and turned out to be slooooooooow, taking 5 minutes to sync our projects, vs maybe a minute or less with CVS. It must take extra time to not do keyword substitution (j/k) which okay, I don’t like that CVS does, but whatever.

The big one for me is that subversion crapped out on me. Our repo server died, and I had a backup on another box, but apparently one of the files had some kind of strangeness in it, such that svn couldn’t read it. Um, okay, well that’ll just break one file, right? Nope. Entire repo, dead. WTF? You gotta be kidding me. An error in a single file kills my entire 6-year commit history??? And the error was caused by svn’s file handling, as far as I can tell, as I googled for it and a few other people had the same problem. When they asked the developers about it and showed them the corrupt file(s), the developers’ answer was, “that can’t happen” (paraphrasing). Um, except it did. To him. And me too. To be fair, the developers went on to try and fix the problem(s). But problems that are this varied, complex, and almost impossible to reproduce on demand are unlikely to be completely resolved. The bottom line is, the svn guys have made their own database thang for storage, and it sometimes blows up, taking your entire repo down with it. Not cool.

Don’t tell me I should have had more backups going further back in time – that’s a cop out. I had backups, but they were useless because one file in the middle was busted. Unacceptable.

No subversion for you! Er, me. I’m sticking with good ol’ CVS, which sucks a little, but it’s a devil I know, with warts I know, and if I back up the files for it, then I know goddamn well that I’ve got a reasonably good backup of my repository even if there’s a twiddled bit in there somewhere due to disk failure or whatever.

So I was compelled to mention my anti-svn feelings to the recruiter, in as friendly and upbeat a way as I possibly could, and I asked about working on other projects or remotely for another office, and haven’t heard back. So methinks, no interview for me. Could have been an interesting experience, but seeing as I hate goofy interview questions/riddles about manhole covers, numbers of gas stations, and any of those moving Mt Fujiisms, it might be for the best.
:-)

GIVM and the Facebook Platform

Posted June 25th, 2007 in Business, Software by erich

For the (entire world’s population – my direct family) who don’t know about GIVM.com, it is a very cool (IMHO), Web 1.0-ish shared gift list manager. It was born out of the frustration of trying to coordinate xmas and birthday gift giving amongst family members, especially as the family(ies) grew from people such as myself getting married.

So, the GiftList was born, originally running at bratton.com/giftlist, and it has been running for six years now, with about zero problems. It’s also been running with about zero growth. *sigh* Granted, I haven’t really tried to market it at all, because of the hope that it would virally take off.

The big problem is that the viral analogy doesn’t work for gift giving, because most gift circles are just that – circles. They have very few branch points to virally spread the word. Okay, yes, in a perfect world, somehow overlapping families would spread the word, but it hasn’t happened much at all.

One of the most amazing things about GIVM is that I managed to snag givm.com a while back. Crazy! I love the name, and when I saw it as available, I was in shock for a while before I bought it.

So, last month I heard about Facebook opening up their “platform” API thingamdooey, and I spent a few long nights porting GIVM to run inside of Facebook. One big bonus was that I back-ported some of the CSS to givm.com, so now whether you use givm.com or the GiftList app inside of Facebook, they both look pretty good.

Overall the dev experience was fairly straightforward, but I lucked out a lot that my schema design matched up very cleanly with Facebook’s. And I rock, of course.

After a week or so of anxious waiting to be approved into the Application Directory, I was in! There are a few other gift list type apps available on Facebook, but none of them have the same usability that mine has. I’ve had six freakin’ years to make sure that grandmas and grandpas can use this thing! I know where most gifts come from, baby, and you’ve got to play to your audience.

Facebook? Grandparents? Hm, not quite a match-up there yet. And that of course is the cart before the horse problem I’ve got, which is that Facebook is supposed to grow from 20ish million users to 50ish million users by the end of the year. Okay, a lot of those will be older people, not just the current FB highschoolers and college folk, but it probably will be a slow growth curve for the gray set. Which means my GiftList is probably not going to explode with high user numbers on Facebook.

After 3 weeks, I’m up to about 430 users. Lots more than givm.com, but dust in the wind compared to silly trifles like X-Me…

Setting up a CVS server on Mac OSX in 4 steps and 4 minutes

Posted November 27th, 2006 in OSX, Software by erich

So. I wanted to set up a cvs server under OSX. I looked around and found a few people with docs about how to set up xinetd or set up launchd, blah blah blah, but I didn’t want to deal with that. Yeah, I know OSX is unix and isn’t that great, but I want something like the old days where to install a web server, you just launched the MacHTTP app and you were done. No config files, just simple apps. Want a mail server? Fire up EIMS. Ah, the good old days…

So, as it turns out, it apparently _is_ simple to get cvs working under OSX. Here are the steps (from memory, so I might have missed something, but damn it’s simple)

  • 1) Insert OSX Install Disc 1 and launch the Xcode Tools / XcodeTools.mpkg installer, Continue, Continue, Agree, Continue, Customize, deselect everything except for the top item, “Developer Tools Software”. Finish the install
  • 2) Fire up Terminal and make a cvs-repository directory in your home directory (or wherever, but that’s what I used): “mkdir cvs-repository”
  • 3) Add required files to the cvs repository with “cvs -d /Users/erich/cvs-repository init”
  • 4) Open your System Preferences, Sharing, Services – make sure Remote Login is enabled
  • 5) There is no step 5

That’s it. I fired up Eclipse, made a test project, connected using the IP address (not by name, for simplicity) of the OSX box, connection type of “extssh”, repository path of “/Users/erich/cvs-repository”, and it worked. That was it.

Secure cvs, no pserver bullshit.

Almost back to the old days. Way better than trying to set this up on Winders. But I can dream of a CVS.app someday, right? Are you on that? :-)

ACM Reflections Projections 2006

Posted October 22nd, 2006 in Business, Software by erich

Today is the last day, well, last morning, of the big ACM conference at my old stomping grounds, UIUC. I’m very surprised it wasn’t overrun with people from Chicago, like myself, who are fans of Joel Spolsky and Robert Cringely, not to mention groupies that want to fawn over some of the lucky winners/founders of some big dot-com and/or media success stories, such as PayPal, YouTube, and Red vs Blue.

But, apparently people in Chicago read the rest of the program list aside from Joel and Max and Cringely, and realized that the other sessions are very academic researchy, and not so interesting. At least, they weren’t for me.

So, what to do in the old stomping grounds with the extra time? Geeking out programming, of course, as well as hitting the best pizza places in CU. Garcia’s, Papa Del’s, and the hidden gem The Jolly Roger. Mm mm mm. Good stuff.

So what useful did come out of the speakers so far? Joel and Max were very inspirational, although with quite different takes on things. Joel is a smart guy and believes in some planning. Max is all about ignoring the business side of things _completely_ and just programming away for 7.5 days solid (his number) until you’ve got a web site that you can show to friends and they can tell you it sucks. Okay, rapid prototyping, I can buy that.

Joel talked about why some gadgets win and some gadgets lose, whether hardware or software, and attributed it to a magic combination of Making Users Happy, Think About Emotions, and Obsess Over Aesthetics. I won’t repeat his talk here, as some people already have heard it at other venues, apparently.

What’s interesting, and a serious oversight, is that both Max and Joel completely ignored marketing and how people will actually find out about your product. Joel ignored it because he was comparing things like iPods and Zens, which are from huge companies and so it is assumed they have a huge marketing budget. Max ignored the marketing side except for a short “use viral marketing” comment, which is a nice theory, but takes approximately a year for anything to happen.

Am I inspired? Yes. Anything earth shattering? Somewhat. I really need to spend more time making my six-year hobby project emotionally satisfying, as well as making it actually work. More on that later…