February 25, 2006

Industrial Light and Miserliness?

Does LucasFilm Division Have Hidden Financial Troubles?

I guess you don't get rich by giving money away. That, anyway, is my conclusion after a little research into the personal and corporate finances of George Lucas, scion of the film industry. Forbes magazine regularly assesses his personal wealth at $1 billion plus, but one of his companies appears to be suffering unacknowledged financial hardship.

Last May George's company LucasFilm moved to a new $350 million headquarters building at the Presidio, allowing them to "be more efficient and leverage assets, technology people and innovations that come from every corner of the company", as he apparently said at the time.

According to industry analysts the difficulty until then had been that the separate divisions of the Lucas empire were located at disparate locations in Marin County. According to LucasFilm's President, Micheline Chau, "Marin has been really tough on us, we ran our businesses as silos". Since July the effects and animation division, Industrial Light and Magic, has joined the other LucasFilm divisions at the new headquarters.

The advantage of this move is that LucasFilm can now use the same assets they created for a film to produce the spinoff game and other ancillary products. This can be big business - it's reckoned that even running as separate silos the 2003 turnover at LucasFilm ran to $1.2 billion, which certainly lends a new meaning to the word "tough". Estimates are all we have, of course, because private companies like LucasFilm don't have to publish accounts or have their books scrutinized.

It's a good job that the company appears to be doing well overall. Yesterday's Python Software Foundation members' meeting reminded me that two years ago we were asked to vote to admit Industrial Light and Magic as a sponsor member of the Foundation (sponsor members pay annual dues, currently $2,000, to help fund the Foundation's growth). Their membership was approved by 42 votes to 1, mine being the sole dissenting voice. This was not a serious attempt to block ILM's membership but primarily because I felt that a company like ILM could have been doing much more to support the Foundation.

I have heard (from staffers I have met at conferences) that the company employs in excess of seven hundred Python programmers. Here's what Tommy Burnette, ILM's Senior Technical Director, is on record as saying "Python plays a key role in our production pipeline. Without it a project the size of Star Wars: Episode II would have been very difficult to pull off. From our crowd rendering to batch processing to compositing, Python binds all things together." Philip Peterson, a Principal Engineer for R&D adds "Python is everywhere at ILM. It's used to extend the capabilities of our applications, as well as providing the glue between them. Every CG image we create has involved Python somewhere in the process".

This is clearly an organization that makes extensive use of Python, and one imagines it would profit by it (as the PSF hopes all users profit by their use of Python). Sadly this appears not to be the case. When you look at the PSF members roster, you may wonder why you see ILM listed at the bottom of the page as an emeritus member rather than a sponsor member.

This is where my incisive intelligence tells me the company must have been through bad financial troubles. Shortly after the membership voted to accept ILM as a member a PSF director received a 'phone call from our contact there explaining that they could not find $2,000 in their budget to pay their membership dues. Since by that time they had been elected to membership our only choice under the existing constitution was to convert their membership to the non-paying non-voting emeritus status normally reserved for retired and inactive individual members.

I'm not one to bear a grudge, and I hope that ILM's financial position has improved since then to the point where they can not only afford the fees to become a sponsor member, but also provide Platinum level sponsorship for PyCon like Google, ITA Software and EWT have done this year. I have a suspicion that if they looked really hard they might find that they had good reason to help the Foundation that Guido van Rossum created to administer the intellectual property that he and the other Python developers have created. We need more supporters with the experience and clout of Industrial Light and Magic, and I think we should welcome them into the fold.

These ponderings also raise a larger question: since FLOSS (Free/Libre Open Source Software) is produced and distributed essentially at no cost, what (if any) obligation do its users have to support the development process? Clearly there's nothing that can be done directly to force any return on development efforts, and most open source contributors I know would rather be wrting code (or even documentation!) than spending time policing payback. Many open source users contribute effectively to open source projects by having staff work as developers, so their work is incorporated into the intellectual property of the project. Others prefer to donate to supporting foundations and similar bodies.

If you think about the larger context of open source, though, there's a sea change afoot. In today's world the proprietary model dominates most of the software market, but open source is gaining ground. Large companies have responded to the change in various different ways. There's almost a paradox about open source development in a capitalist economy: if everyone uses open source software without taking steps to ensure that a project keeps going, it will falter and die. You might also argue that this is also quite Darwinian: if a project is sufficiently important to a sufficiently wealthy section of the user universe, it will prosper and grow.

I don't think anyone has a clear idea of where this is all going. It will be interesting to see what eventually transpires.

[Steve Holden is a member of the Python Software Foundation Board]


Anonymous said...

Various complaints have been made about certain large corporations' lack of funding to, contributions towards, or acknowledgement of the work done on Python, but I think the tactic of pandering to potential freeloaders and then complaining about it afterwards is misguided. If one cares that everyone plays fair, it's best to use the necessary tools to ensure that in advance, and it isn't by accident that the Free Software licences do exactly this.

In an era where various corporate interests will do everything possible to shore up their monopolies, cartels and dubious business models (not to say that the company named is necessarily of that nature), "strong" licensing is perhaps the open source community's best defence. I don't think the Python community understands this enough.

Steve said...

I'm not aware of the complaints you refer to, and I don't complain about individual or corporate users' lack of support to the Python Software Foundation precisely because the nature of the license is such that there's no obligation to give anything back.

However, when an organization has formally applied for Foundation membership, been voted in and then (as ILM did) says it can't raise the money that's a different kettle of fish.

