|
You had repeated my words, I say "open source" is not a perfect. Ok, let's talk about Real.com open source project? As fact - it's failed.
Pavel Sokolov
|
|
|
|
|
Not to intrude, but I feel that you are both being quite limited in your opinions in this matter.
Firstly, Open source projects suffer from a high rate of failure, but so do the multitudes upon multitudes of proprietary software developers that aren't selling boxes in the millions. Open Source projects are very public in nature and it is almost customary for the project to have a web site before even the planning stages of the project are complete. Proprietary shacks are less public, but no less prone to failure before anyone even hears about them. The difference is in the publicity, not in the business approach. Open Source by its nature HAS to invite outside interest, Proprietary development occurs behind a wall and nobody knows about it until its in its very late stages. This creates an apparent imbalance between the number of failed open source projects (who's websites often remain on the web for months, even years after the project has folded up camp), and the number of failed proprietary projects that the end-user/media/you/me, never heard about during their development.
Secondly, Open Source represents an answer to a call by the consumer. Quite simply, the software industry pisses off the little guy. Even in today's day and age, a regular person who's life doesn't revolve around the computer has a hard time understanding the value of a few megabytes of software code that fits on a single CD compared to the value of something solid, like a truck or other form of more physical asset. This is conception for as we all know the amount of time, work, brilliance, and energy that goes into any successfull software project is often worth far more than was ever paid for it by the customer. In short, the customers want cheaper software, they like "cheap". Open Source fits the need conceptually, and proprietary software is fast becoming the unpopular "evil empire". Public perception is proprietary software's most potent enemy and NOT the concept of open source software itself. On the other hand, those of us with half a brain understand that Open Source isn't free, nothing good ever is. Open Source means retraining, means employing developers in companies that previously would never have bothered to employ such a person. As a result Open Source spreads out the community a bit and in the long run I think you'll see more jobs for developers than there are even today. Open Source may even prove to be "more expensive" to the consumer in the long term but as anyone from Central Ontario knows, drivers will drive for twenty minutes out of town and all the way to who knows where to save 0.5 cents on a litre of gas. In a consumer driven market, price is everything, and its hard to compete with a tag that reads 0.00, even if the small print includes a few other fees, the customers see "free"...
|
|
|
|
|
not limited at all.
infact open source makes software cheap. finding code which has already been done and published elsewhere (and is available to be used) makes development time less and cuts down on the time spent to develop the solution.
as for the bit of open source not being free... thats kind of a misconception. the software is free, you're going to need training regardless of the price of a license no matter what you do (when migrating from one app to another).
the implementation of open source is not hell. software as a whole sucks because it is all written by imperfect people. the degree to which is sucks varies by the amount of time spent resolving issues. that costs resources that dont bring in imcome directly.
the idea of information sharing brings out the best in software development. it makes the wheel available to anyone who cares. IMO the end user "uses" the software, whether its stolen propritary or free open source. being "open source" doesnt change the end users opinion of the app. it does make a difference to developers writing the app (as is show by the popularity of this site).
anyone who doesnt like opensource, should never come to this site again. it is chucked full of the dirtiest open source dirt around. there article after articles here where people share what it took to make thier apps work on a code level. anyone disliking open source would get sick reading any one of these articles, so be advised.
/bb|[^b]{2}/
|
|
|
|
|
Derivative work
A “derivative work” is a work based upon one or more pre-existing works ... humm... don't put any lgpl on your project. it's a trap !
|
|
|
|
|
|
This article seems to be very GPL-centric. However, there are many more developer friendly licences out there, like BSD.
A nice text on GPL and why it is bad can be found here[^]
Enjoy the source
|
|
|
|
|
The GPL is the license that is mostly used by Open Source programs. But the article's text can as easily be read for any other license. Just change the text you insert at the top of your source files.
And i never said that GPL adn LGPL are the only licenses. I even provided a link to all such licenses the first time I discussed them.
And that 'article' of yours refers to open source as free in price. But open source is free as in FREEDOM! Freedom to learn from it, adapt it, distribute it and use it. NOT free like no money; gratis!
And isn't the idea of many people working together on one single project amazingly great?!
Albert Einstein and Marilyn Monroe were seated together at a table. "Hey Albert," said Marilyn. "Imagine if we had a baby and it had my looks and your brains-it could do anything it wanted." "Yes, my dear," replied Einstein. "But what if it has my looks and your brains?"
|
|
|
|
|
Daniël Pelsmaeker wrote:
And i never said that GPL adn LGPL are the only licenses.
No, but you explicitely mentioned only GPL and LGPL.
Daniël Pelsmaeker wrote:
And that 'article' of yours
That "article of mine" is not mine at all. I did not write it. However, I do think that (L)GPL is very restrictive, and when I give my code to fellow developers I always use BSD license which is truly free, unlike GPL.
Daniël Pelsmaeker wrote:
And isn't the idea of many people working together on one single project amazingly great?!
Utopia...
|
|
|
|
|
Nemanja Trifunovic wrote:
Daniël Pelsmaeker wrote:
And isn't the idea of many people working together on one single project amazingly great?!
Utopia...
It works..
Albert Einstein and Marilyn Monroe were seated together at a table. "Hey Albert," said Marilyn. "Imagine if we had a baby and it had my looks and your brains-it could do anything it wanted." "Yes, my dear," replied Einstein. "But what if it has my looks and your brains?"
|
|
|
|
|
|
Not necessarily "mostly used". BSD & Apache seem to be fairly popular from what I've seen, and there are quite a few others, as I'm sure you know, although GPL seems to be the "poster child" associated with open source.
I personally find it rather unfortunate that it is used for as much software as it is, and I often wonder whether the majority of programmers who are releasing under it understand the real repercussions.
I love the open source movement and spend many enjoyable hours browsing sourceforge. However, as may be obvious, I (personally) have serious issues with the GPL, and to a lesser extent the LGPL, to the point that I refuse to use any library released under the GPL, and try to avoid LGPLed libraries when possible.
I have yet to see the difference between "Free" in the freedom sense, and Free in the "costs nothing" sense, especially when applied to the GPL. The GPL makes a big deal out of the difference, in the second paragraph, to wit:
"When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish)..." -- GPL Version 2
And from your post:
"... But open source is free as in FREEDOM! Freedom to learn from it, adapt it, distribute it and use it. NOT free like no money; gratis!" - Daniël Pelsmaeker 11 Nov '03
Note the inclusion of "DISTRIBUTE IT" in the list of freedoms. Explain to me how this does NOT refer to price. Since every person obtaining the software has the right to redistribute it and charge as well, the license DOES force a free price in a practical sense.
Exactly what is going to happen if I am charging for the exact same thing that someone else is charging less for? In general, the wise consumer will choose the cheaper provider. Now, what happens when I am charging for something that everyone else is giving away for free? In other words, why would ANYONE buy the exact same thing from someone when they can get it for free from someone else?
What this really means, is that the software IS always free (meaning price), but that you can charge whatever you want for related services. This could mean the "service" of distribution (ala Linux Distros), and you can charge for the "service" of technical support. You can, of course, charge customers to implement features or bug-fixes, but in that case what you are actually a doing contracted development work, and in all of these cases, anyone with a mind to is free to use your code to offer the same services at a potentially lower cost.
It's a classic example of "screw the creator for the benefit of the consumer" which I see as a knee jerk reaction to the opposite tenancy of big business to "screw the consumer for the benefit of the creator" (which really means the benefit of the stock-holders and upper management).
The GPL talks a lot about "Freedom" while in it's own way denying freedom. In fact, I personally consider the big deal made over the difference between free use and free price to be a blatant attempt to lull casual readers into a sense that this license protects rather then destroys freedom, when in fact the GPL does more to destroy YOUR freedom (as the software creator) then it does to protect it.
In reality, every license, the GPL included is about restricting freedoms, not granting them. The only real difference is who's freedoms get restricted and who's get ensured, because in general the consumer and the developer's freedoms are orthogonal to each other.
The traditional closed source commercial license grants the most freedom to the copyright holder (I don't say author because authors regularly transfer all copyrights in return for a paycheck). Whoever holds the copyright can do whatever they want with the code, but this is at the expense of everyone else.
At the other side of the scale, "public domain" ensures that anyone can use it any time for any purpose, and is probably the closest to "total freedom" you can get.
The real use of the GPL, as far as I can see, is to restrict ANYONE'S ability to sell the software. In other words, it is useful to ensure that code you are giving away and are not making money off of CANNOT be used by ANYONE to make money, directly (by selling it as is) or indirectly (by selling a product which incorporates it), ever. This is fine, if that's what you want (and I fully support your right to release your code under those provisions), but I don't think it's appropriate for the vast majority of development, and programming libraries especially.
The dedication of the GPL to anything but freedom is very apparent in it's parasitic nature. The parasitic nature of the GPL means that using even one line of code which is under the GPL DENYS your freedom to release the original code you have written under any other arrangement. I dislike other people attempting to control what I can an cannot do with MY original work.
The parasitic nature of the GPL, to me, reflects a attempt at dictatorial control which is not even rivaled by the "Big Evil Corporations". The equivalent on the commercial front would be a clause in the license agreement that linking any of their libraries requires that a product must be sold, and that the source can never be released.
One of the kickbacks to this is that it can lash back and restrict your freedom regarding your own code. Not only is your code forced under the GPL when you use any GPLed code, but consider this.
You develop an application and release it under the GPL. Later, you decide you want to sell the application. As the copyright holder you can release the code under a DIFFERENT license, so this is fine.
However, there are a couple of caveats. First, You cannot "roll back" the GPL license. Once something is under the GPL, it's governed by it forever. This means you are competing with yourself (your new commercial product is competing with your early free project).
Let's say this doesn't cause you any problems because you can make improvements to the core product you released under the GPL which give enough differentiation to be able to sell your improved version.
However, after starting on your development you look around and see that other people have created products using your code which they have released back into open source, as per the GPL.
However, you are not dealing entirely with your code, any code "added" to your product by others is also under the GPL (because your original product required it). Now, if you want to incorporate any changes from these "updated versions", or even any bug-fixes, the parasitic feature of the GPL dictates that you cannot sell your updated product, but must instead release it under the GPL as well.
This is because your right to use your original code is guaranteed by your copyright, but your right to use anyone else's modifications of your code comes to you through the GPL and hence suffers the restrictions of the GPL.
This means it's very dangerous to put the GPL on ANYTHING that you think you might eventually want to sell. If you can live with the fact that others might be able to make a profit off of your code, it is probably better to release under a freer license which allows use in commercial contexts since that will allow you to re-use any modifications which are perpetuated under the same license in your own commercial products.
I am not against open source, nor am I unaware of the problems with commercial close source development. Ultimately, I feel that they are both flawed and a widely "effective" license has yet to be invented. Until that time, they both have their place.
At the core, I feel that open source in a wonderful thing demonstrating the goodness of a great many programmers out there. That these people are willing to give away the fruits of their effort is extremely laudable, but at the same time, in a non utopian world, open source has very little revenue producing viability in it's current state.
I will leave you with a philosophical thought which applies not only to software but to life in general.
It is an unfortunate thing that evil will often beget, not only great good, but also a greater, or at least equivalent evil in response, and equally unfortunate that power-hungry dictators often march under the banner of freedom, but neither is at all uncommon. Hence, the wise man observes carefully and draws his own conclusions. It reminds us of the truth of that old saying: "The price of freedom is constant vigilance".
And The standard disclaimer: The opinions expressed here-in are my OWN, although I do not appear to be alone in some of them. I'm not attempting to start a flame war and while I invite you to share your opinions, it is VERY unlikely you will be able to change mine, so let's not get religious about it.
Gamaliel Masters
"If I were to disprove 'I think, therefor I am', would I cease to exist?"
|
|
|
|
|
First, I'd like to thank you for your participation in the discussion. Apart from writing this article, I also wanted to raise a discussion about Open Source, and find out why various people like or dislike it. And I like you comment better than a post starting with "openssux", .
Gamaliel Masters wrote:
"When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish)..."
- GPL Version 2
And from your post:
"... But open source is free as in FREEDOM! Freedom to learn from it, adapt it, distribute it and use it. NOT free like no money; gratis!"
- Daniël Pelsmaeker 11 Nov '03
Note the inclusion of "DISTRIBUTE IT" in the list of freedoms. Explain to me how this does NOT refer to price. Since every person obtaining the software has the right to redistribute it and charge as well, the license DOES force a free price in a practical sense.
Exactly what is going to happen if I am charging for the exact same thing that someone else is charging less for? In general, the wise consumer will choose the cheaper provider. Now, what happens when I am charging for something that everyone else is giving away for free? In other words, why would ANYONE buy the exact same thing from someone when they can get it for free from someone else?
Both me and the license say that we mean free in the sense of freedom. In other words, this also means that you are free to charge for it. So, if I where to decide that I'd GPL my program, and later I would charge for it, then I am free to do that.
Your question: Why would ANYONE buy the exact same thing from someone when they can get it for free from someone else?
Well, this only works legally when the program is still GPL-ed when I decide to charge for it. I may charge for it to provide support, for example.
For example: SuSE can only be BOUGHT, on the other hand, it is still Open Source, and SuSE seems to make big money out of it. They provide support for it, they use the money to release new versions. They may use the money to pay for the box, printed documentation, extra CD's, DVD with future plans (for example), etc.. Things that you wouldn't get when you downloaded it.
Gamaliel Masters wrote:
The GPL talks a lot about "Freedom" while in it's own way denying freedom. In fact, I personally consider the big deal made over the difference between free use and free price to be a blatant attempt to lull casual readers into a sense that this license protects rather then destroys freedom, when in fact the GPL does more to destroy YOUR freedom (as the software creator) then it does to protect it.
The GPL is actually creating freedom, becuase without this license, the standard copyright therms apply: No copying, no modifying, no distributing... As a developer, you choose between the advantages and disadvantages of the GPL. And is the GPL actually destroying the creator's (or copyright holder's) freedom, or is it extending it? I never said that every program should be Open Source: there are many applications for which is 'just isn't suitable to GPL it.
Gamaliel Masters wrote:
The dedication of the GPL to anything but freedom is very apparent in it's parasitic nature. The parasitic nature of the GPL means that using even one line of code which is under the GPL DENYS your freedom to release the original code you have written under any other arrangement. I dislike other people attempting to control what I can an cannot do with MY original work.
When you buy a program (or use a shareware program), then you agree to the license terms. This actually tells you what you can and can't do (with the program). It's just your choice to buy or use the software under those terms. The same with GPL-ed code: if you don't agree with the license, don't use it. Other people don't attempt to control what you do with YOUR code, they actually control what you do with THEIR code. You see, it your choice to restrict yourself to any license terms, not theirs.
Gamaliel Masters wrote:
You develop an application and release it under the GPL. Later, you decide you want to sell the application. As the copyright holder you can release the code under a DIFFERENT license, so this is fine.
However, there are a couple of caveats. First, You cannot "roll back" the GPL license. Once something is under the GPL, it's governed by it forever. This means you are competing with yourself (your new commercial product is competing with your early free project).
You can actually "roll back" the GPL license, as long as you are the original author of the code, and it doesn't use any GPL-ed code. For example, the Magic Library[^] used to be GPL-ed, but now it is licensed under some other license[^]. They charge for it, they release a demo, etc...
The license says:
You are entitled to:
- Make one copy of the Product for back-up purposes only, which copy must reproduce and include Crownwood's copyright notice.
- Transfer the Product from one computer to another provided the Product is only used on the total number of computers authorised.
- Use and distribute the 'assembly' built using the library of codes installed and accessible within the Product to link with and support other applications you are developing provided you do not under any circumstances distribute the source code to the Product or the Documentation.
You shall not:
- Use or copy the Product other than as permitted by this licence;
- Permit any third party to use the Product or the Documentation nor use the same on behalf of or for the benefit of any third party in any way whatever except as otherwise provided in this licence;
- Modify, adapt, merge, translate, decompile, disassemble, or reverse engineer the Product, except as permitted by law; or
- sell, assign, rent, sub-license, loan, mortgage, charge or otherwise deal in any way in the Product or Documentation or any interest in them except as expressly provided in this licence; or
- permit the whole or any part of the Product to be combined with or incorporated in any other computer programs that are substantially similar to or compete with the Product.
To end this post:
You obviously know the pros and cons of both open and closed source development. What would be the ideal way of development in your opinion?
- Daniël Pelsmaeker
"You can have everything in life you want if you will just help enough other people get what they want."
-Zig Ziglar
|
|
|
|
|
Daniël Pelsmaeker wrote:
The GPL is actually creating freedom, becuase without this license, the standard copyright therms apply
Creating freedom? I don't think so. In it's basic sense the GPL actually does two things:
* Grants certain rights
* Removes certain rights
Daniël Pelsmaeker wrote:
if you don't agree with the license, don't use it. Other people don't attempt to control what you do with YOUR code, they actually control what you do with THEIR code. You see, it your choice to restrict yourself to any license terms, not theirs.
I see this tired argument all the time when this discussion comes up; BUt you are free to choose which licence to use blah blah...
Except the GPL and it's sibling licences are hidden by the propaganda about "free". The GPL is not a "free licence", instead it's "free with restrictions". The distinction may be subtle but it's there.
Consider the licence for libpng or zlib. Is this "more free" ? (lol)
Daniël Pelsmaeker wrote:
You can actually "roll back" the GPL license
Wrong, you can release the same source under a different licence but you cannot revoke the GPL. Just as an example consider this; Suppose Torvalds and Stallman decided to revoke the GPL licence on all their stuff...global mayhem. Consider, if it were true that the GPL could be revoked, what a precarious position anyone using GPL based software is now in...What you describe is often called "bait and switch" where something for free is later replaced (not added, but removed and replaced) by something that is not free.
You are confused with dual licences or the authors ability to re-release the code under a different licence. Certainly there is no provision to revoke the GPL once applied. Once it's out it out and there's no going back.
Daniël Pelsmaeker wrote:
What would be the ideal way of development in your opinion?
A licence that gives me the freedom to choose how I wish to use the product. A good example is LibCurl - which saved me many hours of development and to which I donated $200.
|
|
|
|
|
Amun-Ra wrote:
In it's basic sense the GPL actually does two things:
* Grants certain rights
* Removes certain rights
Amun-Ra wrote:
[...]it's "free with restrictions". The distinction may be subtle but it's there.
Please elaborate.
Amun-Ra wrote:
[...]re-release the code under a different licence. Certainly there is no provision to revoke the GPL once applied. Once it's out it out and there's no going back.
I never said that you can revoke the GPL for code which is released under the GPL. However, you can release *your* code under a different license, even if it was GPL-ed, it is still your code. This also means that you can't release code to which various people have contributed, under a different license.
Amun-Ra wrote:
A licence that gives me the freedom to choose how I wish to use the product. A good example is LibCurl[...]
There is almost no difference between the LGPL and the CURL-license (http://curl.haxx.se/docs/copyright.html[^] for those who are interested), except for the length.
- Daniël Pelsmaeker
Waarom je eigen woorden gebruiken als iemand anders het al beter heeft gezegd?
|
|
|
|
|
Daniël Pelsmaeker wrote:
Please elaborate.
GPL code is free of monetary cost but there are restrictions on what you can do with it.
Daniël Pelsmaeker wrote:
There is almost no difference between the LGPL and the CURL-license (http://curl.haxx.se/docs/copyright.html[^] for those who are interested), except for the length.
LGPL has more restrictions.
|
|
|
|
|
If your boss agrees upon applying the GPL or LGPL to the company's program(s), then the company will have the following benefits:
Faster software development
Faster bug fixes
More people will use the program
The wishes of the general community will be automatically integrated in the program
Less development costs
Better beta testing
Are there references to back this up? I think I'll take these one at a time:
Faster software development:
Unproven. Given a co-ordinated team of developers working on a well-defined/organised software project (regardless of Open-Sourceness), development time is insignificant compared to the other stages of a project (design, requirements analysis, testing/QA). Therefore improving development time doesn't mean much in the overall lifespan of a software project. In addition, having arbitrary third parties providing code patches for new features takes additional time to verify, audit, integrate and test.
Faster bug fixes:
Wishful thinking at best, and if an Open Source project has a faster turnaround time on bugs over an equivalent Closed Source project, it's more likely due to a lack of regression testing, and a glut of personal heroics than any intrinsic superiority.
Given a suitably detailed bug report, bug fixes take the same amount of time to reproduce, fix, and regression test, regardless of the Open-Sourceness of the software. Third party patches still need to be tested, reviewed and integrated, and may actually take longer if the patch is complicated, due to the time needed to take to understand the patch and insure that it does not contain anything undesirable.
More people will use the program:
Because they can see the source? Most people don't know what to look at in source code anyway, so why would open sourcing it give you additional users?
The only reason I can think of is if someone will only use open source software, on either ideological (eg, Richard Stallman?) or security auditing (eg, military/government) grounds. In the case of the latter, arrangements can be made to audit the code without needing to give it to all and sundry at the same time.
The wishes of the general community will be automatically integrated in the program:
How? Because if the general community of an application consists of normal people, most normal people can't code, design or test software, and so has no effect. This only really applies to developers tools, where the general community for the tool knows about software development in the first place. And automatically?!?!? You can't even claim that the feedback is better, because a well organised Closed Source team can encourage good feedback too.
Less development costs:
Only in monetary terms, and only because some people contribute in their spare time. If people weren't willing to contribute in their spare time, Open-Sourced software would cost just as much to develop as Closed-Source software. In terms of time and energy, the costs are equivalent.
Better beta testing:
Again, unlikely. Good coders are rarely good testers (cf Peopleware article on Software Testers), and finding good testers is hard. In any case, the Open-Sourceness of the software does not have any bearing on the quality of the testing, and a well organised, directed beta test does not require it.
----
Does this mean I am against Open Sourcing software? No, I just accept that it isn't the Silver Bullet of Software Development so many are claiming, or that it is fairy dust to magically make my software better.
There are times where Open Source is obviously preferable - for reference implementations of software standards as one key example (so developers can improve on the reference implementation for their own applications), and as a way of examining government software under freedom of information acts as another (as having this sort of transparency is important in a democratic nation).
--
Ian Darling
"The moral of the story is that with a contrived example, you can prove anything." - Joel Spolsky
|
|
|
|
|
I've answered these questions already. (Almost twice).
Please see below.
Albert Einstein and Marilyn Monroe were seated together at a table. "Hey Albert," said Marilyn. "Imagine if we had a baby and it had my looks and your brains-it could do anything it wanted." "Yes, my dear," replied Einstein. "But what if it has my looks and your brains?"
|
|
|
|
|
Several of these comments seem to miss the point. Explaining why
open source is faster or better by saying it is only because of "a glut
of personal heroics" or "because some people contribute" doesn't negate
those benefits. Those benefits do exist.
More specific examples of "missing the point" include:
Faster software development
The point is that if you use open source software in your project, that
part of the project is done already. It is infinitely fast
because it was literally "done yesterday."
Faster bug fixes
How fast does a closed-source vendor fix the bugs you ask them to
fix? (Not very fast, in my experience.) With open source, you
can fix the bugs. If they are priorities for you, you get them fixed
fast. The key is motivation. Microsoft, for example, does not appear
highly motivated to fix bugs (again, in my experience), except
(selected) security-related bugs, so they get fixed slowly (if at all).
There's nothing you can do about such a bug; very few customers have
enough clout to influence Microsoft's priorities. If an equivalent bug
exists in Linux, Apache, Mozilla, or another open source project, you
can fix it yourself, or hire someone to fix it. If the bug is important
to you, you make it your priority to fix it.
Less development costs
You are merely saying that all programming takes the same amount of
effort. While that is true, the point is that some of that effort has
been done for you by others at no cost to you or
your organization. So the overall cost to you or your
organization can be lower.
|
|
|
|
|
jkbull wrote:
Several of these comments seem to miss the point. Explaining why open source is faster or better by saying it is only because of "a glut of personal heroics" or "because some people contribute" doesn't negate those benefits. Those benefits do exist.
I don't want my bug fixes/software to be the result of personal heroics. I want my bug fixes (and software generally) to undergo serious regression testing and QA. I see little evidence of that in the general world of development, regardless of the Open-Sourceness of the software. However, the company I depend on most of my software for (Microsoft) have significant regression tests performed that I have some confidence in (eg, what's shown in http://www.winsupersite.com/reviews/winserver2k3_gold3.asp[^]). (Incidentally, this is most likely the reason MS take longer over some of their patches - because they've had a high level of testing done on them which has taken a considerable amount of time.)
I'm suspicious of patches for large-scale software that turn up within 24 hours of the bug being found, because it suggests that it hasn't been tested for long enough, or on enough configurations. This is of less concern with simpler software.
AFAICT, Linux doesn't seem to even have widescale automated regression tests. The only automated testing I have found for it at all isn't run by the core kernel team (Linus and co), and that doesn't have full coverage of the kernel anyway (http://ltp.sourceforge.net/coverage/coverage.php[^])
In fact, the only open source project I have encountered that has a substantial level of testing, reviewing, and QA, with documented and available regression tests, is the Boost Library. I don't see any test suites shipping with most Open Source projects, so I'll assume that there aren't any (or is the alternative premise that they are kept secret from everyone a more palatable suggestions? ).
As for fixing and submitting bugs to be included in the main source tree, I had this little gem about getting patches into Linux pointed out to me:
http://www.tux.org/lkml/#s4[^]
"Also note that Linus drops patches silently when he is too busy (which is always , so if you don't see it in the next kernel patch, send it again. Oh, and don't expect him to tell you he's applied the patch, either."
I'm meant to rely on Open Source software with people managing things like that! And Linux is the "poster child" of Open Source! So great, I can fix my own bugs, but getting that fix to everyone else? An unreliable process at best it seems, and certainly not a fast one. (I do note that the BSDs seem to have a much better approach to bug fixes, testing and releasing new versions)
At least with Microsoft's stuff I know if a bug is actually fixed or not (because there'll be a KB article on it), and I can take any relevant action I need to mitigate anything left over that will cause a problem.
When you get down to it, my main problem with (most) Open Source projects is that I do not feel I can trust them, precisely because of the issues outlined above.
(There's also a point to be made about being backwards and forwards compatible across versions, something Open-Source has historically been less than great at, but I'll leave that for now )
--
Ian Darling
"The moral of the story is that with a contrived example, you can prove anything." - Joel Spolsky
|
|
|
|
|
Ian Darling wrote:
So great, I can fix my own bugs, but getting that fix to everyone else? An unreliable process at best it seems, and certainly not a fast one.
Sites like www.sourceforge.net specialize in open source projects. The problem you describe is indeed an actual problem, but thanks to Bug Trackers, and places where you can post patches and feature requests, these are integrated quickly. And when a patch is integrated, it is common that the one who did it replies with a message that is has been patched (or that a specific feature is present since version x.xx).
Ian Darling wrote:
In fact, the only open source project I have encountered that has a substantial level of testing, reviewing, and QA, with documented and available regression tests, is the Boost Library. I don't see any test suites shipping with most Open Source projects, so I'll assume that there aren't any (or is the alternative premise that they are kept secret from everyone a more palatable suggestions? ).
The Mono project also has very extended tests shipped with the source. These are then ran using NUnit.
Albert Einstein and Marilyn Monroe were seated together at a table. "Hey Albert," said Marilyn. "Imagine if we had a baby and it had my looks and your brains-it could do anything it wanted." "Yes, my dear," replied Einstein. "But what if it has my looks and your brains?"
|
|
|
|
|
Daniël Pelsmaeker wrote:
The Mono project also has very extended tests shipped with the source. These are then ran using NUnit.
So we know already about 2 OS projects which come with tests. What about the other 70,861 which are hosted at SourceForge? Or, how many of the 8652 projects there which claim to be "Production/Stable" have regression tests? Or any functionality tests at all.
Finally moved to Brazil
|
|
|
|
|
At first, Mono is the only one from which I know that they use tests. Other open source programs do very well, and you'll have to admit that. And as long as you don't know how many project uses tests, you can't make any conclusions yet.
They function, and that's where it's all about.
Albert Einstein and Marilyn Monroe were seated together at a table. "Hey Albert," said Marilyn. "Imagine if we had a baby and it had my looks and your brains-it could do anything it wanted." "Yes, my dear," replied Einstein. "But what if it has my looks and your brains?"
|
|
|
|
|
Daniël Pelsmaeker wrote:
Other open source programs do very well, and you'll have to admit that.
So far my experiences with various "open source libraries" where dissastrous. Im programming since almost 17 years now, and I've tried to use many promissing libraries (promissing here is not meant as pro-missing). With the exception of so few that I can count them on one hand (well, half hand), I ended up with writting my own solution because the open source code was just not commercial enough. It seems that Microsoft stole the "It Just Works (IJW)" from the open source community: the software just works (within its very limited boundaries) but dont expect it to work always and correctly.
The very same is true with 95% of the source code available here at codeproject. IJW, but dont try to use it in a commercial application.
If you take the view that its all about knowledge and not about the code, yes, its great. Its even phantastic. Nowhere else you'll find such a diversity of ideas and solutions. But - just understand the idea and dont use the code if you are going to write a commercial application.
Open Source should be understood only as a knowledge pool, not as a source code repository.
Finally moved to Brazil
|
|
|
|
|
SaurweinAndreas wrote:
So we know already about 2 OS projects which come with tests. What about the other 70,861 which are hosted at SourceForge? Or, how many of the 8652 projects there which claim to be "Production/Stable" have regression tests? Or any functionality tests at all.
At least, with Open Source you know how rigorous it was. With closed source, by definition, you have no access to the test suite, if any.
Trying to make bits uncopyable is like trying to make water not wet.
-- Bruce Schneier
By the way, dog_spawn isn't a nickname - it is my name with an underscore instead of a space. -- dog_spawn
|
|
|
|
|
Daniel Turini wrote:
With closed source, by definition, you have no access to the test suite, if any.
True, but at least I know where to complain when it breaks. And most companies are greatful to hear about bugs instead of users silently swallowing them.
With Open Source you can fix the bug yourself, yeah great. Did anybody every try to figure out how to fix a bug in the Linux kernel? How many weeks does it take an average programmer to even find the location of the bug, not to talk about fixing it.
Finally moved to Brazil
|
|
|
|
|