Clemens Vasars on Free Software, "It’s idiocy"
This is not a rebuttle, but a counter-point. I wish to shed light on the bigger picture.
A friend of mine once said, "forget about trying to make it in music. It's a fairy-tale. There's no way a true artist can ever make it." He is in a band these days. He has rediscovered what it means to be a musician. He may or may not have resurrected his dream of being a rock star. He has, however, resurrected his love for music, his passion for performing, and his youthful optimism that something done for the love of doing it is worth doing.
"Forget the dream about stuff being free and stop advocating it. It’s idiocy. It’s bigotry. If you want to put your skills to work and you need to support a family, your work and work results can’t be free." from Clemens blog
BTW, his blog runs on DasBlog, which Clemens helped to create, and distributes as true "free, open-source software". I want to personally thank the Newtelligence team for their contribution. It's awesome. It has given many developers the enabling technology to be chatty and say too much about everything in a very public way. It also has helped evolve the internet.
Michael Earls said, "I couldn't agree more," on his DasBlog blog site.
So what are they trying to get at? I think they are trying to express the idea that profit has it's place. calling Microsoft and proprietary software vendors evil might be fun, but it's silly. Even so, don't forget that open-source has it's place. It creates value that commercial software cannot because it is not driven by the mighty dollar.
Free Software that rocks
Consider several tools we (my daytime employer) are just beginning to implement and one we have embraced fully. Wiki, NUnit and NAnt. These suites of free software provide a very robust set of features. They could easily be marketable and profitable products but have evolved along a different path, been more accessible to everyone, and benefited from cumulative community contributions. These are true open-source projects. Even Microsoft has learned from the collective work on NAnt and modeled MSBuild very closely to it. I'm sure MSBuild is going to have some pretty exceptional, .Net specific enhancements and will profit greatly from everyone's FREE contributions. I have learned to appreciate open-source passionately. I have learned a great deal from examining the source code for applications that are openly available. I use several open-source apps every day: RSS Bandit, NAnt, NUnit, DasBlog, Wiki. I use open standard consciously and without being aware of it. Design patterns, UML, code examples. None of these things were necessarily created for direct profit. Perhaps along the path to solving some busniess need in the aim of generating revenue... But these aretifacts are free. It's not a black and white issue. You can contribute to open source at the same time that you develop for profit (or hourly wage, as it may be). I know of one developer who has contributed in very significant ways to open-source and community work groups, this guy named Michael Earls, yet he works for a corporate giant in the TelCom industry. mmm hmmm... You can contribute to your industry in a million ways. When you write articles, you contribute to the community. Companies profit from that work. Their emplyees read that article and take your hard-earned knowledge back with them and apply it, possibly in direct competition with you. Should you refrain from sharing knowledge? Perhaps there should be one person who will control all knowledge and decide what will be made public and who has aceess to which. Ok, one person is probably not appropriate. One group. Wait, we've been here before? Who gets the knowledge? How should that knowledge be shared?
Closed Mindedness and many shades of grey
Its like the single vs. married dichotomy. Does life as you know it end when your baby is born? Can you not have exhillarating fun when you're married? (Don't tell my wife, I have her convinced that we can still party and live life like we enjoy it). I work with a fellow whose favorite thing to tell me is that I am in denial. He insists that I will eventually give up and realize that my personal life is over, my dreams are dead and I will never be anything more than a dad until they all grow up and then I retire (and get ready to die). He loved to hear about my single days and all the things I was doing outside of work. When I married, I didn't move out to the burbs and subscribe to Comcast and Tivo. I stayed intown and live in the most cosmopolitan, stimulating part of Atlanta, the Virginia Highlands. I live there wth my wife and son and enjoy walking to shops and restaurants and every once in a while, I walk to a pub and throw a few back. I occassionally play an open mic and sometimes catch a live musical act. These are not the typical activties of the average married with children american. I will be the first to admit that I do not stay out until 4 a.m. and spend my saturdays sleeping off a hangover. I instead wake up at four to change tiny dude's shitty pants. Yes, there are differences but they are personal. Some of them are universal, some of them are not.
Free and/or Open
Open-source does not mean free. Free is freeware. Software can be both freeware and open-source but each term are addressing two different things. Open-source means you have contributed some knowledge in the form of software and offer for others to do the same. If someone wishes to use it in their business or in their commercial product, awesome, good luck! When you participate in open-source, you learn as you solve problems, as others solve problems and submit their solution and as you collaborate. It is a learning and sharing practice. It is very rewarding to participate. It is very rewarding to stumble upon some artifact of all this work and start digging.
Open Standards
Standards are best developed our in the free world. When I say free, of course, I mean lacking dictatorship by some profit-centric manager. If standards are created by companies, they tend to solve that company's needs ahead of the industry's needs. When developed by public contribution from industry pundits and leaders in the community, they tend to better represent everyone.
The Bottom Line
Oh but we must survive! "Fish gotta swim, birds gotta eat." So when you decide you want to build this great application, do you create it, release all your code and hope that someone thanks you with paypal? Hell no! You have to work for someone. You either work for a business or you work for yourself (which means you work for your clients, who may be a busniess, but that's just semantics). You create marketable product or solve business needs with software functionality. When you learn something really cool, that's when you get to make the world a better place. You can even write an applicaiton that solves a common need and let everyone use it. Like NAnt. Until MSBuild arrives, it is what is out there. And it rocks! And it is free. I would bet money that the creators of NAnt have been consulted, or at least approached, to assist with MSBuild. So open-source can turn profit.
The bottom line for me is this: Focus on your goals and objectives. Decide where you want to go and don't move your gaze until you've reached your destination. Do what you love and figure out how to get rich later. Don't let profit drive the train. You'll be a slave to the winds of change that way. Instead, drive ever-forward and you'll find you are making the biggest wind.
If you want a more practical way to say that: Take money out of the equation. Decide what you love to do. Then, figure out how to get someone to pay you to do that. (Michael Earls said something like that but I can't find the original post)