/image-sharer-MalcolmScruggs

image-sharer-MalcolmScruggs created by GitHub Classroom

Primary LanguageRuby

Ropes Project

The Ropes Project is a repository that has everything you'll need to get started developing your onboarding Rails app. By the end, you'll have a full app deployed to Heroku that allows people to add images and share links to them with friends. Along the way you'll learn the basics of working with ERB templates, CSS, and Javascript as well as testing best practices.

Project Goal

The goal of the project is for you to develop confidence in building a modern ruby-on-rails application while learning and demonstrating our best development practices. You may find the tasks to be relatively straightforward, however, we want to stress the best practices which means that you may spend a significant amount of time addressing comments made by code reviewers after you've "finished" a task.

Project Workflow

Your overall workflow will make use of a few Github features. Don't worry if you aren't familiar with some of them, we'll go into detail below.

Each feature will be linked to a Github Issue. When you are ready to merge you will open a Github Pull Request and request a code review from whomever is assigned to that Issue. Once they've given it a green light you can merge it into your master branch. If you have other outstanding branches don't forget to rebase!

For a deeper dive into the Github workflow take a look at this walkthrough

Github Issues

We've broken up this project into a series of Github Issues. If you aren't familiar with them, think of them as stories. Each one encapsulates some bit of value being delivered. These issues can be found in the "Issues" section of your repository. The issue list view will look something like the following:

Example list of issues

Issues are to be worked on in their issue number order from low to high. This order was established to minimize dependency conflict as you progress through the issues. An exception is when an Academy session necessitates starting an issue early. As much as possible try to only have one issue in progress at a time.

Dependencies

Github Pull Requests

A pull request should be made whenever you are at a point where one of the following is true:

  • You would like to test your work on heroku via a review app.
  • You would like feedback on part of your code.
  • You are satisfied that your work addresses the acceptance criteria of the corresponding issue.

When you make a pull request be sure to:

  • Make reference to the corresponding issue
  • Assign the pull request to the same assignee on the issue

Additional Resources

Technical Resources

Nontechnical Resources

There's more to onboarding at AppFolio than just learning Rails, Javascript, and CSS. We've put together a list of great resources to help you learn more about the technologies we use, the Slack channels we live in, and the places we hang out in Santa Barbara and San Diego.

The New Hire Resources section of our Wiki has everything you'll need in your first few months, and the wiki serves as a great general resource as well.