The “user” virtual file / workspace in Prolog.

February 11th, 2010

When you’re first learning about Prolog, sometimes you’ll read books or tutorials that show you typing in “clauses,” and then immediately thereafter typing a “query.” If you use a visual or browser-based Prolog implementation, you’ll discover that there are two “modes” (my term), one for the input of the program / database, and one for querying. The query form is denoted by the prompt “?-” as in:

?- my_query_(Variable).

To me, it was somewhat confusing as to why and how I had to keep separate my program from my queries, since I was used to REPL-type interactive programming (e.g. irb for Ruby).

Later, in reading the SWI-Prolog manual, I saw reference to this odd snippet in the “Adding Arithmetic Functions” section:

?- [user].

:- other_stuff(x).

It appeared that [user] was changing the mode from query-mode to program-mode, and allowing me to define new predicates.

Well, close. It turns out the way to think about this (can’t seem to find it in the SWI-Prolog manual) is that the square-bracket notation is the “load file” shortcut, and Prolog comes with a virtual file known as “user.” When you query:

?- [user].

and then go on to get:

|:

as your new prompt, you’re loading the “user” file which is like opening a handle on STDIN. (Not precisely, but close enough.) You can then type your program entries, /but you must terminate them with EOF/ (ctrl-D).

This bit of prerequisite knowledge would have saved me a lot of puzzlement and trial-and-error. A shame that Prolog, despite a nearly 40-year history of continuous use and usefulness, has such a high propaedeutic load.

Concentrating in History and Science at Harvard

January 28th, 2010

This post was originally at my Harvard Law / Berkman Center blog, but has since been removed. Though it is certainly outdated with respect to the current practices and personalities of the History of Science department, it still may hold some value for prospective students. I originally wrote it as advice to my younger self, and I think it might be particularly useful to undergraduates who share some biases, conceits, and preferences with that past self.

What you should know before undertaking an undergraduate concentration in History and Science at Harvard

Thu, May 6, 2004; by Randall Lucas.

Draft, 06 May 2004

Synopsis

Having completed an A.B. in History and Science, I wish I’d known the following before beginning:

1.You will not receive a thorough background in the history of science before being assigned work presupposing such knowledge. You must undertake to educate yourself with a foundational knowledge if you wish fully to understand and gain from the coursework.

2.You will be in a class with a large contingent of pre-med students who bring a potentially undesirable ethic to the department. You should carefully consider whether you want these people to be your peers for three years.

3.The influence of identity politics and philosophies hostile to science will be significant and may emphasize criticism and polemic. You should understand the “Science Wars” and their implications before you choose the concentration.

4.The department’s faculty is brilliant, but the ideology and personality of individual persons with whom you work will inordinately influence your learning, enjoyment, and grades. You must research the individuals within the department with whom you consider working.

5.MIT is available to you and has a science studies program with excellent faculty. You should seriously consider the MIT offerings for adding breadth and diversity to your coursework.

6.The History of Science Department is in the Science Center, the most dismal place known to man. You must convince your colleagues to flee that decrepit building at every chance.

Introduction

I chose to concentrate in History and Science as an undergraduate (class of 2001) because of my interest in both fields of inquiry and in their intersection. Despite an intense interest, however, I became fundamentally unsatisfied with and alienated by my experience in the department, and sought out other areas in which to focus my energy, causing my grades and level of achievement in my concentration to suffer. Looking back on reasons for this dissatisfaction, and seeking to help others avoid it, I have identified the caveats that follow.

The following points will likely be useful mainly to that minority of students who share certain of my preferences; there are certainly many people who enjoy and thrive on the status quo. However, if the numbered synopsis resonates with you, the entire article is likely worth reading.

While the intended audience of this paper is students considering, or struggling with, a concentration in History and Science, I hope it may be useful to those seeking to reform the department, or indeed, undergraduate education in general. Such readers should note that I take full personal responsibility for my past performance within the department while remaining critical of the defects I describe below.

Discussion

1. You will not receive a thorough background in the philosophy of science, nor in the historiography of science, nor in the actual history of science. Although a sophomore tutorial includes selected works relevant to all three of those disciplines, it provides a solid grounding in none of them. The remainder of the curriculum tends toward rather specific inquiries into the specialty fields of faculty members.

The History of Science Department (HSD) at Harvard is a meeting place of a number of overlapping subject areas (“related disciplines”) that might at another school be called Science Studies. The natural focus is on the history of science, but both critiques of how the history of science has been written in the past (the historiography of science) and studies relevant to the nature of scientific knowledge and its place in the world of knowledge (the philosophy of science) go on alongside and mixed in with the historical studies. These three areas are largely interrelated in practice, and some synthesis of these is usually expected in students’ work.

However, most courses offered in the HSD analyze a relatively narrow piece of history that a faculty member has staked out, organized typically along the lines of geography, time, and / or scientific discipline. These courses are excellent for “drilling-down” into the subject matter given, can be intellectually satisfying in their depth, and often make points of departure for senior theses. However, with regard to the three related disciplines (history, historiography, and philosophy), these drill-down courses offer only a “case study” approach and do not provide any systematic way to cover the related disciplines.

The sophomore tutorial (as I observed it in 1999) seems nominally to be addressed towards this problem of laying the foundation in the related disciplines. However, it suffers from an even worse defect in this mission than does a drill-down course: in effect, the tutorial comprises a number of micro-case studies, thereby sacrificing the systematicity of a survey, yet covers each so superficially as to lose the benefits of in-depth study. The sophomore tutorial is centered around a series of reading selections in all three disciplines, typically with three or so selections (often, but not always, related) to be assigned and discussed in a week. Many of these are excerpts or single examples of primary sources (e.g., Copernicus, Sarton, Feyerabend, in history, historiography, and philosophy, respectively) and are presented as exercises in “close reading.” Such a series of assignments, without an underlying framework and system, is a recipe for a patchwork understanding.

The problem is that close reading and criticism, which are the focus of the later drill-down courses where it is appropriate to focus on a narrow field of inquiry, is an inappropriate starting point. The tutorial fails to give a general and comprehensive background in what, overall, Copernicus, Sarton, or Feyerabend did and said, and how that relates to the other major figures in those fields. What is desperately needed by the underclassman is a solid foundation in the disciplines themselves, not in “close reading” or criticizing the foundational knowledge. How can one be expected to say anything of worth about a closely read page on the philosophy of science, when the sum of one’s instruction in the philosophy of science has been three or four such closely read articles? How can a primary source reading from an ancient astronomer be helpful when one has not mastered at least the narrative history of that astronomer, his forebears and successors, and his work’s relation to that which went before and after?

Only a remarkably arrogant blend of sophistry and ignorance permits the sophomore who has only the tutorial as his guide to speak or write critically on the contentious ideas of, for example, Feyerabend, yet that is exactly what we ask him to do. Harvard undergraduates may be famous for their arrogance and sophistry, but we need not countenance ignorance.

Another problem with prematurely engaging in close, critical readings of primary sources is that, like in many academic fields, there is a lot of cultural context to the practice of History of Science. To produce work that engages the scholarship in the field surrounding it, one must first learn and apply the conventions and tradecraft of History of Science practitioners. Ideally, this, too would be formally taught in a systematic manner, but if it must be absorbed implicitly rather than explicitly, it can be gained effectively only from secondary sources, not primary sources.

I do not claim that my (professedly inadequate) History of Science education qualifies me to prescribe a detailed syllabus, but I can propose a very general prototype that would at least be superior to the current state of affairs. I propose that the sophomore tutorial be replaced with two semesters: first, a roughly chronological survey of science from antiquity to mid-20th century, and second, a full semester on the historiography and philosophy of science, covering Greek thought as a basis and beginning seriously with the renaissance, up through the “Science Wars” of the 90s (see below). The historical survey will not aim to criticize or challenge the “received history” — precisely because the “received history” must first be presented and known before it can thoughtfully be challenged. The second semester of historiography and philosophy will begin the questioning process in a systematic manner, asking the foundational questions such as: What is science, anyhow? How is it different from other forms of knowledge? Who has heretofore written the history of science, and with what biases, and what criticisms have been directed at the historical record? In both of these courses, focus will be away from the performance of actual historical research or philosophical criticism, and directed instead toward a broad, systematic understanding of the received history, the major schools of thought, and the historiographic issues at hand. The student will have two more years to engage these ideas in the performance of research and criticism, but will be much better prepared to do so.

(The inclusion of “Greek thought as a basis” is not meant to exclude the possibility of augmenting or replacing it with other times’ or cultures’ contributions. However, I reject categorically the suggestion that no foundation is proper because it may be biased. In other words, should it be determined that Arab science is the best starting place from which to build a foundational understanding for undergraduate history of science education, then make it so — but such a foundation must be built.)

This idea — that there is at least a general “canon” that one ought to know and that schools should try to cover systematically — has been out of favor for many years. President Summers is demanding of the faculty a reexamination of this issue, which reexamination is in order and indeed overdue.

In the event that you decide to concentrate in History and Science, and the department has not yet adopted measures similar to those I describe above, I highly recommend that you take measures to broaden and systematize your history and philosophy of science education before you enter the sophomore tutorial. Examine reading lists of science studies courses from other universities, acquire some of their recommended general texts, and read these prior to your sophomore year. If you can manage to read a good selection of secondary sources that aim to survey the field prior to your sophomore tutorial, you will be much better able to understand and put to use the ?close reading? materials that the remainder of your course of study in the HSD will comprise.

