« Projects

OpenHatch

  • Q: I'd like to participate. How do I begin?

  • Q: Other than writing code, how can I contribute?

    • 7
      Hang out on IRC and answer questions

      As more people hear about us, we get more and more people on our IRC chat room, #openhatch. That's great! Sometimes they ask questions while I'm asleep, though.

      Maybe you can join the chat and be friendly there!


         — Asheesh Laroia (paulproteus) · 3 years ago
    • 7
      Help triage bugs

      Stay up to date with our bug tracker, and try out people's problems. Even if you don't want to write code, you can help people see that someone is looking into the bugs they are filing!


         — Asheesh Laroia (paulproteus) · 3 years ago
    • 3
      Do performance testing

      I'd love to know what pages on the site execute slowly. Feel free to experiment a bit with the public site, or to download the code and try locally.

      Once you've done that, tell us what we need to optimize, or send a patch in that makes us use Django caching more aggressively!


         — Asheesh Laroia (paulproteus) · 3 years ago
    • 1
      Make it easier for new users

      I subscriped one year ago.
      After seeing no result (I was not able to change one line of code for any project), I gave up.
      I was reading on IRC and the mailing list.


         — davidbaumann · 1 year ago
    • [X]
      • Tip:

        Discuss documentation, testing, webmastering, and/or publicity.

        Include URLs if relevant (we'll automatically linkify them).

      • Example:

        We need people to download version 0.4.5 and make sure the frobulator still frobulates correctly.

  • Q: What's a good bug for a newcomer to tackle?

    • 3
      Adding a bug tracker

      OpenHatch's volunteer opportunity finder relies on the bugs we import from around the web.

      Project maintainers request that we add bug trackers by editing the OpenHatch wiki: http://openhatch.org/wiki/Bug_trackers

      What we do after that is write a little bit of code. You can help out by adding bug trackers to our index!

      Read https://openhatch.org/wiki/Bug_tracker_import_code/adding_a_bug_tracker to find out more.


         — Asheesh Laroia (paulproteus) · 2 years ago
    • [X]
      • Tip:

        Many projects have good small tasks that can teach newcomers how the project works. Now's your chance to share one of them!

        Include URLs if relevant (we'll automatically linkify them).

      • Example:

        Someone could improve the photo upload dialog box so that it lets you resize the photo before sending it to the web.

  • Q: What is a bug or issue with OpenHatch that you've been putting off, neglecting, or just plain avoiding?

    • [X]
      • Examples:

        I don't know how to get started with internationalizing my app.

        Bug 392 about printing was filed five years ago, and I don't even know if printing still works.

        I want help from a C coder writing a Maildir patch for Alpine.

      • Note:

        If this issue was formally filed on the web, be sure to include the URL.

What else do you want to talk about?

This is the buildhelper for the OpenHatch project. It should help you get a working OpenHatch developer environment up and running on your computer. Click the checkboxes to track your progress!

If you run into trouble with a certain step, look for a hint link for more information, or if you're stumped, a frustration link to get help from OpenHatch volunteers.

  •  Prerequisite: Use a machine running Debian or Ubuntu

    We develop on Debian 6.0 and Ubuntu 10.x, and currently we run the openhatch.org website on Debian 6.0. If you're running a different operating system, this buildhelper may not work for you.

    0 mins
  •  Install dependencies

    sudo apt-get install python2.6-dev python-libxml2 memcached python-mysqldb python-setuptools libxml2-dev libxslt-dev mysql-server mysql-client python-xapian python-setuptools python-imaging subversion python-gevent

    Most of the dependencies are handled by "buildout" -- more on that later. But you must install a few using your system package manager. The command listed is what we use for a Debian system.

    It's important that you get Python 2.6 or greater -- some of the OpenHatch code depends on Python 2.6 or higher.

    Subversion is a dependency ONLY if you expect to run unit tests or work with the missions.

    5 mins
  •  Get the source code

    git clone git://gitorious.org/openhatch/oh-mainline.git

    We store the source code for the OpenHatch project in a git repository in Gitorious.

    If you don't have git installed, or don't know how to use it, see the "hint" link for a training mission that should help.

    3 mins
  •  Run buildout

    python2.6 bootstrap.py
    bin/buildout

    OpenHatch uses Buildout to manage dependencies.

    Run these commands from the top level directory of the repository, and grab some coffee, snacks, or both. This may take awhile.

    You'll download a whole bunch of Python code and run other setup tasks. This is controlled by setup.py and buildout.cfg in the codebase.

    10 mins
  •  Make sure you know how to connect to MySQL

    mysql -u root -p

    Generally, to create a database, you have to be root. To open a MySQL session, type in the above command, then type your MySQL root password.

    To exit, type "exit" and press enter.

    1 min
  •  Run the database creation script and set up permissions

    mysql -uroot -p < mysite/scripts/database_01_create.sql

    If you want to know what the script does, read the file. It is reasonably well-commented.

    (A note: If you ever decide you want to drop the database, just send "DROP DATABASE oh_milestone_a" to MySQL, then re-run the database creation script. You do not have to recreate the users.)

    3 mins
  •  Sync the database

    exit
    ./bin/mysite syncdb --noinput

    Exit from MySQL, and run this command from the top level directory.

    By passing "noinput", you request that Django not ask you questions. It's important that we not let Django create a super-user at this stage.

    1 min
  •  Run database migrations

    ./bin/mysite migrate

    The README has some suggestions if this doesn't "just work".

    2 mins
  •  Run the development server

    ./bin/mysite runserver

    # or

    bin/mysite runserver IP:PORT

    Run the 'runserver' command. If everything went well and the server started you should see something like this:

    Django version 1.1.2, using settings 'mysite.settings'
    Development server is running at http://127.0.0.1:8000/
    Quit the server with CONTROL-C.

    in your shell window. If you want to run the server on an IP other than loopback, use the syntax 'bin/mysite runserver IP:PORT' where IP and PORT are what IP and port you want the server to run on.

    Now load http://localhost:8000/ (or your custom IP and/or port address) in your web browser. If you see a familiar-looking page then congratulations! You now have your own personal OpenHatch server to hack away at!

    2 mins

About OpenHatch

(logo)

OpenHatch is an open source project with the goals of lowering the barriers to entry into open source contribution and increasing diversity.

from the profile of tsclausing

The code is mostly written in Python.

People who want to help (181)

The following people are interested in helping. Send them an email! (tips)

You can use this page to track who has been contacted if you log in. There will be a checkbox next to their name. When you check it, the page will publish today's date and your username.

Volunteer opportunities, etc.

Volunteer opportunities matching OpenHatch (263)

There is 1 person who can mentor in OpenHatch.

There are 227 people who can mentor in Python, OpenHatch's primary language.

You can embed the "I want to help" button on your website. (More about this.)