28th Dec, 2009

No comments

How to use a Verizon USB Card with Ubuntu

I’ve been having a lot of “Hey, Linux on the desktop is pretty darn good” moments lately. Here’s one from tonight, getting my Verizon USB wireless card to work on my laptop (Dell Studio 17). Getting this same card to work on a Windows Vista netbook was a total chore, so I came at this Linux experience fearing (and expecting) the worst.

After some googling, I settled on this tutorial from ASE Labs. It almost worked. After freezing the laptop, forcing a hard reboot, editing some config files and then running a shell command, my modem worked. Once. This was exactly the experience I was expecting.

Feeling a bit of despair, I tried plan B: right click the Network Manager that sits on the Gnome panel. Hot damn. There’s a wizard for this. The functionality is built right in. So consider this post less of a tutorial and more of an informational post. I just want to tip off the next googler that they don’t have to perform any incantations to get this working.

You need to know this:
username: <yourphonenumber>@vzw3g.com (i.e. 4155551212@vzw3g.com)
password: vzw

Now right click Network manager followed by Edit connections -> Mobile broadband -> Add.

There’s very brief official documentation. The key thing to know is that Ubuntu calls this feature “mobile broadband.” Basically, the only problem with this feature is that it’s not SEO optimized for what I think it should be called.
https://help.ubuntu.com/9.04/internet/C/connecting-mobile.html

If you want to get really tricky you can even configure your laptop to act as a wireless router so that you can share your internet with people around you.
http://www.freesoftwaremagazine.com/…

16th Dec, 2009

No comments

Moderators for @iheartquotes

First, quickly, for people who follow this blog but aren’t quote enthusiasts, I want to share something that I learned from my friend Ben at Fluther. If you have a passionate community and you ask them for help, they will help you. The @iheartquotes twitter account has had a half-hearted update policy for years because I never was willing to ask for help. Then one day I said, hey, what the hell, I’m going to ask if anyone wants to be a moderator. It turns out that lots of people wanted to help out and now almost every day we have a lot of community submitted, moderator-vetted quotes.

Organizing the moderators is a whole different ballgame, which is actually why I wanted to get this post up. As moderators drop out we need to replace them and people always ask, “What does a moderator do?” So I wanted to post somewhere so people could make a decision before I set them up with all of the accounts (we use Google Groups and CoTweet).


Hello moderators,

We have a pretty simple goal–we’re taking user submitting quotes and republishing them for our wider quote-loving audience. Here are instructions for how to participate.

1. If you are a new moderator, you should introduce yourself. Let everyone know who you are and why you love quotes.

2. You will be responsible for a day of the week. You should sign up for one of the open days on the schedule page. Then, every week, when that day rolls around, you will be responsible for checking for new quotes and scheduling them to be republished on the @iheartquotes twitter account. There are a lot of people who have asked to help moderate, so if you can’t check reliably on your day, you should bow out. If skipping your day becomes a habit you will be quietly replaced.

3. To check and republish quotes, you should sign into the CoTweet.com program and:

3A. Check the scheduled outbox to see if there are any tweets already scheduled. Your goal will be to pick up from wherever the scheduled quotes leave off and then make sure there are quotes scheduled for the three days following your day.

3B. Go through the Inbox Messages.

3B. If a message is a RT of one of our quotes, check it off so that it’s archived and no longer in the inbox. Most quotes will be Retweets of quotes we’ve posted.

3C. If the message is a quote that’s reasonably good then you should schedule it for retweeting by clicking the RT button.

3D. We try to format quotes in the style below so that they are clear and while taking a minimum number of characters. Notice that it allows us to skip quotes, some whitespace, and punctuation.
I’m learning all the time. The tombstone will be my diploma~Eartha Kitt | RT @somebody

4. The process should take about 30 minutes.

11th Dec, 2009

No comments

Regex Best Practices

My book, Regular Expression Pocket Reference, has sold well over 30k copies and I’m constantly surprised how often I talk to someone who claims to have a copy of the book on their desk. The thing about that book, though, is that I’m not nearly smart enough from a nuts/bolts or math angle to be qualified to write it. I muddled through, and with the help of amazing tech reviewers and a lot more work than it should have taken, the end result is a pretty good book.

However, by virtue of not starting out as a regex expert, I have a lot more empathy for the every-day coder who just wants to get these suckers to work. So, once the book was published I started working on tips for every day use.

Here’s one of my favorites, a presentation on Regular Expression Best Practices. I think I gave this at a Perl Mongers meeting a few years ago. Excuse the Perl code, all of the ideas are universal.

The basic premise of the presentation is that regular expressions are inherently difficult to write, maintain, and get right, but that we could do much better if we applied a few simple (best) practices.

Here are the inherent reasons:
A.) They have a crummy, terse syntax.
B.) We (normal programmers) don’t use them enough to become proficient.
C.) They are applied to some dirty, hard-to-verify (that’s why we’re writing the regex) data.

Given that, we (normal programmers) then choose to ignore the normal practices of programming, practices that we use reliably with expressive clear languages that we are experts in. The presentation identifies those normal practices and then calls them regex best practices: use white space, code structure, and code verification/testing. Plus, the presentation has one of my favorite security gotchas, a favorite quote, and some common regex mistakes.

18th Nov, 2009

1 comment

Linux on the Desktop

In 1997, I was a Linux zealot who loved to tinker with software. Now I’m an overworked pragmatist. I still love Linux, but for different reasons. Last week, I heard a meme* pop up that Linux was dead on the desktop (specifically for web entrepreneurs). So I wanted to give the opposite take–Linux is a great, pragmatic choice for your desktop.

Improved Hardware Support
I’ve been installing Linux without trouble on desktops for over ten years. The real problem was with laptops. In 2004, it took me six months to get wireless working on my laptop. In 2007 I bought a laptop from System76 that had Linux pre-installed. Even suspend and hibernate worked. That was much better, but they only have a limited selection of re-branded Asus models. On Monday, I bought a new laptop from a big blue box store, installed Ubuntu, and everything just worked.

The Cloud
It’s funny that we’d even be having a desktop operating system discussion given how many core apps moved into the cloud. I use Firefox, GMail, a slew of apps from 37signals, and a SSH shell connected to a different server. That experience is the same on any operating system.

Sun Virtual Box
I never got Wine or VMWare to work on Linux. It was just a bit too much configuration. But recently I tried Sun’s Virtual Box and it does a great job. When I looked at the proprietary apps I run, I found that most of them are for Windows. My accountant prefers the Windows version of Quickbooks. I sometimes have to test IE bugs in Windows. Netflix streaming used to be Windows-only. All of these apps work fine in the Virtual Box virtual instance of Windows. I even sync my iPhone from iTunes running in the virtual instance.

Same as Your Server
I had an OSX laptop and basically liked it. But I got tired of fighting library dependencies on two different platforms. By running Linux on my laptop, I can have an identical environment to my production servers.

Dying Religions
I’m not religious about Linux anymore. I think that helps. I can run a virtual instance of Windows without feeling like I’m cheating. I got sucked into Linux because it was a free playground at a time when I had free time. It shaped my problem solving strategies and mindset. Now I want to have a access to the command line and Unix tools. But some (most) software was built for Windows. Now with Virtual Box and a little bit of personal maturity, I don’t have to choose one over the other. I use both.

Price
I bought a 17inch Dell Studio laptop with a dual processor, 500GB HD, and 4GB of RAM for $770. The equivalent MacBook Pro costs $2500.


* At the Business of Software conference, Paul Graham gave a talk covering 21 trends he’s seen while running YCombinator. He may have been talking about Linux on the desktop not being a relevant business opportunity, but his anecdotal data was about web entrepreneurs moving to OSX.

30th Oct, 2009

No comments

Five Reasons I Love Twitter Lists

The Twitter Lists feature launched for everyone today. Here’s Twitter’s announcement and a thorough tutorial from CNET.

I’ve had the beta version for a week, and although it’s obvious that this feature is going to create a new class of social media whoring (list-whoring), I also find it incredibly useful.

#1 Back to basics
I fell in love with Twitter when it had less than 100 users because it was an easy way to keep in touch with my girlfriend and my little sister. Then Twitter got too big and I started missing tweets from those people. So now I have a list for just family–and I never miss their posts. Lists let you filter the firehouse.

#2 Rediscovery
The folks at Twitter are hoping the lists feature helps with account discovery. It does. But what I’ve found is that it also helps with re-discovery–accounts that I forgot I was following start popping up again when I go to look at one of my lists.

#3 Retweeting
@SarahM says that corporate accounts should aim to talk about themselves 10% of the time and about other people 90% of the time. So for my @crowdvine account I’m always looking for material. I have a whole section in my Google Reader devoted to this. Now I have two Twitter lists that are perfect for retweetable material, @crowdvine/eventstars for event news and @crowdvine/tech-stars for tech and social software news.

#4 Research
I created a bunch of lists related to research that I’m doing. I want to know about events so I started with that list (@crowdvine/greatevents) but I also want to know about different event sements, so I made my own for barcamps (@crowdvine/barcamps) and then discovered other great event lists like @konigi/uxevents and @underflow_/ruby-events.

#5 Want-to-meet
I often run across people on CrowdVine that I think I should meet or email or follow up with in some fashion. Now I can bookmark them and get back to them later. I have this list private right now, but I think it would actually be a light weight way to meet people if it were public. What would you do if you found your name on somebody a list called want-to-meet?

17th Jun, 2009

36 comments

The Real Lessons From Twitter

In 2006, I was the director of engineering at Odeo, a podcasting startup notable for birthing a side project now known as Twitter. My major contributions were doing the statistical analysis that showed that our podcasting work hadn’t amounted to a hill of beans* and then not complaining when our most reliable engineer wanted to work on a side project. Still, it was fascinating to be in the building during Twitter’s conception and then to read all of the ways that people misunderstood those early days.

Here are three lessons I learned from Twitter that nobody seems to have caught on to.

1. If people use it, it’s valuable
Have you ever looked at a piece of social software and thought, or worse, blogged, that it was worthless? Here’s a trick for evaluating social software in a way that isn’t going to make you look stupid six months down the road: assume it’s valuable if people are using it. Then try to figure out what value they’re getting.

Even professionals make the mistake of dismissing social software despite active, growing communities. Consider this early TechCrunch article, Dodgeball vs. Twitter, where the author (not Arrington) insists that the way to compare software is feature by feature. Dodgeball won the comparison but within a few months was in the deadpool and now Twitter is part of TechCrunch’s everyday coverage. Why? The features that mattered were defined by social interactions, and each user had their own customized set of features based on the social interactions that were important to them. Dodgeball had more features by the traditional measure, but Twitter had the kind that mattered, loads of social interaction.

I even find that this is a good reminder for myself. I follow a startup advice blog from Eric Ries, cofounder of IMVU. The first time I heard what IMVU did I thought it was laughably stupid. They make 3D chat rooms, (like a mini Second Life without the flying), and make money by selling virtual clothing for people’s avatars. Yet he is able to explain IMVU with a straight face and then seems genuinely surprised when people express skepticism.

Here’s the reason he can keep a straight face: IMVU gets 1.3M unique visitors a month and makes tens of millions of dollars per year. He’s not judging the idea based on opinion, which is where most people get into trouble, he’s judging based on observation. Now, I feel stupid for not keeping an open mind.

2. Product, Team, Market? Team.
This is a fun little debate, what matters most the product, the team, or the market? At the time that Evan bought Odeo back from the investors, our podcasting product was widely seen as a failure. It didn’t have any growth and it certainly didn’t make any money for the investors. Here’s how Bryce at OATV put it:

Rockstar team, smoking hot market, all-star angels — and it didn’t deliver the hyper growth traditional VCs need for their return profile.

Was it the product? A year after Ev bought Odeo back, and after zero updates to the features, Time Magazine listed Odeo as one of their top fifty websites. Today, with a very similar product, Odeo.com is the only podcast directory of note. So the product was fine.

Was it the market? Marc Andreessen argues that the market is the only thing that matters for a startup. I just made the argument that Odeo was a strong product and I’m going to argue below that we had a strong team. Since no other web based podcast directory has proven otherwise, it looks like we were in a weak market. So is the answer that the market matters most?

That would look like the answer if not for Twitter, that pesky side project we launched that has had 10x growth in the last year. Market only looks like a good answer if you’re judging individual products, in this case the odeo.com podcasting directory.

A good team, that listens to its customers, is going to find a good market and put together a good product for that market. Steve Blank calls this process customer development (explained well in his book Four Steps to the Epiphany and in this Venture Hacks post).

We could see that Odeo.com didn’t have enough traction so we went looking for other ideas. You might think it was lucky that we hit on Twitter, and as a specific product, it was. If Jack wasn’t on the team, there would be no Twitter. But the team at Odeo had lots of ideas and plenty of people capable of carrying them out. Of the 19 or so people who contributed to Odeo, 13 had started or went on to start a business or major open source project**.

If Ev hadn’t bet on Twitter he would have bet on something else. Three of the companies above are currently live companies that support their founders and a few employees (Infectious is funded and doing well, Trazzler is funded by the Facebook fund, and CrowdVine is profitable). I chose a vertical route for CrowdVine, but the original idea, social networks for everyone, is an idea that’s nearly as big as Twitter (as evidenced by the size of Ning).

Because of the team, Ev had other options to overcome a weak market. So if you’re looking at it from the perspective of the company, team is most important***.

3. Rails was never the problem
Twitter had well-documented performance problems in it’s first few years. Many people, including programmers, pointed the blame at one piece of Twitter’s architecture, Ruby on Rails.

First, all Rails does for Twitter is serve up web pages. The vast majority of those scaling problems came in the back end, moving status updates around and then storing them in a way that Rails could retrieve them for display. So most people aren’t even looking at the right piece of the architecture.

Today Twitter has a much better performance track record and it still uses Rails to serve web pages. The difference is the backend.

So if the backend was such a problem why didn’t Twitter launch with a better backend or at least get it fixed earlier? That gets at the heart of the problem. I’ve never heard anyone get the blame right for all of those performance problems. They stem 100% from the way that we went about switching from the Odeo product to the Twitter product.

When a company kicks off their first project they do some long term thinking and might cover topics like architecture. But how do you launch your second project? Or fifth (approximately what Twitter was)?

Was it easy for the Flickr team to choose to double down on photo sharing, which initially was just a feature inside of a web-based multi-player game? For us, it wasn’t an orderly process at all. It wasn’t even clear that we were abandoning Odeo. We were running hackathons, which led to a condition where many people had competing ideas (and implementations!) of what our next product should be. But around those hackathons we were still continuing to develop Odeo. Twitter eventually won enough that we pulled two engineers off of the Odeo team, but the rest of us kept plugging away.

If you were thrown into a fight, would you start punching or would you open up your iphone and start browsing web pages about Karate? I’d argue that Twitter was launched in the middle of a fight for what we were going to do next, and any thought for long range planning was completely secondary to getting Twitter launched and proven. Without Rails, we might not have even given Jack time to finish the prototype.

So that’s why Twitter wasn’t ready to scale from day one. However, it took almost two years until it could scale reliably, and that certainly seems like longer than necessary. I think it’s an issue of engineering management. Until the Summize acquisition, there was no true engineering manager for Twitter. I had left before Twitter was spun out****. Everyone was a little wary of hiring middle management again since it was widely seen that we had been hired too early at Odeo. The job of middle management is to promote forward progress, and it took us awhile to figure out that wasn’t what Odeo needed. Twitter did eventually hire a VP of Engineering, but he didn’t pan out.

The result was that Twitter operated for a long time (until Summize was acquired) with a gap in engineering planning, someone who could put together a plan that everyone understood and could work from. They had people who could solve problems in brilliant ways, but they didn’t have someone who could get the entire company on the same page. That gap was just an unfortunate side effect of the jumbled team that emerged post-Odeo. So what’s the right way to change your company’s direction? It certainly had nothing to do with Rails.

* Odeo was eventually acquired and is today the only podcast directory of note. However, as a venture backed concern all we had really managed to build was a site with high page rank. We had terrible numbers on repeat visitors and our experimental features (podcast studio, send me a message, audio commenting) weren’t getting any use. Maybe we could have gone after libsyn’s podcast hosting business, but overall our stats said that if we wanted to strike out in a new direction we shouldn’t feel constrained by podcasting.

** Those remaining six include a former core contributor to Rails, Twitter’s current support lead and people that worked for Apple, Google, and Flickr.

*** The idea that Twitter is the same company as Odeo gets muddied because Ev bought the company back, laid off a chunk of Odeo and reincorporated Twitter as it’s own company. But I’d argue the difference isn’t important here. Twitter was launched and run in the early years by Odeo employees who worked at the same desks and the same office that they had when they were working on odeo.com.

**** People often ask me if I regret leaving, and I don’t. I made a list of reasons that included several that would have been sufficient on their own. Did they need me? Not at first, and I hate being idle. Was I happy? No, I was miserable. Every month I had told my team that what we were going to work on was critically important. And every month it had ended up not being important. It taught me an important lesson about what I want from work, to walk in every day believing I’m doing something important. I ended up with the opinion that the only way I could guarantee that was by owning my own company, hence CrowdVine.

8th Jun, 2009

5 comments

Stubbleblog Goes to New York City

Sarah and I are subletting a place in New York City for the summer. Sarah’s a former resident and has a built-in social life, but I’m a relative newbie and am looking to make social and nerd connections. If you read this blog and live in NYC, then we should hang out. Seriously, let’s do something together! I’m a ton of fun! Invite Sarah too, she’s a good talker.

Here are the some ideas:

1. The NBA playoffs. Invite me to your home and I’ll bring the beers. Or invite me to a bar. You might want to get on this because the Lakers are already up 2-0. Upcoming games are Tue 6/9, Thur 6/11, and potentially Sun 6/14, Tue 6/16, and Thur 6/18.

2. Movies. We just got back from a two week vacation so I’m behind on some of the blockbusters. Here are the summer movies that I know I want to see: Wolverine, Terminator, Star Trek, The Hangover, GI Joe, and Transformers. We’re right around the corner from Film Forum, so I’d also be up for seeing a good movie.

3. Nerd Gatherings. I’m a ruby programmer, startup founder, and social software guy. What are the good meetups? Any barcamps?

4. Coworking. Normally I work from home, but if your office has a free desk, I’d love to drop by.

5. Pizza Quest. Sarah and I are on a quest to discover the best pizzas in the world. We recently flew to Phoenix specifically to try the purported best pizza in the US. Our favorite is Di Fara’s in Brooklyn, but I’d be happy to try your favorite.

6. That Cultural Stuff. Do you know of a good reading, talk, play, outdoor performance, underground fight club, etc? I enjoy it all, from motorcross to the symphony.

Updated:

7. Minor league baseball. I don’t care if it’s Staten Island or Coney Island.

Our place is in the West Village on Morton Street. Last summer we did a house exchange and were here for a month. This year we’re trying the sublet approach because it gave us more flexibility and let us be here for longer (until mid-August). Sarah and I both work from home, which is why we have this sort of flexibility.

9th Apr, 2009

No comments

Cyborg Quote-botics

I want to give a quick update on @iheartquotes for the benefit of new followers.

1. As I wrote previously, iheartquotes was born a robot. Its human creator (me, @tonystubblebine) constructed him out of a database of quotes/sayings from the world of Unix fortune files, Ruby on Rails software, and the Twitter API.

2. Because @iheartquotes was born a robot, it does not share our human sensibilities about appropriate quotes. For example, many people reacted negatively to this update: “You will be divorced within a year.

3. Recently @iheartquotes has taken to posting human submitted quotes, making it a crowd-sourced cyborg quote-bot. If you want to submit a quote, send an @reply (that’s a twitter message starting with @iheartquotes).

4. Becoming half-human has awakened a sense of ambition in @iheartquotes. It now aspires to be in the list of top 100 most retweeted twitter accounts. If you like a quote, please retweet it (instructions on retweeting).

5. @iheartquotes speaks almost exclusively in quotes and fortunes, but will occasionally post calls to action for its human creator, its human friend, @sarahm, or its human creator’s company, @crowdvine. @sarahm is grateful for the quote communities feedback on webcasts and @crowdvine is grateful for help picking a new logo.

5th Mar, 2009

9 comments

Productivity Hack: Hangup politely

One of the most important things I had to learn when I started my company was how to quickly get off the phone with people who wanted to waste my time. It seems trivial, but in an effort to be polite and not burn any bridges, I was wasting a lot of time.

Recruiters call but we’re not looking to work with a recruiter. Business partners call about partnerships that we’d never do. Venture capitalist interns call in order to build a relationship and don’t seem to acknowledge that the only relationships that lead to funding start with a recommendation from a founder that has already been successful. Plus we’re not looking for funding.

I’ve tried a bunch of ways to get out of these calls. Three of the ways cut the call short but leave me angry and take me out of the zone of whatever I was doing. I don’t like hanging up because it feels rude. I don’t like yelling at the person — that definitely puts me into a bad mood. And I really don’t like arguing with the person and then losing the argument. That’s the worst.

The system I eventually hit on was to put together a polite script that led to me hanging up.

First I made clear policies for myself so that I knew which conversations I wanted to have and which I wanted to get out of. We’re not looking for funding and if we do, we will mine our own network for introductions to VC. We don’t do partnerships unless the partner already has a customer who is asking specifically for us and who is willing to pay for any integration work. We never work with recruiters and haven’t had any problems finding the people we need.

Second, I put together actual scripts that I practice and refine with each call.

Sales people
The sales calls we get range from ridiculous (vinyl siding) to somebody didn’t do their homework (managed DNS). I use the following script:

“Thank you for the call. This isn’t something we’re looking for right now. If you’d email me some information, I’ll keep it on file and get back to you . My email address is tony at crowdvine dot com. Thank you. [pause] Have a nice day. [pause] Goodbye. [pause] [click].”

Here are the key parts. Everything I said was polite. A lot of times your actions effect your mood, so it’s really important (to me) that I act in a way that maintains my positive mood. I was also direct. I gave a real reason and a real email address. I avoid triggering the moral response I get when I lie. Last, I got off the phone within 15 seconds. Those pauses are there to give the person a chance to also have a polite conversation. But the truth is that I’m not listening. They can say whatever they want and I’m hanging up at the end of my script.

I used to also say, “You don’t need to contact me again,” but that’s arguing and sales people take that as an opening for a conversation. The script above sends a stronger message, “It’s easy for me to ignore you.”

Venture Captialist Interns
Venture capital firms have interns (“associates”) who cold call companies claiming that they want to start building a relationship in case you ever need funding. What they’re really doing is market research. There’s a great discussion of this on Hacker News.

Since most founders are at least a little bit afraid of venture capitalists, they’re really hesitant to be rude, even though these calls are a total waste of time (there is zero chance that it will lead to funding) and the intern is lying to your face. I’ve never had to answer this one on the phone, but I did use the script below in an email to good effect.

“Thank you for contacting us. Unfortunately, as a matter of policy, we don’t take meetings regarding speculative partnerships. If we decide to look for funding we will be back in touch.”

This is the George Costanza strategy. It’s not them, it’s us. The conversation is over. The intern that I sent this to did send me a email back, but he couldn’t muster anything strong enough that I had to stay in the thread.

If you get caught on the phone by one of these guys you could probably throw in a “That’s our policy, why don’t you send any information to my email address? Thank you. Have a nice day.” At that point, if you still aren’t off the phone you can just keep repeating “Thank you. Have a nice day” until you’ve worn them down.

Partners

We’re open to the possibility of partnerships. In fact our software was built with the idea that we’d do one thing well and then integrate with other people who did something else well. But calls about partnerships have always been a time waster for us just because of priorities.

The time we spend on customer service and product development has both a bigger and more immediate effect on the business. So it really doesn’t matter if a partnership would have positive effects, because the things we’re already doing have a bigger effect.

I use a modification of the line I use with VC interns, that we have a policy of not meeting about speculative partnerships.

“Thank you for your interest. As a matter of policy we’re only interested in partnerships that fill a request from one of our customers or where the partner is bringing a customer that will pay for CrowdVine’s services. Do you have a customer that is asking for CrowdVine?”

The answer is almost always no. So that’s when I move into my wrap up script, “Why don’t you send me your product information. My email is tony at crowdvine dot com. I’ll keep it on file and if one of my customers asks for something like this then we’ll get back on the phone. [pause] Thank you [pause] Good bye [pause] Have a nice day [pause] [click]”

A potential partner is much more likely than a salesperson to respond positively to the script above and actually say good bye when you do. If they don’t, then it’s ok to hangup because they’re secretly a salesperson.

Recruiters

The second the economy went south we started getting calls from recruiters trying to place candidates. Recruiters are the worst. I think the ones who call us are people who found car sales too physically demanding (because you’re always having to walk to the manager’s office). It’s extremely important not to listen to anything they say.

I’m still looking for the perfect script, the one that leaves them feeling dehumanized and makes clear that there is no reason for them to ever call us back. Here’s my current version:

“Thank you for thinking of our company. Unfortunately, as a matter of policy we pick our firms based on references from our advisors. Best of luck placing your candidate. Have a nice day. [pause] Good bye [click]”

Notice how I’ve removed the [pause] before hanging up on them? That’s because a recruiter will argue anything. Hanging up immediately means the last thing I hear is myself being polite.

The reason I give them, about references, is a bit of a white lie. It’s technically true, but is much less important than the real reason I’m hanging up–we’re a networking company with our phone number plastered on our website. Any candidate who could possibly fit here would just call us directly.

If the recruiter does call back, I use the same script but say the “pause” out loud in order to make clear that they’re getting a scripted response.

I never would have guessed that figuring out the above tips would be so important. In general, being accessible to our customers has had a lot of benefits. I have my direct phone number on the website and that leads to a lot of great conversations with customers. I’d recommend the same thing if you can find a way to deal the solicitations.

22nd Jan, 2009

1 comment

Secrets of Productivity

On my work computer, I added this line to my /etc/hosts file. This works on Linux or OSX.

127.0.0.1 espn.com huffingtonpost.com talkingpointsmemo.com sfgate.com gamespot.com valleywag.com espn.go.com slashdot.org boingboing.net newmogul.com bloglines.com www.bloglines.com cnn.com www.cnn.com techcrunch.com www.techcrunch.com crunchgear.com www.crunchgear.com www.sfgate.com news.ycombinator.com www.newmogul.com

Cory Doctorow has a saying for his writing students along the lines of “surgeons don’t get surgeon’s block, so it’s not ok for you to get writer’s block.”

Shouldn’t that be true of any work? How many workers go to one of the sites above in order to kill time until inspiration strikes? I’m happy to say that I’m no longer one of those workers. The line above blocks me from all of the places where I used to kill time. When I’m on my computer I only have two choices, stare blankly or take the next action.

I also created a second feed reader account and moved all my non-crucial feeds there. The second account, hosted on bloglines, is blocked from me.

2nd Jan, 2009

5 comments

109 things

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.