Developers/Free Software/Open Source (Was: Re: $1,250)
Taran Rampersad <[email protected]>
| Newsgroups | gmane.comp.misc.free-software-business |
|---|---|
| Organization | KnowProSE.com |
| Message-ID | <[email protected]> |
Forgive me, but this sort of hits home. In this fork, I'm going to bring up some issues that are perhaps too basic, but I have a perspective, and I'm not afraid to use it. :-) Just to be clear - this is no longer about Tom, or all the other stuff associated with that thread. This last round of email 'Re: $1250' simply served as a bit of inspiration. I'm generalizing some of these things, since I only recently wrote about this in my blog. Robin just happened to write the right things to get my juices flowing, and this is not directed at him (in fact, thank you). Robin 'Roblimo' Miller wrote: > What you need to do -- and I get to say this because I'm both Jewish > and a fairly grumpy grandfather -- is: > > * GET A JOB * As a developer, I agree with you... That's a matter of personal responsibility. As you pointed out, diversification is important. Eat first. Even Pekka Himanem's "Hacker Ethic" covers this, though I think it lacks the attention that it deserves. It's only after that basic requirements are met that we can consider things like Free Software or Open Source Software. Strangely, 'hacker' may find a place in the DSM IV as a psychological/psychiatric problem when the basic needs are not met and the person continues doing something. :) > My wife is in the living room right now, painting a series of > pictures. Maybe she'll frame them and a gallery will display and sell > them, and maybe not. She's doing art, Tom, not trying to make money. > She's doing socially responsible, attractive art. And she is not on > the Free Art Business email list whining about how the world doesn't > recognize her talent, either. She's just... painting. > > Debbie can paint for five days straight because her husband (me) works > long hours and gets a pretty good salary in return. If I lose my job, > she may have to go back to work, probably at some crappy customer > service job. She'll still paint, just not as much. Agreed. I write software, and I write 'whore material' as well, though I'd really prefer to get a book proposal accepted (working, working, working). I consult. I also sell solar products, and sometimes sell computer hardware. And whatever passes by where I can make a buck - well, that's what I do. I even have a silly store on my website where I sell things (I sold one t-shirt since opening it, LOL). If developers are working at doing other things - like cutting grass, or whatever - to pay the bills, and they don't get compensated for the code that they write (which is used)... Should one expect the code to continue being done? Probably not. Some would argue that this is a simple case of economics, and in many respects it is. If nobody wants to pay for something, nobody will. In essence, it's like writing a long manuscript, sending it to publishers - and getting rejection letters. The difference here is that developers don't get rejection letters. They just don't get paid. There's a hint and a half for the developer. Don't write the code that you can't afford to. The users don't deserve it, and the middle men (if they exist) really don't care too much about you. Martyrdom is also droll. One of the problems I have is the lack of a true business model for the software developer. It seems many people believe that we sit down, magically create something that we put into a box and sell it. It's really not all that simple, and Tom pointed out that there are Software Engineering practices that come into play. This is true. It's reconciling good software engineering with 'stay off the bread line' business models that is the Free/Open Source developer's greatest challenge. Many local developers interested in Free/Open Source development ask me "How do you make money"? Telling them that they should master the deep frier at the local cholesterol distribution center doesn't make Free Software and Open Source development sound very lucrative to them. Instead, I tell them that they really need to figure out: (1) What they are going to write. (2) Who their market is. (3) How they are going to license it. (4) How much is it going to cost to develop. (Something, I fear, seems to be lost in discussions!) (5) What return they expect to get. (Something that is empty without number (4), and comes across as whining when it *may* simply be an omission of (4).) They look at me strangely, expecting me to reveal a great truth to them. I don't have it. It is important that developers new to the concepts of Free/Open Source software that they are businesses, and need to run like businesses. Number (4) is the real problem, because most of the attempts to address Software Estimation - schedule and financial - are dismal failures in that they are inconsistent. It's the embarassment of Software Engineering in this regard. This is made worse by the fact that the projects are object oriented, and follow a recurrent Spiral Model/Concurrent Engineering model that defies cost analysis. Dash in the fact that developers are manning deep friers to make ends meet - and that a cost is not only in cash, it is sometimes in liberty (freedom) as well as self respect. Consider that you can get furniture at the road side for free, but you may pay some self respect in acquiring it. So how much is the cost of the software? This, perhaps, is one of the greatest strengths of Free Software and Open Source development - in that the cost is hidden, and the developers silently man their keyboards to produce quality code. They form communities of hackers producing quality code. Before you know it, they have literally man-years in the code, and people are using it all over the world. Let me be dramatic. Suddenly, let's say for some reason - this army of deep friers are suddenly unemployed by a new health craze that is taking over the world, and they aren't qualified to slice vegetables. They can't afford retraining. Suddenly, all these developers who had enough money to get by on no longer have that money. And all those people who they helped with their code - where are they now? If those people do not help them, then it would be an honest that these developers would feel betrayed. There's a relationship that has been built, and one group has been giving, and one group has been receiving. This, any marriage counselor will tell you, is not a healthy relationship for either.A divorce would be in order. The GPL/Open Source license (pre-nuptial agreement?) would assure that the users get the code, and the developers are left with... well, the ability to write code. Which is what they started off with. An amusing analogy to play with. So - yes, it is up to the developers to make sure that their bills are paid. Yes, it is the responsibility of the developers to make sure that they survive. Yet - do we agree that the users of the software created and maintained also have a responsibility? If we agree, then we also agree that the developers have a responsibility to assure that the users are responsible. And not only the users - the middle men who are between the developers and users are also responsible. Some of the users are responsible. Some of the middle men are responsible. Must they bear the brunt of the costs of the software? If it must be so, then so be it. If the cost to develop the software is valued at $100,000 and there is one user who will pay - should that one user pay the $100,000? Yes, if they want the product. If 100,000 people use the product, then $1per user would suffice. Who pays has control over the code, and all the non-paying customers do not. Consider that DoD contractors may require SEI CMM level 3, but many processes will allow COTS to be used without all the overhead associated with SEI CMM process. I bet that they pay for the code. So - we get back to cost estimation, which I think is either ignored in development scenarios related to business models (from what I have read so far, I hope that I can be corrected), and translating that cost to income for the developer. The developers are at fault here if they do not know how much it cost them to write the software. They are also at fault if they do not charge fees to do changes and so on. The users are responsible for holding up their end of the bargain, and if there are middle men involved, then the middle men must assist in the users holding up their end of the bargain. Failure for this to happen seems to be the downfall of the entire Free Software and Open Source models... where if developers don't write the code, there simply won't be any software for people to make money off of. Then all further discussions based on business models for Free Software and Open Source will be useless. Developers are part artist, and part engineer. Some are more artist than engineer, some are more engineer than artist. Free Software and Open Source software is developed around who developers are, and how developers want to be... or at least that's my perspective on how this all started (I was not there, I do not know). It's about giving the users freedom - but there can be no freedom without responsibility, which in itself can be self defeating. Admittedly, culture change is required - but culture change is also slow. Care must be taken not to reinforce the negative aspects of the previous snapshot of the culture in attempting to obtain the new culture. Were it not for the original developers who started all of this, and the developers who have since followed - there would be no books to read, there would be no distros to purchase, there would be no magazines to read, there would be no alternative to proprietary software. For this, the original developers seem to have been compensated, and have done well. This is good. They did it in their spare time as well, and did it as a hobby/art. And this was good. Yet businesses do not hang these pieces of 'art' from their walls in the appreciation of art. Times have changed. Businesses are not using Open Source/Free Software because they believe in the ethic that started it off. They do it because they want to cut costs, and they want more reliability. This seems (to me, anyway) to be a transitionary period for Free Software/Open Source. More people are using it, therefore more people should be writing and maintaining it. New ideas and concepts are often considered the weakness of Free Software and Open Source Software. Care must be taken that Free Software and Open Source software are not typecast to be mimicries of proprietary software - the next good idea may very well come from a Free Software/Open Source developer, but they may not be able to get it to market in time to beat out a proprietary company which has the same idea, since they are busy doing other things to make ends meet. Certainly, a large development team across the global village that implements the idea may stand a better chance - but are these the odds that we wish to play with? Is this the future of Free/Open Source? To be copycats? I hope not, but it is not for me to choose. There's a good bit of the Free Software and Open Source business models out there, and yet there is little being done for the developers themselves, and the developers are as much at fault in this regard as anyone else - probably more so. There's a bit more to this topic than the sheer survival of a single developer. It's good to see companies springing up and capitalizing on the software that is created - as hobby, as art - and it's good to see that other companies are using the products. It's good to see all of this, but really and truly, I'd like to see something positive with respect to developers. Some could discuss licensing and the various licenses available, yet I think that there is more to it than that. Artists who produce poor art usually don't make money (unless it contains something controversial, it seems). Artists who produce good art also do not make money until well after they are dead. Some artists got lucky and were commissioned to paint ceilings. The majority were not. If this is how software developers are to be reimbursed, is it possible - with all the leaps in technology and culture that we have made - that we can find a better solution for people who produce things that are used for more than decoration? I don't know, and I don't know that anyone else does - but it is worth discussion. It's philosophical in a way - and yet it is very economicly related as well. My main problem is the Software Cost issue, which I think is either ignored or discounted as irrelevant due to the manner in which Free/Open Source software is developed. However, if we expect to maintain growth within Free Software and Open Source, we should address this. Developers need to understand that there is a cost of writing software - even if it's a coffee bill and a new keyboard. Whether or not they decide to donate the cost - well, that is their option, but it certainly isn't tax deductible. People who use the software need to be reminded of these costs from time to time as well. If developers cannot afford to code, they shouldn't. They make it bad for all the other developers who want to avoid giving away free beer when they wish to give away free speech. For myself... well, what I am doing - muddling through - seems to be working, and this really isn't about me. It's about developers of Free and Open Source software in general, and the challenges that I see. I am fortunate. I have no wife, no kids, and I live in a house that is paid for. Some developers are not this lucky. Business is risk. Mitigating risk is good business. That was rather long, and I apologize. It's a topic that I could write more about - some things are omitted - but I thought I would spare the audience. Taran Rampersad