Slashdot Mirror


The Birth of a FOSS Application

Joe Barr writes "Brice Burges explains why and how he created a new free software application, as well as what he learned from the birthing process, in a story on Linux.com. The story provides first-hand insights into the frustrations and satisfactions of developers working on free/open source projects. From the article: 'I'm always disappointed to hear open source project members say that they had "their developer" modify an aspect of the program without ever hearing from that developer or seeing any of the code. This is not progressive.'" Linux.com and Slashdot are both owned by OSTG.

18 of 104 comments (clear)

  1. Free != freedom by EmbeddedJanitor · · Score: 5, Insightful
    Open Source need not mean that the project is open to allcomers. The projects that work tend to be managed by dictators (eg Linus). I currently work on 2 major open source projects and have done some minor work on others. Those that are run as democratic communal projects tend to lose their fiocus and crash onto rocks.

    No different from any other software development really.

    --
    Engineering is the art of compromise.
    1. Re:Free != freedom by Anonymous Coward · · Score: 5, Insightful

      The Free in FOSS indeed means freedom. Even though many successful projects are run by "dictators" or committees, not by a democracy of all developers, nobody can stop you from making changes yourself. There is a difference between "the" Linux kernel and "a" Linux kernel, and the Free in FOSS means you can have your Linux kernel and other people can have other Linux kernels. The project may not be open to all, but the product, the source code, certainly is.

    2. Re:Free != freedom by Daniel+Dvorkin · · Score: 5, Funny

      True enough, but if I have to choose between, say, the Linus-approved Linux kernel and Joe Schmoe's Kernel That He Made From The Linux Kernel But Added Some Stuff Joe Thought Was Cool, I know which one I'll go with. ;)

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    3. Re:Free != freedom by Brandybuck · · Score: 4, Funny

      From painful experience, I would choose the former.

      --
      Don't blame me, I didn't vote for either of them!
    4. Re:Free != freedom by TheLink · · Score: 3, Interesting

      You mean "For painful experience". ;).

      Linus doesn't really care about stability or reliability of a particular release, he's already basically said he just does what he wants - which appears to be putting in nice new features, capabilities to the kernel, and trying to make it more efficient in most popular scenarios (which is good in some ways).

      Sure Suse etc have had their screw ups as well, but they at least do a bit more testing (they supposedly have more resources).

      FWIW, an Alan Cox approved Linux kernel counts for more to me than a Linus approved one.

      --
  2. Advertisement by Imexius · · Score: 4, Insightful

    This article sounds like an advertisement more than anything else.

    --
    find / -iname life 2> /dev/null Error: Life could not be found
    1. Re:Advertisement by zurtle · · Score: 3, Interesting
      Agreed. It's not an incredible piece of journalism, but I like that it shows the classic stages of idea development when a great idea goes through that stage that requires perseverance and sits on the cusp of failure.

      It also shows that small, niche, open source projects can survive. If anything, hopefully it will encourage a few dozen people to get onto Sourceforge.net and find projects they can contribute to.

      --
      Couldn't stand the weather
  3. Different projects, different styles by jd · · Score: 5, Insightful
    There is no all-encompasing style for Open Source, Free Software, or any other variety of the beastie. There is no Universal Way, no Grand Master Plan that all must follow, and no guaranteed recipe for either success or failure. There is only code, tended to by a cooperative under the policies of that cooperative, for no benefit other than the scratching of a collective itch.

    One of the very reasons the term "Open Source" was so heavily slammed in the early days was that it meant too many damn things to too many people (some of whom might also be damned). People, as a whole, adopted it despite those objections and often belittled those who raised them. Now we're finding out that some of those same people are finding out that Open Source does indeed too many different things to too many people, and that people really are trying to achieve different results. Congratulations. Should I break into applause or just do a Kerr Avon impression and throw these people out the airlock?

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  4. Nice Checklist by jlarocco · · Score: 5, Insightful

    The checklist on the lower right is probably the best part of the article. It's all pretty obvious stuff when you think about it, but nice to have it all listed.

  5. what. the. fuck. by Anonymous Coward · · Score: 4, Funny

    "birthing process"? Are we talking about software or pregnant farm animals?

  6. Re:Disclaimer by Jeff+DeMaagd · · Score: 4, Funny

    That would explain why it would have a link that says "slashdot it" and not "digg it".

  7. Not really by jesterzog · · Score: 3, Insightful

    I didn't see anything hypocritical about it. He stated pretty clearly that the reason he didn't fork an existing project was because he couldn't do so and achieve his goals, and he gave several reasons. (eg. Nothing had the right framework for where he wanted to go, he wanted the experience of developing his own project, etc.) Also, immediately after the part that you quoted, he says:

    "I hope to transition poMMo development efforts to a wider group of individuals. I am always happy when others seek to help out, maintaining open discussion and policy."

    I think he fully understands that people have a licensed right to modify the code, and is okay with this. He simply thought it was disappointing that people who do this often don't bother to make their changes available back to the developers. If anything, he was just mentioning that he wants to make his own project one where people are actively encouraged to do so.

    It's not exactly a revolutionary article in FOSS development, but it's handy for anyone who wants a general idea, and hopefully people don't blame him for writing a simple article when it was Slashdot that decided to link to it.

    1. Re:Not really by Kjella · · Score: 3, Insightful

      I think he fully understands that people have a licensed right to modify the code, and is okay with this. He simply thought it was disappointing that people who do this often don't bother to make their changes available back to the developers. If anything, he was just mentioning that he wants to make his own project one where people are actively encouraged to do so.

      Well, I haven't heard much about the project but I assume it's not a very big one. Why don't people contribute back? Well, here's a few reasons:
      1. They don't want to argue about if, as in it scratches my itch, I don't care how/if it fits the big picture
      2. They don't want to make it production quality. I've hacked around stuff to make it to exactly what I need, whatever else breaks I don't care.
      3. They don't want to follow a coding styling, naming convention or document it aka "I did it myyyyyyy way".
      4. They don't want to be bugged about bugs in their code.

      In short, if you're taking over an unknown code base of unknown quality with an "upstream" that's not really interested in helping you out, it might easily take you just as long as rewriting it yourself. Work on the developers that actually do come back and say "I'd like this to become part of the main application.", and be very friendly, helpful and mostly forgiving with them. I think that'll pay off far better than trying to lure out people's pet modifications.

      --
      Live today, because you never know what tomorrow brings
  8. Re:Don't say "FOSS" by dbIII · · Score: 4, Funny

    Or better still - creep the acronym even more with FLOSSY - Free Libre Open Source Software Yeah! Also doubles as the name for a pet dog.

  9. How much effort should a person go to? by deranged+unix+nut · · Score: 5, Interesting

    I ran into an annoying little bug with Perl Win32::SoundRec, figured out how to fix it, patched my own system, and then spent 30 minutes trying to find info on where to submit the fix. I finally emailed the author and got no response. Months later, the bug is still there. The fix is three lines of code and two extra calculations.

    I had some crashes with Mozilla and tried to get symbols, it turns out that the release build doesn't have published symbols so my effort to repro a stress bug and capture it in windbg was wasted.

    In the pre-1.0 kernel days, I had problems getting two 3c509 nics to work in a box at the same time. With the help of a friend, we made a 3c509-2 driver by copying and changing all of the identifiers. The hack worked, but it was a hack. At the time, I didn't take the time to report the limitation anywhere or investigate further.

    So, when I as a 99.9% user tries that 0.1% of the time to contribute, why is it always a pain? I would love to contribute. If the bar were lower, if I could take a 1-line fix and get someone to pay attention, or if I could take that bug and get support in debugging it other than "compile it yourself", I am sure my contribution rate would quadruple.

    Maybe a college student has enough time to spend decyphering how to contribute. I don't have that much time anymore.

    1. Re:How much effort should a person go to? by gregmac · · Score: 4, Insightful

      I ran into an annoying little bug with Perl Win32::SoundRec, figured out how to fix it, patched my own system, and then spent 30 minutes trying to find info on where to submit the fix. I finally emailed the author and got no response. Months later, the bug is still there. The fix is three lines of code and two extra calculations. That's a real problem, but it's really a fault of the project, not the open source process in general. The nice thing about this is you can at least post your patch somewhere (like the mailing list) and at the least other users who encounter the same problem can fix it. At best, if the author never comes back and fixes it, someone (or you) can fork it and maintain their own version with that and possibly other fixes/enhancements..

      So, when I as a 99.9% user tries that 0.1% of the time to contribute, why is it always a pain? I would love to contribute. If the bar were lower, if I could take a 1-line fix and get someone to pay attention, or if I could take that bug and get support in debugging it other than "compile it yourself", I am sure my contribution rate would quadruple. Again, it's really up to the project. I've been involed with projects where the only interaction between the developer and users is a forum (eg, this is where bugs/patches/etc go) and although it's easy to contribute a patch (just post a message), it's incredibly irritating in many other respects. There's no real way to "track" bugs/patches, they're just messages that eventually get lost on page 2+ (I say this as a user, but I'm sure the developer(s) would have as hard a time as I).

      On the other end, some projects use ticket tracking systems that are overly complex - eg, you have to register first, and then fill out 50 fields, search 4 or 5 times to be sure it's not duplicated, etc. In some projects this tracker is not linked to from the main web page, which makes the process even more difficult. In some projects, after reporting a bug you'll get a response "please try in the latest cvs/svn version". All of these things add up to make it a hassle for the causal user to report bugs. From a developers point of view, they mean the developers (who are volunteers, remember) spend less time going through false bug reports.

      I think the answer lies somewhere in between. Having to register is a response to spam - there are a lot of spam bots that attack the common bug tracking systems. Having too many fields is annoying, but in a big project it can be useful to get people to report the proper information and be sure the right people look at it. Sometimes asking the user to try the lastest version is appropriate (eg, if there's a possible fix in, but not totally tested for all cases), but sometimes it's just lazyness.

      I'm active on a decently large project now, and there are a LOT of false bug reports - bugs reported in branches that are obsolete (and have been fixed for a year), people posting what amounts to help questions as bugs, and bugs that say "____ doesn't work" (eg, utterly useless). Luckily we have non-developer users that go through and close these, ocasionally CC'ing a developer to ask if it's legitimate. However, not all projects have these, and indeed, we didn't for the first year or so of existance. As a result, there were often bug reports that would sit there for a long time before someone got around to going through them. Let me tell you, it's pretty annoying to spend 30 minutes trying to duplicate a bug, only to find out in the end it was a configuration error or some other unrelated problem, where if the user had read documentation they would have solved it.

      So basically what it gets down to is: do you make users spend slightly more time to file a decent bug report, or do you waste lots of developer time (in aggregate) tracking down false bugs? Since it's usually the developers that set up the bug tracking system, guess what the answer is...

      --
      Speak before you think
  10. Contributions by Netsensei · · Score: 3, Insightful

    The involvement of the person behind the project is really important. Submitting bugs and patches is one thing, but if none one looks at them, why bother? In fact it's a two way route: the more involved the original developer, the more people will take interest in the project.

    I submitted bugreports on several occasions in various projects. Most rewarding was when I submitted a small bug in Magpie. I got a personal reply by mail from the original developer. Seeing how your solutions are considered by the developer and how your contributions matter is big aspect of what's open source all about.

  11. There isn't one and it doesn't matter by Per+Abrahamsen · · Score: 3, Insightful

    The Open Source Definition was an attempt to formalize the requirements of free software, and any difference between the lists of open source licenses and free software licenses are due to nuances in interpretation, rather than anything substantial.

    There is a philosophical difference between the main advocates of "free software" and "open source", it just doesn't matter for the majority of developers who just want to share something cool they have done. From my own days as a free software project leader, I'd estimate that for every developer discussing the ethical implication of various licenses on the net, there are 99 who couldn't care less about the license, and would even contribute their code to proprietary project if that had been necessary to make it available to others. [Of course, for every developer discussing the various licenses, there are also 99 non-developers with the mistaken belief that their opinions matter. ]

    In conclusion, stop trying to create an artificial ridge between free software and open source when it isn't there or doesn't matter, depending on your point of view. It is 99% overlap, the remaining 1% is just enough for ESR and RMS to stand alone and feel important.