109 things

January 2nd, 2009

Welcome to 2009. The new year means it’s been a little more than two years, 109 weeks actually, since I started working for myself. When I passed my first anniversary, I wrote up a post of 53 highlights from the first 53 weeks. My goals for going independent were to bring something useful to the world, to have personal growth, and to have a better life. How’d that go over the last 56 weeks?

Built up CrowdVine
1. New design and logo.
2. Brought Michelle, Farley, and Chris in to help with web production, design, development, and sales.
3. Doubled our customers in the first half of the year and then doubled again in the second half.
4. Launched self-service conference version.
5. Really beefed up our calendar (icalico) integration.
6. Mobile conference version.
7. OpenID support (consumption).
8. Third party address book integration (Facebook, GMail, LinkedIn, vCard, CSV, Yahoo, Hotmail).
9. Private messaging (this seems so basic now).
10. Twitter integration and aggregation.

Experienced being the biz guy
11. Exhibited at my first trade show (never again).
12. Exhibited at my second trade show (really, this isn’t for me).
13. Setup Quickbooks (kind of fun)
14. The emotion went out of saying no (or hanging up). Thanks George.

Got some press
15. I was in the New York Times.
16. HyveUp did a video interview.
17. Regular Expression Pocket Reference 2nd Edition got a Slashdot review (9/10)

Gave back a bit
18. Co-chaired the Web2Open unconference
19. Invented a type of conference session (Speed QA)
20. Gave my social networking for everyone talk to SCWD and CalSAE
21. Open-sourced our XSS protection, sanitize_params
22. Open-sourced our highrise_to_campfire notifier

Wrote some things that I’m proud of
23. Take the next step, Paul
24. CrowdVine vs. Ning
25. Five tips for adding an unconference track
26. Deliberate practice
27. Passively Updated Microblogging for Business
28. Two Good Things

Read some books
29. Warren Buffett: The Making of an American Capitalist
30. Quicksilver, Volume One of the Baroque Cycle
31. Born Standing Up, the Steve Martin autobiography

Got deep into deliberate practice
32. Started a no laptopping after 10pm rule (lasted until at least Jan 13, but I read three books in that period)
33. Deliberate practice journal (I’ll write this up)
34. Lawyer-style todo/just-did lists, i.e. very small items that get timestamped when I’m done
35. Stopped wasting time on the web. My work computer blocks: espn.com, huffingtonpost.com, talkingpointsmemo.com, sfgate.com, gamespot.com, slashdot.org, boingboing.net, newmogul.com, bloglines.com, cnn.com, techcrunch.com, crunchgear.com, news.ycombinator.com
36. Moved all non-essential feeds from google reader to bloglines and then blocked bloglines on my work computer.
37. Automated positive reinforcement with Campfire notifications on completion of tasks.
38. Started using OpenID (just one of many examples of improved practices).

Managed to still live a bit
39. Played and loved Fallout 3.
40. Did a month long house swap in NYC.
41. Spent a week in Hawaii.
42. Lost in the first round of Beer Pong Weekend.
43. Played my first game of werewolf.
44. Started listening to podcasts again.
45. Grew out my hair.
46. Saw many movies but only loved Man on Wire.
47. And IronMan.
48. Went Snowshoeing with friends and our dogs.
49. Started Blawg-and-order to chronicle our life-long quest to watch every episode of every law and order series in order. The blog looks stagnant, but we are going to complete this.
50. Learned how to shoot a basketball (I got as far as varsity summer-league with a release that had a lot of thumb).

Bought some things that worked out well
51. iphone (you’re allowed to like your cellphone now?)
52. quad-core from Dell
53. 24″ monitor

Spent a lot of time with some webservices that rock
54. Glance, simple reliable service for screen sharing.
55. Wesabe, love seeing all of my accounts in one place.

Also
56. Again, I accepted enormous amounts of behind the scenes support from my partner, Sarah. She’s a minor investor and major advisor for CrowdVine, co-chaired the Web2Open and co-created the SpeedQA idea, has agreed to my nutty law and order idea (and coined the name Blawg-and-Order), does way more of the household logistical work, plus has her own extremely interesting life and work.

Passively Updated Microblogging For Business

December 9th, 2008

Two companies (at least) are trying to apply the concept of Twitter to business intranets. This starts to sound more exciting when you wrap your head around the promise: complete elimination of status meetings.

Yammer and Present.ly are the companies people think of. But I wanted to share what we at CrowdVine (and a lot of other people in tech) are already doing, using a Campfire chat room.

The community around Campfire has a very developed sense of something that Yammer and Present.ly are just starting to realize — most business status can be generated passively.

Instead of intentionally updating my status to say that I’m filling out a work order, that I’m updating a piece of code, or emailing with our favorite client, we have our tools generate those updates automatically. Our status updates flow into the chat as we work, no special actions required.

I’ll quickly describe what this looks like technically, but what I really want is to explain how this works socially. CrowdVine keeps a Campfire chatroom open all day, not because we’re chatting all day, but just to have a place where we can reach each other. This takes the place of being in an office. We use a service, GitHub, to host all of our code. Any time we checkin code, GitHub sends a notice to Campfire (this is a service built in to GitHub). We also use a service, Highrise, to keep track of all of our client history. We have a script, available here, that updates Campfire every time we change a client record. For status updates that don’t fall into those categories, Campfire has a topic function which we update and which leaves an entry in the chat.

The first two types of updates (GitHub and Highrise) are passive updates. They update based on what we’re doing, but without any intentional action on our part. The last update is an active update. We have to make an intentional effort. That’s the way Twitter works.

There are some great buzzwords getting created by this niche. Ambient awareness, knowing what’s going on in your periphery. Asynchronous knowledge transfer, catching up with your coworkers when you have free time rather than going to a scheduled status update. Activity permanence, the ability to search an historical record of your updates (I just made this buzzword up).

People are rightfully jazzed about these concepts. You end up knowing more about the projects you’re working on, while saving time on meetings, and avoiding interruptions.

There’s one more benefit that I’m in love with, momentum. We started out with just the GitHub updates. We’d go through weeks where I was only talking to customers. Jay would be busy on code, filling the chat room with status updates, while I produced nothing visible. I felt like a major tool. Now when I’m talking to customers, I generate just as many status updates. I feel like we feed off each other and I push myself to finish my tasks so I can get the reward of a status update.

I’ve been learning about two concepts on the side, positive-reinforcement dog training and deliberate practice (focusing on the quality of your work, not just the quantity of your work). When I got into deliberate practice I realized that everything I was trying would go much faster if I could have instant positive reinforcement, like Pavlov ringing a bell at the instant that I completed a positive step.

In dog training, you use a clicker rather than a bell. With some treats you can transfer a small positive association with the sound of the click. Then with the clicker you can transfer that positive association to behavior. I’ve heard that some gymnasts are using clicker training to reinforce their movements. A movement completed successfully gets a click from the coach. The click reinforces the brain pathways that produced the movement and the gymnast’s brain is then more able and more likely to reproduce the movement.

The status updates are small rewards, like what you’d get from a clicker, and they reinforce two behaviors that are generally positive.

One, we’re rewarded for completion. A good idea, a chunk of code, a well written email are all worthless unless they are implemented, committed, or sent. Our automated updates tend to only happen when something is completed, a chunk of code is committed, an email is sent, or a client record is updated.

Two, we’re rewarded for breaking tasks into smaller steps. This is especially true of code. Rather than keep code checked out for weeks at a time, we are rewarded for breaking it into independent chunks that can be checked in. You might consider this gaming the system, and it is, but I’ve always been a believer in the Edsger Dijkstra quote, “The competent programmer is fully aware of the limited size of his own skull”. We’re rewarded for incremental work, and incremental work has the benefit of being easy enough to do well.

I heard a story about a programmer who gave up on his team’s campfire chat room because he found it distracting. His work, at the time, was to spend three months, by himself, building a data warehouse. From this story, I can extrapolate some helpful tips. Read the chat log at your leisure. Feel free to scan. Your feedback is not urgently required. It’s not supposed to be a burden.

The depth of ambient awareness, asynchronous knowledge transfer, and what-have-you, definitely depends on how much time people spend studying the updates. But the momentum benefit just depends on the idea that people will see the update, that there’s an audience that’s going to be impressed by your prodigiousness.

I have one more anecdote supporting the power of having an audience. I’ve worked for two companies that had continuous integration testing, a system that would run automated code tests after each code check-in and then send out a notification. The most common time a notification would be generated was when someone was in a rush to get out the door.

One company sent the notification by email. The other sent the notification to a campfire chatroom. For some reason, people at the email company seemed to check-in broken code all the time. People at the Campfire company almost never did. It’s hard to prove, but I believe the reason is that people at the second company were afraid that the notification would generate negative comments from the other programmers about what a lazy, inconsiderate programmer the person was. At the email company, it was as easy to ignore an email as it was to respond, and if you were going to respond, easier to respond to the culprit rather than the group. So there was less social pressure.

These notifications were a special kind of passively generated status. They said, “I’m screwing up right now.” You don’t want to generate that status.

The anecdote about broken tests is one reason I prefer my business microblogging tool hacked into Campfire. It’s nice to be able to talk about or respond to some of the updates. The other reason, is that it fits into a work flow rather than adding another place that I need to check.

If you’re a programmer, then Campfire is definitely ready for you. Almost every service you use has a Campfire hook. Check GitHub for a lot of tools including Backpack, Basecamp, Continuous Integration, Twitter.

My Favorite Podcast Episodes

October 14th, 2008

I started listening to podcasts again and have found some amazing episodes that I want to share with people. I’ve also rediscovered why being a podcast listener is so frustrating. Let me share the good episodes first before I start complaining.

Three of these next seven episodes are amazingly good. These are so good that they’re worth listening to over dinner (Sarah and I did actually listen to the two This American Life episodes that way).

Venture Voice // Tom Perkins of Kleiner Perkins - Great history and perspective from one of the most experienced entrepreneurs and investors.

This American Life // The Giant Pool of Money - Explains the mortgage crisis in a way that anyone can understand, even covering CDOs.

