This site has been retired. For up to date information, see handbook.gnome.org or gitlab.gnome.org.


[Home] [TitleIndex] [WordIndex

1. About This Page and Subpages

2. Preamble

Software as a Service (SaaS) has become extremely popular in the last few years, demonstrating a number of benefits to users and developers, including:

A prescient and in-depth assessment of the benefits was written by Paul Graham in 2001. Since then the web's advantages have only increased as usability and performance have risen to par with local applications for many tasks.

Unfortunately, SaaS has historically been antithetical to many of the goals advanced by free software and open source. Among the restrictions typical of many SaaS systems:

How do we get the best of both worlds?

3. Problem Definition

In order to encourage the creation and use of web services which combine the best of both SaaS and Free/Open software, we'd like to create a Free/Open Services Definition. This definition would serve as a reference (and potentially a checklist) for those creating free/open services, and perhaps eventually as a certification for users as well, so that they know they are getting the same benefits from a specific web service that they've come to expect from traditional Free/Open Source software. (Q: elaborate here or elsewhere on the relationship between definitions/licensing/business models/service implementation/etc.?)

I use "Free/Open" because I expect that the Definition (like the OSI definition) will be broad enough to allow a variety of implementations- some of which might be more user-friendly (and hence closer to the FSF's Free focus) and some of which might be more developer-friendly (and hence closer to, say, the pragmatic Open/Linus camp, or Creative Commons.)

3.1. Criteria for discussion and evaluation

There are a number of axes along which these problems can be evaluated. A starting point for evaluation would include the following criteria (all of which are probably continuums or sliding scales, not binary yes/no):

3.1.1. Goals

The point of having open/free web services:

Evaluating these criteria differently will result in different values for the next two categories (preconditions and rights). For example, when in doubt the FSF favors user freedom, which means much stricter restrictions on redistribution than might otherwise be ideal for direct contribution; when in doubt Linus favors contribution and ecosystem participation and hence prefers GPL v2 to v3. And of course the Open Source/Free Software split was precipitated in part by an increased emphasis on ecosystem participation and decreased emphasis on user freedom.

I’m not entirely sure yet that direct contribution and ecosystem participation are really all that different in practice, but it seems they might be (particularly in an online context) so I’m keeping them separate for now.

3.1.2. Preconditions

If these preconditions are not met, then you can’t meaningfully achieve the rights listed below or the goals listed above:

3.1.3. Rights

Rights available to participants in the commons.

These are pretty much straight out of the Free Software Definition. I tend to think FSF freedoms 1, 2, and 3 have a fair amount of redundancy, so they get collapsed to modify/redistribute, with the assumption that redistribution means either modified or unmodified.

FSF calls these freedoms; I call them rights here because I personally tend to think of them as inalienable things which should be provisioned rather than optional things which can be taken or not. But neither term is completely satisfactory for this analysis, since saying that these are rights or freedoms implies taking a position on where on the sliding scale restrictions should be made.

Not clear where the question of who gets access to these things fits into the analytical model; OSI’s definition leaves that up to the license, and even FSF allows some fairly strong restrictions on who gets source access and hence gets to exercise these rights, so perhaps it is merely implied that that is part of the spectrum of options for each criteria.

3.2. Open Questions

4. Research

4.1. Brainstorming By Others

Lots of people have been thinking about this. Some of the most interesting posts of late:

4.2. Other Similar Definitions

4.3. Use Cases to Enable or Prevent

4.4. Misc.


2024-10-23 10:58