I think as the Foundation grows and matures we'll have to find ways to fund a range of activities, and the various other open source non-profits will also have to face these issues alongside us. As things are, I suspect we need friends more than customers. I don't see the Python license as significantly worse than, say, Apache's, but choice of license is down to the people who create the intellectual property. As reliance on IP grows I suspect that corporations will start to realise the necessity of supporting the organizations that manage it, and I see signs this is already happening.

There's plenty of room for discussion, though, and I see the Python license and the GPL at opposite ends of the spectrum. Would you consider the GPL "strong"? Will GPL3 be stronger? Which "Free Software" licenses are you referring to?

Anonymous said...

I should check back here more often! Anyway, I'm not going to name names, but there was a lightning talk at EuroPython 2005 about companies taking a lot and giving little back, and whilst some would argue that one of the named companies has since, in a way, given something back by hiring various "top table" Python developers, observations about the licence are still particularly pertinent: after all, the licence is the most crucial instrument in determining community behaviour around any open source project. (A twist to this tale is that the person who gave the lightning talk is very much aware of the effect of licensing and seemingly has a preference for the GPL, as far as I am aware.)

The interesting thing about the Free Software licences (as in those promoted by the FSF), for which I am very much in favour, is that one can envisage Python (or more specifically CPython, Jython, and so on) being licensed under the LGPL without it having too many supposedly "negative" effects, where "negative" is defined as something the "we must be friendly to business" crowd would dislike. Thus, anyone writing Python programs would retain a totally free choice about how they license their stuff; anyone extending Python would merely need to offer the source to the Python runtime plus any modifications. Consequently, the risk of someone enhancing Python without sharing those enhancements would be substantially reduced - anyone downloading Nokia's Python port would at least have guaranteed access to core enhancements without Nokia needing to deem it strategically wise to share them (although Nokia would really have to make that decision up front in such a situation, instead).

So, yes, I would consider the GPL as a "strong" licence, since it guarantees the same freedoms all the way through the distribution chain from original author to end-user (and beyond), whilst the Python licence is a "permissive" licence: it lets people do what they want with the code, but that may also include the poor end-user sitting with a binary-only application and sharing very few of the freedoms enjoyed by some software developing intermediary. Some people dislike the effect of the GPL on derived works - such people should thus consider the LGPL, since it offers a suitably "strong" licensing alternative for their work (as described above) that at least grants end-users many of the same freedoms.

An interesting footnote: after your original post, a furore arose when the OpenBSD project claimed that various major operating systems vendors had made extensive use of OpenSSH but had never contributed anything back to that project (especially money - they didn't want developer help, apparently). Such complaints, whilst highlighting the somewhat unethical (or at least ungrateful) nature of modern corporate behaviour, merely serve to illustrate the effect of licensing decisions, and I would argue that to disregard the influence of licensing (as many did in the subsequent debate) is at best extremely naive.

Finally, whilst I can imagine that many people regard the GPL 3 draft with a certain amount of distaste due to certain additional DRM- and patent-related provisions, given that various corporate and institutional interests seem to be quite content to lobby for and to inflict such disgraceful things as software patents and increasingly restrictive "copy protection" measures on their customers, competitors, content producers and software developers in general (presumably whilst freeloading off suitably-licensed open source projects), as a software developer one can either feign "cool indifference" and protest after the fact, or one can exercise whatever remaining rights one has to keep such lobbying interests in check. I don't think I am alone in realising that the latter is the more responsible path to take.

Steve said...

Thanks for your comments. This does seem like a rather long-drawn-out dialogue, and I'm guessing it's the link to this article from Do We Need Speed? that triggered your return. Welcome back however you got here.

I haven't yet managed to attend a EuroPython, and I wasn't aware of the lightning talk you mention. Given the Python license as it is (and ignoring my April Fool's joke via the Python Software Foundation News) such complaints appear futile -- complaining that selfish people are taking and not giving isn't likely to stop them being selfish.

I take your point about the (L)GPL in that it would have required Nokia to publish the sources to their distributed implementation, but this ignores the point that they might not have chosen Python in the first place if the licensing had been GPL. Happily Nokia ended up contributing their code back anyway. I'd also like to state that I'm not personally opposed to the GPL, since I think it does encourage people to do what I consider the Right Thing(tm), but I think it would be an unnecessary waste of energy to fight for licensing changes for Python. The PSF has to listen to its members, probably better than it does now, but I am not sensing a groundswell for a licensing change and there are many more important matters to consider.

In the long term I would hope that positive reinforcement, demonstrating the benefits of engagement with and contribution to the open source community (of which I hope the "Need for Speed" sprint will be merely a first example), will exert more influence on the commercial world than the negative reinforcement of restrictive licensing. To think otherwise and adopt the same cudgels being wielded by the DRM crowd is to tacitly admit defeat and imply that their methods are the only ones that can succeed.

Call me an idealist if you will (there are worse labels), but I think ultimately the commercial world will come to realise that there is a significant difference between "fair market value" and "whatever the market will bear". Sadly, many corporations (Intel, Microsoft and Nike come to mind as prominent examples, with Intel lately coming to heel a little as a result of AMD's competition) appear currently to be trading in the latter mode. They will have to learn that this is suboptimal, but this lesson will take time as the behaviour they exhibit is firmly embedded in capitalist culture: if profit is good, then more profit must be better.

It may seem a somewhat Zen strategy, but I don't feel there's anything to be gained by what I would see as a short-term or knee-jerk response to people exercising their rights under the Python license. The open source world has to be adult about this. Open source as a phenomenon is still very new, and we need the "genetic diversity" of the various extant licenses (though no more, please!) to determine through experience what works and what doesn't. I think to Guido's credit the Python license has worked well to encourage the language's adoption, and its terms do neatly underline the point that open source isn't a commercial enterprise.