You are here

5 Tips for free software advocates

Free software advocacy is something I do -- both for a living and as a hobby. Over the years I've gleaned a few best practice tips and I thought I'd pass them on. They may not all work or even be applicable in your case, but I have found then all useful at some time or other. They are in no particular order and in my opinion carry equal amounts of weight.

Beware price comparisons

With the current economic climate there has been a fair bit of rhetoric regarding the opportunities for free software to gain some "market-share". I think any argument which primarily advocates a cost advantage to free software is flawed. I've gone on enough in this column regarding free software and market share but in short proprietary software sales is measured in ways that free software installations cannot. It's also been said by a few people -- some of them on here -- that advocating free software on price alone is a dangerous business; although the temptation to do so increases during an economic downturn, the danger does not diminish. Why? Well, if you set out your stall built on the lowest price, somebody will almost always come along and beat it. They'll use (often deliberately) confusing terms like "Total Cost of Ownership" and "lifetime costing". The point is that if a punter switched sides once because of price, chances are they'll do it again. If you are going to use an argument to win, make sure it's harder to beat later.

Balance the rate of change

Sometimes in our enthusiasm to advocate free software we can come across a little, well, pushy. Whilst it's good to be 100% behind our argument, it's not always helpful if we overlook the needs of the person we are talking to. You have to gauge the situation based on your experience of the "client". If you are talking to somebody who is nervous around computers, is willing but a little unsure to try free software and trusts you to help them, you need to ensure you don't abuse that trust by throwing them in the deep end too quickly. Equally if you are talking to somebody who knows or thinks they know a lot about computers -- by which they mean Windows -- you may need to convince them one step at a time. Perhaps installing a free software based mail router to manage spam in front of their existing proprietary mail server is a better first step than a wholesale swap to a free software mail platform. Regardless of how much better you know the free software solution is, if you let them discover that advantage for themselves you'll more likely create another advocate than just another user.

Being realistic will win hearts and minds

This is slightly related to the last tip and I may raise some hackles here but over the years I've had more success in converting people gradually than in one go. If I allow them to keep running a proprietary application they are familiar with -- at first -- more often than not they will ask about free alternatives after some time. At a recent free software advocacy conference I spoke to someone who was interested in free software but they were put off by some advocates they had spoken to. Their concerns were over an implied insistence that they should change everything at once. They had a piece of software that was fairly to key to their business and there was no direct free software equivalent. There are some workarounds and ways to do it but nothing -- in their eyes -- as simple as the software they had. In this kind of situation it's better to take the route I've mentioned above. By recommending that they run free software servers and change to some Windows-based free software products they could keep using that key piece of software. However don't leave it like that: work with them, find and seek to fulfil their needs regarding that key piece of software. I know the purist argument and in some cases it works but honestly, changing people's minds about freedom in a licence is hard enough without telling them it's about the make things -- again in their eyes -- harder.

Be in it for the long haul

When you are trying to teach people about freedom in software (two words most people do not usually associate with each other) you need to put in the commitment. Hit and run, fire and forget are not techniques that work when introducing people to the idea of software freedom. You need to make yourself (or arrange for somebody else to be) available for support. Newbies have questions, lots of them, and if you are the one who has sold them on this idea then it's up to you to answer their questions. Telling them to just go to a forum might work with some people, but generally I've found it's better to answer it yourself and include a link to the forum post in your response. I guess what I am saying is: it's about being prepared to engage in some hand-holding.

Help them to engage with the community

One of the much-praised benefits of free software is the ability for anybody to contribute. The problem is that -- more so these days -- fewer people seem to do so. Part of this will be the ratio of user and programmers which seems to lean more toward the former now. Whilst the "not everybody is a coder" argument has been answered with varying aplomb many times, those answers are not always appreciated by new users. By nature they consider themselves too new to be able to write documentation, or teach others and certainly they won't advocate immediately. So what you have to do is show and guide them in engaging with the community. Teach them about lurking on forums or mailing lists. Look out for issues they've resolved (however minor) in other people's posts and get them to answer. We, free software people, are often quite vocal about the community, but in my experience we rarely show new users how to engage. We seem to want them to learn it the way that we did (e.g. The hard way).

