Advanced

The Value of Free Software

Posted by dcparris on · 41 comments
LXer Newswire; By DC Parris
Mail this story
Print this story

  LXer Feature: 12-Jul-2006

Evolution's usefulness has long been hampered by the lack of a single feature. Because it is free software, one organization knew the feature could be added, either by themselves, or by paying someone to do it for them. Find out what they did, why and how they did it, and how you can get the patch for yourself.

[Updated at 12:05 US Eastern Time - dcparris]

Let's see. If I count up the $80 I spent for Mandrake Linux 8.0, The $80 each for SUSE Linux 8.0 and 9.2 Professional, and SUSE Linux 10.0, I believe that comes out to around $320 I've spent over the course of 6 years to keep the 10 computers our house-church ministry owns operational. Our ministry, Matheteuo Christian Fellowship, recently spent over $400 to add a single feature to Evolution. The next time you find yourself waiting in limbo for a feature from your non-free software vendor, think about the following.



A Need To Be Met

We use a combination of SUSE and Ubuntu Linux for our desktops. We also use Evolution as our primary PIM software. I faced a challenge in that I sometimes need to leave my e-mail on my ISP's POP server, and access it via webmail from another computer. With Evolution, you can choose to either leave the messages on the server or delete them. If you choose to leave them, you'll have to delete them manually on your own. I want Evolution to delete them automatically after a week, or maybe two weeks.



Evolution's POP client was an all-or-nothing proposition. Although I didn't know it at the time, this feature has been listed in Evolution's Bugzilla system for at least five years. Apparently, it was a really low-priority item in the minds of most Evolution developers. Some thought a POP client should not try to be an IMAP client. Most responses to the feature request seemed to say something to the effect of “fat chance of that ever happening”. So our ministry is not the only group interested in this feature.



Thunderbird, Sylpheed, and a number of other POP mail clients offer the capability I desired. The Mozilla suite simply doesn't meet my needs. Sylpheed is great, except it isn't integrated with a calendar and tasklist. What to do? I could try programming the feature in myself. Frankly, it's bad enough we have Microsoft developing crummy software – why should I make matters worse? But wait a minute. Isn't Evolution free software? If I can't do it myself, I can still pay someone to do it for me, right? Right!



Working With The Developer

Our ministry wanted the feature. We knew others probably wanted the feature also. We didn't know how to add it ourselves. So we needed a programmer. I figured my best chance of getting this feature added into Evolution, as part of the main distribution, was to work with one of the Evolution developers. I contacted a Shreyas Srinivasan, a developer from Bangalore who had just finished working for Novell, and continues working on Evolution's mail client in his spare time. After some discussion about what we wanted, the hourly rate, and the estimated time it would take, Shreyas agreed to take on the job.



I confess to being somewhat nervous, as I had never worked with a developer before, let alone one on the other side of the globe. Still, if the guy worked for Novell, and is still an active developer of Evolution's mail client, he was my best hope of getting the feature implemented. We looked over his resume, and decided he must be pretty competent. My biggest concern was ensuring that he understood what we were asking for. You can imagine my relief when he sent me the screenshot of the mock-up for the new feature. So we had chosen wisely.



Shreyas spent around 32 hours over the course of a week or so before sending me the patch, and then a link to instructions on how to add the patch into Evolution (after building a second copy from scratch). A couple days later he sent a second patch to correct a minor bug he had discovered. A secondary issue had come up, involving deleting e-mails from the POP server when they were deleted locally. According to Shreyas, POP doesn't support that functionality. He didn't think he would be allowed to commit the kind of ugly hack he thought would be required to implement such a feature, so we left it out.



Money Talks

As I mentioned earlier, this feature request has been in the Evolution Bugzilla system since March 2001. The first developer to respond said it was easy to implement and would definitely be supported in version 1.0. A year and a half later, in September 2002 it still had not been implemented, and was considered as being available for any volunteer to undertake. A year later, in 2003, a potential user can't believe it still hasn't been implemented and won't use Evolution without it. In June 2005, one user offered a $25 bounty for adding this feature. Even Ubuntu users were requesting the feature.



