This is how Open Source works

In Redis weekly update #1 – Hashes and… many more! Salvatore Sanfilippo (the author of Redis) describes the last week’s worth of changes to Redis.  The last item is about a bug I found when setting up cross-datacenter Redis replication at Craigslist.  He describes the bug and the fix quite well, concluding with:

I’m so happy because of this stories, involving five people willing to share their work for free, to push their knowledge forward. This are a few of the best traits of humanity itself. There is really something good about open source, and I’m honored to collaborate with such great guys.

I have to say, this is exactly how Open Source is supposed to work.  He makes the source code available (and easily forkable on github) and actively participates on the #redis channel of the Freenode IRC network.  So even though I’m in California and he’s in Italy, we were able to communicate via email, the project’s issue tracking system (via Google Code), IRC, and a github pull request.

As he notes, it took a bit of time to find this bug, but the discussions we had on-line helped both of us to focus our search.  It was ultimately a single error message in one of the non-failed servers that caught my attention and focused in on the problem he describes in his post.

I can’t imagine what it’d have been like to track this down without source code and communicating with the customer service organization of a larger software vendor.

This morning I patched our code, deployed the fix, and tested it.  So far, so good.  I expect that when Redis 1.2.6 is released in a day or two, we can be assure that nobody else will hit this bug.

Excellent.

About Jeremy Zawodny

I'm a software engineer and pilot. I work at craigslist by day, hacking on various bits of back-end software and data systems. As a pilot, I fly Glastar N97BM, Just AirCraft SuperSTOL N119AM, Bonanza N200TE, and high performance gliders in the northern California and Nevada area. I'm also the original author of "High Performance MySQL" published by O'Reilly Media. I still speak at conferences and user groups on occasion.
This entry was posted in programming and tagged . Bookmark the permalink.

15 Responses to This is how Open Source works

  1. B3nny says:

    You would do everyone a favor if you used the term “free software”‘ as opposed to “open source”.

    free software is always open source, but open source software is not necessarily free.

    And not because Richard Stallman says so, but because he is right.

    By using the term “open source” you 1) do not give enough credit to the effort you are refering to, and 2) you help open the door to abuse of this effort by for example companies such as microsoft.
    They could brand any application “open source” if they allow you to see the source code under a non-disclosure agreement and forbid you to do anything useful with it, and this in fact would rightfully qualify as “open source”.

    I know this term is mostly used to avoid the misunderstanding between free as in no-cost, and free as in freedom, but i say; join the effort of claiming this word for freedom, and freedom only !

    Cheers,
    B3nny

  2. Ryan says:

    I’m not sure why B3nny is telling you to call it “free software” Free software != open source. I know plenty of companies that offer free software that you will NEVER get the source to.

    The correct term is open source, as the source was available to you. Technically speaking, the code’s author only has to have it publicly available for it to be open source, but it’s always nice when they want to improve their own code too.

  3. Zach says:

    B3nny must be one of those curmudgeons who insists that we all refer to Linux as GNU/Linux

  4. Laszlo says:

    Ryan: when B3nny says free software, he/she is referring to freedom not gratuitous software. This is of course confusing, and why some people prefer the term open source.

    But they are in fact different I believe. Free software refers to software which has freedom (ie you can do what you like). Even if you have the source it does not mean you can redistribute it however you please. That would not be free software.

    Open source more refers to the method of development. There is nothing about free software which mentions people having open communication, it only refers to the software. Whereas open source it is expected that IRC or public mailing lists are available, code is available between releases and therefore development is open.

    So I believe the author was correct in the use of open source. He was referring to the method of development and communication not that software itself which was awesome.

  5. AnonymousCoward says:

    Laszlo +1.

    Open source software can be non-free. i.e. Source-code is provided, but you may not be allowed to modify it, or redistribute it, or any other number of things.

    B3nny: You’re talking about freeware, or free software in the layman definition of it. Free Software (as defined by the Free Software Foundation), is very different.

    Not to detract from the article. This is what is fantastic about the Internet, communities and free software.

  6. Adam Shea says:

    Last I checked viewing source under an NDA is not “open”. You could go check on the OSI approval list if you don’t believe me.

  7. weom says:

    I’m not sure why Ryan is telling about companies that offer software for free that you will NEVER get the source to and calls it “free software”, when the correct term is “freeware”.

    And I believe B3nny wanted to say about misusage of the term “open source” described here:
    http://en.wikipedia.org/wiki/Open_source_software#Open_source_vs._source-available
    Quote:
    “… small number of people and organizations use the term to refer to software where the source is available for viewing, but which may not legally be modified or redistributed. … Because OSI does not have a registered trademark for the term “open source”, its legal ability to prevent such usage of the term is limited …”

    Also OSI and FSF license approvals mostly identical as you can see here:
    http://en.wikipedia.org/wiki/Comparison_of_free_software_licenses#Approvals

  8. Rudd-O says:

    Hey, Ryan:

    Free software != free-of-charge software. Also, Free software == freeware.

    Free software has had a very clear definition for twenty years now. Get with the times already.

  9. Rudd-O says:

    Hey, Ryan:

    Free software != free-of-charge software. Also, Free software == freeware.

    Free software has had a very clear definition for twenty years now, and it isn’t “binary code given to you free of monetary charge”. Get with the times already.

  10. Donncha says:

    Jeremy – just to drag this back on topic, thanks for contributing back to an open source “or whatever you like to call it” project.

    It does the heart good to read such reports.

  11. Seun Osewa says:

    Does “free open source” sound like a happy compromise? 🙂

  12. Dutch says:

    I’m sorry to add to the confusion in nomenclature, but Free software is completely different from freeware. Freeware is a binary that costs you nothing. Free software (as in speech) is software endowed with the four freedoms that RMS coined. Open source can be Free software, but it can also be missing one or several of the four freedoms.

  13. sulfide says:

    Wow guys just ignore the troll, clearly he achieved his intentions. Jeremy, good post I know exactly what you mean!

  14. Pingback: Links « Beautiful Discovery

  15. Nizl says:

    Great post, too bad the comments are total crap (including this one!)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s