Free software web apps

Free software web apps


After the comments on my last post, I decided that perhaps I should investigate the world of free web apps a bit further, and give some real thought to the licensing implications of software that is, in many peoples’ view, not actually distributed.

RoundCube

I’ll start with RoundCube Webmail. This is how their website describes the project:

RoundCube Webmail is a browser-based multilingual IMAP client with an application-like user interface... The user interface is fully skinnable using XHTML and CSS 2.

To really appreciate it, however, I recommend you visit their website and try the public demo.

You can drag and drop messages to different folders making it incredibly easy, and surprisingly pleasant due to the silky smooth AJAX implementation, to manage your messages. And, while there are still going to be those occasions when you lose track of a few e-mails or let your organisational methods falter a bit, there’s no need to panic as I’ve found the built-in search functionality very effective.

Composing a message is perhaps one of the simplest—but also one of the most important things—you’ll do in an e-mail client. Again RoundCube seems to have done an excellent job: a built in spell checker, auto-address completion, the ability to save drafts and to add attachments all add up to as good an end-user experience as possible.

Some final points about RoundCube are that it allows you to manage multiple identities, and, as stated in the opening quote, fully skinnable via XHMTL and CSS 2. What more could you want? GPL license? Well, it has that too!

One concern I have about RoundCube is that, as I understand, it is missing spam and general filters at the moment; however, these features are planned for a future release.

Tiny Tiny RSS

The other application that I found, which I was really impressed with, and that is also GPLed was Tiny Tiny RSS. Tiny Tiny RSS is based on the Magpie library to parse the feeds and, like RoundCube, uses AJAX to mirror the experience of a desktop application.

It handles feeds very well and, again from my experiences of their demo, always formats them in a usable and attractive manner. It features support for starring and tagging items; it is theme-able using stylesheets; searchable, along with different filtering criteria, and features a massive range of preferences including e-mail digests and the ability to display articles from oldest to newest.

Horde

Before moving on, I’d like to mention Horde. I’ve just found it halfway through writing this article and it looks like it could be interesting but I don’t want to write about it before having had a proper chance to explore it! So go check it out if you’re interested in seeing about another cool-looking project.

Rounding off

The other point I wanted to cover in reply to the comments on my previous post was the issue of whether or not web services are really being distributed, and if not, do they really need to be free software? My personal opinion is that if you’re using the app for your own personal use then there is no need to release the source code: if you’re allowing public access to your software, even if only a small amount of the code is technically being distributed, then you should share the source code for it.

What happens if you want to change e-mail services from Google to Yahoo, but they decide they don’t want to let you do that? Without the source code these restrictions can exist. How do we know what our current service providers are doing with our e-mails? Who they’re sharing that information with? We put a lot of trust in companies who’s primary responsibility is to their shareholders, not to their customers; companies who are increasingly trying to gather more and more information on us to better target their adverts.

I’m going to look for some affordable hosting to set these apps up for myself, and all being well, use them in place of my current Google accounts. If other people are interested perhaps they might drop me a message to jonathan.roberts.uk at googlemail dot com and if we get enough interest maybe we’ll even be able to start some sort of a co-operative: a web app service that is owned and managed by it’s users. Sounds like a dream but if there’s enough interest, or a few rather wealthy readers, maybe we’ll get something off the ground!

Such a service might encourage development to help us fill in the gaps that currently exist in the free web apps market—calenders, online office suites etc—and possibly even provide the resources to help fund development on some of these projects! OK, I think I am now officially a dreamer.

Category: 

Comments

Mauro Bieg's picture
Submitted by Mauro Bieg on

From the user perspective, I see software more as a service rather than some lines of code. If I'm for example using a filter in GIMP, the programmer offers me a service in sharing his knowledge of how to change an image. If you are using a webapp like GMail or Google Maps or whatever, then you are using clearly a service too.
It's all about the knowledge which is in the code and that gives me power to do the things I want (whether this is to transform a picture or send an E-Mail via a protocol I don't bother to learn). And I think it's very important that this knowledge and the skills burried in the code are open for everybody to see and improve upon. Thus, it doesn't matter where the code is executed. If I'm using a service I want to be able to find out how exactly that service works.

So, I think in the next revision of the GPL it ought better be talked about "distributing services which are provided through means of computer code", rather than "distributing code and binaries". That way the GPL would be better appliable for webapps to protect the freedoms for all users. Some company couldn't then take any of those nice apps described in your article, modify them and run them on their server, without sharing the changes they made to the core code, with the excuse that they aren't really distributing software. It's a pitty that we're probably too late to include this in GPLv3 ;-)

Geoffrey Lehr's picture

I disagree. They aren't making excuses if they decline to distribute the changes, they're following the license. I agree that they _ought_ to distribute the changes, but they shouldn't be _forced_ to if the developers say that it's ok for them not to (through their choice of license). You should check out the Affero GPL if you're writing a webapp and you think it's better for the purpose.

Mauro Bieg's picture
Submitted by Mauro Bieg on

Yeah, they keep to the license. But with free software licenses it's always the same: they aren't the optimal solution because default law is copyright,not copyleft. That's why they always need revisions as new dangers or possibilities arise. That's why I think their spirit and intention is just as important as their law-binding content.

And as the GPL is THE standard license for free software it would be nice if you could still use that one. Can you incorporate GPLed code into your project and release the whole thing under the Affero GPL? Then It'd be okay.

Anonymous visitor's picture
Submitted by Anonymous visitor (not verified) on

Suppose I send you a photo and ask you to do some minor adjustments (such as colour correction, red eye, white balance, clone patching and so on). You do the work then send me the resulting work. Assuming that you are doing this yourself, why should I demand that you send me a copy of the program source that you use? I may wish to obtain a copy of the program so I can adjust my pictures myself; but until I run that program on my computer, whatever you choose to use to run on your computer will not deprive me of my right to control my own computer or share information coming from me.

If I ssh into your machine and execute a few programs, then I don't need source access to the code as it is not running on my computer. However, my ssh client should be Free because I am running that on my computer.

Michael Fötsch's picture

I agree that web applications pose interesting licensing questions. But I don't get why having the source code facilitates moving from Google to Yahoo.

Wouldn't I have to run the software on their servers to be able to get at my stored e-mails, or to enter my e-mails into my new Yahoo inbox? If the client code can do that, fine--I can see the code. If I have to send an SQL query to Yahoo's database, I can't do that from outside their network, regardless of whether I have their code.

What am I missing?

(BTW, the link to the RoundCube homepage is broken.)

undefined's picture
Submitted by undefined on

i use both tiny tiny rss and roundcube.

matter of fact, i got to this article by way of tt-rss.

both projects use trac, so i'm subscribed to their "timelines" (rss feed of changes and bugs) with tt-rss, and the feeds prove that the projects are quite active.

actually, i primarily use squirrelmail because it's what i've used most and am most familiar with. it also supports threading, though what simple email tasks i perform while away from home (necessitating webmail) could be performed with roundcube. squirrelmail is a pain to organize large collections of mail at once (having to move messages to a folder, one folder at a time, with a page refresh in between), but roundcube is a pain to read mailing lists (no threading), so it just depends on what i want to do with my email at the time.

i use and recommend both tt-rss and roundcube.

undefined's picture
Submitted by undefined on

is the output of a gpl application covered under the same license as the application itself? (the better question: "is the output of a gpl application considered a derivative work of the application?", as that's how copyright works.)

the short answer: no.

the long answer: http://www.gnu.org/licenses/gpl-faq.html#CanIUseGPLToolsForNF

undefined's picture
Submitted by undefined on

as a follow-up to my previous reply...

the more difficult question is "what source code was used to create my executable?" (because the executable is a derivative work of all that source code and you, or a linux distribution, might not have the right to distribute that executable depending on the licenses of all the code.)

so to build a "hello world" example, i only use my source code, right?

$ cat hello.c
#include
int main()
{
printf("hello\n");
return 0;
}
$ gcc -v -o hello hello.c
...
/usr/lib/gcc/i486-linux-gnu/4.1.2/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o hello /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crt1.o /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crti.o /usr/lib/gcc/i486-linux-gnu/4.1.2/crtbegin.o -L/usr/lib/gcc/i486-linux-gnu/4.1.2 -L/usr/lib/gcc/i486-linux-gnu/4.1.2 -L/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib -L/lib/../lib -L/usr/lib/../lib /tmp/ccoUXWZ6.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/i486-linux-gnu/4.1.2/crtend.o /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/crtn.o
$ dpkg -S /usr/lib/crt[1in].o /usr/lib/gcc/i486-linux-gnu/4.1.2/crt{begin,end}.o
libc6-dev: /usr/lib/crt1.o
libc6-dev: /usr/lib/crti.o
libc6-dev: /usr/lib/crtn.o
gcc-4.1: /usr/lib/gcc/i486-linux-gnu/4.1.2/crtbegin.o
gcc-4.1: /usr/lib/gcc/i486-linux-gnu/4.1.2/crtend.o
$ cat /usr/share/doc/libc6-dev/copyright
<LGPL and BSD-like license text>
$ cat /usr/share/doc/gcc-4.1/copyright
<GPL with linking exception license text>

so what's the license of those specific files? (hint: debian's copyright file doesn't provide enough information for a one-to-one file-license correspondence, especially when multiple licenses apply to different parts of a single package.)

the joy of license auditing. (and this example is innocuous but requires a bit of work to prove.)

Author information

Jonathan Roberts's picture

Biography

Currently a gap year student! I have a huge interest in Free Software which seems to keep growing. I run the Questions Please... podcast which can be found at questionsplease.org. On an unrelated note I'm reading theology at Exeter next year.

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!