Whether the holdup was caused by ideological opposition or because everyone considered the feature such a low priority is unclear. Frankly, between the promise to implement it back in 1.0 and the repeated pleas for the feature, it should have already been implemented. While it is easy, as a non-developer, to be critical, I knew at least one way to solve the problem - pay a developer to fix it. Once money entered the picture, the problem got solved. The lesson here is, if you want a particular feature, and don't want to worry about someone else's priorities and ideology, think about making it worth the developers' time.



There is nothing wrong with individuals and organizations paying developers to improve free software. Richard Stallman wrote several years ago, "Programmers writing free software can make their living by selling services related to the software. I have been hired to port the GNU C compiler to new hardware, and to make user-interface extensions to GNU Emacs. (I offer these improvements to the public once they are done.) I also teach classes for which I am paid." So that's what we did. We paid a developer to improve Free Software. That's the value of Free Software. If you can't fix it yourself, you can find someone who can - whether for free or for a fee.



Getting the Patch

As part of my discussion with Shreyas, we wanted to ensure that the patch would be implemented in the main distribution of Evolution. The patch will eventually become mainstream. For the time being, though, distribution developers will need to backport the patch to 2.6 in order to make it available to users. In fact, we're working to see if the Ubuntu folks will do just that. If you know what you are doing, you can get the patch yourself from the Evolution CVS. If you do try it out, let me know how it goes for you.



If you don't know what you're doing, I suggest you make a request to your distribution developer for them to make the patch available as part of a future update. Hopefully, there will be enough interest from the other major GNU/Linux distributions to make the patch widely available to users via their normal update routines. After all, it is a frequently requested feature and a show-stopper for some. If enough users express an interest to their distribution developers, that may help with the process of getting this patch out to more people.



This just in: The Evolution patch will be available in the next Dapper update.

  Nav
» Read more about: Story Type: Editorial, LXer Features; Groups: GNOME, GNU

» Get new stories by e-mail: nightly or as they are published

« Return to the newswire homepage

  Related stories
» More like this

Comments (41)

freedom 3

Congrats, Don!

You used freedom 3 - The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. Shreyas Srinivasan used freedom 2 - The freedom to study how the program works, and adapt it to your needs. And now, you're using freedom 1 - The freedom to redistribute copies so you can help your neighbor. Your neighbors can then use the same freedom 0 with which you started - The freedom to run the program, for any purpose. All of those freedoms naturally depend on access to the source code.

That's a whole lot of freedom for so cheap a price.
We'll be supporting more projects in the future. I'm setting aside a special fund for this purpose.
BRAVO!

Very nice article, and inspiration for the rest of us end-users who may exercise these very same freedoms. The more that we collectively assert these freedoms and share what we've done, the more our community will grow by attracting others away from the restrictions of proprietary software.

Thank You!
I found a workaround for this very problem. It involved going into the settings and changing the setting for leaving the messages on the server, closing the settings, retrieving the messages and then resetting that particular settting. Not a big deal since I only do it like once a week. Even so, this bug fix will be nice in that I won't have to do that anymore!!

Thanks!!!

Don K.
> I found a workaround for this very problem. It involved going into the settings and changing the setting for leaving the messages on the server, closing the settings, retrieving the messages and then resetting that particular settting.

It was still kind of a pain in the neck though.
Yup. Those are the kinds of boring, repetitive chores that computers excel at, leaving us to do the brainy, creative stuff.

Well, the first is true anyway.... :)

Untitled

"With Evolution, you can choose to either leave the messages on the server or delete them. If you choose to leave them, you'll have to delete them manually on your own. I want Evolution to delete them automatically after a week, or maybe two weeks.

