Archive for October, 2008

Open source in Education: Why and how

Last Wednesday I had the pleasure to give a talk about Open source software in Further Education in the UK at a BCS event in Newcastle. One of the questions from the audience was ‘Do you think that the current financial crisis will push for more open source in education?’.  Of course, I have no idea. On the one hand, tighter budgets may encourage ICT managers to get out of their comfort zone and try open source to cut costs. But on the other hand, it is known that some closed source vendors (e.g. Microsoft) sell software to educational institutions for a low price, and arguably it would make sense for them even to give it away. It is a legitimate business strategy: get a large user base by giving your product to young people who cannot really afford it anyway, and have them buy it when they go into industry and do not know how to use anything else.

But more interestingly, the above question begets another one. What would be the reasons for educational institutions to adopt open source?. Cost does not seem to be a clear one. Another reason to try open source could be better interoperability, robustness, features, etc. But ICT managers may favour familiarity with the system rather than migrating to a new system, even if it is potentially better from a technical point of view. And not all open source software is technically better than its closed alternatives.

So maybe we should look for the reasons to adopt open source somewhere else. The main characteristic of open source, if done properly, is that it promotes the formation of a community of people who can get involved with the project. This is arguably a good thing in education: engaging students and letting them play with the tools. Open source projects also function as a tutoring environment, where students can learn good practice from more experienced users and developers.

Thus, maybe the main reason for promoting open source in education is that it will help students learn more. But how? In fact, the ‘why’ leads to the ‘how’. If open source is to be successful in education, it cannot be just a matter of policy or, in general, a top-down approach. Its community and playful nature needs to be acknowledged and promoted amongst students, be it through local Linux User Groups (LUGs), creating fun projects (write a computer game in a collaborative way), or joining external projects.

What is Open Development?

At a recent OSS Watch event I made a short presentation asking “What is Open Development?” In this presentation I explore the relationship between open development of free and open source software and the sustainability of that software.

Take a look at the slide deck below and let me know your thoughts.

New Blog Location (no action needed)

The OSS Watch blog has now been moved from the JISC pilot service to the full blown JISC blog service (thanks Hector). In theory old URLs will work and, after an initial hiccup, this seems to be the case.

This means that you don’t really need to update your RSS reader or bookmarks, however we don’t guarantee the old URLs will be valid for ever so we recommend that you update to the new URL as follows:

Blog URL: http://osswatch.jiscinvolve.org/

RSS Feed: http://osswatch.jiscinvolve.org/feed

Note that on this new server it is possible to get feeds for specific categories of content or authors.

If you spot any problems with the  new server please let us know.

Does highly visible development detract from quality?

At OSS Watch we maintain a series of briefing notes relating to open source software. These documents undergo peer review and are subjected to a rigourous quality control process.  In most cases they are developed behind closed doors and only released for public consumption when they meet our strict quality measures. However, I am increasingly working in the open on these documents in our wiki. This allows me to quickly collate information on a topic in response to client requests. This has been, for some time, a point of contention in the team – in many ways the wiki bypasses our quality control (although we clearly differentiate between the two sources of information).
Another of the OSS Watch team, Gabriel Hanganu, and I have recently been working on documents dealing with the governance models of open source projects. Due to an immediate need for this content we started the work in the wiki and therefore utilised another benefit of open development and early release – the opportunity to recieve early feedback, both from each other and from third parties.

Using the wiki and working collaboratively in this case was ideal since we were very familiar with one form of governance model and were therefore able to write some of the content quickly and easily. However, we were less sure of the content for the alternative styles of governance model.

Our approach, which worked wonderfully, was for one of us to focus on documenting what we knew and the other to use the initial outline to inform his research work into other models.  We found that we’ve both been spurred on by the others contributions and the document has moved forward even when one of us has been swamped by other things.

The fact that the documents have had loads of “FIXME” notices slapped all over them for some time has clearly indicated where further research work has been needed and, over time, one or the other of us has been dropping links to relevant resources in there and expanding on the content as appropriate.

We feel that this is a really good example of collaborative authoring. By the end of this month we are likely to have three published documents from the two of us. I’m pretty sure that if we’d been working in isolation we would still be struggling with them.