This American Life // Another Frightening Show About the Economy - They expand on their coverage of the mortgage crisis to include the credit crisis, including commercial paper. I swear, this is interesting and understandable.

These next four were pretty interesting to me at least. I bet they have things that you haven’t heard before.

Knowledge@Wharton // Google’s Joe Kraus on How to Make the Web More Social - Covers a lot of fundamental trends that effect a business like CrowdVine.

TalkCrunch // Interview With Newt Gingrich About Tech, Elections And American Solutions - If you live in the Bay Area you probably only know Newt through the Clinton impeachment. However, I thought it was interesting to get his policy perspective since I almost never hear local pundits or politicians talk that way.

Entrepreneurial Thought Leaders (Stanford) // Music Artists Go Entrepreneurial - Quincy Jones, MC Hammer, and Chamillionaire discuss social software’s effect on music. They even mention Twitter and FriendFeed. I love how so many hip hop artists take control of the business side of their art so that they can have some measure of independence (it’s like a programmer who rejects corporate safety and venture capital).

USF MBA Podcast // All Things Digital - This is Kara Swisher giving an inside take on the News Corp acquisition of the Wall Street Journal.

Now I’m going to start complaining. I didn’t want to just tell you the titles of seven podcasts that were worth listening to–I wanted to make it easy for you to actually listen. The absolute best scenario would be if I could create a feed that you could subscribe to in iTunes. Then my recommended podcasts could automatically be added to iTunes and your iPod.

First I tried Odeo. They have playlists but the playlists don’t have feeds. So then I went searching for other podcast directories. I remember when I worked at Odeo being unnerved every time a new podcast directory launched. Well, all of the competitors seem to be defunct or in major disrepair.

So then I tried Digg. They have podcasts in their directory that you can “digg” and they offer an RSS feed of your history which includes those diggs. I created a new account so you wouldn’t have my non-podcast diggs (mostly just favors for friends at this point). That produces an RSS feed but the RSS feed doesn’t have enclosures, the information linking directly to the podcast audio file that you podcast player needs to download.

So then I went back to Odeo so that I could at least point to a web based playlist. I would have used Odeo for six of the seven links above but they’ve removed their “add to itunes” buttons. The seventh (USF MBA) is missing from the directory. But I can’t be too harsh about that since they’re still by far the most complete directory.

Who is to blame? I guess I am at least partially. I worked at Odeo. Our flash guru, Ray, was a huge proponent of what he called curating. That’s exactly what I’m talking about here. I don’t have much content to offer, but I can offer my editorial filter. I wish we had solved this problem before we’d moved off of podcasting.

CrowdVine vs. Ning

August 29th, 2008

In response to Luke Gedeon’s point-by-point comparison of CrowdVine and Ning I put my own explanation of when and why CrowdVine comes up on top CrowdVine blog. I think it’s a good explanation of the state of the social network software market because the truth is that Ning and CrowdVine rarely compete for customers.

How Do You Use Twitter?

August 5th, 2008

The folks over at Twitter posted a video starring yours truly with a few other twitter users in support roles. Check it out:


How Do You Use Twitter? from biz stone on Vimeo.

Urban Hike Roundup

June 25th, 2008

Sarah wrote up our Urban Hiking experience for the NY Times small business section. Turns out these Urban Hiking expeditions aren’t just grand adventures. They also help us keep in touch with our contacts. A lot of career advice about networking talks about how you have to spend time maintaining your network. Let me tell you, if you live in the boonies and spend all your time working it takes some explicit action to keep your friends and colleagues from forgetting about you. Plus, ever since I turned my hobby into a business I can’t tell the difference between my work life and my social life.

BoingBoing gave it a mention. Plus we have a write up of the points of interests and some photos.

I think we’ll do another one in august covering some combination of telegraph hill, nob hill, and pacific heights. I want to see parrots and get some history on the city founders. If you can recommend any points of interest in those areas, send them over.

Lusting After Car Art

June 11th, 2008

My friend Tim’s company, Infectious.com, just launched. They do vinyl art stickers for your car. For now, the art is from a select group of graffiti artists but eventually anyone will be able to submit art. His original description of the company was tattoos for cars.

They’re easy to apply, last for years, and can be removed without any damage to the car.

If we weren’t flying to NYC tomorrow (and leaving our car behind) we’d apply one immediately. I’m partial to Green Bandana Funk, pictured above.

You can also get more info and some videos from the TechCrunch review.

Two Good Things

May 15th, 2008

For the past year or so, Sarah and I have ended each day by telling each other two good things. For the bulk of the year, our format was for the two things to be things that happened during the day that had made us happy such as closing a deal, getting a compliment, or hearing a great joke. We started the practice at a time when we were both at the beginning of major projects that were the essence of delayed gratification. Personally, I felt crushed by the amount of work ahead and the distance to the goal.

What two-good-things taught us was how to appreciate the good things that were happening to us every day. Most days we had a bundle of good things to report (reporting more than two was allowed). I can only remember a few days, less than five, where I had to manufacture a second good thing (”my burrito at lunch was great!”).