2. You will be in a class with a large contingent of pre-med students who are seeking a way to combine their pre-med requirements with a humanities degree. These people will bring a potentially undesirable ethic to the department that it likely would not otherwise have.

The tenor of your HSD experience will be substantially influenced by the pre-med ethic. The following are attitudes characteristic of this ethic, and you may find them undesirable:

– Grades are of utmost importance, and certainly are of more importance than developing deep understanding or doing good work.
– Challenging of professors, instructors, or received ideas is virtually unknown (note that I exclude instructor-assigned “challenges” to straw-man notions of received ideas).
– Candor in discussions is unknown, replaced instead by the extremes of “flexing” or meek acquiescence.

If you are pre-med, you may want to reconsider surrounding yourself with so many folks on a similar path (remember, if your plan works out, you’ll be spending many, many years with those people anyhow). Furthermore, athletes should take special note that the HSD is not one of the traditionally athlete-friendly departments, and your colleagues and instructors may be nonplussed at the notion of rescheduling for practices or meets.

3. The influence of identity politics (gender, race, class) will be substantial, as will the influence of philosophies that count science as epistemologically non-exceptional. One result is that criticism and polemic will be prominent and may be emphasized over mastery.

You will likely be expected to include substantial criticism of gender, race, class, and similar issues in some of your work in the department, both implicitly by the nature of the coursework and the interests of your instructors, and explicitly by your coursework. To be sure: often, gender, race, and class considerations can be meaningful, helpful, and interesting to a thorough analysis. However, focusing on these issues tends to emphasize the polemical, and is often orthogonal to the main inquiry. If your interest is in the history of science or philosophy of science, rather than historical criticism or philosophical criticism of and through science, you may not appreciate that shift. If you are working with people (instructors, or classmates, in the case of discussion sections) who are particularly interested in this type of work, you might find the emphasis placed on these issues to be frustrating.

By way of introduction to the second part of this caveat (what I call scientific non-exceptionalism), let me explain very briefly and very generally a phenomenon known as “Science Wars.” Over the better part of the twentieth century, an intellectual current that might be described as a backlash to the notion of the triumphant march of technological progress came into fashion among academics, especially on the left. Work in this vein tends to be critical of scientific authority as an instrument of power, and tends to share methods and language with Marxism, feminism, and literary criticism. Let us call this side “group A.” Group A, along with raising legitimate concerns, tended to attack a straw-man version of “Science” due to their generally not understanding it very rigorously. At the same time, a “group B” took to what it imagined was a defense of science. Predictably, group B made some good points but largely argued right past group A, attacking a straw-man version of “anti-Science” because group B didn’t really understand the specialized critical language of group A. Group A imagined that group B was all about the Manhattan Project, eugenics, and Star Wars, while group B imagined that group A was in favor of astrology, having polio, and replacing Newton with a carved wooden fetish. Things got sillier and sillier until the mid nineties when a physicist named Sokal duped some second-stringer academics into publishing a goofy hoax about how physics was just a matter of subjective interpretation in an attempt to discredit group A. This radicalized folks, who either got angry about Sokal’s deceit or saw it as a debunking of group A.

“Science Wars” continues to this day, although it seems to be somewhat toned down from its peak. The main point of contention between the belligerents is whether science is exceptional; that is, whether science provides a way of knowing or a route to knowledge that is, like revelation is to the faithful, privileged and specially trustworthy. (Full disclosure: as the reader may have surmised, I believe in a limited scientific exceptionalism, but not without noting that, to paraphrase Derrida on philosophy, science appropriates for itself the dialog or process that defines it [e.g., if a supernatural phenomenon such as ESP is observed and documented and measured, it will come to be considered no longer “supernatural” but a scientifically explained phenomenon].)

While it is necessary not to conflate historical with modern science while working on a purely historical topic, the question of exceptionalism will arise in any consideration of modern or historical philosophy of science. In the HSD, if your work relates to the place of science in an epistemology, you will likely be expected to hedge your arguments with reference to the non-exceptionalist ideas. Especially for those of you who engage seriously both with the philosophical question of the place of science and with your science coursework, you may find this expectation troublesome.

Like the presence of the pre-meds, this is more a cultural issue than a structural one, so these are less recommendation for specific changes than advance warnings to students about cultural issues to expect. In fact, I would not recommend any specific changes which would require coercion of persons on these dug-in and contentious topics. However, prospective students should be alert that the “Science Wars” are still smoldering, and that the environment that creates may be unpleasant.

4. The department’s faculty is packed with some of the most brilliant minds you can imagine, but you won’t pick the right courses (that is, the right people) based on the descriptions in Courses of Instruction. Therefore, you must research the individual persons with whom you wish to work.

This point in fact probably extends to all of Harvard. Alas, you are cursed with riches: the HSD has some truly brilliant and fascinating minds at work in its faculty, but you can only work with a few of them in your allotted time. What’s worse, the conventional course selection method is to read a paragraph, perhaps also read the CUE guide, shop a course (in the HSD, often one weekly meeting) and then commit to spend a whole semester on it. This is very risky, and you need to mitigate this risk by researching the individual style, interests, and ideology of the prospective instructors.

The HSD courses are intensely dependent on the personality and interests of the faculty instructors. It is very important for your enjoyment and for what you will ultimately take away from the concentration that you very carefully select the faculty with whom you work. I recommend reading as much as possible of the works of, and about the ideology of, any faculty member whose course you intend on taking.

By an instructor’s ideology, I mean his more or less comprehensive system of ideas about the topic, which can include the critical and polemical ideas I discuss above, but also includes his value judgments on what is interesting (and what is deathly boring) and what is good quality. The paragraph in Courses of Instruction will but hint at this ideology, and your first shopping period section will reveal little more. Your departmental advisors, such as they are, may be helpful for this — I found the departmental advisors of my day to be more of functionaries for processing undergraduates’ papers en masse than legitimately useful. You really must read about your instructors, including their relevant published work on the topic at hand, in order to decide if you want to work with them.

Unlike much of the rest of your education, this will not be a science course, and mental horsepower alone will not see you through: there are no objective exams, and you must be aligned with the ideology and personality of the professor in order that his instruction should prove to you satisfactory and that your work should prove likewise to him.

Although carrying out this recommendation takes time, consider: you are investing a lot in this degree, and you must do your due diligence before investing your precious time in an instructor. Better to lose a few hours in preliminary research than to lose a semester.

5. MIT is available to you and has a science studies program with excellent faculty.

The Science, Technology, and Society program at MIT is a mere two T stops away by train, but a world apart in terms of certain attitudes. If you find yourself dissatisfied with the HSD, or if you are having any hesitations about limiting your courses to those offered in the department, at the very least examine the MIT offerings. Although I discovered them late in my undergraduate career, the MIT courses were a wonderfully refreshing change of attitude.

6. The History of Science Department is in the Science Center, the most dismal place known to man.

Unfinished concrete, exposed ducts and wiring, cheap carpets and furniture, and radical, discomforting swings in temperature will be the hallmarks of your physical experience in the building housing the department. Happily, you are not require to spend much time there, and reasonable measures can be taken to mitigate the time that you must spend there. If your instructors or classmates propose to hold meetings in the Science Center, make every effort to dissuade them. There is plenty of decent real estate on and around campus, and unpleasant physical surroundings are not conducive to good learning.

Conclusion

I understand that this document jumps from broad theoretical issues to narrow practical ones and therefore makes for a poor plan of action for reform of the department. Such a plan is not my objective. Of utmost importance is enabling good choices by undergraduates, and offering concrete strategies for dealing with existing deficiencies.

If any of these points resonate with you, I urge you to consider my recommendations, and to contribute any ideas or strategies you have for dealing with the problems of the department, by way of publishing your own suggestions or by commenting on an interactive electronic version of this document.

SWI-Prolog from MacPorts on OS X 10.5

December 23rd, 2009

Tried installing the binary of SWI-Prolog (swi-prolog-5.8.2-leopard-intel.mpkg) on my Mac OS X 10.5 box.  For whatever reason, it was bombing out with some nasty errors (Libary not loaded … image not found).  Read about others’ troubles and decided to try MacPorts.  Couldn’t get SWI-Prolog to install using a standard:

$ sudo port -v install swi-prolog

Ended up getting lots of BS errors on the lines of “ERROR: Could not load/find library -lXpm.”

*****************************************************************
* ERROR: Could not load/find library -lXpm.         *
* Please install the XPM library and rerun configure.       *
* The primary source for libXpm is at:              *
*                               *
*     http://www-sop.inria.fr/koala/lehors/xpm.html     *
*                               *
* NOTE: If your system has libXpm, check the following:     *
*                               *
*   - Do you have the development version of the library?   *
*   - Is the library you have of the right architecture?    *
*   - Could it be that other parts of X11 are missing?  *
*     (typically the case if -lXext is also missing)    *
*                               *
*   Examine packages/xpce/src/config.log for details    *
*   Linux users: check README.debian for dependencies   *
*   (note that the exact package names vary between     *
*   distributions).                     *
*****************************************************************

Long story short: For various reasons, the MacPorts installed software wasn’t finding my Apple Developer X11 libraries, and it also wasn’t appropriately requiring the software as dependencies for the swi-prolog package.  Had to do the following:

$ sudo port -v install xpm
$ sudo port -v install xorg-libXt
$ sudo port -v install Xft2

to get the prereqs installed (warning: those libs, in turn, have some mongo big dependencies, like Perl itself, so be ready for some serious compiling).  After that, installing swi-prolog worked just fine.

CGI.pm hangs in read_from_client under Catalyst / TT

November 16th, 2009

