|
|
Log in / Subscribe / Register

Leading items

GUADEC: Luis Villa points GNOME at the web

By Jake Edge
July 28, 2010

Longtime GNOME developer and community member Luis Villa kicked off the GNOME users' and developers' European conference (GUADEC) with a challenge to the project to "embrace the web" as a way for the project to remain relevant. The web has won the battle to produce a "robust, libre platform" over various desktop efforts like GNOME, but there is still time for the project to find a seat at that table. It is a "big scary step" to take, Villa said, but one that he thinks is ultimately the right direction for the project.

[Luis Villa] While he is currently working for Mozilla, which might have colored his thinking some, Villa certainly disclaimed (in true lawyerly fashion) that he was representing anyone's views but his own. He was taking vacation time to attend the conference and wore a shirt from a company (Ximian) that "no one can be pissed at any more". He was there because "I love GNOME", he said.

Villa was speaking from "the other side", referring back to a talk he gave at GUADEC in 2006 when he was "vanishing into the bowels of law school" and told the project members that he would see them on the other side. That historical perspective was a major element of Villa's talk; one theme revolved around a picture of a party on a Paris boat at the first GUADEC in 2000. He considered what one would tell the folks in that picture about the progress that has been made in the ten years since.

Today there is a free and open platform that runs on all PCs and laptops, but which also runs on phones and televisions, a fact which would likely surprise the crowd from 2000. Most people using that platform also use Linux every day; the licensing of the platform is generally LGPL or more permissive. Even Microsoft has an implementation. There are some 400 million users. High school kids are learning to program for this platform partially by using a "View Source" button. Unfortunately Villa would have to tell those folks that this platform isn't GNOME, it is, instead, the web.

So the question is: what should GNOME do about that? Villa described "one possible answer", which is for GNOME to join forces with the web development community and bring its strengths, in terms of technical ability, culture, user focus, and hacker mentality, to that party. GNOME should figure out how to deliver the best combination of desktop and web applications to users.

Basically, the web won because it "co-opted our message", he said. He pointed to the famous Gandhi quote ("First they ignore you ...") but noted that things don't always work out that way. "Sometimes your ideas win without you", he said.

But, the web didn't win because it is perfect for either developers or users. There are problems with proprietary applications as well as control and privacy issues. It delivers sophisticated, powerful applications, though, which are run by someone else, freeing users from that burden. It's not a fad, and not going away, as it will only get better, he said. He also said that he had pointed the audience to an EtherPad site as a way to send questions, rather than to a Gobby instance, because he could be sure that all the attendees had web browsers while many would not have Gobby installed.

He noted that Apple and others brag about a thousand new "apps" this week, but said that there are a thousand new web applications every hour. Developers have already embraced the web in a big way; GNOME needs to get on board. It is extremely easy to develop a web application by putting some HTML and JavaScript up on a site somewhere; GNOME needs to be thinking about making development that easy for the GNOME platform. His suggestion was to start with "baby steps" by reimplementing the web's ideas for the desktop.

The web should be treated as a first-class object and various desktop applications should integrate with web services, he said. He pointed to the GNOME background image chooser which now allows picking images from Flickr or other web photo sites as an example. Though he noted that Zeitgeist hadn't made the cut for GNOME 3.0, he saw that as a step in the right direction because it treats the web as just another object.

Beyond that, the project should be thinking about even bolder strategies that would not just copy what the web is doing. It will be bigger and harder step, but he suggested that GNOME start writing code for the browsers to provide any needed functionality. "Bring our ideas, bring our code" to fix areas that don't work for GNOME. As a concrete proposal, he thought the Desktop Summit being planned for next year (combining GUADEC and KDE's Akademy conference) should be renamed to the "Free User Software Summit" and include browser developers from Mozilla and Google.

Further out, GNOME should "burn the boats" by writing all of its applications in HTML and JavaScript first. Only when that doesn't work should there be a fall back to GTK. According to Villa, GNOME needs to start thinking that way because "that's how our users and developers are thinking". Instead of pointing developers at C and GTK or PyGTK, GNOME should provide a first-class toolkit for HTML and JavaScript. It should also be made easier to run the same code on the desktop or the web, he said.

He allowed as to how this would be a major upheaval; "I told you this would be hard". While it is going to require lots of new code, and potentially abandoning lots of old code, it is still an embodiment of "our old culture". Bringing that culture of freedom and user-focus to the web is Villa's prescription.

For his part, Villa "welcomes skepticism". Maybe folks think the web isn't free enough or they hate JavaScript, but if so, they need a counter-narrative: "Maybe my answer isn't right, but what is?" Maybe there are those that think the web is a fad, but they need an argument to back that up.

He is optimistic about the future because of the people that make up GNOME. "We are the right people" to do this job, but need the right code. The clear indication from the talk is that he's convinced that the GNOME project's current direction isn't right and that a radical shift in focus is needed. "Whether you agree or disagree or think I'm crazy", the challenge is to identify the right direction and "go out and do it". Villa has presented his idea of what that direction should be, and he clearly thinks others should do the same.

Comments (35 posted)

WordPress, themes, and derivative works

July 28, 2010

This article was contributed by Nathan Willis

The WordPress community witnessed the end of a high-profile war of words last week when the distributor of a popular commercial theme for the blogging platform agreed to license some of his work under the GPL. Prior to last week, Chris Pearson had argued fiercely that WordPress themes are not derivative works of WordPress itself — as the project has long claimed — and thus he was free to sell his Thesis theme under his own restrictive licensing terms.

The stand-off between the projects erupted in a live argument on the Mixergy podcast between Pearson and WordPress founder Matt Mullenweg, one that ended with Pearson essentially challenging Mullenweg to bring a lawsuit against him. With Pearson's change of heart, the issue appears to be resolved. Pearson announced on his Twitter account that Thesis was now available under a "split" license, with the GPL applying to executable portions, and a separate license covering the images, CSS rules, and client-side JavaScript — the formula insisted upon by the WordPress project.

What's in a theme?

The disagreement hinged on a question that will sound familiar to free software enthusiasts: what constitutes a derivative work under the GPL? The WordPress project has long taken the position that both plugins and themes are derivatives of the WordPress application itself, and thus must inherit its license, the GPL v2.

Pearson disagreed, claiming that Thesis was his creation and that he could select a license for it at will. As he said during the interview:

I think the license, the GPL, is at odds with how I want to distribute my software and what I want it to be. I don't think that it necessarily should inherit WordPress' license when over 99% of the code within Thesis is Thesis code based on the actual process of building a website. Certain processes that occur in nature can be [described] mathematically by code. I am trying to describe it with code. I am describing a process that exists separate from WordPress or from any piece of software that deals with website development for that matter. It's its own thing.

Many commenters on the blog coverage of the fight seemed to be of the same mind, asserting that the WordPress license was irrelevant to "original work" written by a theme creator. Underlying that position, however, seems to be the belief that a WordPress theme is a layer "above" the WordPress application, which happens to call APIs exposed by WordPress.

Perhaps WordPress's use of the term theme is itself misleading, because it suggests something cosmetic.

Considering that belief, perhaps WordPress's use of the term theme is itself misleading, because it suggests something cosmetic, like a static template or a set of look-and-feel rules implemented in HTML and CSS. But that is not what WordPress themes are. Rather, themes in WordPress are a collection of PHP scripts that implement the entire outward-facing user interface of the site (the dashboard functionality is implemented elsewhere).

WordPress themes are executables that create all of the elements displayed in the browser: pulling the content of posts, comments, user information, category, tag, archive, and navigation links, even search functionality, all by calling WordPress functions. To put it another way, a WordPress theme is the interface component of the application; without a theme installed, WordPress does not serve up any pages, and when not installed in a WordPress site, a theme cannot even execute.

The debate over the GPL inheritance of themes and plugins has been around for several years, prompting Mullenweg to seek legal analysis. According to the Mixergy interview, he first consulted with Mozilla's attorney Heather Meeker, but it is the Software Freedom Law Center's (SFLC) official opinion that he refers to as conclusive proof.