Sarah likes credit so I’ll say that the idea was hers, but the reason it clicked with me was that I had been reading a lot of Scott Adams’ blog and was struck by the way he’d used positive thinking while building his career. Here’s his essay on affirmations, and how fifteen times a day he wrote down his affirmation that he would become a syndicated cartoonist. After that, and ten years without taking a day off, he found himself a syndicated cartoonist.

Recently we decided to switch our two-good-things format. We’d gotten even busier and things we wanted the other person to do weren’t getting done. It was easy to look at the situation as one of us was slipping, but it’s hard to take criticism when you’re working harder than you’ve ever worked. So we changed the two-good-things format to acknowledge two things that the other person had done.

Of course we still don’t limit ourselves to just two things and we even let the other person give reminders about things they deserve points for. The result is that we each feel better about the other person’s contributions, about our own contributions, and strangely we’re both getting more things done that we think we can get points for. I feel like an addict but I’m not actually spending more time–I’m just more efficient. I used to spend hours avoiding the dishes but now when I walk by the sink I feel a happy calling and then suddenly the dishes are done.

There are a lot of parallels in business.

I’ve always liked Marc Hedlund’s application of lessons from the cat circus to engineering management, essentially “pick a cat that does something useful and then encourage the hell out of it.”

One of the speakers at MX 2008 talked about how at every executive meeting they end with the executives nominating people they’d like to thank in a different department. Then the executive goes and thanks that person face-to-face. Pretty good for encouraging cross-department team work.

There’s also an idea, Appreciative Inquiry, to build organizations around what works, rather than trying to fix what doesn’t.

One of the biggest hurdles to being positive at work is that a lot of times it doesn’t feel fair. You end up finding some trivial thing to attach some positive feedback to when the ‘fair’ thing to do is punish the massive screw up that got your attention in the first place. Scott Adams makes a big deal about how mystical his affirmation practice seemed, but his key point, and the key point with all these practices, is that they’re effective. I like to think of them as brain hacking–and I wish I could manufacture positive reinforcement hacks for everything I try.

For example, what would happen if instead of your team starting the day with a meeting talking about what they were going to do, you ended the day with everyone giving kudos for tasks they saw other people do? Would you create a culture of people addicted to accomplishment?

Deliberate Practice

May 7th, 2008

Sarah and I just got back from a talk at Haas about “deliberate practice” as it relates to excellence. The idea is that how good (or expert) you become at a skill has a lot more to do with how you go about doing your work than it has to do with merely performing the skill a large number of times or over a long length of time. An expert will break down the skills that are required to be expert and focus on improving those skills either during practice (sports) or during the course of day-to-day activities (business).

Most people who perform a job over a number of years will become experienced non-experts, not experts.

It’s easy to look at this in terms of sports. During practice, Tiger Woods doesn’t merely spend time hitting balls on the range. He practices specific shots and fine tunes his mechanics with each swing. One of my running teammates used to spend most of her easy runs thinking about her running form. I spent my easy runs day dreaming. She won more medals (and ended up running for Cal).

This all reminds me of an old study of what differentiated classes of swimmers, The Mundanity of Excellence (it seems to be readable through Google book search). The researchers found that swimmers who moved up in class did it almost entirely by how they went about performing their practice. It was the quality of their work, not the quantity of their work that mattered. Moving up in class could be as simple as changing the way you cupped your hand during your swim stroke, as long as you were willing to practice that improved stroke during every lap of every practice.

This was a business school talk though, and we ended up wanting more examples of how you would apply the concepts of deliberate practice in a business setting. So I started thinking about ways that I would or should focus on the quality of my work rather than the quantity of my work. It’s hard.

Public speaking is an easy one. People are so afraid of it that there’s an entire community to help people practice (Toastmasters). But where do you go to practice email? You have to do it on the fly.

When I write an email I consciously try to apply the rule that the action item for the receiving party should appear in the first two sentences. My emails are more effective as a result. They didn’t get more effective merely because I’ve spent years writing them or because I’ve experienced the receipt of well written emails. They got better because I made a conscious decision to apply a better practice with each email.

Every time I write code I start a mini-todo list where I can shelve ideas or concerns that popup. The list also means that if I get interrupted I have context that helps me get back into the flow faster. This is the major practice that let me be a productive developer while dealing with the interruptions that come with being a manager or running a business.

Sales is a huge one. Let’s just say that if I promise you a response and you get it, that’s because I started using Highrise to manage all my contacts. I’m not working harder to keep up with my email, I’m just working smarter.

The nice thing about having better practices for the mundanity of work is that it frees me from a lot of mental baggage so I can actually reflect a bit about what’s going on in life/business. There’s no sense making the engine more efficient if I’m using it to drive off a cliff (or some such crazy metaphor).

Small Business Hacks

May 7th, 2008

Here are my notes from the small business hacks session at Web2Open. Don MacAskill, Jen Bekman, and Bryan Mason were the major guests.

Don’t discount until completion.
Bryan says that when they do pro-bono or non-profit work they don’t discount their work until the client has implemented their advice. I can relate to that. CrowdVine’s second customer got a nice discount because we were looking for reference clients and then the customer changed direction mid-project, leaving us without a public reference implementation.