Conclusion

So, there you have it. Not the least obvious or most profound set of tips, but certainly ones I have picked up over the years and found invaluable. I hope they help.

Comments

I seriously doubt that, Ryan. Do you really think fewer people are writing free software (I would guess that the number is increasing substantially each year, myself)?

Clearly, the ratio of developers to users is falling, but that's (most likely) because the latter is skyrocketing, not because the former is declining or even leveling out.

It is certainly important for users to learn community-support skills. Attitudes learned from proprietary support channels are often pretty (self-)destructive when applied to free software, not to mention the fact that they encourage very low expectations.

Often, the best "documentation" for free software is simply the body of stories about how people solved particular problems. Searchable mailing list archives often turn up useful information given a large enough body of such lore.

I agree that documentation includes sucess stories but only if they contain something more than "It worked out of the box!". The problem is that as the typical user profile shifts from developer to consumer, the ratio of people who feel they are able to contribute drops. I encounter too many new (by which I mean "under a year") users who feel they don't know enough to do anything except consume. Yet these people can very much help those following behind by writing about their experiences and the things they found that were different in their brave new world.

edited: forgot something

Another point I meant (but didn't explain so well) was that of the later crop of new users, fewer seem to be contributing back. Whether this is because they feel inadequate as explained above (further puporting the idea that there are two classes of free software users) or because they don't know how or just plain don't "get it", I don't know. But my main point stands, advocating free software is more than just recommending the product, it includes advocating the ideals and community and reasons behind them.

I think the current trend amongst users is to slowly switch from a geek community to commodity customers - i.e. "I paid for the product", whether they mean the Internet connection (a standard product also includes shipment...) or a virtual value of 0$. When you map this to common marketing courses, the geeks are the "early adopters", the ones who have a strong relationship with the provider. The big crowd that comes later (and I mean in particular the professional environments) look for solutions to solve a particular problem they have and, often, will discard the product before they contact the provider - it all depends on the price of the competition. For them, relationships with a provider are costs and they will invert in it if they get a greater value than the cost itself. In the context of FOSS, it is unfortunate - and recent legal battles are a proof of it.

I´m not saying that FOSS should be banned from professional environments but this problem will surely be recurrent in the near future. As you say, our role is to invite people to contribute in whatever way they can - be it answer forums, mailing lists, writing article... or code.

Personally, I never expect that people to whom I install FOSS or explain how to use it will or should contribute back to FOSS in any way and I don't think it makes sense to expect something like that.

I rather tell new users:

"now with this software you can do something you couldn't before (be it save money, live without malware, start a business, study, whatever): your only duty towards the community which created that software is to not bother them, meaning study the manual before asking how to do something. You still have a moral obligation to contribute back if you use this software, but only towards society as a whole: that's a community you surely can help in some way to become more Free as in Freedom. So give the money you saved in licenses to charities, run with FOSS a web campaign against world hunger, fight global warming and e-waste by refurbishing old PCs with FOSS, etc..."

I never said I expected every user to contribute, just as I don't expect every member of society to "contribute". I'd like everyone to be able to take part but I don't expect that to happen real soon in either case.

What concerns me is that when new users are introduced to free software without any mention of the community at any stage in the process. Fine if it's not approrpiate to say it right at the start but somewhere down the line if we neglect to introduce them to the concepts and benefits of "the community" then I feel these users are missing out on half the fun.

Also I don't think I am saying what your article states. I am not demonising users who don't contribute, I am bemoaning the fact that a lower percentage seem to do so or are given the opportunity. In fact, I have rarely come across someone who does demand the things your seventh point argues against. To me that makes it a slight straw-man argument.

I firmly believe that all users at all levels can contribute in many different ways. I also believe that by doing so free software itself becomes a better fit for a greater number of purposes. I do not expect, demand or require any user to take part but I will always recommend they at least engage with what is loosely entitled the "community", in order to make it and their experience better. By doing so I am also trying to help users out of their dependency upon us techies. I believe that if you educate, encourage and empower a computer user you will both reap the benefits. When it comes to free software, helping them to discover this organic, dynamic and sometimes dangerous thing called the community is part of that process.

A fairly new user may well have gained some knowledge and experience which will help those migrating today. Do they have pass it on? No. Can they contribute to society in other ways? Of course but I'm not expecting them to devote all their time to free software. Is it possible that by passing it on they can actually improve their own confidence and experience as well? Quite probably.

1) "So what you have to do is show and guide [new users] in engaging with the community"

