Skip to content

Latest commit

 

History

History
35 lines (28 loc) · 3.78 KB

how_to_projects_irl.md

File metadata and controls

35 lines (28 loc) · 3.78 KB

MaptimeLA IRL Project Guide

Why this guide?

This was written by @machikoyasuda after the 2015 Hack for LA hackathon. MaptimeLA swept and won lots of awards! We wanted to keep a record of our methods for how we worked at the hackathon and on other successful meetup projects, like https://github.com/maptimeLA/old-la-restaurants https://github.com/maptimeLA/food_bank_data_bank https://github.com/maptimeLA/GIS-Resources-Map

Why do projects?

  1. To learn from each other. To teach each other. To have lots of fun.
  2. To make something for the community. To make something for each other.
  3. To use free, open tools and teach others how to use them, like Git, GitHub, Google Drive, Leaflet.js...

Ingredients: Set these up first

  1. Google Form: Is the data open-source? Will the resulting project be deployed up on GitHub for Maptime? Will the project go somewhere else? Will the Project Organizers/Lead/(Client?) join the GitHub project to make sure all tasks and requests are kept in public/open? No project scope-creep abuse.
  2. GitHub Repository: Start with the mapstarter repository. Keep README.md updated with Humans.txt and Data Source. Start with README.md already with deployment, cloning instructions. Deploy to gh-pages from the start so people can keep testing it on all sorts of browsers and devices.
  3. Google Drive folder: For initial data cleaning, gathering, editing, like the Old LA Restaurants project.
  4. Slack channel: Connect GitHub and Google Drive updates to Slack. Add GitHub and Google Drive folder links to Slack topic.
  5. IRL Materials: butcher paper, markers, white board, outlets, food, drinks, power strip, wifi, a place to write out the wifi password

Tips for happy working IRL:

  1. Get the data up online and visually-displayed ASAP, even if it's ugly: Let people see the data on a map as soon as possible: Try to get .geojson up as soon as you can. Post that map up to Slack or GitHub so everyone can access the link easily from their own computers.
  2. Get the physical paper out. Start brainstorming out loud and wireframing on paper: Is the project a static data project or dynamic data? Will it be interactive? Draw and post wireframes. Think about all sorts of features and assignments: Mapping, Data quality-checking, Writing copy that explains the map, Making logos, Designing the map, Designing the page, Finding more data to add, Data analyzing, Animating
  3. Start coding: Minimum viable map: After initial wireframes, define a minimum viable map, and prioritize the tasks towards reaching that goal. Assign pairs of people to these tasks as issues on GitHub.
  4. Deploy and share the link with everyone. Post the link at the top of the GitHub repository page so it's easily accessible.
  5. Test. Ask people to look at the link and start posting bugs. Make issues for bugs. Assign bugs to people. Fix them. Repeat.
  6. Go back to the tasks and keep tackling new features and tasks.
  7. Spread the map love! Then write a blog post about how we made the map and what we learned from it. Write about how other people can make similar maps by forking this one and adding their own data layers.
  8. Is there a question everyone keeps asking? That is a sign that this question and answer should be documented. Add that to the README.md. Is there a good tutorial people should use? Is there a certain StackOverflow question/answer you keep looking up? Go ahead and add those to the README.md.

How to pair and why:

  • Pair people up as much as possible.
  • Why? Pairing is important at a hackathon because it keeps people talking to each other, and you can get a gauge of where they are at.
  • Pairing also makes it easier to find each other’s typos.
  • Ask people “Let’s try..” “Want to try this?”
  • Take lots of breaks :-)