Don’t ever discount.
Jen’s advice is to offer something that’s got a lot of value and don’t ever deviate from your message about how valuable it is. There’s a low priced option for her art, but there’s never going to be a discount on that option. It’s too valuable to discount.

Don’t do direct sales or marketing.
All three were relying on word of mouth and felt that gave them focus: have an amazing product. Brian said that the only cold call sale they ever made was cornering someone from Flickr at a party and begging them to let Adaptive Path do a rev on the product.

Give each employee two 30″ monitors.
Nothing says you’ll have the tools to do your job than showing up on day one and finding two 30″ monitors. That’s one of many tricks responsible for a 100% retention rate at SmugMug. Way to go Don!

Hire Customers.
Don’s other trick for retention (and also for finding kickass employees) is to hire customers. They take less training, have higher loyalty, and you can observe them before you talk to them.

There’s so much good advice that’s hard to get online but easy to get through word of mouth. It’d be nice to do a monthly small business dinner or something where we could get at these tricks.

Great Sessions at Web2Open

April 1st, 2008

Web2Open is coming together with some sessions that I’m pretty psyched for. The Open is the free unconference side of Web 2.0 Expo. Like other unconferences you can show up the morning of and add your own session to the open grid. But we’re also doing some pre-planned content and tie-ins with sessions from the main track.

Here’s what’s going on:

Creating a Coherent Social Strategy for Business. We’re doing a hybrid with Charlene’s session where you go to the normal session and then can do a more participatory discussion version of it at the Open. If you’re a business this is a great session to find out how to find out how to pick the parts of social media that are going to do you any good. As a social media business owner, I’m going because I want to start making sense to my customers.

UI for Data Portability. I know plenty of people who get excited and heated talking about standards. I think most people though want to see the standards in action before they make a decision about usefulness. That’s what this session is about. Chris Messina (champion of many things in Data Portability) is moderating and we’ll have the actual UI designers behind some of the first consumer applications to make use of things like OpenID, OAuth, microformats, and social graph portability. First you’ll say, “wow! that’s useful.” Then you’ll get to ask questions about the design tradeoffs they made in order to make sense to the widest audience.

Troll Whispering. This is a technique discussion from some great moderators (and moderated by BoingBoing’s moderater, Teresa Nielsen Hayden). You should check out Sarah’s post about this if only to find out the alternative view that this session is a plot by “fairly rich people and/or their proxies” to “PERFECT FASCIST BUSINESS PLANS.”

Social Responsibility. I’m constantly running into people or companies who are trying to be more responsible. There’s always going to be people like my friend Rabble who are idealistic activists (maybe idealistic is too strong a word for Rabble), but I there’s also people like Wesabe who organized around a mission that they felt was profitable both financially and socially, companies with even more direct social missions like Kiva and Volunteermatch, and then companies you’d never expect like Salesforce which has a huge philanthropic arm. I wrote about this a bit in my responsibility revolution post. Jeremy Toeman (of Geeks Doing Good) is moderating and we’re working to line up some awesome participants.

Small Business Hacks. I could go on for hours about how much more fun it is to work on something you own rather than on something someone else owns. But instead we’re going to find other people to say that. My friend Terrie put it best in the comments of my take the next step post: people want to work on things that matter. When you’re a small business, everything you do matters. The problem though is that a lot of advice for Web 2.0 companies is coming from a venture mindset. This session will be all about advice for the owner mindset.

Influence is Overrated. “Have you ever actually met an influential that can repeatedly and consistently make a product go viral? Probably not, because the latest science and real world experimentation shows that “influentials” don’t really exist.” So how do you get your product to go viral? This is another hybrid session, go to the session in the main track and then come back to the Open for discussion.

Secret Hybrid Session #3 and Secret Hybrid Session Shootout. I’m still waiting for confirmation on speakers before announcing this. Let’s just say that it’s going to be intense.

All the sessions that are part of the Open are free including the hybrid sessions from the main track. But you will need a badge. Register the code websf08opw. This badge will also get you into the show floor and the keynotes!

More info:
Web2Open Wiki
Web 2.0 Expo Home
Web2Open Attendees on CrowdVine

Slashdot Review for Regular Expression Pocket Reference

March 26th, 2008


Michael J. Ross gave the second edition of Regular Expression Pocket Reference a score of 9/10 in his Slashdot review. He was particularly impressed by the lack of errors.

As of this writing, there are no unconfirmed errata (those submitted by readers but not yet checked by the author to see whether they are valid), and no confirmed ones, either. In fact, in my review of the first edition, published in 2004, it was noted that there were no unconfirmed errata, despite the book being out for some time prior to that review. The most likely explanation is that the author — in addition to any technical reviewers — did a thorough job of checking all of the regular expressions in the book, along with the sample code that make use of them. These efforts have paid off with the apparent absence of any errors in this new edition — something unseen in any other technical book with which I am familiar.

I’m sure that the book isn’t actually error free, but the fact that it can masquerade as so is a tribute to the tech reviewers, Jeffrey Friedl, Philip Hazel, Steve Friedl, Ola Bini, Ian Darwin, Zak Greant, Ron Hitchens, A.M. Kuchling, Tim Allwine, Schuyler Erle, David Lents, Evan Henshaw-Plath, Rich Bowen, Eric Eisenhart, and Brad Merrill, and to my editors Andy Oram, Nat Torkington, and Linda Mui. That’s a lot of people for such a small book but the draft I turned in warranted them. Thank you.

My goals for the second edition were to increase coverage for things that I used (it turns out that one of the best reasons to write a book is so you can look things up later) and to add content for system administrators (who, based on feedback, seemed like the biggest users of the book). I’m a ruby developer now, so this edition has a ruby chapter, plus I added an Apache chapter and a cookbook of common regular expressions for the system administrators.

People often ask me why I covered so many implementations and the answer is because as a web developer I used regular expressions in so many places: ruby/perl, javascript, shell, vim, and apache. I bet system administrators are the same way.

Make sure to buy a few copies from Amazon.

Retro Audio

March 24th, 2008

This is so sweet. I found a post about a new venture from my Dad, Forget CDs Or iTunes - Buy Your Music On Reel-To-Reel Tape From The Tape Project.

First, the picture is amazing. I’m pretty sure that the reels are laser etched with your serial number.

Secondly, this project is the pet project of some of the most talented audiophiles ever. They pick their favorite recordings of all time (and they’ve heard a lot of recordings) and then master them in the highest quality format they can find. This is the music they most want to listen to in the format they most want to hear it in.

Take a peek at the Tape Project. If you thought programmers were nerds then you’ve never met an audiophile.

Take the Next Step, Paul

March 21st, 2008

In college I had a wonderful Humanities professor who insisted on making us write short essays so we could practice writing succinctly. After each essay she would personally sit down with us and critique our logic (and our grammar!). Her feedback to me was almost always the same, “your argument is logical and supports your conclusion but you need to take the next logical step. What does your argument imply?”

I was never able to take the next step, even when pressured. And she never took it for me. It would be fair to say that I hated her during these meetings.

Today I ended up quoting her while reading Paul Graham’s “You Weren’t Meant to Have a Boss.

Paul’s thesis is that typical big business drains the life out of its employees because we weren’t meant to work in such large groups. It’s unnatural. To truly live, we need to be in groups small enough that we have room for creativity and freedom of action. That’s the way nature intended.

I agree. Jay and I talk all the time about how much more fun we’re having at CrowdVine than any of our other programming jobs. We’re free to build product. Programming isn’t just a job for us, it’s our hobby and passion. Being in a small group for the first time really is bliss. We’re not the only ones saying that either. Talk to people who’ve been much more successful than us like 37Signals or SmugMug. They’re not just successful, they’re happy.

So while I agree with everything Paul wrote, I found myself screaming, “take the next step, Paul!”

He’s a venture capitalist. He’s promoting programmers joining startups. Venture backed startups start as everything he describes–small companies that are great places to work and learn. But they only stay that way for a few years.

By definition the startups are either going to grow into an awful company with bosses or be acquired by an awful company with bosses (or fail). The startup founders are either going to turn into bosses (which Paul correctly points out isn’t very rewarding either) or they’re going to turn into employees with bosses.

The logical step that Paul couldn’t take is that he’s wrong for being in the venture business. The venture business depends on an ecosystem of bosses. Even if his founders feel like they’re getting a fair trade for a few unhappy years at a big company, they wouldn’t have the option of either growth or acquisition if other programmers couldn’t be pursuaded to work “unnaturally.”

The difference with companies like 37Signals and SmugMug (and CrowdVine) is that while they have the same natural working conditions, they’re structured so that those conditions don’t have to end. If Paul really wants to create good jobs he should turn YCombinator into a small business incubator.

Great discussion of this on Hacker News including responses from Paul. One commenter there made a big fuss that I was technically incorrect to call Paul a venture capitalist. True he’s a new un-labeled form of investor who’s using his own money and experience, and not using money from a venture fund. However I stand by my argument, which is based on the exit pressures which are very VC.

Recent Purchases

March 14th, 2008

I purchased three things in the last year that I’ve ended up being very happy with.

System76 Pangolin Laptop


Last summer I decided to switch from OSX back to Linux. I don’t think Linux is better desktop software necessarily. However 99% of my time is spent either using software that’s the same on all platforms (Firefox and Thunderbird) or doing development for software that runs on Linux. I got tired of the context switching. I wanted my laptop to behave the same way that my server did. My last experiences with Linux on a laptop were pretty time consuming and I never got everything working (like power management). System76 sells laptops with Linux pre-installed and they make sure the hard parts are working (wireless, power management, sound). I even have IE6.

System76 does one important thing extremely well: they make sure your laptop software works correctly by offering updates and fantastic software support. I do have one complaint. Their hardware support turnaround is awful. I needed to get my power connection replaced and was without my laptop for three weeks. Around the same time my coworker thought his Macbook wireless wasn’t working so he went in to the Apple store and got a brand new one same day only to get home and realize the problem was with his Airport. I’d still recommend System76 with the caveat that you shouldn’t buy the extra warranty and assume that you’ll pay for any repairs to be done locally.

Logitech S510 Cordless Keyboard


I do also have a desktop and enjoy working there because I have a nice view and because I have a dual monitor setup. However, I’ve come to find that I prefer my keyboard to be on my lap. I decided to try out Logitech’s S510 Cordless Keyboard. I discovered two things. One, cordless keyboards are nice! Two, this is a fantastic keyboard to type on. I like writing just for the joy of getting to press the keys. The keyboard side works great. I don’t notice a lag. I went six months before needing to recharge the battery. I can type from almost anywhere in my room. The package also comes with a wireless mouse, but I didn’t like it so I stuck with my old mouse.

Syncmaster 245BW 24″ Widescreen Monitor


This monitor is HUGE. 24 inches is a lot of inches. I’ve always lusted after bigger monitors but recently felt like buying one would have been too extravagant. I don’t know why I thought that because I’ve definitely read that larger monitors can make huge differences in productivity. I’ve also read how tabbing through windows is a bigger break in concentration than merely glancing. That’s why I have all my interrupting programs (Email, IM) on a second monitor (merely 20″ widescreen).

Last month I had my first conference booth in order to demo CrowdVine. The booth fee was waived because we were being showcased but the logistical fees weren’t. This was my first exposure to conference logistical fees and I was shocked! I paid $90 to plug my laptop in for two hours plus another $90 for Jay’s laptop and another $90 to power the monitor we were demoing on. We also could have rented a 30″ plasma screen for $300 but at that price I decided it was better to buy something I could own. And that’s how I ended up with this wonderful 24″ monitor ($400 plus shipping there and home).

IHeartQuotes is a Robot

February 27th, 2008

Two summers ago I put up IHeartQuotes.com, a personal project to see what kind of site I could develop in two work days. It’s a quote rating site and the quotes are all taken from Unix fortune files. The break down of work was 8 hours to find an available domain name, 2 hours to build a site in Rails, and 6 hours of CSS wrangling. A little while after launching it I hooked it up to Twitter, where it’s currently the 96th most followed account. (follow iheartquotes on twitter)

I haven’t given it much thought since, other than that I now enjoy quotes through Twitter three times per day and again every time I log into a Unix shell. I logged in to the Twitter account for the first time in at least a year and was surprised to see people talking back to IHeartQuotes, except that they don’t seem to realize that it’s a robot.

I literally have no idea what quotes are going to be spit out. I didn’t collect the quotes and I don’t do any filtering other than programatically checking that the quote matches the Twitter message length. Sometimes the quotes aren’t even quotes, and sometimes they’re really uncalled for. For example, this one shocked me:

“You will be divorced within a year.”

Here were some of the angry responses:
“What a horrible thing to say! I think I might have to stop following this crap.”
“Growing tired of @iheartquotes’ dumb and unfunny sayings. How lame.”

Sorry! It’s a robot!

But now that I remember my password again I’m tempted to post the occasional quote or message directly. For example I just posted a pointer to my friend @mlevel, who posts birth and death date quotes every day.

So that’s the history and future of iheartquotes in case anyone was interested.

The Responsibility Revolution

February 12th, 2008

I’ve heard a couple of things recently that I want to share and see if anyone has any feedback.

One. I was at a conference for Meeting Professionals International (MPI) and the keynote speaker was giving a talk on Corporate Social Responsibility (CSR). I already knew that the members of MPI were hot for CSR because every other blog post on their website talks about it. But I’ve also had a hard time taking it seriously because of the C, Corporate. The keynote speaker, Tim Sanders had an explanation that I could stomach. Corporate success is increasingly driven by talent. Talented employees are increasingly choosing to work for responsible companies. Therefore companies that want to succeed need to act responsibly. Google was his example. He called it the Responsibility Revolution.

Two. I was at the Social Graph Foo Camp and overheard a young CEO give his own take on the need to be responsible. He also referenced Google. He wasn’t sure whether the Google founders were actually good people or whether they just happened to be early to notice the “new reality” that in an age where every misstep is easily found, reported on, and amplified, companies can’t go around being evil. He was obviously creating a similar model for his company.

Three. I’ve been browsing through The Business of Changing the World, a book by Salesforce CEO Marc Benioff about corporate philanthropy. It’s oddly compelling. Oddly, because Salesforce is a company that thinks of people as leads. As a non-salesperson, whenever I hear a person referred to as a lead I think of a grifter going after a mark. The book really inspired me to think of CrowdVine as a force for good that could make the world better.

So what’s the deal? Is this just a profit driven move by corporate executives? How much of this is ego driven? And who cares if it is?

Also, how much is this really going to make the world better? The MPI conference made a big deal about how they were not using bottled water. At the same time they ran five tour buses non-stop for 20 hours a day in order to shuttle people from the hotels to the convention centers. As far as I could tell no bus ever held more than four people. I tend to think that by celebrating the water they’re creating a culture where some other MPI employee could raise a stink about the tour buses. So that’s good. But what would you think if you heard that Shell Oil has a VP of Corporate Social Responsibility? (They do)

I’m interested in what this means generally, but also what this means for the tech industry. If I can, I’d like to get some discussion on this at the Web2Open.

Weak Dollar Means More European Business

January 31st, 2008

I recently started seven straight work days with phone calls to Europe. That was a little jarring at first but made some sense because we’d just run successful networks for conferences in London and Berlin. What took me a little longer to figure out was how little pushback I got on prices. The conversations we’re all about whether it was a good fit, not whether they had budget available. At first I thought it was just a different style of negotiation. But then I realized that with the weak dollar our prices are extremely cheap.

That’s a good thing when you’re trying to bootstrap a business. I’ve often wondered if it would be easier to start this business if I lived in Brazil (my aunt has an apartment there) where costs are low but continued to sell to the US where prices are comparitively much higher. Lucky me: I found the exact same dynamic living here and selling to Europe.

I’ve been wondering if other small businesses are on to this trend. Apparently, yes. Marci Alboher (who interviewed me for this NY Times piece on small business blogging) published an article in today’s small business section: Weak Dollar Has Small Businesses Thinking Globally.

The main reason CrowdVine has been so against taking investment or debt is because as programmers we think it’s more rewarding to run an independent company than to run a company that’s dependent on VCs or credit card companies. It wasn’t all personal preference, a lot of trends were pointing this way. Cost of development went way down. So did hosting, hardware, and bandwidth. And now there’s an entire continent of wealthy customers.

Not everything about the weak dollar makes me happy. I’d like to travel in Europe for example. But it is an opportunity for small business, and that’s fine by me.

Web2Open

January 25th, 2008

Sarah and I just signed up to organize Web2Open, the unconference that runs inside of Web 2.0 Expo (April 22-25). It’s free, so you should come even if you weren’t planning on going to the rest of the conference.

We’re just starting our planning but I wanted to announce it in case anyone has any feelings.

Some of the things we’re thinking about:

  • Highlighting individual and independent contributions to Web 2.0. At least with the data portability and open social movements there’s a battle being waged with press releases. It’d be nice if the unconference could cut through that so you could figure out what’s real, what works, and what tools are out there.
  • Coordinating some of the sessions with sessions from the main conference track. The idea is that you could go to the conference session to learn about something and then come to the unconference to discuss/hammer out the details.
  • Have some pre-planned sessions. Past Web2Open’s seem to have done this successfully. I’m a lot more interested in discussions than I am in individual presenters. The strength of unconference sessions is that they have a personal feel and every attendee can also be a speaker. I’m lobbying for “I spoke at Web2Open” stickers in order to encourage people to speak.
  • Dropping the MashRoom. People just used it to check their email last year and no code actually got written. Come to think of it, I can’t remember the last time someone showed me a mashup. However, I would be a little sad if we didn’t produce at least some code. Noodling on this.
  • Get strong cross-pollination between people pushing the boundaries of Web 2.0 and the people who are just learning. If you’re an alpha geek, you’re lazy if you just talk to other alpha geeks. Branch out. Most of the attendees at the conference, let’s call them beta geeks, are there to find cutting edge ideas they can apply in more traditional settings.

More announcements to come!

What are you reading?

January 13th, 2008

For the new year, Sarah and I instituted a no “random laptopping” after 10pm rule. That means if we’re not doing productive work we shut the laptops and move on to something else. Right now there’s some debate about whether Scrabulous constitutes random laptopping, but for me, at least, the rule has resulted in a lot more reading (a good thing because I picked up a pile of books over the holiday).

I loved Warren Buffett: The Making of an American Capitalist. He’s a fantastic example of the benefits of independent thinking. Obviously he’s been amazingly successful financially. However, if you read the book you’ll see he also created an amazingly fun job (for him). Compare that to the unhappy millionaires of Silicon Valley, the only place where “single-digit millionaire” can be used as a pejorative.

Born Standing Up, the Steve Martin autobiography, has been a big hit around the house. Sarah’s mom read it in two days. I charged through it in three days. If you want to borrow it you’re going to have to get in line behind both Sarah and my mom. The thing that I find so interesting about comedians is how much time they spend bombing while developing new material. You could also see that in Jerry Seinfeld’s documentary, Comedian. The entire profession has taken the mantra “fail fast” to heart.

I’ve moved on to The Science of Success by Charles Koch. He’s the CEO of the world’s largest privately owned company. I’m not far enough in to say if I can recommend it.

If you’re looking for more reading material, I just ran across this Personal MBA reading list. I love the descriptions and there are some real gems in this list. The guy has put together a DIY MBA program. Some people like to knock traditional MBA programs for being a waste of money but I can’t say one approach is clearly better than the other. Sarah is in school at the Berkeley Haas MBA program, loves it, is learning a lot, and is building a great network. I’m in the school of hard knocks, love it, am learning a lot, and am building a great network. One thing I can say, is that in year one the school of hard knocks is definitely not cheaper. I gave up way more in salary than Sarah gave up in tuition.

So, what are you reading?