which is different from this:

2) "What concerns me is that when new users are introduced to free software without any mention of the community at any stage in the process"

I certainly don't do any of these two things. My book and all my other popularization activities introduce digital freedoms to the general public. Digital freedom is lots of interrelated things, Free SW is just one of them and certainly isn't even the most important, but I do stress the fact that what's important to care about the issues in order to become active, helpful and responsible citizens and to build a better society (=community of communities). So I don't do #2. I do mention that all this movement came out from communities, from the bottom, and explain why whenever there is time.

I just don't see any pressing need or real benefit in (personally) going farther, that is on insisting on #1: at the same time, see last link I provided, I do ask all the time that everybody supports Free SW with their votes and their wallets, because that is essential, and much more urgent than getting people subscribed to some Linux mailing list.

Part of the reason for working and suggesting others to work in this way is the unescapable reality that the people we need to convince today, as soon as possible before OpenXML and assorted laws screw everything up, are those who hate software and computers. People who would *pay* me and you just to stop asking that they write one email more than absolutely necessary.

I firmly believe that all users at all levels can contribute in many different ways

I agree with this and all the rest of that paragraph, but as a goal for the future, a medium/long term objective. If it's about how to teach FOSS to kids in grade school, then you're 100% right.

In the short term, that is convincing my aunt or a public employee to not send me MS Word attachments or to sign a petition to make the public website usable from Linux... the least you evocate any possible form of extra stress ("subscribing to a mailing list? Writing? Reading?") the better it is.

Marco

--
Your own civil rights and the quality of your life heavily
depend on how software is used *around* you:
http://digifreedom.net

By nature [new users] consider themselves too new to be able to write documentation, or teach others and certainly they won’t advocate immediately. So what you have to do is show and guide them in engaging with the community.

The sentence you quoted is saying that in order to combat the false idea so often found in new users (that they are unable to contribute) you have to show them and guide them. Note this is not the same as saying: "You must show and guide every new user you come across".

Whilst I agree with the idea of asking people to support with their votes and wallets, I am concerned here with the idea that free software advocates will introduce a new user to the software and then leave them all alone. Thus the new user's experience can meet some high hurdles and will ultimately result in a bad experience -- which they will tell their friends about.

I firmly believe that all users at all levels can contribute in many different ways

I agree with this and all the rest of that paragraph, but as a goal for the future, a medium/long term objective. If it's about how to teach FOSS to kids in grade school, then you're 100% right.

Well that's part of it but in reality it's about combatting the low opinion most computer users have of their skills. I have taught many who say they are completely hopeless with computers. This is most often translated into being too scared to try anything. Confidence is the main enemy of people using computers IME. When it comes to using free software even seasoned (but self-confessed non-techie) Windows users can end up thinking they have no part to play, no skills to offer. Thus they revert to being too scared to learn how to use their software. Encouraging them to engage with the community is part of the methodology I use to help them gain confidence. Once they realise the other people in the forums are (mostly) just humans they tend to understand more of what's going on and through that they tend to ask less questions of me as they can find the answers themselves. Thus they feel less of a burden (they're not but they feel that way) and thus they start to ejoy using their computer again.

Case in point: a retired friend of mine who had zero confidence in using a computer. I taught him how to use OOo and showed him how to take part in the OOo forums. He started by posting comments on how helpful some tips were. Then he asked a few questions of his own. Now he is answering some of the simpler questions himself. The big difference for him is that he has the confidence to do so and engaging in the community behind OOo helped him in that.

...By nature [new users] consider themselves too new to be able to write documentation, or teach others and certainly they won’t advocate immediately. So what you have to do is show and guide them in engaging with the community.

Ryan,

maybe I'm wrong, but I feel an implicit assumption in the complete quote you make which I think is very often wrong. It is the weakness, or distance from reality, of that single assumption that separates our "default strategies".