The SFLC analysis states that "the PHP elements, taken together, are clearly derivative of WordPress code," citing the fact that they are loaded into the WordPress PHP application with include(), combined in memory with the rest of the WordPress code, and executed by PHP as part of a single executable program. On the other hand, SFLC noted, some elements of a theme, such as CSS rules, image files, and JavaScript, reside on the system only to be served by the web server as data delivered to the client. These elements could be distributed under the same license, but because they are not combined with WordPress itself, do not have to inherit the GPL.

This reading of the situation is essentially the same as the Free Software Foundation's (FSF) take on the licensing requirements for plugins. The GPL FAQ states:

If the program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single program, which must be treated as an extension of both the main program and the plug-ins.

The status of JavaScript components was not explicitly addressed in the SFLC's analysis. The lone discussion of JavaScript in the GPL FAQ deals with web page templates, by which it seems to mean static templates that "assemble" a page, in contrast to the executable definition of "plugin" explored above.

Code reuse and other considerations

During the Mixergy debate, Pearson referenced a 2009 blog post by Florida attorney Michael Wasylik, who asserted that WordPress themes did not inherit the GPL from the WordPress application, based largely on the "running on top of" WordPress argument. Mullenweg and others observed that Wasylik is a real estate, not a copyright, attorney, and that the court cases he references in his blog post are about hardware devices, not software. But Wasylik also said that "actual incorporation of code" makes the work "probably derivative, and the GPL probably applies." Drew Blas subsequently analyzed the Thesis source code and concluded that the theme incorporates code lifted from WordPress itself.

Furthermore, WordPress core developer Mark Jaquith, in a longer analysis of the problem, observed that a former Thesis developer openly admitted that code from WordPress was copied into Thesis, and Andrew Nacin noted that the Thesis documentation commented on such inclusions: "This function is mostly copy pasta from WP (wp-includes/media.php), but with minor alteration to play more nicely with our styling."

Perhaps it was in the face of this evidence that Pearson changed his mind and switched over to a "split" license for Thesis — his only public comments on the decision have been made through his Twitter account.

Whatever the reasoning, Mullenweg seemed relieved to hear the news. During the podcast debate, Mullenweg repeatedly told Pearson that switching to the GPL would help, not hurt, his sales, observing that there are many other commercial theme developers who sell their works while complying with the requirements of WordPress's license. He said that, should Pearson come into compliance, he would add Thesis to the list of commercially-available themes promoted on the official WordPress site (although the addition does not appear to have happened yet).

It is always better for the community surrounding a free software project when disputes such as these reach an amicable solution. In another sense, though, Pearson's decision to relicense Thesis without comment leaves open — in some people's minds — the original question over when themes and plugins are rightfully considered derivative works.

WordPress is not alone in its position; the Drupal project also states that plugins and themes must inherit the GPL from Drupal. Joomla makes the same claim about Joomla extensions, although it admits that it may also be possible to create Joomla extensions that are not derivative works.

There may never be a simple black-and-white test to determine unambiguously when a theme is a derivative of the application that it themes. Fortunately, for the determined professional themer, it makes little difference. As the list maintained at the WordPress site demonstrates, there are quite few talented individuals who can make a living producing and selling GPL-licensed themes.

Comments (44 posted)

OSCON: That "open phone" is not so open

July 28, 2010

This article was contributed by Joe 'Zonker' Brockmeier.

Think that your Android smartphone is fully open? Aaron Williamson delivered some bad news to the audience at OSCON with his presentation Your Smartphone May Not Be as Open as You Think. Williamson, counsel for the Software Freedom Law Center, explained to the audience what components were still proprietary, and the problems with replacing those with open source components. Unfortunately, it doesn't look like a fully open phone is likely in the very near future.

Many LWN readers are already aware that Android phones contain proprietary components. However, the larger open source community, and certainly the consumer public that is not well-informed about goings on in open source development, are usually not aware how much proprietary software the Android phones depend on.

