Code Monkey home page Code Monkey logo

oredev2014-angular's Introduction

Oredev 2014 Angular Workshop

Notes

80% of my Angular use is restricted to:

General info

  • LinemanJS
  • Angular expressions (in the template) link
  • How to build a filterable, sortable table link
  • Detailed isolated angular testing screencast (with audio!) video
  • Detailed isolated rails screencast (paid) link
  • Test Isolation post link

Philosophy

  • Be pragmatic and always optimize for tight feedback.
  • Never default to any tool, including Angular.
  • Use Angular instead of jQuery. (Actually Angular is just using jQuery for you.)
  • Use Ember for single page apps
  • Don't write single page apps unless you've got a good reason. (HTTP solved routing in 1991; reinvent with care.)
  • erb/ HAML and Angular are like peas and carrots
  • Capybara and rspec/ minitest make great testing tools when you'e testing interactivity
  • Try to extract logic into tool agnostic functions whenever possible. (In any language.)
  • Mocks are great and mock pain should drive design.

Workshop

[Repo] (https://github.com/testdouble/oredev2014-angular)

Instructions

  • install node.js
  • npm install -g lineman
  • clone it
  • cd into it
  • lineman run it
  • open http://localhost:8000
  • Complete the 3 exercises

Exercise 1: My Name Is

Exercise 2: List

Exercise 3: Airstrike

Mockup

MVP

  • Single grid, single player game
  • User fires blindly until they sink all opponent ships
  • The player doesn't have ships of their own

Bonus

  • Randomize opponent ship positions
  • Let the player know when they sink a ship
  • Give the player ships and make an AI opponent that can fire back

Research

From the wikipedia Battleship page:

After the ships have been positioned, the game proceeds in a series of rounds. In each round, each player takes a turn to announce a target square in the opponent's grid which is to be shot at. The opponent announces whether or not the square is occupied by a ship, and if it is a "hit" they mark this on their own primary grid. The attacking player notes the hit or miss on their own "tracking" grid, in order to build up a picture of the opponent's fleet. When all of the squares of a ship have been hit, the ship is sunk, and the ship's owner announces this (e.g. "You sank my battleship!"). If all of a player's ships have been sunk, the game is over and their opponent wins.

oredev2014-angular's People

Contributors

theotherzach avatar rosston avatar

Stargazers

EM3R50N avatar

Watchers

Joel Helbling avatar Andrew Coleman avatar Todd Kaufman avatar Dean Radcliffe avatar Dustin Tinney avatar Neal Lindsay avatar Brian V. Hughes avatar Nicholas Henry avatar River Lynn Bailey avatar Ed Toro avatar Micah Adams avatar Camilo Payan avatar  avatar Jason Karns avatar Tom Nightingale avatar Jerry D'Antonio avatar Jeremy Fairbank avatar Raelyn Bangel avatar Chris Love avatar Warren Lapham avatar Jon avatar Jessie Puls avatar Elmar John Valmores avatar Matt avatar James Cloos avatar Jesse O'Brien avatar Craig Zeise avatar Andy Mikula avatar Tim Heuett avatar David Coutu avatar  avatar  avatar Josh Greenwood avatar Lewis Sparlin avatar Kaleb Lape avatar Eric Weinstein avatar Stephen (Steve) Crespo avatar Cassandra avatar Eric Newbury avatar Joshua Starkey avatar Landon Gray avatar Alex Martin avatar Christine McCallum-Randalls avatar Richard Steen avatar Shehan Perera avatar Marla Zeschin avatar Jeff Jia avatar Mavrick Laakso avatar Alec Clarke avatar Rich Seviora avatar Minnie Lee avatar Pam-Marie avatar Viral Patel avatar Jason Allen avatar Gabriel Côté-Carrier avatar Robby Thompson avatar Neal Hill avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.