When you write that "...by nature [new users] consider themselves too new to be able to write documentation etc...", you are not simply saying and believing that new users feel themselves inadequate to making any contribution. You may be assuming that they suffer from this, that they WOULD like so much to contribute, that they just don't know how and are just scared to try.

This assumption (that "doing software" in any way, from coding to writing manual or posting simple tips is so wonderful, empowering and enjoyable that no functional human being could possibly resist doing it, when properly supported) may very well be what keeps a proper "pro-FOSS" attitude from spreading in the masses.

The world I live in is a world full of people who, in 90% of cases, will lend you money, assist you if you're sick, help the homeless, volunteer in many different fields, participate in civil disobedience and "contribute to the community" in a thousand other ways... but simply turn their brain off and ignore you if you try to push them into any sort of "doing more software stuff than they absolutely have to, in order to get on with their lives". There are (at the very least) 50 people like this for every one like that retired friend of yours.

That's where my approach comes from: I don't want to scare away the other 49. I'd rather them use FOSS for any of the million things which are way more urgent and useful to the larger community than any theoretical contribution those 49 people may or may not make to FOSS itself.

Act and talk as if it's just natural for everybody to like software, and you'll scare away from FOSS the overwhelming majority of human beings who couldn't care less of looking "inside" a computer and already know plenty of much more familiar and fulfilling communities to be part of. Which, by the way, is just what RMS has been doing for years. He's great, sincere and full of good will, of course, but attitudes and communication strategies like that one are exactly one of the reasons why "liking and demanding FOSS" still isn't a mass phenomenon.

Marco

--
Your own civil rights and the quality of your life heavily
depend on how software is used *around* you:
http://digifreedom.net

maybe I'm wrong, but I feel an implicit assumption in the complete quote you make which I think is very often wrong. It is the weakness, or distance from reality, of that single assumption that separates our "default strategies".

You're wrong. My statement and therefore viewpoint is based upon what the majority of the new users I have contact with have said to me. I make no claims that "doing software" is something that will change your life for the better. I certainly never suggest it is a replacement for helping society in other ways.

Let me be clear here: what I am saying is that when I encounter new users who want to use their computers more, want to find out more about it, want it to be more than a box in the corner and accept that to change that would require some effort from them, I find an increasing percentage who end up feeling they somehow can't contribute to free software because they lack the skills etc. and hence they give up (this is not an assumption but something based upon what they've said or indicated to me). That fact alone saddens me. How, when or where they otherwise contribute to society is often admirable, always varied and mostly nothing to do with the issue of wanting to use their computer better.

I also often come across people who just want their PC to get out of their way -- as you describe. I explain to those people the advantages of freedom in software but I make no demand or expectation on them for even using it.

Act and talk as if it's just natural for everybody to like software, and you'll scare away from FOSS the overwhelming majority of human beings who couldn't care less of looking "inside" a computer and already know plenty of much more familiar and fulfilling communities to be part of.

Marco, this is another straw man argument. I have not said or even implied anything like that and I don't know anybody who does. In fact many software/computer lovers I know tend to assume they are in a minority and everybody else is a nay-saying luddite instead of a real person. My target for this piece was the advocates who -- in their enthusiasm to get the free software message out there -- don't always allow for the human beings you mention. I, personally have enthusiasm for software and free software in particular but I'm not naive enough to expect everybody else to be the same.

In the end we can go back and forth like this for ages but I think we're coming at the same point from two different angles. You seem to br approaching it from the wider angle of freedom in general and whilst I pretty much agree with your viewpoint, in this piece I am just simply talking about how people interact with their software.

cheers

Ryan

Let me be clear here: what I am saying is that when I encounter new users who want to use their computers more, want to find out more about it, want it to be more than a box in the corner and accept that to change that would require some effort from them, I find an increasing percentage who end up feeling they somehow can’t contribute to free software because they lack the skills etc.

Oh, then it's perfectly OK, sorry. If you are only referring to computer users who want to use their computers more, then we have very little or nothing to disagree about. I was speaking about all computer users, because I had understood that you were doing the same.

Cheers,
Marco

--
Your own civil rights and the quality of your life heavily
depend on how software is used *around* you:http://digifreedom.net

I think you have to realize that having lots more "non-participating" end-users is just a natural consequence of GNU/Linux becoming more mainstream. In itself, it's not a problem, but rather a sign of success.

Think of it this way: if you're in business, and your "market share" declines from 100% to 20%, but the total size of the market has increased by a factor of ten over the same period, then you've actually doubled your sales (20% x 10 = 2).

Something very similar is happening here, and that's really the point I was raising earlier. The population is changing due to the influx of end users, not some decline in the active community. This results in some dilution, which can be an issue, but absolute size is more important for the development process than percentages are (software quality will be closer to a function of the absolute number of people contributing useful bug reports, than to the fraction of the total population).

On the other hand, it's not going to hurt to let people know about the benefits of contributing more to the process of creating free software. It's a lot of fun, and it makes things go a lot easier when everything doesn't just work straight out of the box (an experience that is going to happen with any software, free or not).

One of the problems that happens (possibly due to over-zealous marketing of free software) is that people think they're getting "something for nothing" and that they can get the same sort of support they get from proprietary software without paying for it.

Of course that's not how it works. With free software, you have an option you don't get with proprietary software: you can choose to participate in the community support process. If you do, then indeed, you don't have to pay cash for support.

On the other hand, it is going to cost you some time and effort. And it is a different process, so you have a learning curve to deal with.

I (and apparently Ryan) think that's a good trade, so we'd rather go the "community process" route.

However, we have to be careful when marketing free software not to create a false impression that you can "have your cake and eat it too": if you want to avoid paying money for support, you're going to have to accept the nature of the community support process, which requires a larger time commitment.

Otherwise, you're going to have to realize that while acquiring free software usually costs little or nothing, supporting it is going to cost you money (probably more than for proprietary software, at least at present*). And of course, that gets into Ryan's caution about price comparisons, which is "right on the money", if you'll pardon the pun.

I (and apparently Ryan) think that’s a good trade, so we’d rather go the “community process” route.

Confirmed

However, we have to be careful when marketing free software not to create a false impression that you can “have your cake and eat it too”: if you want to avoid paying money for support, you’re going to have to accept the nature of the community support process, which requires a larger time commitment.

Actually that's not just applicable to free software but any software licence model. Proprietary software often offers the same deal - you want support you pay for it otherwise take your chances in the forums. The difference is that (mostly) the free software community support is of a higher quality (in some ways!).

Proprietary software companies love to perpetuate this myth that their products come with support but generally I find this to not be the case. Oh they (or the vendor) will offer something called "support" but usually there are significant strings attached and what you get is a series of loops to jump through (to prove you are allowed to have support) and a premium rate 'phone number.

In general reply to Ryan and Marco’s discussion above… I think you have to realize that having lots more "non-participating" end-users is just a natural consequence of GNU/Linux becoming more mainstream.

Sorry, but just in case the "you" above means "both Ryan and Marco": me, I've always had that concept very very clear. It's the basis of almost everything I do in this field: there's nothing new for me in this.

it’s not going to hurt to let people know about the benefits of contributing more to the process of creating free software.

Agreed, as long as one has very clear in mind that such statements:

It’s a lot of fun

only apply to me, Ryan, Terry and some more people who worldwide amount to what, 0.001% of the total number of people who use computers today? The issue is all there, in how do you define "user".

If by "user" you only mean those who do enjoy using computers and do want to do more with them and do want the possibility to personally make better the software they use, is one thing. If you mean everybody who uses a computer, is a totally different story. There is absolutely nothing wrong with preferring to "work" or "target" only the subset of users defined above (it's very important to do it), as long as one has clear that that is a subset and acknowledges it.

With free software, you have an option you don’t get with proprietary software: you can choose to participate in the community support process. If you do, then indeed, you don’t have to pay cash for support.

As it's written, this statement means that if the generic English teacher doesn't like the way OOo handles tables or bibliographies, he or she can either:

1) fix it at home by just investing "some time and effort" to learn programming from scratch, master the tiny OOo code base, patch and recompile. A few hours should be enough, right?

2) alternatively, find some really competent programmer and shell out a few hundred dollars, at least, to do the job.