Aahhh.  The joys of a Monday evening with the Perl debugger.

I have a quite simple Web front-end to a relatively complex back-end system.  The Web app is written in Perl with Catalyst as a framework, and Template Toolkit (TT) as the templating engine.  Since we are smart-asses, we aped the Ruby on Rails “link_to” function, intending to use it within our templates.  Seems simple enough; and originally, we used CGI.pm‘s escapeHTML function to handle the anchor text escaping.  Old habits (using the ’90s era CGI mod) die hard, I guess.

# in our Catalyst root; we use CGI.pm
use CGI qw/escapeHTML/; #OOPS
# ...
# mimics the Rails "link_to", and can be used directly in template toolkit
sub link_to {
 my $self = shift;
 my $anchor_text = escapeHTML(+shift); #ANOTHER OOPS HERE
 my @args = @_;
 my $uri = $self->uri_for(@args);
 return '<a href="' . $uri . '">' . $anchor_text . '</a>';
}

Well, as it turns out, I was getting a particularly maddening behavior whereby my app, when loaded in a single-process server instance, AND when a login action is the very first POST submitted (as is meet, right, and good), would inexplicably hang.  Not being intimately familiar with Catalyst, and being generally irate, I muttered a curse at the choice of framework and assumed that my contractors must have enabled some kind of recursion or infinite loop.  Nope; even ensuring that View::TT had RECURSION => 1 and a reasonable WHILE_MAX, I still got the hang.

So, into the debugger I dove.  A couple hours later, I’d tracked it down:

DB<6> CGI::read_from_client((eval 505)[/usr/share/perl/5.8/CGI.pm:895]:5):
5:          return $MOD_PERL
6:              ? $self->r->read($$buff, $len, $offset)
7:              : read(\*STDIN, $$buff, $len, $offset);

(Aside: why doesn’t WordPress have a “paste as code??”)

In CGI.pm’s “init,” it sets itself up to read from the browser input (on STDIN).  But if Catalyst has already slurped in STDIN, there’s nothing there to read, and CGI blocks.  (Either that, or something about CGI being init’ed from within the context of a Template that’s compiled and eval’ed under a mountain of cruft doesn’t sit right with CGI).

For the meantime, my solution is to use HTML::Entities and its encode_entities instead of CGI.  But beware using CGI when also using Catalyst; there’s a lot of dragons in CGI that you probably don’t want to have to understand and work around if you wake them up.  At least one other Catalyst / TT developer has had similar hang problems.  Better to use the equivalent functionality from cleaner, more predictable modules.

(Mad props to CGI and its rock star author, Lincoln D. Stein.  But any module that’s got workarounds for mosaic and mid-90’s server bugs has got baggage, period.)

The Solution to the “Carried Interest” Problem

October 16th, 2009

The L.A. Times’ “Money & Co.” has a piece on the carried interest loophole for Private Equity (including V.C.).  Frankly, almost nobody really understands this issue outside the industry and our advisors, but people outside of our industry are going to be reading all kinds of nonsense populist propaganda saying “soak the bastards!” as well as our own industry’s propaganda of “God bless America and profit and mom and innovation and apple pie!”  (Incidentally, it is true that we VCs are different qualitatively from private equity buyout guys — and there are arguments for why we should be treated differently — but everything I’m about to say applies pretty equally to any kind of limited partnership.)  None of the propaganda and hype, however, actually helps us get to the understanding needed to solve this problem in a way that is both equitable and helpful to the Republic.

If you’re not more than merely superficially familiar with this policy issue, let me give you a relatively objective overview of the three elements: LPs, taxation, and liability.

LPs (Partnerships): The LP (limited partnership) structure is a way to recognize formally and legally the age-old practice of having a “silent partner” in your business.  Joe wants to open a factory, but doesn’t have the money; Bob has money but doesn’t know from factories.  Joe and Bob go in, Joe contributes knowledge and work, Bob contributes money.  They agree to split the profit 33/67, even though Joe doesn’t put in actual dollars.  (Win-win: Joe bootstraps up from penury and Bob fattens up without working too much.  It’s been going on at least since the Venetians organized expedetions as “commendas” in the 1300s.)  Now, on the surface, this SOUNDS a lot like the case where Joe starts a corporation and sells 2/3 of it to Bob for the money, but there’s an important difference: taxation.

Taxation: In the corporation (Bob as “shareholder”) model, the profits will get “doubly” taxed at the corporate level first (income tax), then get taxed at the individual level (dividends, or maybe cap gains).  In the LP case (Bob as “silent partner”) model), the profits are NOT taxed at the partnership level — instead, they’re “passed-through” and treated as though each partner did the activity directly (or his share thereof).  You might immediately note that for most all businesses, this would seem to make the LP structure a lot more attractive — so what gives?  What’s the tradeoff?  It’s liability.

Liability: In a corporation, the managers and shareholders are generally NOT liable for the debts of the corporation (except for blatant malfeasance).  (This also breaks down in small companies because banks basically ^!@#$ you over and won’t finance you without personal guarantees.  But the bigger the corp, with more negotiating power, the more true this “limited liability” is.)  In a partnership, in contrast, there must always be at least one “general partner:” a person who controls and is personally liable for the partnership, with unlimited liability.  (The “limited liability” of an LP applies only to the silent, or “limited” partner, who must not exercise control.)  Hence, the essential tradeoff between these structures has to do with whether the controlling manager is personally liable — and frankly, when faced with the possibility of unlimited personal liability for a risky business, paying a “double taxation” rate starts to seem not so bad.

That’s it.  That’s the historical reason for this “loophole,” and frankly it’s pretty understandable when broken down that way.  If you want to take advantage of the legal fiction called a “corporation,” and its made-up, state-conferred advantages including limited liability, you pay more taxes.  If you are willing to associate personal control with personal unlimited liability, you get to dodge them.  You can argue if the tradeoff is right, but it’s a tradeoff.

THE PROBLEM

The problem, today, is that the tradeoff is completely disrespected.  A new corporate form that has caught on since the 1970s, the LLC (Limited Liability Company), allows you to create a legal “person” with the same tax treatment as a partnership, but without the personal liability for any individual.  Hence, any LP whose managers have half a brain today is set up like this:

Acme, LP.  Limited Partner (investor): Rich Dude.  General Partner (manager, liable): Acme Managment, LLC.

Acme Management, LLC.  Owner and Manager: Skilled Guy.

As a result, you still have Rich Dude and Skilled Guy acting out the roles of silent (limited) partner and managing (general) partner, but Skilled Guy has now inserted an LLC “shield” in the middle to protect himself from personal liability. Since that LLC is also a “passthrough” entity, the whole structure is transparent for tax reasons.  As a result, Skilled Guy’s profit distributions (“carried interest”) get the favorable tax treatment, even though he doesn’t have to make the tax vs. liability tradeoff.

So, to me, the answer is simple.  That kind of structure should not be permitted to receive the same tax treatment as one in which the general partner is a “true,” personally liable, general partner.

My proposal for legislation:

  • Carried interest gets passthrough tax treatment for individual general partners IF there is true bona-fide personal liability risk borne for the partnership.
  • Carried interest OTHERWISE can’t be passed-through.  It must be taxed as income either at the intermediate LLC level or the personal level.
  • All existing partnerships have a 3-year window from today in which to elect to recharacterize their intermediate entities to enable true personal liability for passthrough treatment without penalty and with “shall-issue” consent etc. from the IRS and states (but are not required to do so).
  • The IRS will be empowered to seek the “substance” of convoluted structures to prevent tomfoolery.

Frankly, this is probably heresy in the VC world.  Our cross-town neighbors at OVP seem to think that their carry is an “asset … which we contribute cash to own” which amounts to a pretty tortured reading of the flow of dollars into an LP.  The National Venture Capital Association has its own pretzel logic that addresses how wonderful, beneficial, good-looking, and high in anti-oxidants we VCs are, but doesn’t address anything about the fundamental tradeoff itself.

It’s easy to see why our brethren knee-jerk against carry taxation.  For every $1 M in expected value, getting LT cap gains rates instead of top marginal rates means an extra $200k-ish, which is real cheddar even to big-shots.  But that’s fine: if you want to preserve your pass-through prerogative, you should be able to, just like every other general partner of every partnership could prior to the widespread adoption of LLC passthrough-sans-liabiltiy forms: by taking personal liability for the entity’s obligations.

So, to be clear: VC most certainly is a valuable and unique part of our economy; VC is absolutely and necessarily distinct from buyout and hedge funds, and importantly, there is a longstanding historical precedent and clear legal tradeoff justifying differential treatment of carried interest for taxation purposes.  But that tradeoff has now been rendered obsolete, and should be put back into whack — and it’s quite possible to do so in an equitable and rational way.

“Getting It” in IT Security

October 16th, 2009

Look, folks, PKI is hard to grok fully. But if your entire business is being a trust provider (SSL cert vendor), you should try.

GeoTrust makes their Root Certs (the things you download and install in order to tell your computer, “trust things from this authority”) available via an insecure connection:

http://www.geotrust.com/resources/root-certificates/

Unreal.

Can you trust any VC OVER 40?

September 16th, 2009

Steve Blank at Entrepreneur Corner writes with the inflammatory headline, “Can you trust any VCs under 40?”  He doesn’t actually talk about trust, but instead gives us a gloss on the history of the original Internet IPO bubble (1995-2000) and the subsequent mini-boom in M&As (2003-2008).  His thesis is that any VC under 40 has been negatively influenced by these cycles, and therefore eschews “helping entrepreneurs build companies” in favor of seeking “shortcuts to liquidity.”

Well, I call B.S.  The problem is that Steve starts with a bunch of unobjectionable and demonstrably true statements, then starts layering in misleading or irrelevant stuff, and concludes with what is essentially nonsense.  Observe:

“… Venture Capital firms have honed their skills and strategies to match Wall Streets needs …”

“VC’s make money by selling their share of your company to some other buyer – hopefully at a large multiple over what they originally paid for it.”

“[during the 1995-2000 IPO bubble,] old rules of building companies with sustainable revenue and consistent profitability went out the window.”

… the number of venture firms soared …”

True. VCs are businessmen.  We respond, like all businessmen, to price signals in the market, and when pricing indicated demand for new IPO issues during the bubble, VCs responded.  More people entered the VC market as a result of seeing these price signals.  That these price signals were amplified by bubble psychology is clear, but hardly novel: the Dutch did it with tulips back in the day, and half the country did it with houses in the last few years.

The boom in Internet startups would last 4.5 years – until it came crashing down to earth in March 2000.”

“For the next four or five years [2003-2008], technology M&A boomed, growing from 50 buyouts in 2003 to 450 in 2006.”

Misleading.  The boom in Internet company deals stopped in 2000, but those companies (except for the most egregious flameouts) by and large still existed in 2001.  And the M&A “boom” that Steve refers to is a chimera.  VC-backed M&A peaked for that period at $32 billion in 2007, yes — but this was still down from totals of $41 and $69 billion in 1999 and 2000, respectively (that’s M&A alone, independent of the IPO bubble; source: NVCA 2009 Yearbook).

Plus, it is entirely appropriate that a “boom” in tech M&A should follow, with a 5-8 year lag, a boom in VC investment.  All that Steve shows here is that the VC investments that were made during the first Internet bubble, on average, did in fact build companies that later were sold.  In fact, 2004-2006 is probably a pretty appropriate example: with our ~ $14 trillion economy, growing by ~ $420 billion a year (3%, though sadly not this year), it’s entirely reasonable to expect sustainably to generate $10-20 billion a year worth of M&A in the highest-growth sectors.

“… since the bubble, most VC firms haven’t made a profit.”

“… the message of building companies that have predictable revenue and profit models hasn’t percolated through the VC business model.”

“… [you should suspect that VCs are] trained and raised in the bubble and M&A hype and still looking for some shortcut to liquidity.”

Just plain false.  First, Steve confuses VC firms with VC funds.  Most all firms manage several funds.  The #1 correlate of a particular fund’s returns is its vintage year.  When you look at VC as an entire asset class, it’s like looking at performance numbers for mutual funds: most of them (with the same basic focus / strategy) perform pretty similarly based upon how the markets did in a given year.  A given fund having lackluster returns in a lackluster vintage year isn’t broken; it’s how the system works.  VCs’ upstream investors are asset allocators and make steady investments in an asset class year after year, and are richly rewarded for their patience.

With respect to the implication that profitability needs to “percolate” through VCs’ thick skulls, I urge you, dear reader, to talk to any VC-backed CEO.  I double-dog-dare you to come up with an example, outside of perhaps the top 3 or 4 highest profile growth cases (hint: think “tweets” and “pokes”) where his VCs are not harping on cutting burn, boosting margins, and getting to breakeven.  Heap all the abuse you want on VCs, but we’re not stupid — our “business model” is to respond to market demand.  If exit markets want Webvan and eToys, great; if they want six quarters of profit growth, great.  “Eat all you want, we’ll make more.”

I don’t know how Steve puts his pants on in the morning, but I don’t know of any shortcuts.  Until the magical pants elves start helping me with my trousers, I put them on one leg at a time.  And, as soon as the liquidity fairies start pointing to magical shortcuts, I’ll take them, but I sure as hell don’t know where they are.  “Companies are bought, not sold.”  Does a buyer want to buy an unprofitable company?  Great, if the deal is legit and satisfactory to the shareholders — but that’s called an exit, not a shortcut.

Finally, let me address Steve’s ultimate incongruity: the notion that under-40 VCs are “trained and raised in the bubble and M&A hype.”  I’ve already shown that there was little, if any, unsustainable M&A hype in the mid-2000s (though perhaps 2007 got a bit frothy).  So, disregarding that, we’re left with the “raised in the bubble” (1995-2000) argument.  Well, look: there are essentially no long-term jobs in VC for anybody under the age of 25; those few firms who hire IROCs (intellectuals right-out-of-college) generally treat them as “pre-MBA” positions with a guaranteed kick-in-the-ass after 2-3 years.  So what kind of current VC was “raised in the bubble?”  Let’s take a 27-year-old banker/MBA type who was hired in 1996, and so got a solid bubble indoctrination.  How old is he today, as 2009 draws to a close?  That’s right; the VC who was “raised in the bubble” is now 40 years old.

A modest proposal: maybe you can’t trust any VC over age 40.  Better stick to those of us who started our investment careers after 2000…

Some Gotchas with using svndumpfilter

August 13th, 2009

A few things:

1. svndumpfilter can take multiple args, e.g.

$ svndumpfilter include /x /y /z > mydump

to include /x, and /y, and /z. It can’t, however, do both include and exclude at once. In theory, you can run multiple dumps when you later load them, so you could (sort of; see below) accomplish the sameish thing with

$ svndumpfilter include /x > mydumpx
$ svndumpfilter include /y > mydumpy
$ svndumpfilter include /z > mydumpz

2. HOWEVER, if you have ever MOVED a file within the repository between (in the example above), /x and /y, you can’t rely upon doing it piecewise. That’s because the references within the loading process during the load of /y will no longer be valid as they point to /x/whatever.

3. It is commonly suggested that one edit “Node-path:” entries within the dump in order to fix up directory structure issues. NOTE that you MUST also change “Node-copyfrom-path:” in the same manner. Trickily, Node-copyfrom-path is only present in nodes that were (surprise!) copied from another node. This is of course tied to 2. above.

What is all this about, you ask? Well, it turns out that if you have a single respository with a lot of sprawling projects all under /trunk, you might need to break them out. (For example, if you intend to upload your repository dump to someone like a CVSDude or Beanstalk).

The error message that got me was something like:

svnadmin: File not found: revision 91, path ‘/trunk/x/whatever’

Forgive me if I start looking too preppy…

July 27th, 2009

…but I think I’m done buying clothing anywhere but Land’s End.

8:41 PM  My mind starts drifting away from the emails I’m trying to return, and I remember that I have a bunch of pants that aren’t quite right.  Bought ’em a month ago, and been wanting to return them (or at least the ones I haven’t yet worn) to the vendor (Land’s End) to see about getting a slightly different length.

8:42 PM  I compose an email reply to the shipping confirmation email, asking if they can replace or alter all six pairs (even the worn ones).

8:51 PM Desk phone rings (hey, could that be an entrepreneur looking for some equity at this hour?  What a work ethic!).  Turns out it’s LE customer service.  Wants to know if I can wait until next Monday to receive six pairs in a free replacement shipment with an RMA and prepaid box for shipping back all the old ones, including the worn ones.

WTF?!?  LE FTW!

I understand that I could have had this kind of doting if I went to Nordstrom.  But showing up to a department store and breathing the perfume and hearing the piano and seeing the halogen lights is bullshit.  Getting six identical pairs of trousers tweaked 1/2 inch and shipped out ASAP without leaving your office at 8 PM on a Monday is anti-bullshit.

So, I beg you: think not ill of me when you see me wearing the all-Land’s End wardrobe from here on in.  Because it’s officially game over for me and apparel retail.

And, my apologies: I will now, thanks to LE, be all the more insufferable of a consumer when asked to wait on hold, navigate phone menus, etc.  I’ve now been trained: when I have a product problem in the middle of the night, my vendor calls me.  (A competent, polite, anglophone vendor at that.)

[Strongly considering a long SHLD position but LE is basically noise compared to the KMart and Sears juggernauts.]

But seriously now: a few key things they did right.  1. Actually checked the replies to the various “bot” emails that go out at points in the workflow.  Most !@#$@#%^ companies just use a “noreply@” or > /dev/null any emails you send to automated messages.  2. Some combo of skills-based-routing with order-size-queueing (I bet).  My order was probably in the above average range, plus it was a good bet that I was around and available, so queuing up an agent ASAP was a high-value proposition.  3. Empowered agent — clearly he was able to spend a fair amount of money (call it $20 in shipping plus eating another $50 in “trouser expenses”) to get the issue closed.  Big time kudos to IT, Customer Service, and a culture that lets the two work together so well.

Newest source of entrepreneurial financing: the dole

June 23rd, 2009

From the VC grapevine comes word of a new innovation in startup funding in Portland (and elsewhere), Oregon: the unemployment department

From http://www.oregon.gov/EMPLOY/UI/ui_special_programs.shtml#Self_Employment_Assistance__SEA_

The Oregon Self Employment Assistance (SEA) Program helps eligible unemployed workers set up a business on a full time basis and still receive full unemployment benefits.  …
To qualify for the SEA program, you must:

  • have a viable business idea,
  • be willing to work full time in developing the business, and
  • have or be able to obtain the financial backing needed to start and sustain the business until it becomes self-supporting.

Kind of cool.  Normally, I’d understand that there’s a hazard here (given that I am an investor in several Oregon companies that all pay unemployment insurance premiums, which could be raised if this gets exploited).  But unfortunately, I paid enough premiums immorally required on myself (which payments I could never collect, because I was the entrepreneur and would have been ineligible had I quit) during my Oregon years that I feel a bit justified here.