You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In order to receive help on an issue you are having during your development process you must submit a Github Issue for your project. Below is a guide for the information that must be included when submitting an issue. It is expected that you will try to debug/solve an issue prior to submitting a request for help on Github.
Context
When submitting an issue provide some context as to what the problem is. This includes but is not limited to:
What User Story you are currently working on
What you are trying to do
Detailed description of the bug or error
Relevant code/files/errors, screenshots
Gems and/or other technologies being used
What have you tried?
Give information about what you have done to solve the problem. Including but not limited to:
Code review is any process where people review code that has already been
written. Generally this is to identify errors or to suggest ways the code could
be improved (refactored).
Why do code reviews?
Jeff Atwood (co-founder of Stack Exchange, and a smart dude) has written a
great summary which I
encourage you to read. The short verion? Code review can reduce the number of
errors in our programs dramatically.
In addition HAMco believes that learning to read code critically is an important
part of improving our own code. After all, to improve our own code, we must read
it, looking for ways to improve it.
Additionally, many work environments practice some form of code review, so it's
good to get practice in giving feedback to others now. Even if your future
workplaces don't have a formal code review process, you may find them so helpful
that you implement your own informal practices with your teammates!
How to Code Review?
At it's core, doing a code review is just reading code and giving feedback.
When reading code, you should be looking for:
code quality (hamSTACHE)
potential bugs
When giving (and recieving) feedback, remember that we're discussing and
commenting on code, not the person who wrote it!
There are a few ways we can actually read the code and give feedback:
Read The Most Recent Version (Full-Context)
One way is to just read through the most recent version of the codebase. (i.e.
use Atom to browse the code.) Give feedback as you're reading to the person or
by leaving comments in the code.
This can be a lot of code, so it's generally a good idea to only focus on a few
areas of the codebase in this case. (i.e. a few models or controllers.)
Read What's Changed (Diff)
Another way is to review just the code that's changed since you last reviewed,
and give feedback on that.
Github will show you the changes between any two branches, commits, etc,
including by time!
To see this view, use a URL like:
https://github.com///compare/master@{1day}
This will show the difference between the current master branch (implied), and the
master branch 1 day ago. Make sure to select the appropriate time frame.
We will take Tuesday to pause our work on our projects and share where we are
at with the rest of the class. Remember, this is not the last time you will work on your project.
Format
Project presentations should be 10 minutes long + 5 minutes for questions. That is not much time, so make sure to streamline your presentations.
You will be able to hook up to the projector to demo your project and show us code. You are not required to have a slide deck for the rest of your presentation.
Ensure that your up-to-date application is deployed to Heroku
Ensure that your Trello board is up to date
Ensure that your README is complete
During presentations, your laptop should not be open, unless you are on deck to present.
You are granted two questions for the entirety of the presentations. This is because we have to stick to a very tight time schedule, so use your questions wisely!
Section
Description
Demo
A short (1 min) demonstration of the key features of your application
Creativity
Show us one thing that you are proud of (let's see the code!)
Discernment
Tell us about one thing that did not go well (how did you handle it?)
Push the lastest copy of your project to GitHub, so we can give you the most
accurate feedback possible.
Pair Refactoring Excercise
For this exercise, we will be refactoring our first projects. You should NOT add
any features. Instead, you should just focus on improving code quality. Refer to
the hamSTACHE guidelines. VERY MINOR changes in functionality are acceptable if
they are required to make an improvement in code quality.
We will refactor our projects by pair programming with a partner.
You can use any pair programming technique / style that you'd like, including:
Driver/Navigator
Ping/Pong (A Write tests, B makes them pass, repeat)
Ping/Pong Alternating (A Write tests, B makes them pass, then flip)
Note: Just because you're working on A's project, doesn't mean A has to be the
driver for driver/navigator.
You have until 5:00pm, and you should spend equal amounts of time on your
project and your partner's. You may divide this time however you like, i.e. you
can do 1 hour blocks alternating between projects, or you can do 3 hour blocks.