Resources for completing the #won?
- Search Iterations:
- https://learn.co/tracks/full-stack-web-development-v5/procedural-ruby/iteration/search-enumerators
- https://ruby-doc.org/core-2.4.1/Enumerable.html#method-i-detect
- Iterating with Nested Arrays:
- https://learn.co/tracks/full-stack-web-development-v5/intro-to-ruby-development/ruby-tic-tac-toe/nested-arrays
- Accessing Elements in an Array
- https://learn.co/tracks/full-stack-web-development-v5/procedural-ruby/arrays/using-arrays
- https://learn.co/tracks/full-stack-web-development-v5/intro-to-ruby-development/methods/display-tic-tac-toe-board
- Previous application of the won? Method
- https://learn.co/tracks/full-stack-web-development-v5/intro-to-ruby-development/ruby-tic-tac-toe/tic-tac-toe-game-status
Resources for pairing
- Pair Programming
- https://blog.rapid7.com/2017/01/27/5-rules-of-pair-programming-etiquette/
- Ask for pairing in the slack channel #online-web-developer
- Driver/Navigator and Pass Pair Programming
- https://medium.com/@weblab_tech/pair-programming-guide-a76ca43ff389
Resources for completing the #turn method
- Recursion in Ruby
- https://stackoverflow.com/questions/6418017/what-is-recursion-and-how-does-it-work?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa
- http://ruby.bastardsbook.com/chapters/recursion/
- Previous application of #turn
- https://github.com/learn-co-curriculum/ttt-8-turn
Resources for error reading in ruby
- Reading Errors
- https://stackoverflow.com/questions/17749403/how-do-i-read-error-messages-in-ruby-and-ruby-on-rails?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa
- Stack traces
- https://blog.appsignal.com/2018/02/06/reading-and-understanding-ruby-stack-traces.html
- Exception Class
- https://airbrake.io/blog/ruby-exception-handling/nomethoderror
Resources for completing the #update method
- Pass by reference vs pass by value
- http://ahimmelstoss.github.io/blog/2014/06/11/pass-by-value-vs-pass-by-reference-in-ruby/
Resources for completing the #move method
- Class inheritance
- https://learn.co/tracks/full-stack-web-development-v5/object-oriented-ruby/object-architecture/intro-to-inheritance
- Capturing user input
- https://learn.co/tracks/full-stack-web-development-v5/intro-to-ruby-development/command-line-applications/gets-cli-input
- Conversion of user input
- https://learn.co/tracks/full-stack-web-development-v5/intro-to-ruby-development/command-line-applications/tic-tac-toe-move
- Previous implementation of move
- https://learn.co/tracks/full-stack-web-development-v5/intro-to-ruby-development/command-line-applications/tic-tac-toe-move
Resources for completing the #won? When tested with two winners
- Issue raised on Github
- https://github.com/learn-co-students/ttt-with-ai-project-v-000/issues/969
- Rspec cheat sheet for understanding tests
- http://www.anchor.com.au/wp-content/uploads/rspec_cheatsheet_attributed.pdf
Resources building out a CLI class
- Separating concerns - small bin file and CLI (aka Controller) class that takes care of I/O -- check out solution branch of the Music Library CLI project.
- https://github.com/learn-co-students/ruby-music-library-cli-v-000
Resource Guide for building the Game Class
- Inheriting Classes:
- https://learn.co/tracks/full-stack-web-development-v5/object-oriented-ruby/object-architecture/intro-to-inheritance
- Namespacing with Modules:
- https://learn.co/tracks/full-stack-web-development-v5/object-oriented-ruby/object-architecture/intro-to-modules
- Collaborating Objects:
- https://learn.co/tracks/full-stack-web-development-v5/object-oriented-ruby/object-relationships/collaborating-objects
- https://learn.co/tracks/full-stack-web-development-v5/object-oriented-ruby/object-properties/object-accessors
- Reading Error Messages:
- https://learn.co/tracks/full-stack-web-development-v5/intro-to-ruby-development/debugging/reading-error-messages
- Debugging with Pry:
- https://learn.co/tracks/full-stack-web-development-v5/procedural-ruby/variables-and-methods/debugging-with-pry
Resources to consider when building out the AI
- Tic Tac Toe Strategy:
- https://en.wikipedia.org/wiki/Tic-tac-toe#Strategy
- Conditional Flow:
- https://learn.co/tracks/full-stack-web-development-v5/procedural-ruby/logic-and-conditionals/if-statements
- https://learn.co/tracks/full-stack-web-development-v5/procedural-ruby/logic-and-conditionals/ternary-operators-and-statement-modifiers
- https://learn.co/tracks/full-stack-web-development-v5/procedural-ruby/logic-and-conditionals/case-statements