Open Source Comes to Campus/NEIU/tasks

This page exists to provide you with good, small tasks as you get started contributing to open source projects. It consists of three sections: curated tasks, recommended projects, and additional resources. We recommend trying the curated tasks first.

= Curated Tasks =

Every project in this section has:


 * Clear instructions for how to contribute to their project, including setting up a development environment, contributing changes, and how to contact them.
 * At least one hand-picked task that (hopefully!) can be completed within an hour or two.
 * At least one maintainer/contributor available at the event or on IRC who's really excited about welcoming you to their project.

Here are the projects:

OpenHatch
Description: OpenHatch.org sees itself as "free software's welcoming committee." We make web tools and run events to help people join open source projects, primarily in Python and Django with some Javascript, CSS, and HTML. We're always looking for enthusiastic new people willing to file bugs, submit patches, ask questions, write documentation, and review code. To help you imagine the site, the volunteer opportunity finder helps people find "easy" bugs to work on in projects all over the web, and supporting code to download that data through API use and scraping; the profile tool helps people write about their experience contributing to open source; and the training missions are interactive, plot-based teaching tools to help people learn skills required in open source in a friendly setting.

Resources:
 * Project Overview
 * Setting up the development environment
 * Contributing changes
 * Contact info: paulproteus (aka, Asheesh) on #openhatch ; also, see community page in the documentation
 * Code: https://github.com/openhatch/oh-mainline

Tasks:

Each of these is a bug that you should fix on your computer, and when you are satisfied with the fix, create a pull request for. These are supposed to be sorted from easiest to hardest, though your mileage may vary.


 * http://openhatch.org/bugs/issue926 -- on Windows, our use of the Tuffy font is very ugly. If you have Windows, you can help us out by looking into how we reference the Tuffy font, and see if you can find a version of Tuffy that renders more nicely on Windows. We'd love a pull request that lets us keep using this font that also makes it work on Windows! (If you try multiple things, and they all results in the same jagged-ness, then please also say so on the bug.)
 * Skills you'll need (to have, or to learn): Reading CSS files; general understanding of web fonts.
 * http://openhatch.org/bugs/issue425 -- some time ago, people experienced a problem where when you logged into the site, a "Recommended bugs" area of your personal home page would spin forever. Does that still occur? Please update the bug with the results of your testing.
 * Skills you'll need (to have, or to learn): Willingness to use a website and report on your experience via a bug tracker.
 * https://openhatch.org/bugs/issue948 -- adjust training missions' HTML to recommend a different command line web page downloader
 * Skills you'll need (to have, or to learn): Run the OpenHatch site locally; use command line tools (tar and curl); submit pull requests.

Harder tasks:
 * https://openhatch.org/bugs/issue898 -- Sign up for an account on AppVeyor and configure their site to automatically periodically test if oh-mainline runs properly on Windows.


 * http://openhatch.org/bugs/issue917 -- The contact info form, the personal name editing form, the tag editing form do not use Django's "cross-site request forgery" protection. An independent security researcher found an issue on the site where we are not protected against this sort of attack. You may notice discussion of stickers on the bug; that's because we promised we'd send stickers to the researcher. Asheesh/paulproteus will be very happy to help you; find him on IRC!


 * http://openhatch.org/bugs/issue71 -- add support to the site for Gravatars. Very open ended at the moment. I would prefer to leave the task of actually downloading the Gravatar to be done in the user's web browser, but that might seem kind of like an odd implementation strategy.

Open Science Collaboration blog
Description: The Open Science Collaboration is "a loose network of researchers, professionals, citizen scientists, and others with an interest in open science, metascience, and good scientific practices." They keep a weekly blog to publish opinions and stimulate discussion. Most members of the OSC are not technical, so they could use some help adding features and fixing bugs with the software that runs their blog. The OSC blog is built using Pelican, a static-site generator built with Python. Most files in the project are Python, Markdown, or HTML/CSS files.

Resources:
 * The blog itself is here.
 * Overview and instructions for setting up the development environment and contributing changes can be found in the repository's main readme.
 * Main contact: Shauna (shauna on Freenode; shaunagm at gmail dot com); back-up contacts: Sheila (skay on Freenode); and the general mailing list (mostly not used for technical development)
 * If you run into issues with any of the tasks, please update them in the issue tracker! If you encounter new issues with the project - incomplete or confusing documentation, some other kind of bug - please feel free to make new issues in the issue tracker.

Tasks:
 * Add "Read more" functionality: Project members want the ability to shorten long posts using a "read more" link.  Add the pelican plug-in (linked on the issue) to the blog.  Make sure that the plug-in works, and add documentation to the main README showing how post editors should reference the plug-in in posts.
 * Sharing buttons for articles: Add buttons to allow readers to easily share articles across social media platforms.
 * Fix whitespace css issue: Currently all images on the blog have extra whitespace added via css.  Create a special class for "author avatars" with the appropriate amount of padding, and return the plain image class to having no padding.

WelcomeBot
Description: WelcomeBot is an IRC bot designed to welcome people into the #openhatch IRC channel (although it can be easily adapted for use in other channels). It is written in python, and features the socket module.

Resources: Source Overview and installation/contributing guides: can be found in the repository's readme. Main contact: Shauna (shauna on Freenode; shaunagm at gmail dot com) Updates/problems/ideas: Please use the issue tracker! (As well as asking shauna about them on IRC.)

Tasks:
 * Add rules to catch unidentified nicks - When users who have registered their nicknames join IRC without identifying, different IRC clients will change their nickname in different ways. The bot currently only accounts for one of those ways, which means people are greeted unnecessarily.
 * Fix hello/help functions - The bot currently casts too wide a net when looking for key phrases to respond to. Using regex or some other method, create a better filter for when the bot should respond.

TEMPLATE: NAME
Description: Please describe your project here. Make sure to mention the overall goal of your project as well as mentioning the main technologies it uses. People using this page may be doing searches for keywords such as topics, types of software, or language names, so make sure they can find your project!

Resources:
 * Project Overview
 * Setting up the development environment
 * Contributing changes
 * Contact info

Tasks:

= Recommended Projects =

= Additional Resources =

If you don't find any tasks you'd like here, try these additional sources:


 * This page has curated tasks from previous events, but there are no maintainers for these projects at the event. That said, other mentors will probably be able to help you.
 * Search 700+ open source projects at once
 * Find a project that fits your interests using this guide.

You can see past first tasks, which have been successfully resolved, here.