Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Open Source Programming

How To Find the Right Open Source Project To Get Involved With 57

An anonymous reader writes Writing on Opensource.com, Matt Micene shares his thoughts on getting started with an open source project. "I came back from OSCON this year with a new fire to contribute to an open source project. I've been involved in open source for years, but lately I've been more of an enthusiast-evangelist than a hands-on-contributor to an open source community. So, I started some thinking about what to do next. When I was involved in projects before, it was due to a clear progression from user to forum guru to contributor. It's a great path to take but what do you do if you just want to jump into something?" Matt goes on to lay out several steps to help new contributors get started.
This discussion has been archived. No new comments can be posted.

How To Find the Right Open Source Project To Get Involved With

Comments Filter:
  • Problem oriented (Score:5, Insightful)

    by Anonymous Coward on Monday September 29, 2014 @12:58PM (#48020423)

    Find a problem you want solved, then find the tool that appears to solve the problem. Find out why the tool doesn't solve the problem adequately and improve on it.
    If no tool is available, start a new project.

    • by Anrego ( 830717 ) *

      Totally this.

      I guess there is nothing wrong with contributing for the sake of it, but I think it's a lot more fun if you are working on something you care about, or better yet, will directly benefit you.

      Most bug fixes I've contributed were just that, fixes to bugs that were giving me grief.

      Also as someone else mentioned, communicate with the devs first (I like to join the IRC channel) and make sure they are interested in outside help. Most projects are, but a lot of smaller projects the devs don't want to a

    • I completely agree. If you try to become involved with an open source project because you think it would be fun, your enthusiasm will likely fizzle out fairly quickly. If you try to become involved with an open source project because you actually want to use it and want want to improve it, then every time that it doesn't do something that you need then you'll find yourself with a project. One of the nice things about a project like FreeBSD (to give an example of a project that I'm heavily involved in - t
    • by rasmusbr ( 2186518 ) on Monday September 29, 2014 @03:38PM (#48021887)

      Just remember that you will probably have many moments when you think that the tool doesn't solve the problem adequately, when in reality the tool does actually solve the problem adequately if you know how to use it. The real problem then is that the tool comes with inadequate documentation, or that it needs more or better tutorials and sample projects for novice users.

    • by hey! ( 33014 )

      I tried this once. I installed a rather obscure open source app that that turned out to be quite useful to me. But it took me a couple days to get to the point where I could do anything useful with it. And I was only able to do that because I can read source code and have lots of software installation and configuration experience. And because I enjoy a puzzle.

      After using the app for a month or two, I thought to myself, "There's got to be thousands and thousands of people who'd benefit from this app, but I

  • by Anonymous Coward
    There is a utility that I use very often and thought could use a couple of feature additions and bug fixes. I coded these, taking great pains to ensure that my additions were clear, matched the preexisting coding style, and adequately commented. I sent a patch to the utility's developer, only to be told that he works on the project for his own pleasure, but doesn't have the time or inclination to look at contributions from other developers. I suspect that quite a few single-project *nix utilities are like t
    • by arielCo ( 995647 ) on Monday September 29, 2014 @01:38PM (#48020777)

      I thought that's what forking was for - you roll your own version, advertise it, and the original author may be persuaded to incorporate your changes. Worst case, you have two project cross-pollinating (e.g. mplayer / mplayer2 / mpv, ffmpeg / libav, TWiki / Foswiki).

      • by Anrego ( 830717 ) *

        Sure, you can do this. Just as you can just maintain your own local version and not contribute it.

        But it doesn't give the same warm fuzzies, isn't really worth it for a small bug fix, and there are plenty of projects out there that will happily accept your contributions.

    • I tend to fix my own problem and then submit the code anyway. If my dealings with the project are unsatisfactory (and they usually are), I find a new solution to my problem.

      Even submitting bug reports is hit-and-miss regarding appreciating contributions...

    • I for one certainly appreciate your bash shellshock patches.
  • If you like the user-to-guru-to-contributer path, but you're not really using any application... think again; IDE's are applications too.

    • So are programming language implementations.
      • by mwvdlee ( 775178 )

        Exactly. Just because you don't use any typical consumer application doesn't mean you're not a user with needs that may not (yet) be fulfilled by the applications you do use.

  • by lennier1 ( 264730 ) on Monday September 29, 2014 @01:22PM (#48020627)

    In my case it was because I'm a lazy bastard. I needed e bug tracking module (exception details are turned into a unified format to report to a bug tracking server) and I came across one that was already 95% of what I wanted, so I simply contributed enhancements until the final 5% were covered.
    The same thing got a former colleague of mine involved in the Firebug project until he became a regular contributor.

  • why don't you try finding the next heartbleed or shellshock bug. I'm sure if you do that you'll be welcomed on to whatever open source project you want.
  • by bzipitidoo ( 647217 ) <bzipitidoo@yahoo.com> on Monday September 29, 2014 @01:26PM (#48020663) Journal

    I'd rather hear about how to get paid to work on open source. The article talks a little about convincing your current employer to donate some of your time to a project. But first, you need an employer.

    Then, your job has to have some down time. I've never had a job in IT with any down time at all. There are always bugs to fix, features to implement, fires to put out, and management to report to. Management is always pushing for more, questioning numbers and estimates or just simply cutting time, to the point that a deathmarch becomes a certainty.

    • by wrook ( 134116 )

      Not all places are like that. A friend of mine put if very nicely the other day. He said he spent a long time wondering if IT was for him. It seemed really destructive to his life. He came to the conclusion that IT was great. His specific job was not. He started to look for the job he wanted.

      Another wise person once said, "Not everybody needs to be a programmer". You could be a waiter, for instance (not me -- that job is waaay too hard). After 20 years, I took "a year off" to teach English in Japan.

  • try SLASH (Score:5, Funny)

    by slashdice ( 3722985 ) on Monday September 29, 2014 @01:39PM (#48020793)
    beta.slashdice manager here. We're desperate for open source (ie, unpaid) programmers. No experience necessary! (or even desired). Make an immediate impact by editing directly on the production servers without testing or pointless code review meetings. Your choice of editors - vi, emacs, ed, pico, joe, or whatever happens to be installed on the server.
    • by Anrego ( 830717 ) *

      On a serious note, what ever happened to slash being open source. At some point they closed it up, but does anyone know when/why?

      • by Anrego ( 830717 ) *

        ...not that I have any particular interest in the code, having seen the last release of slash, and the current bowl of shit that is beta. I'm more interested in the story behind it.

      • At some point they closed it up, but does anyone know when/why?

        Probably after Slashdot crashed and taken offline for several days when a 32-bit counter in a database table reached its limit. That was about ten years ago or so.

        • Wasn't it a 24 bit field, not a 32 bit field?

          I remember thinking "24 bits? Really? What were they saving those last 8 bits for - the alpha value?" :)

          • It could have been a 16-bit field. With the amount of traffic that Slashdot gets, the field was small enough to exceed the limit sooner rather than later. Hence the site crashed. This was an "Oh, doh!" programming moment if there was ever one.
            • 16 bits? Dude, that's ridiculous.

              Ok, just so everyone else on slashdot will stop laughing at us I looked it up:

              http://slashdot.org/story/06/1... [slashdot.org]

              From TFS:

              Last night we crossed over 16,777,216 comments in the database. The wise amongst you might note that this number is 2^24, or in MySQLese an unsigned mediumint. Unfortunately, like 5 years ago we changed our primary keys in the comment table to unsigned int (32 bits, or 4.1 billion) but neglected to change the index that handles parents. We're awesome! Fixing is a simple ALTER TABLE statement... but on a table that is 16 million rows long, our system will take 3+ hours to do it, during which time there can be no posting. So today, we're disabling threading and will enable it again later tonight. Sorry for the inconvenience. We shall flog ourselves appropriately. Update: 11/10 12:52 GMT by J : It's fixed.

              There we go - a 24 bit index caused the crash :)

              • I tried to search for that story but couldn't find it. Flipping a 16- or 32-bit counter is a far more likely scenario. A 24-bit counter is/was incomprehensible.
                • No worries on the search - I embedded the link to the slashdot stories AND quoted it above :)

                  I agree that the 24 bit counter was incomprehensible. Apparently it's a standard choice in MySQL, though, which explains why it's an issue - one can just pick 'mediumint' and bam - 24 bit integer.

                  I'm mystified as to why one would want to do that - does MySQL actually pack the integers in such a way as to use those extra 8 bits for something else? On a 32 bit machine you're going to need to either ignore (zero-pack

  • I recommend a project that auto-edits slashdot headlines to avoid trailing prepositions.

    Poor headline grammar is something up with which we should not put.
  • The maintainer life chose me!

    My path has always been this: I use various libraries in different client projects that I manage. From time to time, I find certain libraries to have bugs. I fix said bugs, and push the changes back.

    In one instance, since I was basically the only person to push changes to a library in the past two years, the creator put me in charge of the repo for it.

    In another instance, the creator of a project acknowledged a critical bug, yet refused to accept a very simple patch to fix it. B

  • OSS needs more reviewers than new contributors hacking on their pet feature. Heartbleed and Shellshock only ephasize the point. "Many eyes make all bugs shallow" rings false when there are no eyes.

  • After meeting your #1 requirement - finding the project interesting - I'd focus on the attitude and community:

    * Is it friendly?
    * Is the discourse on the mailing lists / forums / whatever generally positive in tone?
    * Is it welcoming to new people?
    * Is there a list of new developer / getting-started tasks, tutorials, documentation, etc?
    * Is there any sort of mentorship program? Or at least a code-review / patch-review process?
    * Is there a well defined process for people without direct commit access to get cha

I have hardly ever known a mathematician who was capable of reasoning. -- Plato

Working...