Furthermore, since these documents have been written in the open, we have received a number of comments on how to improve them from third parties. The end result is that the final published documents that will go through the OSS Watch quality assurance process will be of a higher standard than if we’d kept them in house and private.

Some people feel that since OSS Watch are the “authority” on open source issues we ought to hide this kind of investigative work. Personally, I think the use of our wiki to do our investigation in public is an improtant new step. It shows that we thoroughly research our matierials and seek third party input. The downside is that whilst our published materials on the OSS Watch site go through rigourous quality control processes and are trusted sources of information, our wiki does not undergo the same level of quality control – there are occassions when the informaiton there is incomplete.

Do you think that exposing “in development” materials in this way is a problem?
If you are interested the documents in question are Governance ModelsBenevolent Dictator Governance Model, and Meritocratic Governance Model.

UK Appeal Court Decision Significantly Strengthens Software Patentability

On Thursday the England and Wales Court of Appeal delivered a decision that will significantly strengthen the patentability of software in the UK. As I’ve mentioned before on this blog, the UK Intellectual Property Office(IPO) has been struggling to find a consistent method for examining patent applications that involve software. As an EU member, the UK is supposed to have the same rules on patentability of inventions as the European Patent Office (EPO), and to this end the European Patent Convention of 1973 was ‘imported’ into UK law in the from of the UK Patents Act 1977. Both the Convention and the Act state fairly plainly that software is excluded from patentability. Of course, having the same ruleset is only half the battle – you also have to interpret the rules in the same way and therefore produce decisions that are consistent with one another…

A couple of weeks ago I had the pleasure of hearing Shane Coughlan speak about – among other things – the patentability of software in Europe. Mr Coughlan is Freedom Task Force Coordinator for the European wing of the Free Software Foundation. In response to a question about software patents, Coughlan stated flatly that they do not exist in Europe. When the audience seemed a little confused by this, he elaborated by saying that although the EPO had granted many applications for software, there was no statutory basis for their existence or enforceability – given the exclusion of software from patentability in the European Patent Convention. The audience were clearly a little confused by this – many came from large software firms with holdings of European patents on software inventions. A member of the audience asked about Coughlan’s opinion on the patentability of software in the UK. The questioner turned out to be David Wood of Symbian – a mobile operating system company based in the UK and now wholly owned by Nokia. It was Symbian who had brought the case we are discussing here, after the UK IPO had turned down a software patent application of theirs for a layer of indirection in library function lookups. Recognising a Symbian representative, Coughlan acknowledged that – yes – the UK might be considered separately as Wood’s own company had managed to get the UK courts to invalidate the rejection of their patent. Coughlan also pointed out that – as a Common Law system – UK legislation is effectively ‘updated’ by court decisions on its meaning and application. In the rest of Europe, Coughlan pointed out, a Civil Law system predominates, and prior court decisions are generally not taken to form part of the body of applicable law. Thus while arguably (and Coughlan did argue it) the activities of the EPO and European courts had no effect whatsoever on the fundamental unpatentability of software, actions like Symbian’s in the UK had real effects on the UK’s legislative approach to patentability.

Now that Symbian have conclusively won their case (and leave to appeal to the House of Lords has been denied) the resulting changes must be examined. The judgement examines previous rulings on software patentability, both at the European and UK level, and recognises the essential impossibility of reconciling all views. Once again the issue of what a ‘technical effect’ is becomes central, an issue we have discussed before on this blog. In practice no-one quite knows what a ‘technical effect’ is – all that is certain is that without one a piece of software is just a piece of software and thus cannot be patented due to the statutory exclusion in the European Patent Convention. In this case, the Court of Appeal has decided that the software in question has a

knock-on effect of the computer working better

and that this ‘technical effect’ is all that is required for the software to be more than mere software and therefore patentable. This is essentially the argument advanced by Symbian’s lawyers – that the functioning of a computer in itself can be seen as a technical problem, and that therefore software which makes a computer ‘work… better’ is software which has an additional ‘technical effect’ . You might ask what software would not qualify as patentable under this scheme, and you would have a good point. The judgement points out that software which embodies other kinds of unpatentable inventions could still not be patented:

the program in this case does not embody any of the items specifically excluded by the other categories in art 52; thus, it is not a method of doing business…  or a mathematical method…  or a method for performing mental acts…

So – to summarise briefly – the new element in this judgement is an extremely broad definition of what a technical effect can be, and thus a radical widening of range of patentable software. Provided that your software does not embody anything that is otherwise disqualified from patentability, you can patent it in the UK (subject to all the other normal requirements that it is novel, involves an inventive step and has an industrial application).

Why is Open Development Governance important?

How an open source project is managed defines the type of community and product that it will create. It is therefore critical that you put some thought into the suitability of the governance model of software you wish to adopt or develop.

In this post I’ll draw together a few recent observations about governance in various open source projects in order to highlight some common issues.

First, lets look at Firefox. A recent article on Ars Technica explored why Firefox is sticking with the Gecko rendering engine rather than switching, for example, to WebKit:

The WebKit governance model and Apple’s general lack of transparency are also issues that would negatively impact Mozilla if Firefox adopted WebKit.

This conclusion was derived from comments by Mike Shaver, Mozilla’s VP of engineering, published in the same article. For example:

I think we would have a hard time maintaining our momentum and depth of community empowerment in the WebKit setting. The level of visibility around patches and review is a lot higher in our world, as one example, and we don’t have bugs disappearing into an Apple-only bug system… We learned about fork maintenance and integration the hard way (and had to learn it a couple of times, to be honest), so that’s not trouble that we want to borrow.

In this case it can be seen that the Firefox team are unwilling to contribute to the WebKit project as they feel that they would not have sufficient control over the product to enable them to continue innovation in the direction they need.

Conversely, since Gecko adopts a very open development model it is used in a number of products that are quite differenct from a standard web browser (such as the Songbird music player, the Miro video player, and ActiveState’s Komodo IDE). Each of these products contributes development effort to Gecko and therefore contributes to its sustainability and quality. This is possible because Mozilla careful separate the web browser functionality from the core rendering engine that is useful in various web based applications.
However,  managing an open development project is not without its costs. Balancing the demands of a diverse community and your own needs takes time and effort. The more open a model you adopt the more effort is required.

The trick is to carefully segment your product and to write a governance model for each sub-project that maintains control the control you need in key parts of the software stack whilst allowing a more open model in shared components.

Most models start off with all control in a single central location – thus providing a bottle-neck for the management of third party contributions. Over time trusted parties may be given control over specific parts of the system in order to spread the management load.

This can be seen in projects like the Linux Kernel, an example of a “Benevolent Dictator” governance model where all control is held by a very small number of individuals, in the case of Linux that is Linus Torvalds. However, due to the hard work of Linus (and a handful of carefully selected people) the Linux Kernel recieves contributions from a wide range of third party contributors, each focussing on a specific part of the kernel.

Getting the right balance between central and distributed control is hard. Ken Drachnik, marketing manager for open source software infrastructure products at Sun told OStaic:

we have spent quite a bit of time working on our open source governance models to ensure our communities are open to all and utilize the Open Source Initiative (OSI) approved open source software licenses.

It’s even harder when you have to balance the demands of multiple upstream components, Roberto Galoppini observes:

OpenLogic scaled federated support to hundreds of components and, by focusing on enterprise customers, found established development and governance best practices that themselves didn’t scale beyond a few hundred components.

Understanding how open source software is developed is vital to the success of your project, regardless of whether you are producing or consuming software. OSS Watch are are here to help you develop that understanding and will be running a “Community Building and Ooen Source Development Workshop” in which governance will be a primary topic.

On the OSS Watch wiki Gabriel Hanganu and I have been working on describing what a governance model is and why it is important. We’d welcome your input on that document.

Two OSS Watch event speakers nominated for UK learning technology award

OSS Watch would like to congratulate Josie Fraser and Simon Mather, two of the contenders for the Learning Technologist of the Year Award. Both have presented at OSS Watch workshops earlier this year. Emerge’s Josie Fraser spoke at one of the five expert workshops OSS Watch organized in July. Simon Mather, Head of Software Engineering for UFI learndirect, contributed to our Risk Management in Procuring Open Source Software event. Simon will also present at OSS Watch’s forthcoming Community Building and Open Source Development workshop on 20 October in Oxford.