As a backlash to the overwhelming crappiness of most blogs (and, frankly, out of embarassment at the fairly poor initial quality of my naive early blog efforts), I have been overthinking blogging. As a result, my $HOME has ten outlines and half-written articles and over-written blog entires that have musroomed into manuscripts. My resolution: plan less, write more. This is the blog version of the agile software mantra: release early, release often. The paradox, of course, is learning to be disciplined about being /less disciplined/. Part of what brings this on is the experience of reading blogs regularly for the first time over the last few weeks, and discovering that the novelty and turnover of content is /not/, in fact, a strict tradeoff with quality. For example, there are some VC blogs that are infrequent and crappy (I am in too good a mood this morning to name names, although, gentle reader, it does not escape your correspondent that this very blog may hew closer than is comfortable to that description). Then, there are [http://avc.blogs.com/a_vc/ VC blogs] that are prolific /and/ good. Doubtless, the best bloggers could refine and revise for some marginal gain in quality. But the decreasing marginal returns of extra structure and revision would be outweighted by having them put out yet another quality — though not perfect — piece of writing. My other resolution: dispense with a surfeit of caution. Or, to paraphrase “Uncle Joe” Stalin, you can’t make an omelet without breaking some eggs. If making a point involves a deserved harangue of one rogue or another, I will deliver it. And building on the first resolution, if exposing a bit of passion or intensity means a typo ecsapes the editor’s pencil, so be it. For example, David Cowan [http://whohastimeforthis.blogspot.com/2006/04/created-by-school-teacher.html lays the smack down on a charlatan] in a blog entry so clearly motivated by passionate interest that the reader cannot help but be capitivated and delighted, despite the fact that the entire entry is a typographical and structural monstrosity. Final resolution: no more than one “gentle reader” comment per posting.
Vim 7 is Incompatible with the Vimspell Plugin
July 11th, 2006On my Cygwin environment on Win XP, Vim 7 appears to run fine with one exception: the vimspell.vim plugin. It apepars that Vimspell conflicts with the new built-in spell check functionality in Vim 7. The symptom of this is that one starts to type and a massive amount of doubled or missed letters start to appear (and, no, I was not drunk when I noticed this). Removing the vimspell.vim plugin works fine.
However, I like to use a consistent ~/.vim directory across all my shells, so that I can store it in CVS and enjoy the same settings on every system. To do this across a heterogeneous environment of Vim 6 and Vim 7 boxen, I have made the following change to vimspell.vim:
61c61 < if exists("loaded_vimspell") || &compatible --- > if exists("loaded_vimspell") || &compatible || v:version >= 700
This will short-circuit out of vimspell before it gets loading if the version is Vim 7.0 or above.
Outlook to Remind (out2rem) Converter Script v0.0.1
June 26th, 2006Update: I have fixed some stuff (time format and placement of AT keyword) and have posted v0.0.2 at the link below.
Please find here a short Perl script to dump out your Microsoft Outlook appointments in Remind format.
This should be useful to those of you who, like me, are tracking the whole plaintext / console / CLI resurgence as indicated here among other places.
If you have suggestions, please drop me an email at rlucas at tercent.com, and / or add helpful notes to the 43Folders Wiki.
Vim 7.0 Delights and Amazes with Beautified Auto-completion
June 21st, 2006Randall Lucas 2006-06-21
Vim, the text editor extraordinaire, came out with version 7.0 last month. At some point, unwittingly, I had updated my work computer — Cygwin under Windows XP — using the Cygwin setup.exe file, not expecting any major version number changes. Hence, I didn’t even realize that Vim 7 was now on my machine.
This morning, I was doing as I normally do in writing a document with many recurrences of the same word — “ctrl-N” to cycle through possible completions of the word — when an odd grey-and-purple blob appeared below my cursor, filled with words! Unsettled, I lifted my fingers from the keys — what was this colorized monstrosity?
And then I realized. Vim was giving me “tool tips.” Here, in a console window, using naught but VT100 control codes. Jaded IDE addicts will say: “sure, but my GUI IDE has had those for years.” Perhaps. But I can use my tool tips in a German cybercafe, over an SSH session from a Danger Hiptop, or over a serial line in a generic data center.
For Perl, populating the tool tips with syntactically valid items (method names, operators, etc.) will be hard, at least according to the conventional notion that “only perl can parse Perl.” But, for Ruby, Python, and, should the need arise, C or Java, adding syntax-awareness (see “:help complete-items”) should be just an exercise in glue coding.
If you manipulate text (and if you aren’t already an adept of another cult editor), then by all means get Vim!
Fixing a package remove failure on Debian (or Ubuntu) when dpkg-divert barfs.
June 18th, 20062006-06-18 Randall Lucas
If you get stuck with a half-uninstalled (technically “half-installed;” the debian dpkg system is an optimist, I guess) package that barfs on running its postrm (post-removal) script with something like:
"dpkg-divert: mismatch on divert-to ..."
This can sometimes be fixed, or at least made to shut up, by finding the appropriate line in /var/lib/dpkg/info/PACKAGE.postrm and editing it to reflect the right filenames for the dpkg-divert remove line.
If you really need to get down and dirty (like, if the removal of a non-critical package is stuck halfway and that is stopping you from doing an installation of a really necessary package), you could just comment out that whole bit with the goal of getting the postrm script to return success (0).
Of course, if you’re running any important services, you shouldn’t be using “unstable” or Ubuntu; just run Debian stable so you can sleep at night.
FIX: Ubuntu Dapper upgrade breaks CUPS printing; reinstall fixes it.
June 11th, 20062006-06-11 Randall Lucas
Upon upgrading my Ubuntu installation to Dapper using a simple:
sudo vim /etc/apt/sources.list
to add the Dapper repositories, and then
sudo apt-get update sudo apt-get dist-upgrade
I discovered that my printing no longer worked. I just previously been printing (and sharing my printer with a Windows / Mac mixed environment) just fine from my HP multifunction printer.
Among other errors, I kept receiving a note in my logs to the effect of:
cupsdAuthorize: Local authentication certificate not found!
I looked around and found what appeared to be a certficate in /etc/cups/certs but that didn’t change anything. In frustration, I tried simply reinstalling cupsys with:
sudo apt-get remove cupsys sudo apt-get install cupsys
To my surprise, after doing this and reconfiguring the printer, everything worked OK again. My theory is that the upgrade did not upgrade the certificate (or clobbered an old one, thereby breaking it), and that reinstalling caused a fresh cert to take effect.
This may not be your solution; there were other, more serious problems with CUPS in Dapper, as detailed here: https://launchpad.net/distros/ubuntu/+source/cupsys/+bug/45099
To the sender of an unsolicited business plan email
June 8th, 20062006-06-08 Randall Lucas Hello, I received an unsolicited business plan via email from you. This letter will try, in a constructive and humble manner, to tell you why I won’t read it, and what else you should try. Unsolicited commercial email is spam — even if it’s sent to twenty VC firms instead of a million random people — so I use that word to describe it here. Spam is costly but those costs are unfairly split. An email costs the sender nearly nothing on a per-recipient basis, but instead places all the cost (of time and attention) on the recipient. If VC firms made a point of reading business plan spam, it would effectively reward the senders of spam, and thus perpetuate the problem in a vicious circle. So, those of us who work for VCs must — for both moral and time constraint reasons — relegate unsolicited business plan emails to the “Trash” folder. However, in the spirit of constructive criticism, I want to point out some good alternatives to business plan spam for getting a VC to look at your plan. These are solid ideas that have worked for firms pitching my employer, [http://voyagercapital.com/ Voyager Capital], but may not be applicable everywhere. – Build your team in-house. It will be very hard to successfully raise VC funding without at least one person in your management team who hsd experience with venture-backed startups (and therefore, at least some connections in venture capital). If you’re having trouble getting seen by VCs, you should consider teaming with someone who has done it before. – Find quality “Angel” investors. Angels (high net worth individuals) often have connections to VC firms and try to parlay their initial investment in your company by introducing you to VCs they may know. While your best bet here is to find angels who are personally connected to you or interested in your product, you could also look to organizations like these: * [http://www.allianceofangels.com/ Alliance of Angels] * [http://www.k4seattle.com/ Keiretsu Forum] – Hire top-notch service providers (lawyers, accountants, consultants). Hiring a “brand-name” lawyer or other service provider often gets you limited access to his Rolodex. The Holy Grail of this route is to find a well-connected service provider who is willing to take equity for payment; his cash flow then depends on your successful fundraising. I hesitate to name names here, but some good signs might be having a Silicon Valley office, reaching out to the entrepreneurial community, or having been the service provider on well-known deals in your industry. – Get out the door and network. VC folks, from general partners down to lowly analysts such as myself, can often be found at technology and business networking events. Here in Seattle in the last few months, I’ve personally spotted other VC folks at events ranging from the [http://www.techcrunch.com/2006/06/01/two-parties-in-two-weeks-seattle-and-london/ TechCrunch / Redfin / TripHub / Farecast Party] to the [http://www.nwen.org/ NWEN Venture Breakfasts] to the [http://blog.seattlepi.nwsource.com/venture/archives/101645.asp PaidContent.org mixer]. Many of these events are free or of nominal cost. This route is easily the best way, since everyone who works in the Seattle VC community is not only good-looking, charming, and witty, but also a pleasure to talk to (ok, in any case, most of us don’t bite). Please note that one thing I did not list is hiring a firm specifically for fundraising purposes. While there may be some situations where hiring a fund finder is appropriate, in most cases, a promising business should be finding VC connections through one or more of the above routes. Remember, in business as in life, you are often judged by the quality of the company you keep as much as by anything else, so having an introduction from a trusted party is the first step to winning the VCs’ trust. Finally, while many VCs don’t explicitly rule out investments brought through a paid fundraiser, they tend to be wary of investing money to be spent on a finder’s fee, rather than on growing the business. (Arrangements where VC introductions are incidental to a consultant’s substantive work on growing and shaping the business are generally viewed more positively.) I hope this note has helped you to understand why your unsolicited business plan will not be read, and how you can go about making the sort of personal connection that will maximize your chances of getting a good deal funded. Best regards, Randall
Unsolicited Emails and VCs
June 1st, 20062006-06-01 Randall Lucas About a month after starting to work for Voyager Capital’s investment team, I started noticing a different kind of spam email than I had ever received in the past: business plan spam. This problem — probably fairly unique to VCs (and possibly high-profile angel investors) — exhibits many of the same characteristics as “normal” spam: – Sending these spams, on a per-recipient basis, is cheap or free to the sender. There are ~ 700 venture firms with Web sites in the US; scraping or guessing the addresses of people at those firms is fairly trivial (remember, most of these spams are from ostensibly “cutting edge” software companies; writing a screen-scraper is a before-lunch type of project for a competent programmer). – Receiving these spams imposes a cost on the recipient. VC is already an ADD-riddled industry; it would only be humane to respect what little concentration and attention your average VC has left. – The senders acknowledge that the “payoff” event (making a sale, or in this case, securing an investment) is exceedingly rare, but figure that at so low a cost, it’s worth it even at a tiny payoff probability. – For a product or business plan, being advertised in a spam email correlates remarkably well with being low quality. In addition to these similarities, there are a number of other characteristics of business plan spam, some of which make it more pernicious: – Business plan spam is eerily closely targeted. For one thing, there are only a few thousand VCs in the US, so it’s kind of like some stranger knowing that you were born in a particular small town. For another, many of these spams manage to include the recipient’s name, in a pseudo-personalized way. Business plan spam is just anonymous enough to be disrespectful, and just personal enough to be unsettling. – The VC community this spam targets is small and runs on personal relationships. Offending a colleague or possible business partner in this small world is a big deal. Since it is possible, though unlikely, to misinterpret an email as unsolicited, and since accusing someone of spam has the potential to offend them, I believe VCs are loathe to reproach senders of business plan spam. (Much like the spammers themselves, VCs are faced with a low probability but high [negative] payoff event of offending a legitimate referral.) – Oftentimes, perhaps because the senders of the emails are poorly indoctrinated with good Internet culture, they think that they are behaving within appropriate norms. This leads to a number of behaviors, such as being very free with the number of emails they send, and taking umbrage at the lack of a prompt reply. Finally, further complicating all of this is the fact that sometimes (though rarely), a business plan that might otherwise be judged worthwhile, if referred through a trusted channel, comes in through the spam channel. Admittedly, it is unlikely that a partner-level VC would remember a spammed business plan well enough for it to hurt the company’s chances of funding. However, associates, analysts, or gatekeeper support staff who may have had to deal with a spammed business plan (sometimes repeatedly!) could have a lot to do with those chances, and annoying them is therefore bad practice. Entrepreneurs should keep in mind as well that “hired guns” for fundraising have a wide range of levels of quality and soundness of practice; I’d estimate that nearly half of the business plan spam I receive is from a paid fundraiser rather than from a company principal. My reason for explaining all this is by way of introduction to another document I feel needs to be written: a respectful explanation of why spamming VCs is a bad idea, and some constructive suggestions on how to approach them (us) through channels that ultimately work better for both parties.
Venture Capital Jargon and Terminology
April 10th, 20062006-04-10 Randall Lucas
It’s been just over half a year that I’ve been working on the “other side of the table,” as a VC analyst at one of Seattle’s leading venture firms. Something that was helpful to me in my first days on the job was reading blog postings from Brad Feld and Fred Wilson, explaining terms of art in the VC world, like “participating preferred,” “liquidation preference,” and the like.
Both as a personal reference tool, and in order to help out folks (be they new analysts / associates at a venture firm, or entrepreneurs) who are faced with rapidly coming up to speed on the jargon of the industry, I’m preparing this miniature glossary of VC terms. I’m targeting the reader who’s responsibility is actually modeling the effect of these terms once in place, rather than negotiating them ex ante, so commentary is biased accordingly.
Antidilution Protection
A right of preferred stockholders to increase their effective number of shares in the event of a subsequent dilutive (lower per-share price) sale of stock. AKA “the (full or partial) ratchet.”
For preferred stock, antidilution protection is usually effected by an adjustment in the conversion price (or ratio). For example, if you bought at $1.00 per share, you would normally convert to common at $1.00 per share (1:1 ratio). For reasons of antidilution, your conversion price might be adjusted to $0.75 per share (1.5:1 ratio). How this is calculated depends upon the type of protection.
Antidilution protection is usually either “broad-based” or “narrow-based” — these represent the “partial” ratchet, and are based upon a weighted average. In broad-based antidilution protection, you would typically reduce the conversion price using a factor derived as follows:
Old share count (CSE) + (New money / Old per-share price) Factor = --------------------------------------------------------- Old share count (CSE) + (New money / New per-share price) (Broad-based antidilution conversion price factor calculation)
For narrow-based protection, the factor is derived similarly, but instead of CSE for the old share count, a much smaller number may be used (such as only the then-outstanding common shares). Investors naturally prefer narrow-based to broad-based when choosing a weighted average antidilution clause.
However, the rational investor will prefer most of all the “full ratchet.” This clause simply adjusts the conversion price on the old shares to the new share price. In the event of a “down round,” this jacks up the prior investor’s percentage ownership in a major way.
In fact, however, the “full ratchet” is not aggressively pursued by many VCs these days. Although it is theoretically favorable to him who holds it, it paradoxically may turn off a subsequent “down round” investor and wash out management’s skin in the game at a time when that capital and talent are most needed.
Carveout
A distribution upon liquidation which is set aside (“carved out”) for the management team, often at the discretion of the Board of Directors and ahead of equity distributions.
One purpose of a carveout is to ensure that management stays motivated to effect an orderly wind-up of a company even when their equity compensation is likely to be modest or nonexistent.
Other sources: Gray Cary
Common Stock Equivalents (CSE)
The number of common stock shares for which a given security may be exchanged or converted; includes things like preferred shares as-converted, options, and warrants. However, it behooves the analyst carefully to read the documents in question; varying types of calculations calling for the fully diluted share count may have differing rules (e.g. for options, one might count all authorized, only granted, or only “above water”).
Dividends
Preferred stock often has a dividend clause; a typicaly amount and character of dividends I’ve seen is “8% annual, non-cumulative, in preference to junior stock, when, as, and if declared.” The last part — if declared — is the key issue here, since dividends rarely if ever are declared by startups.
The consensus I’ve gotten in this part of the country is that dividends are typically a non-issue, but that a dividend clause is added to block shenanigans such as a dividend to common shareholders to circumvent the liquidation preferences.
Sometimes, preferred stock will have a mandatory dividend associated with it as well; this is more likely to be seen in mature companies than in startups, and I have never had to model it. This might also be different in different regions.
Drag-along Right
The right to compel other shareholders to approve a liquidation transaction (“drag them along” with you). Usually afforded to a supermajority of preferred shareholders (either a specific class, or preferred holders voting together).
(Update 2006-06-19: Brad Feld introduces his readers to a variant of a drag-along right, termed a “compelled sale right,” in which the right is attributable to a particular minority shareholder rather than a majority or supermajority. Shockingly, in Feld’s example term sheet, this compelled sale right is given to a 10% CSE owner.)
Liquidation Preference
A right of holders of a series of preferred stock to receive, before any other distribution, a specified payment, typically a multiple (such as 2.0x) of the original purchase price. AKA “two times money out first.”
Liquidation preferences are either paid in rank order (e.g., Series D preference first, then Series C, then Series B, etc.) or pari passu (according to each series’ percentage of the total preference amount). Once all the preferences are paid, then the rest of the proceeds are split among the holders of common stock (but see Participating Preferred, below).
The choice of converting to common vs. taking a preference, in a multiple-series capital structure, can lead to some pretty hairy financial models; caveat Excelor. One big thing to remember is that the decision of one series can “cascade” to others, since the first series’ decision, by definition, will be changing the amount of proceeds available to others.
Very rarely, common stock has a “liqudiation preference” as well (no joke — I’ve seen it with my own eyes!).
Other sources: Brad Feld on liquidation preferences;
Participating Preferred
A series of preferred stock which, in addition to any liquidation preference, gets to participate in the distribution of proceeds to common stock on an “as-if converted (to common stock)” basis. AKA “double dip.”
In non-participating preferred, a preferred investor must choose either to receive his liquidation preference, or to participate on an as-converted basis. For small exits, the preference is better; for large exits, the participation is better. Participating preferred is known as the double dip, because the investor gets both.
Sometimes, this clause is combined with a “cap” on the participation amount, which is, in a tricky way, equivalent to non-participating preferred with a big “invisible preference” included (because the investor still faces a “tipping point” where it is better to convert to common; it’s just a much higher number).
Other sources: Brad Feld on participating preferred;
Redemption Right
The right
of a stockholder to require the company to buy back his shares. Like with dividends, this is almost always present, but very rarely invoked for startup deals.
Typically, the redemption right specifies the price of redemption and a timeline (e.g. 1.0x, monthly over two years). Most often, this right requires some kind of supermajority of preferred holders for its exercise.
Warrant Coverage
In conjunction with another financing, the issuance of warrants to purchase stock in a quantity usually specified by a percentage of a principal amount (e.g., 10% coverage on a $5 M bridge loan would be a warrant to purchase $500k of stock). The actual price for the warrant exercise might be the then-current price, or it might be dependent on the conversion price of a convertible note.
Warrants are usually “sweeteners” added onto debt rounds by venture lenders; chances are awful good that if you look at the warrants section of a few cap tables you’ll come across “SVB” before long (Silicon Valley Bank, one of the usual suspects in venture lending).
Vimoutliner Cheat Sheet
January 1st, 2006.otl - file extension ,, - general command prefix for below: ,,1-9,0 - indentation levels (1-9, or none) to show, folding the rest ,,- all Draw dashed line ,,f normal Directory listing of the current directory ,,s normal Sort sub-tree under cursor ascending ,,S normal Sort sub-tree under cursor descending ,,t normal Append timestamp (HH:MM:SS) to heading ,,T normal Pre-pend timestamp (HH:MM:SS) to heading ,,T normal Pre-pend timestamp (HH:MM:SS) to heading ,,t insert Insert timestamp (HH:MM:SS) at cursor ,,d normal Append datestamp (YYYY-MM-DD) to heading ,,d insert Insert datestamp (YYYY-MM-DD) at cursor ,,D normal Pre-pend datestamp (YYYY-MM-DD) to heading ,,B normal Make body text start with a space ,,b normal Make body text start with a colon and space ,,w insert Save changes and return to insert mode ,,e normal Execute the executable tag line under cursor : body text (wrapping) ; preformatted body text (non-wrapping) | table > user-defined, text block (wrapping) < user-defined, preformatted text block (non-wrapping) zc normal fold under current heading gv normal re-highlight last visual highlight ,,cb Insert a check box on the current line or each line of the currently selected range (including lines in selected but closed folds). This command is currently not aware of body text. Automatic recalculation of is performed for the entire root-parent branch that contains the updated child. (see ,,cz) ,,cx Toggle check box state (percentage aware) ,,cd Delete check boxes ,,c% Create a check box with percentage placeholder except on childless parents ,,cp Create a check box with percentage placeholder on all headings ,,cz Compute completion for the tree below the current heading.