Skip to content

The massive multiplayer Chess game slash ✨ ReactiveCocoa tutorial ✨

License

Notifications You must be signed in to change notification settings

tamarnachmany/staunton

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

(This repository is part of a Flatiron meetup. You've missed the date! But you should still check out this repo. Anyway. Here's a slice of history.)

~ (/¯◡ ‿ ◡)/¯ ~

Dear Internet,

This is a repository for a presentation Hao Lian and Ian Henry like to give about ReactiveCocoa and, more importantly, reactive programming.

First, we'll just talk at you:

  • Key-value observation: the worst thing ever?
  • ReactiveCocoa: ostensibly a better KVO, but actually so much more
  • RACSignal for subscribing and RACSubject for pushing: friends, hand in hand

We expect to run through these topics very quickly because we want to get to the interactive portion of the talk.

Then! We'd like everybody to clone the GitHub repository. Everybody will begin with a boring single-user chess board but leave with a working WebSockets-powered multiplayer chess game. We'll cover:

  • Signals and views: experience the future of programming in one line of code
  • take and equals: simple combinators, but enough to implement a networking state machine
  • Drag and drop: yes, this too can be done with ReactiveCocoa
  • If we have time, we'll find a security exploit in a poorly-written random number generator with ReactiveCocoa and use it to win the game

Along the way we'll pepper in what we've learned from using ReactiveCocoa in production. Ian and I are huge RAC fans, and we'd love people to start using it. It turns ObjC programming from a hassle into a castle. Trillions of Trello iOS users run ReactiveCocoa every day, and we'll talk about

  • Debugging
  • Performance
  • Memory management
  • Having fun
  • Reactifying table views
  • Why MVC is broken and what you should use instead
  • Implementing a REST client with ReactiveCocoa
  • The mathematics behind reactive programming
  • The history of ReactiveCocoa
  • How to program a chess server in Haskell
  • Ten more things

[Some of these things we might not get to.]

Sincerely, Hao and Ian.

About

The massive multiplayer Chess game slash ✨ ReactiveCocoa tutorial ✨

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Objective-C 92.5%
  • C 6.2%
  • Other 1.3%