because getting anything fixed in the official version would take ages, no matter how well you file an improvement and vote for it.

Terry, a statement like that is true for a skilled Apache administrator who wants to increase performances of his server. Or a newbie who only has to change one line in a shell script (where no compiling is needed) to get the desired behavior. Not for the Openoffice case above and many similar ones which are going to be much more common in this age.

Please, guys: I'm not against you, I too want FOSS to succeed. I only ask/strongly suggest that, whenever FOSS advocates make certain statements, they explicitly write down the boundaries within which those statements are valid, and that, above all, they have those boundaries very clear in their own minds.
That's it, really, let's not make a flame war over this.

Marco

--
Your own civil rights and the quality of your life heavily
depend on how software is used *around* you:http://digifreedom.net

I don't think there's any real flames here, Marco. We pretty much agree, we're just nitpicking the details.

For the record, "you" meant "one". I just find that, when one is attempting to explain abstract ideas, overuse of the indefinite pronoun "one" often makes ones prose rather off-putting in an otherwise informal context. ;-)

IOW, I'm not accusing anyone of overlooking this point, not even Ryan. But Ryan's article leaves this unclear so that, to the reader, the distinction may not be apparent, and yet it is very significant.

As for your OOo Writer example, no this is the not the scenario I envision when I talk about participating in the "community support process".

I'm talking about when said English teacher goes on to an online forum and tries to find out from other users how to twiddle the various settings in Writer's configuration menus (I assume this is possible, I don't really use OOo much).

If OOo were a typical proprietary product, the process would be quite different. Most likely, there would be a manual included in the shrink-wrapped package, which would explain a lot of these details. Also, there would be a support phone number to call. There would also usually be a good book on the subject in the local bookstore.

Although, strictly speaking, all of these options might exist for OOo, in practice they are not so well-organized. You probably can find an OOo book if you know which publishers to check, or you can search for it on Amazon, but the options will be more limited than for market-leading proprietary packages. You probably can get phone support for OOo, too, if you go the right people, but finding it may be really, really hard. Finally, there is probably a free PDF manual somewhere that documents the configuration menus in OOo, but it's probably very poorly written, hard-to-find, and you still have to print it out and bind it (or read it on the computer, which some people find very distasteful).

Likewise, there are online forums where users of proprietary software get together to support each other without the cooperation of the software creators. However, these community forums are usually pathetic by comparison with free software counterparts.

IOW, I'm not really talking about the direct causal consequences of the licensing, but rather about the support cultures which surround these products in practice. Good support for free software, usually means the community support. The formal support is usually not so great.

It has also been my experience that, when you know how to make use of community support, free software community support is far and away more useful than proprietary products' formal support channels.

On the other hand, if you don't know how to use community support, and can only make use of formal support channels, you are likely to find most free software very lacking in comparison to proprietary options.

This is why I agree with Ryan that teaching people how to use community support is good free software advocacy: those people will quickly find that free software is better supported than proprietary software.

Of course, I also agree with you, Marco, that we really should work to improve the formal support available for free software.

However, good formal support costs money. Good documentation is like good leadership: when it works, it's invisible and therefore unappreciated, and when it doesn't, people vastly under-estimate how much effort it will take to get it working.

If OOo were a typical proprietary product, the process would be quite different. Most likely, there would be a manual included in the shrink-wrapped package, which would explain a lot of these details. Also, there would be a support phone number to call. There would also usually be a good book on the subject in the local bookstore.

I've not bought a shrink-wrapped proprietary product for some time. In fact the only one I've been involved in related to site licences and downloads. I've not seen a manual of any kind with proprietary products for years. I see help files but they are not the same. And as for a support number - really? I've only ever been offered support for a proprietary product by an ISV but that was a paid for extra. The best I've ever been offered as part of the software package (in any capacity) was 60 days e-mail support.

I agree about the book but in my experience the support options for both proprietary and free software amount to the same. You want support? You pay for it or you go on-line and ask your peers.

Author information

Biography

Ryan Cartwright heads up Equitas IT Solutions who offer fair, quality and free software based solutions to the voluntary and community (non-profit) and SME sectors in the UK. He is a long-term free software user, developer and advocate. You can find him on Twitter and Identi.ca.