Discussions

News: Why it is easy for the quality of Open Source Projects to be bad

  1. Cameron Purdy started a blogfest with his original piece, gratuitously titled, "Why does Open Source suck?". He is a little sick at how some people see projects that are open source as automatically superior. He talks about how a GREAT developer is few and far between, and how anyone can fill out a form on sf.net. Note that he isn't attacking open source as a whole, and thinks there is great software there too. Just not all of it.

    Links

    The original Cameron entry: Why does Open Source suck?

    Nathalie Mason-Fleury responds in: Name Your Poison

    Slava Imeshev puts across his point of view in: Open Source as a Secret Weapon

    Cameron responds in: In Defense of Open Source? Round II

    Threaded Messages (61)

  2. Hey! I don't really think that Open Source sucks. I just figured with an inflammatory title like that, it would get picked up on TSS ;-)

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Clustered JCache for Grid Computing!
  3. Let's face it...[ Go to top ]

    ...a lot of open source software really sucks. As does a lot of closed source/commercial software. Neither one is automatically superior to the other.
  4. Feel free to use commercial sofware for a large sites (say a full 19" rack of CPUs to license, MS Advanced Server ($15K per CPU), w/Oracle DB ($45K per CPU) and BEA Portal($60K per CPU) on Sun VM over Solaris).
    Comerical sofware cna be used for small deprtmental needs with 20 users,
    but for large comercial sites, Open Source (pgSQL, Linux, Resin on j:Rockit over NewISys 2100) generates more revenue, it better supported, higher quality, cheaper to develop, cheaper to maintain.
    See this:
    http://news.netcraft.com/archives/web_server_survey.html


    http://www.opensource.org/advocacy/case_for_business.php
    #1 reason for using OS as per above?
    Quality!


    .V
  5. <vic>
    > Comerical sofware cna be used for small deprtmental needs with 20 users,
    > but for large comercial sites, Open Source (pgSQL, Linux, Resin on j:Rockit
    </vic>
    Vic,

    Check your facts. Neither Resin nor JRocket are open source. And if you have deployed Resin , without getting a deployment license - then you are violoating their license terms , not to mention hurting the small company whose products you actually like enough to recommend to others.
    Peace!
  6. Waste of time
  7. Check your facts. Resin is open source. Go to caucho.com and download the source if you don't believe me.


    >
    > Check your facts. Neither Resin nor JRocket are open source. And if you have deployed Resin , without getting a deployment license - then you are violoating their license terms , not to mention hurting the small company whose products you actually like enough to recommend to others.
    > Peace!
  8. Check your facts. Resin is open source. Go to caucho.com and download the source if you don't believe me.


    I think you are mixing open source and free source in case of resin.
  9. That worked, definitely.

    Speaking about quality: Has anyone ever looked at the Xalan code and its stupid StringBufferPool? If not, it is a good time to get a thread dump and find where precious WebLogic's execute threads spend time for an application that uses XSL and Xalan. It spends it in the StringBufferPool. That should be a big surprise for original Xalan developers, but the StringBuffer is not pool able. For instance, as soon as a string is obtained, the SB memory is referred by a String and the first mutating operation on this SB deassociates this memory from the SB and binds it to a string firmly. What Xalan's StringBufferPool does is serializes access to String memory, which is really not good for it does not scale in J2EE environment at all. And this is the only product on the market. It's free and it sucks.
  10. And this is the only product on the market. It's free and it sucks.


    I agree, Xalan is dead slow, although I didn't know why.
    Axis is dead slow too (take a look at Glue), but even meny vendors bundle it with their commercial products.
    Xerces is slow too, but not that as Xalan & Axis.

    If Axis/Xerces/Xalan are the basis for web services implementations in Java then M$ has a big advantage.

    Tomcat were slow too, but it improved somewhat in 4.x.xx versions. Though it is still slower than it should be (take a look at Resin).

    And we are here speaking about the so called good open source projects. How then bad open source projects look like ?

    I am not against open source, I just hope it would improve in quality.
  11. I'm definitely going to look at Glue. As for dead slow - many of such products look as a sudent's exercise in design patters. First time I spotted it was Sun's Swing. You almost always should trade nice design for speed.
  12. open and closed projects[ Go to top ]

    <quote>
    You almost always should trade nice design for speed.
    </quote>

    Absolutely. I have found myself balancing between good academic design (e.g.
    purist "official patterns" approach) and decent performance of the resulting
    code, and managebility of that code that some poor developers will work with
    afterwards. But in a team working on a closed source project, this becomes next
    to impossible: management pushes to get it done "by tomorrow", developers still
    trying to get it right according to their own visions. At the end, the project
    has neither design, nor performance on the bright side. The worst part still is
    code maintainability: lack of documentation is considered a good thing by my
    fellow developers (one of the agruments: "this is MY code, so I undestand it, if
    you don't ...").

    I think, open source projects have advantage of getting fundamantal things
    right: decisions about architecture, design, practices, coding standards are openly dicsussed and collectively agreed on. Also, depending on the final
    product functionality, the open souce developers are often users. This allows
    them to develop both developer-friendly, as well as user-friendly application.

    The above, however, is an ideal situation. I had an experience with an open
    source project where a strong leader turns down any innovative proposals
    because he doesn't see any merits of implementing it. This way a very open
    and well-intended project comes to and end.

    Regards,

    Valeri
  13. No all OS![ Go to top ]

    Some of Open source projects suck. Take a look at sourcefoge repository - they should be more selective the same as apache OS foundation. To see a project like Jboss near a Hello World one make everybody think that Open Source is Rubbish. Conversly J2ee Platform (especially XML and java) woudn't be what it is today without many OS projects. There are many good trees in the forest of Open Souce
    Faisal Abdelli
    Uk B'HAM
  14. No all OS![ Go to top ]

    Having a committee select which project ideas are good, and which aren't is not the answer. Your example is somewhat ironic as JBoss was originally rejected by Apache.

    Sourceforge is simply a tool to enable and encourage open source development. Perhaps there does need to be a better way to sift through the software out there.

    One of the biggest things that OS has going for it is the fact that the body of components that can be uses to create larger more complex components is growing. Each generation builds on the successes and failures of the previous.
  15. open and closed projects[ Go to top ]

    <quote>

    > You almost always should trade nice design for speed.
    > </quote>
    >
    > Absolutely. I have found myself balancing between good academic design (e.g.
    > purist "official patterns" approach) and decent performance of the resulting
    > code, and managebility of that code that some poor developers will work with
    > afterwards.

    I'm going to have to disagree somewhat. First, I'd change "nice design" to "good design", as nice may have several meanings in this context, not all of which are "good".

    I think the key problem is looking at good design and speed as antithetical. They aren't or at least certainly shouldn't be. Good design/patterns are as much about efficiency and speed as they are about reusability, readability and maintainability. There are obviously exceptions and there is always misuse, but generally speaking, these are the goals (along with communicatability, but I figured I had used up my "ility" quota already).

    Patterns at their best are practical, not academic. Good design (and I don't care how you got there...waterfalls, refactoring, notecards, programmer savant) is going to be your best basis for making fast code.

    Would it be possible to make something faster by ignoring good design? Probably. But not considerably faster, if you really have a good design. And you better hope that you never want to add any features, as you're asking for trouble.

    One thing I think is true in the case of something like Xalan is that that speed is more important a consideration as you get to your lower level/plumbing code.

    --Tim
  16. If you use Xalan then it is your code too, fix your code.

    > That worked, definitely.
    >
    > Speaking about quality: Has anyone ever looked at the Xalan code and its stupid StringBufferPool? If not, it is a good time to get a thread dump and find where precious WebLogic's execute threads spend time for an application that uses XSL and Xalan. It spends it in the StringBufferPool. That should be a big surprise for original Xalan developers, but the StringBuffer is not pool able. For instance, as soon as a string is obtained, the SB memory is referred by a String and the first mutating operation on this SB deassociates this memory from the SB and binds it to a string firmly. What Xalan's StringBufferPool does is serializes access to String memory, which is really not good for it does not scale in J2EE environment at all. And this is the only product on the market. It's free and it sucks.
  17. If you use Xalan then it is your code too, fix your code.


    I would rather not use Xalan, if I had an option.

    Slava
  18. If you use Xalan then it is your code too, fix your code.

    >
    > I would rather not use Xalan, if I had an option.
    >
    > Slava

    It is not very usefull for me. If will have a problem with it, I will fix Xalan.
    Looks like you can wait and it is not a very big problem for you too.
  19. If you use Xalan then it is your code too, fix your code.

    > >
    > > I would rather not use Xalan, if I had an option.
    > >
    > > Slava
    >
    > It is not very usefull for me. If will have a problem with it, I will fix Xalan.
    > Looks like you can wait and it is not a very big problem for you too.

    You should understand that NLOC of third party jars coming from open source that are used in a middle size project exeeds project's code base in 2 to 3 orders. Sure I can fix it, but it doesn't make the original product better, does it?
  20. If you use Xalan then it is your code too, fix your code.

    > > >
    > > > I would rather not use Xalan, if I had an option.
    > > >
    > > > Slava
    > >
    > > It is not very usefull for me. If will have a problem with it, I will fix Xalan.
    > > Looks like you can wait and it is not a very big problem for you too.
    >
    > You should understand that NLOC of third party jars coming from open source that are used in a middle size project exeeds project's code base in 2 to 3 orders. Sure I can fix it, but it doesn't make the original product better, does it?

    http://nagoya.apache.org/bugzilla

    You will not solve your problem on this forum, FUD does not make product better too. You can continue to blame open source, but this way is for loosers.
  21. You should understand that NLOC of third party jars coming from open source that are used in a middle size project exeeds project's code base in 2 to 3 orders. Sure I can fix it, but it doesn't make the original product better, does it?

    >
    > http://nagoya.apache.org/bugzilla
    >
    > You will not solve your problem on this forum, FUD does not make product better too. You can continue to blame open source, but this way is for loosers.

    Would you please elaborate on how purely written code that lives in a widely used product for years makes a client a loser?
  22. JBoss for sale?[ Go to top ]

    Hey! I don't really think that Open Source sucks. I just figured with an inflammatory title like that, it would get picked up on TSS ;-)


    Here is the response to my post on JRoller:

    "If big corporations wanted us to be their instrument, they'd have to acquire us for good money:) I do agree that there is a sort of symbiotic relationship between successful open source and proprietary software, but I see less conspiracy than I see Open Source as a subset in the natural tendency of markets to consolidate down to a few players.
    Posted by Nathalie Mason-Fleury on November 07, 2003 at 10:29 AM CST"

    Looks like it's good time for opersourcerers to take money and run :)

    Slava
  23. ENOUGH!!![ Go to top ]

    Um...I dont think we should criticize any open source software. Its called open source for a reason. If you think that it has a problem and you have a solution and the skills, then volunteer your own service. Thats the reason why (I think) other reliable open-source software have succeeded. Persons didnt just bitch about how slow they were, or how many security holes they found. They try to HELP. Thats the point. These negative criticisms will never help the movement.
  24. ENOUGH!!![ Go to top ]

    These negative criticisms will never help the movement.

    Criticism provides feedback. You may or may not use it.

    Slava
  25. The way to view open source[ Go to top ]

    I think first we should differentiate between:

    1) Those who think that open source as a movement is good
    2) Those who think that all open source software is good

    I would think that most people fall into the first category. People in the second category are probably still getting used to what open source as a movement is all about.

    It's often useful to look at open source software from a Darwinian "Survival of the Fittest" perspective.

    If an open source project is created to answer a common problem that has not been adequately solved by open source software in the past, then there is a possibility that the project may attract the attention of talented, experienced developers with some time to spare. If the enthusiasm continues and the early releases start to answer real world problems, then the project may well bloom into a very robust and valuable solution.

    If on the other hand, an open source project is created by somebody with an unappealing idea that isn't widely compelling and not widely known about, then the project may die a death, or just hang about on the net in a state of paralysis.

    My point here is that whether a project survives or not or can be considered one of the top 1 percent of open source software solutions alluded to earlier in this thread depends on the strength of the idea and the quality of the implementation.

    The other thing one should consider before whinging about the quality of open source is the stage a project is at. Web sites like sourceforge do a good job of providing publicly available repositories for source code. Don't download source code from a project in its infancy and complain that it is undocumented, hard to compile and crashes every minute. If you want a better, free solution earlier, then don't complain, dive in and help!

    As a rule of thumb, if you find an open source solution that nobody has heard of, has never been reviewed, has no documentation, don't complain when it doesn't answer your needs. It is more likely at an early stage or starved of resource and not ready to be deployed across your business critical enterprise.

    Furthermore, I think that arguing that open source is good and commercial software is bad is like saying that chalk is better than cheese. They are simply different. Pick what works best for you.
  26. The way to view open source[ Go to top ]

    Jon: > I think first we should differentiate between:
    >
    > 1) Those who think that open source as a movement is good
    > 2) Those who think that all open source software is good
    >
    > I would think that most people fall into the first category.

    There are people that think govraments or coroprate finance or source code, etc:

    A. Should allways be open

    B. Somtimes a dictatorship or a hiden finance or some hiden code is OK. Maybe somtimes you sleep with a girl, and she keeps a secret about small little virus. Or if Mutal Funds sometimes do something secret, this is OK (say they make favored trade for a politician, in theory of course, this does not happen in real world). Sometimes.

    .V
  27. The way to view open source[ Go to top ]

    A. Should allways be open

    >
    > B. Somtimes a dictatorship or a hiden finance or some hiden code is OK. Maybe somtimes you sleep with a girl, and she keeps a secret about small little virus. Or if Mutal Funds sometimes do something secret, this is OK (say they make favored trade for a politician, in theory of course, this does not happen in real world). Sometimes.


    Oh common! Closed source is nothing like "keeping a secret of a virus" or "secret government agendas", its more like "having or not having the blueprints to your cars engine". Given that having the blueprints to your cars engine might enable you to service your car yourself and/or at a lower cost. But its not like "Evil carmaker hiding explosive engine self-destruct mechanism to kill car-buyer".
    If closed source companies would actively work against their customers they would be out of business quicker than you could say "bankrupcy".
  28. Closed source sucks too[ Go to top ]

    Please let me know when you find any better (or any other) (closed-source) alternative for XDoclet, JBoss or Eclipse or Struts etc....

    XDoclet RULES on J2EE, I quit my job the day XDoclet dies...
  29. The User Is The Developer[ Go to top ]

    From Cameron's initial text:

    "Use it if it works for you [..] Just don't lie to yourself and others about attributes that open source does not intrinsically have. It still takes a strong vision, continued focus, great engineers, hard work and long-term dedication to make good software. There simply is no silver bullet."

    I generally agree with his comments, so no flames from me :) I think he's criticizing SourceForge more than the projects themselves, because it lowers the bar when it comes to quality. It boils down to this: when I do a search I get both the golden nuggets and the abortions ..

    HOWEVER, Cameron is missing a critical quality of open source, which contributes critically to the projects that do succeed: THE USER IS THE DEVELOPER. This simple fact is the origin of the wonderful properties of the few, successful, open source projects. Some of its consequences are:

    - Lowest-in class bug fix turnaround time.
    - Support for bleeding edge apis and features.
    - Award winning tech support.

    Unfortunately the user cannot always be the developer (it can get pretty hard), but when it is, then you get a "golden nugget."
  30. I totally agree that some of the open source software sucks in quality - ESPECIALLY in documentation. Its hard for some beginners to even figure out how to get started using this software. For example - My friend started using a java graphs free ware - CEWolf. Although sounds great as i guess its the only free software in java to draw charts, graphs. But the data source class of the CE Wolf cannot get data from anywhere else but database. My friend wanted to read some parameters from http request and based on the request parameters he wanted to decide what data to get . but I dont think he could do that as the methods in CE wolf are very restrictive. And this was just an example of how some of the open source is really badly designed. There are so many of them.
       BESIDES Apache and other big and quality groups, i guess most of the small time open source groups will give up soon - just like what happened in dot com era. It takes real quality and brilliant group to survive. I guess thats why some of the big giants SELLLING software are still here.
  31. You and your "friend" illustrate an extremely important aspect of this discussion : with proprietory solution, someone has to sign off on the purchase and heads could roll (atleast in this economy) if you made you manager buy stuff that did not work. So with a proprietory solution, users would try their hardest to make things work.

    With open source, thats not the case. If the solution does not works out of-the-box, users whine and gripe without making an effort to fix thes problem or even doing some research.

    Which brings me to your friend and CEWOLF , instead of complaining about quality, he/she should have researched it a bit more, mayebe even poked into the source code. I am a happy cewolf user , I have deployed apps in production that use cewolf tags and yes it is very flexible and yes it could easily do what your friend was looking to do.
  32. Sean, you made your (good) point with a wrong example. You can do very easy what your friend tried to do without success.
  33. Sean:>Its hard for some beginners to even figure out how to get started using this software.

    O. S. is for comercial developers, newbies can use deprtmental sofware, such as MS Access and such. In O.S. you can look at the source to see how it works.

    Sean:>For example - My friend started using a java graphs free ware - CEWolf. Although sounds great as i guess its the only free software in java to draw charts, graphs. But the data source class of the CE Wolf cannot get data from anywhere else but database.

    There are many departmental graphig solutions for corporate secretaries, er.. developers.

    Sean:>My friend wanted to read some parameters from http request and based on the request parameters he wanted to decide what data to get .

    Sounds like he needed to use Struts with it. Maybe since you have the source you can change the source to have it do what you want, and contribute back to the comunity.

    Sean:> BESIDES Apache and other big and quality groups, i guess most of the small time open source groups will give up soon - just like what happened in dot com era. It takes real quality and brilliant group to survive.

    That is why we have the source. If anyone goes away, who cares, even if I am the last guy using something I need I can maintain it. Y2K anyone?

    Sean:>I guess thats why some of the big giants SELLLING software are still here.

    If you wanted to use comercial sofware , you would have to negotiate a licnese that if they go out of business or get merged and change a business plan you have access to the source.

    Lets see who is going out of business:
    http://basebeans.com/files/WLDvorak.pdf

    You can play in the big pool, or the kiddie pool:
    http://news.netcraft.com/archives/web_server_survey.html

    Look, large secure business ban windows for web servers... becuase it has poor security quailty, that says it all. They use Linux.


    .V
  34. Like democracy, open source is the worst form of innovation ... next to all other forms of innovation.
  35. Try to learn what you use[ Go to top ]

    As the original author of Cewolf I can tell you that it is possible to retrieve data in Cewolf from everywhere you want to. Regarding your example you would just need to look into the example web app provided by the Cewolf project to get an example for how to use HTTP request parameters.
    Sorry but, your criticism is incorrect and unfair. Nevertheless the Cewolf forum answers almost every question you have. Using this would had helped, too.

    Regards,
    Guido
  36. Of course there is a lot of crap in both commercial and open-source software. And of course neither commercial nor open-source development can guarantee a good software product.

    But if all other factors are equal, an open-source software product is more valuable and more useful than its commercial counterpart. I think this is what Cameron gets so defensive about, given his financial interests.
  37. Corby: But if all other factors are equal, an open-source software product is more valuable and more useful than its commercial counterpart. I think this is what Cameron gets so defensive about, given his financial interests.

    I appreciate your covering my azz, but to be honest, I have a hard time seeing how what I wrote is defensive. Offensive -- as in maybe it could be insulting to someone or other -- but hardly defensive.

    As to the other factors, they are never equal. There are pieces of open source software that I much prefer to their non-open-source comparables, due to factors including quality. Likewise, the opposite is just as often true. That's because, with rare exception, I don't pre-judge software based on whether it is open source or not. (When I do pre-judge, it is generally because I am specifically hoping that the source will be available, so that only makes sense. ;-)

    Open source has additional qualities that make it quite likable in software development circles, for example (duh!) the source code itself. Also, I think that successful open source projects typically have much larger communities. These are net positives for a number of good reasons. (If you read the blog entries, you would know that I'm hardly denigrating the concept of open source, if at all, so there is no reason for you to be defensive.)

    The thing that you said that I would take the most issue with is an open-source software product is more valuable and more useful than its commercial counterpart. Usefulness is not a factor of something being free or even necessarily having the source code for it, although there are times that having the source will allow you to make additional uses out of an existing open source project. As for how valuable software is, that is linked to what you get out of it. You're thinking as a software engineer who likes to write open source software, so it's natural that open source software is more valuable to you -- and there is absolutely nothing wrong with that. As for people who use software, I have a hard time seeing why the software is more valuable to them just because they have access to the source code.

    Regarding financial interests, I am always quite open about mine. The company I work for sells software licenses, support and services for our Coherence clustering software, which is not open source. The biggest JBoss and WebSphere and WebLogic (etc.) clusters in the world run on our software, so I think it's safe to say that we are happy to work with both open source and non-open-source software companies and projects to ensure the success of our customers and our partners and (hopefully as a direct result of the preceding) our own company, which I do own a substantial minority stake in. There is nothing misleading -- or defensive -- about that.

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Clustered JCache for Grid Computing!
  38. As to the other factors, they are never equal. There are pieces of open source software that I much prefer to their non-open-source comparables, due to factors including quality. Likewise, the opposite is just as often true. That's because, with rare exception, I don't pre-judge software based on whether it is open source or not. (When I do pre-judge, it is generally because I am specifically hoping that the source will be available, so that only makes sense.

    Cameron,

    From my experience, source code for for a product with LOC >= 1M is useless. You can safely sell this code to anybody bacause in order to be able to modify it in addition one would have to buy an engineering team that wrote this code along with product issue tracking system. It doesn't matter whether it's a commercial or open source product. My point is that when project LOC exeeds certain number, code becomes useless for a stranger.

    Slava
  39. The thing that you said that I would take the most issue with is an open-source software product is more valuable and more useful than its commercial counterpart. Usefulness is not a factor of something being free or even necessarily having the source code for it, although there are times that having the source will allow you to make additional uses out of an existing open source project. As for how valuable software is, that is linked to what you get out of it. You're thinking as a software engineer who likes to write open source software, so it's natural that open source software is more valuable to you -- and there is absolutely nothing wrong with that. As for people who use software, I have a hard time seeing why the software is more valuable to them just because they have access to the source code.

    >

    Exactly! The more mature and reliable a piece of software is, the less relevant access to the source becomes...

    The goal should be to develop resuable software. Ideally, I don't want to have to look at the source code. I want to use the component (via it's api's) and be spared the complexity. Viewing source can be a good educational tool. But, ideally, only with an immature product should it be necessary to dig into the internals. If we choose to incorporate a relatively new open-source product into your software, then that's a tradeoff we make (free, oss vs. mature, commercial offering).
  40. Here's a piece that recently came out:

    http://jobs.guardian.co.uk/officehours/story/0,9897,1076281,00.html

    "According to the results of a major new survey of 40,000 workers in 35 countries, more than 80% of employees are unable to do at least one major part of their job properly "

    "What we have found is that while many employees know how to shine at assessment time, even though they can't do the job properly, other people may be useless at tests but actually highly competent."

    That sums it up. Mediocrity is all over the place in open source and closed source software.

    The redeeming quality of open source is that its subject to darwinian selection, bad projects simply die out of neglect. You can't say the same with close source projects and products. How many companies have been sold an ERP or CRM application that promised the world only to find complete vapor. Other forces are in play other than pure technical merit.

    Carlos
  41. Whatever happened to the concept of 'good enough'? A Dodge Viper may be faster and perform better than a Honda Accord, but the Accord is good enough for most people.

    Same thing in a lot of software projects.

    Weblogic/Oracle/etc may be the best, but JBoss/Hibernate/Tomcat/MySql is good enough in A LOT of cases.
  42. If everyone was happy with 'good enough' they'd never sell any Dodge Vipers.
  43. Last year they did :) ...but not my point[ Go to top ]

    Last year they did :)
    http://www.feviper.com/fundraiser.html

    Anyhow my point wasn't that Weblogic and Oracle are not the best choice in some cases. My point is often the open source solution is 'good enough'.
  44. Agree on principle[ Go to top ]

    Very few people need the high powered sportscar, but everyone wants to say they drive one.

    It's great to say you're running WebSphere Enterprise (which is, what? $25K a pop?) but if you're not using Enterprise apps, why bother?

    The funny thing is about Open Source is that they push out the occasional sportscar themselves. It's the lemons you have to watch out for.

    Though personally I think using Tomcat is more applicable to something like a Motorscooter.
  45. tg:>
    > Weblogic/Oracle/etc may be the best, but JBoss/Hibernate/Tomcat/MySql is good enough .

    It's the other way arround as far as I have seen in practice. People with small number of users use BEA+Oracle+MS.
    People with large # of users, say more than thosands, use pgSQL, Linux and Resin (it's cheap, I know it's not open source) or similar cost effectice or free.
    The people with large # of users just chose not to pay a million dollars to Oracle et al, when for that much $ they can write their own SQL engine, or use an open source sql engine.
    If you are an IT manager and CEO says can you write a SQL engine for $1MM, I'd say yeah, don't pay them. We can just use pgSQL source and customize, et al.

    $60K per CPU for BEA? Yes, but only for small site.
    If I needed 40,000 concurent users or more, how many CPU's license cost is that?

    Look, people do not buy propriatory CPU's like Sparc anymore when they can have a faster/better x86 box for 1/10th the cost. For the same reason, no reason to use propriatory sofware. Unless you have a small deprtmental need, then who cares what you use. Linux is used for heavy lifting, MS Exchange and Notes is for coporate secretaries. What comercail large site service provider uses MS Exhange? They use Linux based open source mail servers, becuase they are better/faster. Same is true for other sofware.

    Now go make a spreadsheet chart :-).

    .V
  46. Most applications suck[ Go to top ]

    It's not that most OSS applications suck. It's that most code or applications you get off the web suck. I saw this before the web back when we grabbed stuff from netnews or from some ftp site. And most shareware and freeware applications suck too. Every developer has this idea that they'll create this great program. They'll put a little of time into it and grow bored or don't have time to finish and polish it. Before SourceForge alot of these programs would never make it off their hard drive. Now the developer creates a SourceForge project, puts an OSS license on it, and makes it available for all. This is good and bad. It's good because there might be some fragment of code that will be useful to someone else. Even if only as an example of maybe a complicated method call. It's bad because people like Ballmer and the Microsoft dittohead bloggers can accurately say "OSS is poor quality."
  47. (This should be read as a reply to Cameron's blog.)

    Commercial koolaid can be poisonous too. You don't have to fill out a form to write software, and you don't have to put it on sourceforge. You can list commercial software on other sites as well, or even on your own page.

    The point is there are no magical barriers that keep commercial software from cropping up everywhere.

    As others have said, there is a lot of nasty commercial software out there too.

    Grading open source wholistically that way against a subset of commercial software isn't fair. You should have to include Gator in your comparisons if you are going to point your finger at bad sourceforge projects.

    There is only one difference between open source software and commercial software. OSS software frees you from the dependance on a third party. If the Apache Foundation was destroyed, you can still run, repair, and extend Apache's Webserver. You don't have to get Apache's permission to copy it.

    There are free commercial products (Java). There are well supported Open Source products (JBoss, Apache, RedHat, MySQL, PostgreSQL, etc.) but support is generally a premium. There are well documented open source products as well.

    I don't get where you are trying to draw a line and see that open source is different in any other respect. That same kid who made a website and started a sourceforge project for his enterprise technology may have tried to sell it or licensed it under any non-open source license of his choosing.
  48. Commercial koolaid can be poisonous too.

    When I talk about poison in the koolaid, I'm referring to certain types of group psychology/cult mentality.

    Grading open source wholistically that way against a subset of commercial software isn't fair.

    I wasn't actually trying to say that open source sucks, despite the title. (I thought I was clear on that.) What I was attempting to do was explain how so many open source projects, with the best of intentions, could end up in a state that would not be considered "software quality".

    If anyone takes this as an attack on open source, or even some sort of proof that open source is bad, then I've badly failed to get across my points. On the other hand, I think a lot of people already had an understanding of what I was referring to before I even wrote about it, and with time these criticisms (not in a negative way, mind you) will crystalize and be easily explainable and well understood and (perhaps) even easily avoided, and hopefully having them discussed in the open can be of some use for people setting off down that road.

    It's almost as if a "design patterns for open source projects" is needed. I'm not referring to the code -- I'm referring to the projects themselves.

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Clustered JCache for Grid Computing!
  49. the choice is good[ Go to top ]

    I wholeheartedly agree with Cameron, that a lot of OSS projects are bad, i just want to emphasise that the CHOICE is not bad, it only lays a greater responsibility on the architects. This is what having responsibility is about; making *informed* choices. If you do not want to have to look through the sources, and look through mailing list archives, and instead want a coherently authoured manual and 24/7 support, then open source may not be for you.

    I may be old fashined, but i believe that most of the time you get what you pay for, so i choose to be pleasently surprised when a *free* *code supplied* *hobby* project actually delivers real value, instead of whining when most of them does not (this is not pointed at cameron, but some of the other messages in this thread).

    sincerely
    Morten Wilken
  50. When I talk about poison in the koolaid, I'm referring to certain types of group psychology/cult mentality.


    If you're trying to deny that people like Steve Balmer and his friends don't have a cult mentality about commercial software, I advice you to watch one of his "talks" (if they can be called that) again.

    I wasn't actually trying to say that open source sucks, despite the title. (I thought I was clear on that.) What I was attempting to do was explain how so many open source projects, with the best of intentions, could end up in a state that would not be considered "software quality".


    I didn't say that you did say that open source sucks. I just think you are drawing an imaginary line and I don't understand where you got it. Most of what I read in your blog entry were true of some commercial applications that I've seen too. In fact, it reminded me of the .Com era. I could probably understand better if you said the open source movement is going through a .com era where there is just way too much noise. There were some good .Com companies as well though, and likewise there are always good projects cropping up in open source.

    You're points are valid, but not just for open source. Programmers lack pride in their work more and more these days. I think what you are looking for is a design pattern for programming ideology. You have XP for methodology and you have best coding practices, but there's something missing beyond those. There's more to programming than design and coding.

    I think what you may be getting at is how well programmers know the purpose of their software. Use cases from XP don't explain purpose, they just explain functionality desired. I don't think software will be it's best until there is some method of conveying purpose to the coder. A lot of projects on sourceforge lack purpose. Purpose is converted into functionality often by people that understand only the purpose or only the technology. If you know what your client does and you know how computers work, then you could probably come up with a better set of use cases than your client would give you. Also, you need to know the purpose of a large chunk of your clients if you are going to market it. Some projects on sourceforge (I have one that fits this criteria) are just there because maybe it would be easier for someone else to modify your code than to recreate it because their problem is similar. It's not a product for the end user, but just some code that benefits only one of my clients because I understood what they needed, but I had no motivation to actually make a marketable product of it. My project is very useful to my client, but only useful to my client.

    I think those great people you talk about in your blog seem to have insight into the purpose of the project as well as great knowledge of the technology. I think anyone with a great understanding of technology could easily become one of those great leaders with an understanding of the purpose of their projects.
  51. corporate projects[ Go to top ]

    The title of the entry (i.e. Why it is easy for the quality of Open Source Projects to be bad) obviously demonstrats the bias at theserverside.com

    I wonder when I would ever see an entry such as: "Why BEA Portal 7.0 can put you in the mad house?"

    or

    "Why corporate projects are carcinogens?"
  52. corporate projects[ Go to top ]

    "Why BEA Portal 7.0 can put you in the mad house?"

    That is a good point dude; these idiots "serverside.com" will shutdown, if they open the realities about the qualities of software such as BEA portal. A bunch of people in USA will wakeup one day morning and start talking about some shit on quality with a feeling such as whatever coming out of their mouth is worth as Gold. Man gets a life instead of using media as a tool to sell your third class products.
  53. Open source projects have issues principally because there are many people focussed on the glamor of improving the product but little to none working on the less glamorous but much more necesary marketing and documentation.

    Documentation is necessary because it doesn't matter if you have the greatest technology solution in the world. If noone else other than yourself can use the project, to be quite honest you're wasting your time. While I don't want to pick on any group in particular - a LOT of apache projects are simply unusable in real world projects because the documentation is just too poor.

    Marketing of open source projects is necessary to grow the eco-system of developers involed with the project and increase the opportunities for both the developers and the project itself. One of the few truly successful marketing stories in open source is JBoss. While I'm biased having worked on the project back in 99-2000, JBoss is clearly an example of marketing of an open source project done right.

    The support issue is something else that is a key sticking point and something that many open sourcers seem to forget about. There are many companies interested in using open source projects - major corporations even. Unfortunately without a good support infrastructure many companies use certain types of open source sparingly and its unfortunate because many times the open source stuff is of higher overall quality than the commercial equivalent.
  54. Windoze is one of the worst OS in the world .

    It is shocking to see that people are buying windoze
    maybe becasue Dell , HP vendors will not sell low cost linux desktop.
    Linux is the best os out there for desk top and server.

    Apache is now close to 80% of market in webserver

     M$ website hides behind linux for security and scalability.

    Even M$ agrees linux is better OS than crappy Windoze.
  55. Jamie... you are a troll. Windows 2000/XP are not crappy at all. It's about 10 tens easier to use than Linux and stability is great. Windows does not have more security holes than Linux, it's just that an OS installed on 95% on the earths computers is a bigger target.

    To be honest, without Microsoft's efforts the past 20 years, none of us would have a job. Well... perhaps a few of use would still be typing in amber-coloured fixed fonts, but that's all.
  56. Jamie... you are a troll. Windows 2000/XP are not crappy at all. It's about 10 tens easier to use than Linux and stability is great. Windows does not have more security holes than Linux, it's just that an OS installed on 95% on the earths computers is a bigger target.

    I agree he's probably a troll but I think you're ill informed about hackers. Hackers aren't looking for some home computer using dialup. They aren't looking for a computer behind a router/firewall on DSL/Cable (the general case for end users). They get stuck with crazy end users that connect their computer directly to cable/dsl if they are going after end users. That's not who they target. They target servers that it is likely noone will ever actually look around the filesystem on to figure it out, or where there are multiple administrators that wouldn't know if someone else changed a file or themselves. The majority of these servers are running Linux, Apache, Bind, Sendmail, and MySQL.

    Hackers end up attacking windows because it's the low hanging fruit, not because it's more popular. They would rather have some server with T1 upstream so they can DOS (Denial-Of-Service... ping floods, packet source spoofing to bounce off of broadcast addresses to amplify) people they don't like.
  57. han

    I am not sure what rock you have been under but windoze has the worst security holes in the world. We have convert completely to linux and are saving lot of reboot times . I am not sure if you have seen a trend that people are dumping windoze for linux server and desktop.

    Linux had 3 security issue this year all were sev 2 but windoze had 8 sev 1 and 32 sev 2 issue this year. Think about that then post you comment.

    By the way Tomcat and JBOSS is our preferred app server.
  58. What are you talking about?
    Linux had at least 3 security issues with open ssh alone a couple of weeks back. And at least 15 others I know of. I get the emails from red hat network.
    Tomcat is so slow I could write novels white waiting for it. Jboss is on the brink of unusability.
  59. I have to admint that Windoze doesn´t shine in security and perhaps not even in administration options, but it is reliable.

    In my company, almost all af our production servers are Windows 2000 Adv. Server, in my particular case, the intranet servers that I am in charge of have behaved extremelly well even for a M$ product. Reboot times? well I think the last time I rebooted the main server was 6 months ago. Don´t get me wrongo, I am not a MS zealot trying to impose my point of view, but I think that the key is to establish the right policies and automate administration as much as you can. I don´t trust Windows Update service (which is all messed up by the way), so I ended up writing a little php script that runs this program called hfnetchk.exe (a program that checkes for missing updates and patches), process the info and sends me a mail if anything looks odd. I take care of the updates later. It can sound like I am wasting my time here but trust me it´s not as bad as it seems, as long as I only have to take care of the updates less that 2 times a month. This works for me just fine.

    It has been running Tomcat 4.14 since quite some time now, and I was even amazed that the thing didn´t kill himself as bad as I expected. We will migrate to Resin some time soon, Resin shows to be more stable and faster than Tomcat, and well, have you tried configuring mod_jk with Information Server? Your hair will get gray, so will your eyes and you will start having this bad nightmares about some Rabid Wombat chasing you. In the other hand Resin and Information Server run together like a breze. Sonn we´ll be installing JONAS for our deployments too.

    The point here is that, come on, it´s Java what we are talking about here. Runs in just about everything you could imagine. It takes some investigation (no, not market investigation) to realize which product works better for you and since I rather spend my time coding than configuring a f%*/ing network driver or struggling with man and cryptic commands, I think I will stick with Windows.
  60. Everytime you say M$...[ Go to top ]

    I think of the following cartoon

    http://www.penny-arcade.com/view.php3?date=2002-07-22&res=l
  61. Open Src[ Go to top ]

    Just let me add my $.02 from a non-technical point of view.

    As morality decreases in modern cultures, I believe the young are much better of participating in open-source projects (even if they are not very high quality) than using drugs, alcohol, or joining gangs.

    And so we need to learn to differentiate between successful and unsuccessful attempts, but please don't discourage these programmer-wannabes, for at the moment, this might be their only hope to be "different" from their peers.
  62. Having used open source software for 10+ years, I have come to the conclusion that about 80% of the projects either 1) sucks in terms of quality, 2) dies when the core member(s) find something else to do (like getting a job or a girlfriend...)

    More often than not, adding open source components to internal/external projects is actually quite expensive because of lacking support and short project life times.

    I think that non-supported (financially) open source projects is a dead end. The concepts exercised by, say, Subversion, is great. CollabNet sponsors the development, but it's still open source. Best of two worlds.