"Evolution's POP client was an all-or-nothing proposition. Although I didn't know it at the time, this feature has been listed in Evolution's Bugzilla system for at least five years. Apparently, it was a really low-priority item in the minds of most Evolution developers. Some thought a POP client should not try to be an IMAP client. Most responses to the feature request seemed to say something to the effect of "fat chance of that ever happening".

And this is an example of why I crab about Gnome devs so much! The automatically-delete-from-the-server-after-foo-days has been a standard feature in nearly all other POP clients since forever, like Eudora, the Lookout twins, Pegasus, Mozilla, and Opera. Some of them have additional features, like "keep only the last x number of messages."

Good on you for taking the initiative and getting this fixed, and for releasing it to the world. A sterling example of Free Software protecting users from vendor follies.



This is exactly how I saw to it that Sieve support was added to DBMail 2.1x. Good work!
> And this is an example of why I crab about Gnome devs so much!

I feel your pain!
> And this is an example of why I crab about Gnome devs so much!

Well, there are things to crab about in Gnome, though I think that in general they do a pretty good job.

But as Gnome apps go, Evolution is probably the easiest target for crabbing. I've always had the impression that Evolution was rather separate from Gnome. I know it used to be a "Ximian thing" that used Gnome rather than an integral part of Gnome. Not sure what the status is now that Ximian is Novell.

But I hear you. Imap is slow. Filters and junk tests don't get applied to imap. My clients who use it call me and say they can't get it to come up and I have to kill their process that's still hund out there. Whereas Thunderbird is one process, Evolution has to start a slew of them with incomprehensible command lines. I could go on and on.

And it just feels clunky. I only use it when my clients need the calendar and other stuff that it drags along. If and when Sunbird is ever finished (One gets the impression that Sunbird is the Cinderella of the Mozilla family.), I probably will not use it at all.

I hate Mozilla's address book. I hate their calendar too. The address book needs to be beefed up a bit, and the calendar... well it needs lots of things. I would be thrilled to use the Mozilla suite, but as of now, Firefox is my browser and that's as far as it goes.

I like the look/feel of Evolution. I loathe their decision to remove the RSS feed. That sucked big time. That was what initially attracted me to it. But then, I long for the return of GNOME 1.4, and the awesome flexibility I had with the UI.
Your are obviously much more into organization than I am. My idea of the perfect address book begins and ends with being able to right click on an email address and have that address inserted into the book. I don't care about anyone's name, geographical address, or phone number. And everyone has gotten used to my forgetting their birthdays anyway. I sometimes forget my own. ;-)
"I long for the return of GNOME 1.4, and the awesome flexibility I had with the UI." Don, me too. Plus it was easy to learn some simple GTK hacks to really go nuts with personal customizations and fun shortcuts. That was the Last Good Gnome.
I just forget to add the birthday info in the field. :-( But I frequently use more than just the one or two phone fields in Mozilla.
>>I like the look/feel of Evolution. I loathe their decision to remove the RSS feed. That sucked big >>time. That was what initially attracted me to it. But then, I long for the return of GNOME 1.4, and >>the awesome flexibility I had with the UI.

I am working with a guy called Andrew Case to re introduce rss feed support into evolution. He is doing all the work, i just mentor him once in a while. I think it should be available soon enough.
Hey, is that *the* Shreyas from the article? If so, thanks for taking on that feature request job and making it a reality! As Don pointed out, there appear to be a lot of folks who wanted it but couldn't get it to happen.
Grouch: Yeah, its the same Shreyas. Its no big deal really, just doing my job like everyone here. I am glad it will help all of you.
TC: > Don, me too. Plus it was easy to learn some simple GTK hacks to really go nuts with personal customizations and fun shortcuts. That was the Last Good Gnome.

I had 1.4 with SUSE 8.0 Pro. When I migrated to SUSE 9.2, I experienced culture shock. Even though the GNOME Control Center was kind of flaky in 1.4, it actually allowed so much customization. The way it was laid out was quite sensible, too.

Shreyas: Welcome to LXer! I am soooo looking forward to the return of the RSS reader! Thanks for letting us know. I'm waiting with 'baited breath'. :-)

Understanding competence in the Open World

Don: One of the things which should help independent users develop a fair amount of trust about people they are hiring is to interact with the community.

As a FOSS developer what we care deeply about is acceptance in the community. So if you want to judge the capabalities of a person before hiring him you should ideally drop into the community channel (#evolution on irc in this case) and talk to a few people. The coolest thing about being a FOSS developer is that everything i have done is out in the open and a few searches away.

Nice article, I sent it to the FOSS community in India too. I think the freedom to address your own pain points either by hiring people or by diving right in and fixing it yourself is one of the greatest strengths of FOSS.
shreyas: >"The coolest thing about being a FOSS developer is that everything i have done is out in the open and a few searches away."

There it is. Imagine interviewing a former MS coder and asking to see all the code he or she produced that is in use. I don't think you'd get the deer-in-the-headlights reaction from a FOSS coder.

The benefits and advantages of FOSS just keep piling up, from developer through to the user and beyond. Well beyond.

spreading the message

1 earlier comment in the full thread.

Libervis:

The story was rejected by Slashdot, when I submitted it.

I've read the article 3 or 4 times, just because it's so damned cool.

Do people seem to think only the extremes matter with free software? Either big corps must pay full-time programmers to do GPL code, or coders must do it strictly on spare time?

Here we have:

* a relatively small group (note the 10 PCs), * with a big software itch, * for a feature in GPL software, * that has been asked for by others for 5 years, * a FOSS developer able and willing to * code the feature for a fee, * which answers the 5 years worth of requests because of the GPL, * and the instigator (yeah, that's you, Don) shares the tale with the world so others can see how to get their software itches scratched, even if they can't afford a full-time programmer.

What's not to like? It is a concrete illustration of one of the benefits of free software that advocates have pointed out for years. We've all read news stories of how some business extended some piece of free software, or how some hacker extended some piece. This story is part of that vast middle ground which has been almost totally ignored in the news.

I want to put it in billboard-sized type:

YOU, TOO, ARE FREE TO ADVANCE FREE SOFTWARE TO FIT YOUR NEEDS!

It's not just IBM, Novell, Red Hat, etc., inc. who has that freedom. It's not just hackers who have that freedom. *Every* user, individual to multi-national corporation, has that freedom with free software!
Don't feel bad about being rejected by /..

I think they're all sulky now that they're not cool any more.
/. and other OSTG properties are running 'Get the Facts' ads now, so they are most definitely uncool.

I digged it.
>I digged it.

Hee Hee.

Reminds me of our friends the Wolf family.

I sometimes refer to them as the Wolves, but Wolfs is grammatically correct. Just don't seem right though, do it?
tuxchick2:

I never see those ads anymore. Usually, I see lots of whitespace on pages or I get a 404 message from my local apache, all crammed into an ad box. Seems the ad doesn't exist on localhost. :o)
This story is such a beautiful proof of a working Free Software economy that ought to shatter the last doubts about Free Software as an economic system.

I mean, one of the most asked questions regarding Free Software is still that; how do programmers make money?!

This story shows how! Custom coding. I can bet there is a huge number of people out there badly need a certain feature or a program and would gladly pay to get it. That's probably the biggest money making opportunity all Free Software programmers have. Code on demand for money while sharping up your skills on pet projects you do for free. In the end all code get's to the community as Free Software, a programmer earns a living, and those who need specific features and programs have their needs satisfied.

Awesome. :)

Btw, I've featured the story on Libervis too, a bit late, but I haven't read the story immediately and bookmarked for later so there.. [url=http://www.libervis.com/news article.storyid 307.htm]http://www.libervis.com/news article.storyid 307.htm[/url]

Thanks
Libervis:

MS and other secret source brick packagers may get all the drooling space in the "news", but custom coding accounts for far more software and far more developer jobs than all the shrink-wrap. There are some developers who are paid to work on free software, but most developers are paid to create custom, unreleased, business-specific software that will never be seen in public.

What you describe is a very fine cottage industry opportunity that is under-utilized, or at least under-reported, currently. It could be a way for new FOSS coders to get exposure while providing features users desire enough to be willing to pay to get.

The feature-for-hire scenario does not involve the typical corporate ladder of economic success. Developers do not have to follow that serial, step-oriented model. The required level of expertise and fee are entirely up to the negotiating user and developer.

Free software enables small business opportunities:

* local Mom&Pop PC shops selling computers with GNU/Linux installed and customized for local customers

* service and support business, from the neighborhood part-timer taking care of local businesses and neighbors, to IBM, Red Hat and Novell

* developers of custom, unreleased software are free to do their creating on free software, with GNU/Linux in particular lowering that cost barrier to entry

* as illustrated by Don's article, developers can negotiate directly with users to do custom work on free software for a fee

Free software is not just for saving on the expense side of the ledger. I'm looking forward to mainline news discovering lots of cottage industry springing up around FOSS. Setting users free is truly awesome, when it is understood who the group "users" includes and just how free those 4 freedoms make them.
Indeed grouch, and this is a core point people ought to understand:

Quoting:Setting users free is truly awesome, when it is understood who the group "users" includes and just how free those 4 freedoms make them.


When people see that developers are also inevitably users, then they should see that when speaking of freedom of users we're speaking of freedom for developers, which as you well explained reflects in various opportunities they have, that they may not have had in a realm of proprietary software.

And it all comes from the ability to cooperate rather the need for secrecy and isolation.

Thanks
I hate to throw cold water on this dream, but I don't think this is a feasible economic model for a programmer.

In order to make a living at this, a developer would have to find at least 150 engagements per year like this one (150 x US$400 = US$60,000). To make a decent living with which to support a family, the number would be more like 200 per year (200 x US$400 = US$80,000). If you assume two weeks of vacation, and ten holidays per year, that leaves 240 working days. So, every engagement would have to be found, sold, scoped, completed, debugged, and delivered in a day and a half or less (240 days / 150 engagements = 1.6 days) (240 days / 200 engagements = 1.2 days).

Additionally, this self-employed programmer would have to pay their own benefits. Insurance, saving for retirement, etc. take a big bite of the income pie. Also, self-employment tax is a killer.

Programmers are far better off looking for work that will keep them busy for weeks or months at a time. However, individuals or small organizations aren't likely to be able to fund such work (2 weeks = 80 hours; 80 x US$40/hour = US$3,200) (2 months = 320 hours; 320 x US$40/hour = US$12,800).

It's a good second income, but I personally wouldn't pursue it for a full-time occupation.
NoDough:

Your splash of cold water warms up as you adjust your figures to account for cost of living in various places. That US$60K you first quote might put you in a flop-house in NYC, but it would lure some teachers out of classrooms in several states. There are plenty of places where half that would be a ticket to riches.

Even considering that, your point is well-taken. Such a business model is not a replacement for, say, getting a job as a kernel hacker at IBM.
Save the cold water, I think you're looking at the wrong business model. Developing and supporting custom applications is the way to go for a freelancer, not these little one-off feature fixes. Two areas that are big for small businesses are point-of-sale and accounting. For most folks one size does not fit all, and even if they use off-the-shelf retail apps they require a substantial amount of customization. Even popular commercial apps like Peachtree and Quickbooks have a whole customization-and-support industry built up around them. Other accounting and retail management packages (sorry, I forget the names now, but there's a lot of them) are designed to require a custom installation, setup, and ongoing maintenance.

On my todo-list-when-I-have-time is to investigate the FOSS options for this sort of thing, because I think it has some real opportunities.
TC,

Agreed. Perhaps I was ambiguous in what I addressed. I was speaking of the "one-off feature fixes."
tuxchick2:

I tried for years to get someone to code a GUI replacement for a critical part of a local business's billing and customer data management needs. One programmer probably summed up the problem well, "That kind of SQL work is just not sexy." I had to limp along with a conglomerated mess utilizing PHP, Mozilla, PostgreSQL, an old flat-file dbms, and a 2517 line bash script. They never knew how ugly things were behind that PHP+Mozilla face they saw.
NoDough: Interestingly the way economies work, If i were to earn $60k in India i would probably be in top 1% (multiply $60k with 46 to get INR number) of the employed bracket for people with similar work experience. Having said that i dont know one person (i know fair number of open source developers) who depend on such pay-off's for existence. I work on a lot of stuff out of pure interest anyway, if someone wants something specific done which aligns to what i am doing, then i pick it up.
grouch, I know what you mean. I've been self-employed most of my life, and the one thing that set me apart from the competition was customer service. It doesn't matter what profession you're in, that's the single biggest factor to being successful. A lot of freelancers have this idea that being the boss means doing whatever you want. And strictly speaking it does, unless what you want is to have contented loyal customers and good word-of-mouth referrals. Customers totally do not care what you want- they hire help to have their own needs met, which is a basic concept that escapes a surprisingly large number of entrepeneurs.

BTW, I keep forgetting to mention that $400 seems like a real bargain for the amount of time Shreyas put in.

It really was a bargain for everyone involved. Shreyas mentioned somewhere that it wasn't that big a deal, but it was for those of us who can't do real coding.
shreyas,

I didn't in any way intend to minimize the importance and impact of your work. Your dedication and talent are respected, admired, and appreciated.

Many here in the states are upset about the amount of work going to India. I am not among them. America has a higher standard of living than most of the rest of the world. If we have to trim our budgets so that poorer countries (I don't know if India fits that description today, but I believe it once did) can raise their standard of living... well I think that's only fair.

Thank you for your contributions (paid for and otherwise) to the free and open source software communities.
> It really was a bargain for everyone involved. Shreyas mentioned somewhere that it wasn't that big a deal, but it was for those of us who can't do real coding.

I agree, and, can strongly relate to that. Don did a nice job in telling us about it.
The response to NoDoughs original "cold water" argument was well made already so I'll just add that I'd be happy to be payed $400 dollars for adding a specific feature to a program if I knew how to do that. In Croatia that's more than a double of monthly sallary of which one guy can actually live off pretty good. That reduces these 160 necessary deals NoDough talks about to 24 (two a month for an average Croatian salary).

But who says this has to be the only source of income. Many of these programmers will have a pet project for which they can have a website. Depending on the popularity of their program they can sell some advertising off that website. They can even go further and commercialize a bit on that pet project by offering support services for it, selling a CD package or even (if you want to go that far) charge for a download of the latest version of a program (as phpnuke guy used to do, and still does I think).

Anyway, my point is simply that we don't need proprietary software for programmers to be able to make a decent living. I can understand why some Free Software programmers work for a proprietary software company today, but that's just because we haven't yet achieved domination. As Free Software mind shares and market shares continue to grow, so will its economic opportunities.

There is no reason to save even the smallest piece for proprietary software - it's a model that should be killed and be done with, even if the killing will take some time. ;)

Thanks
Libervis:

A bit of back-up for your point:

Quoting: Let's go to myth number two: Linux is only a niche play.

Have you heard this one before? Think about this? Web servers, Internet service provider, telcos, Internet applications. If you measure the revenue opportunity of our industry at over a trillion dollars, that's about 40 percent of our industry. That's a niche? That's a niche! That's big enough for IBM to play in! Believe me, we need big sandboxes when you get to our size.

-- Sam Palmisano, Keynote Speech at LinuxWorld January 31, 2001 http://www.ibm.com/ibm/sjp/01-31-2001.html

Post a comment

A free account is needed to post. Write your comment here first: your text is kept in this browser while you sign up or log in, and is waiting for you when you come back.

Your message:
|||||
10
Markdown: **bold**, *italic*, [text](https://link), - lists, > quotes, $x^2$ for math. Formatting help

Sign up and post (it is free)  or  Log in and post