Open sak55 opened 9 years ago
Work in pairs or trios for this project. One person will create a new repository called TIY-Chessboard
, then invite the others as collaborators, Each person must add work to feature/
branches and open Pull Requests to master
that are reviewed by peers before being merged. All commits to master
must be merge commits!
There are a lot of moving parts in this assignment, so spend Thursday planning!. Plan the work out in "features" -- discrete chunks of functionality -- and estimate them; break down "features" into "tasks" -- bite-size pieces of a "feature". Anything larger than a Small should be broken down further. Write these down as the first issue in your new repo and link to it in your WIP Issue!
Prioritize your feature list according to difficulty and dependency. For example, you can't move pieces on a board until you have pieces. Go figure.
Draw some diagrams of how the system will work. Collaborate on your old chessboard. Clean up any code you've already written or re-write it together. Build a model of the sytem with strips of paper. Come up with names for things. Just plan together...
Divvy up the work by tasks and features. Create feature/
branches for your work. Name them collaboratively. Open PRs early so that others can see what you're working on. When you think you're finished with something, show it to your teammate(s), have them check out your branch (stashing or committing their changes first), and evaluate your progress. If you're working together, ask one of the other teams to take a look. Compare notes frequently with the others. This is not a competition.
Turn your print(board)
function into a toString(board)
function that returns String
rather than logging it. Replace the outerHTML
of #chessboard
with the result of toString(board)
and ditch all that HTML!
Make buttons across the bottom, side, or top that will increment the board through moves, which are stored as elements in an Array
.
After each move, update the #chessboard
. Start by just "refreshing" the outerHTML
property. Yuck. What about just changing the classes on each cell instead?
On "rewind", reset the JavaScript board
and the #chessboard
back to the starting position. On "fast-forward", apply all the remaining moves in rapid succession.
First Issue. https://github.com/sak55/TIY-Chessboard/issues/1
TeAm @sak55 @adamkarb repo https://github.com/sak55/TIY-Chessboard
Looking for links back to your PR's, I can see you guys had quite a few which is great, good organization of features
@LoganArnett how dare you we had so many commits
Deliverables
16 -- A Nice Game of Chess
with: (S)TIY-Chessboard:master
(XXL)TIY-Chessboard
TIY-Chessboard:master
made by merging PRs onlyTIY-Chessboard
feature/
branches tomaster
css/main.css
index.html
js/main.js
<button>
's for: (XXXXXL)