So what's open and what's not? Everything that's shipped by the Android Project is fine, but Williamson pointed out that manufacturers ship more than just Android with their phones. The phone manufacturers, companies like HTC, Motorola, and Samsung, produce the software to meld Android to the hardware it's shipping on. So it's not possible to ship an Android distribution that's completely open source that will work on any specific phone.

Some packagers do ship Android distributions, but they're not likely to have permission to ship all of the software that they include. For instance, there's CyanogenMod, which adds features not found in Android, but it's hard to ship such a distribution and stay on the right side of all the proprietary licenses. As a result, a typical CyanogenMod installation requires saving the proprietary code shipped with the phone to the side at the beginning, then reinstalling that software as one of the final steps.

What do you get if you remove most of the proprietary software? Williamson has done the research and managed to compile Android for an HTC Dream with as little proprietary software as possible. He kept three components necessary for making phone calls, and left the rest out. Without the proprietary components, the HTC Dream isn't quite a brick, but it might as well be. It's unable to take pictures or record video, connect to WiFi, connect to Bluetooth devices, or use GPS. This also leaves out the accelerometer, so the landscape mode doesn't work.

Of course that leaves plenty of functionality as well, but the phone is hardly as functional without the software as with. Unless a user is deeply committed to software freedom, they're unlikely to go to that extreme. So the goal should be to convince companies to open the software as much as possible.

Why They're Closed

Williamson pointed out that this problem is unlikely to be specific to Android, and when MeeGo or open source Symbian devices ship, they're likely to have the same problems. He also gave Google credit for working with the manufacturers and trying to get as much software available as open source as possible.

For the most part, Williamson says that mobile component manufacturers largely give the same reasons for proprietary licensing that PC component manufacturers used to avoid providing free drivers for video cards, sound cards, etc. The manufacturers are concerned that they'll lose the edge against competitors or will give away intellectual property. Manufacturers see little competitive value in being open. They don't want to use licenses (like the GPLv3) that would harm their ability to pursue patent infringement suits.

There's also the issue of regulatory agencies and their influence on radio components for Bluetooth, GSM, and WiFi. Whether that's a legitimate issue is debatable, but it does seem to concern quite a few parties. The result of these regulatory concerns isn't debatable, however: You're unlikely to find open source drivers for most of the radio components of phones, which makes it difficult to operate a phone with 100% open source software.

Williamson also said he didn't see it likely that the community could keep up with maintaining open source drivers without the cooperation of the hardware manufacturers. The device updates tend to move so quickly, and the skills required to develop and maintain the drivers without assistance, make it unlikely that the community would be able to maintain a 100% free Android system with drivers. Of course, Linux developers, who have managed to keep up with a lot of fast-changing hardware over the years, might just disagree.

What to Do?

For users who are concerned with software freedom, what can be done to acquire fully (or more) open phones or inspire vendors to sell them? Williamson said that it requires educating the vendors and, more or less, walking through the same process that the community went through with Intel, ATI, and other hardware vendors that have come a long way towards supporting software freedom.

He pointed out that the community can reward vendors that are relatively open. For instance he pointed out that enthusiasts should be avoiding Motorola phones as long as the company continues trying to block mods as it does with the Droid X. Aside from that, Williamson says there's not much for end users to do. The good news is that Williamson thinks we can move faster than with PC hardware, because we've been down the road before and the community knows how to talk to vendors.

When I spoke to Williamson after OSCON, he indicated that tablets are likely to have the same problems as handsets, and some additional issues as well. Because most of the tablet manufacturers to date are not working directly with Google or as part of the Android community, they are not only shipping a lot of proprietary software, but also likely to produce lower quality products and violate licenses. The last is almost certainly true as shipping tablets are rarely found to be in compliance with the GPL. Even though most of Android's licensing doesn't require much in the way of compliance, few vendors seem to be living up to the GPL'ed components.

For now, a truly open smartphone seems elusive, but the prospects over time look positive. Until then, users have to decide between seriously crippled devices or devices that are only largely free.

Comments (12 posted)

Page editor: Jonathan Corbet
Next page: Security>>


Copyright © 2010, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds