First Tasks: Difference between revisions

From OpenHatch wiki
Content added Content deleted
imported>Brittag
(→‎OpenStreetMap: linking to code)
imported>Brittag
(→‎OpenStreetMap: adding note about amazon web services)
Line 87: Line 87:
Suggested tasks:
Suggested tasks:


* '''Testing documentation''': OSM wants people to be able to easily use its freely-licensed data instead of using Google Maps data, so it has a website teaching people how to do this: [http://switch2osm.org/ Switch2OSM]. The author of the [http://switch2osm.org/loading-osm-data/ "Loading OSM data" article] (pnorman on IRC) would like feedback on this article! This article expects having access to an Ubuntu instance, and it is designed to be usable for anyone with basic Linux and PostGreSQL knowledge. You can write down comments about the article (and any difficulty you ran into while following it), such as in an Etherpad, and then send the link to pnorman in the #osm-dev IRC channel.
* '''Testing documentation''': OSM wants people to be able to easily use its freely-licensed data instead of using Google Maps data, so it has a website teaching people how to do this: [http://switch2osm.org/ Switch2OSM]. The author of the [http://switch2osm.org/loading-osm-data/ "Loading OSM data" article] (pnorman on IRC) would like feedback on this article! This article expects having access to an Ubuntu instance, and it is designed to be usable for anyone with basic Linux and PostGreSQL knowledge. You can write down comments about the article (and any difficulty you ran into while following it), such as in an Etherpad, and then send the link to pnorman in the #osm-dev IRC channel. If you don't already have convenient access to a computer or server running Ubuntu, you can try setting up a [http://aws.amazon.com/free/ free Amazon Web Services EC2 "microinstance"] to play with.
* '''Fixing frontend code''': [http://maproulette.org/ MapRoulette] is a fun tool that recommends map edits for you to make. The code is [https://github.com/osmlab/maproulette on GitHub here], with [https://github.com/osmlab/maproulette/issues issues listed here]. This issue looks like a good one to get started with fixing: [https://github.com/osmlab/maproulette/issues/224 "because we use element fadeouts quite a bit, we should probably disable buttons visually right when the user clicks them - right now there is no visual feedback when clicking a button, other than the dialog fading"].
* '''Fixing frontend code''': [http://maproulette.org/ MapRoulette] is a fun tool that recommends map edits for you to make. The code is [https://github.com/osmlab/maproulette on GitHub here], with [https://github.com/osmlab/maproulette/issues issues listed here]. This issue looks like a good one to get started with fixing: [https://github.com/osmlab/maproulette/issues/224 "because we use element fadeouts quite a bit, we should probably disable buttons visually right when the user clicks them - right now there is no visual feedback when clicking a button, other than the dialog fading"].
* '''Verifying a reported frontend bug''': The [http://tasks.hotosm.org/ OSM Tasking Manager] also helps map editors find editing tasks to work on. The code is [https://github.com/hotosm/osm-tasking-manager on GitHub here], with [https://github.com/hotosm/osm-tasking-manager/issues?state=open issues listed here]. You could help the project by seeing if you can reproduce this reported bug: [https://github.com/hotosm/osm-tasking-manager/issues/195 "Seems when scrolling up or down with the mouse wheel within the embed map, it moves both the map scale and the webpage scrollbar"] - and then add more details to that bug in a comment.
* '''Verifying a reported frontend bug''': The [http://tasks.hotosm.org/ OSM Tasking Manager] also helps map editors find editing tasks to work on. The code is [https://github.com/hotosm/osm-tasking-manager on GitHub here], with [https://github.com/hotosm/osm-tasking-manager/issues?state=open issues listed here]. You could help the project by seeing if you can reproduce this reported bug: [https://github.com/hotosm/osm-tasking-manager/issues/195 "Seems when scrolling up or down with the mouse wheel within the embed map, it moves both the map scale and the webpage scrollbar"] - and then add more details to that bug in a comment.

Revision as of 04:48, 10 May 2014

This page exists to provide you with good, small tasks as you get started contributing to open source projects.

Every project on this page 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 who's really excited about welcoming you to their project.

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.

This page was last curated 2/14/2014. Tasks on this page may have been resolved since then, so check their status in their respective issue trackers.

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:

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:

  • 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.

Shauna added (integrated these when the above are checked):

  • Reproduce documentation issue A student reported an issue with the documentation for XChat. We've now switched to HexChat. Does the documentation still need to be fixed?

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.
  • Bot does not recognize fast name change - When users join the channel and change their name, the bot uses their original name to greet them. A fix for this would likely involve:

Harder tasks that may still be fun:

  • Bot goes offline silently - Every couple of weeks, the bot experiences a bug and turns off silently. Investigate tools like cronjob, monit, nagios, etc so that we can get a notification if it goes offline.
  • Make test suite - If you like testing, this is the task for you! A good first step would be to read through the script and identify what needs to be tested. Alternatively, if you could read through some of the resources listed in the issue and report back what you've learned about doing tests in python, that would be super helpful too. This project's maintainer has never developed tests before from scratch, so we are all in it together. :)
  • bug causing bot to go offline - This may be a tricky bug to fix, since it's not clear what input is causing the crash and it may be difficult to reproduce (the bot currently crashes on this bug approximately every two weeks). But you may be able to figure out what's going on from the information given!

OpenStreetMap

OpenStreetMap is collaboratively building a free map of the world, editable by anyone. Imagine the collaborative editing of Wikipedia, but making a map like Google Maps instead of an encyclopedia. The project has many components and tools using many languages and technologies, both backend and frontend - if you like Ruby on Rails, PostgreSQL, Java, Javascript, C++, C, Python, or other languages, you can find components to contribute to.

Resources:

Suggested tasks:

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: