Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Branch: master
Fetching contributors…

Cannot retrieve contributors at this time

20 lines (16 sloc) 0.918 kB

BT DevCon App

This is an app to allow people to propose, discuss and eventually vote on session proposals for BT developer conferences. It is intended to work along the lines of Ruby Manor's vestibule.

More importantly, though, I'm using it as a guinea pig rails project to try out a more object-oriented, outside in approach, inspired by people like Corey Haines, Gary Bernhardt and Avdi Grimm. These are the rules I'm trying to follow (I'll add more as I come across them, and remove any that turn out to be impractical):

  • Single responsibility principle: each class has only one responsibility

    • Persistence counts as a responsibility

    • Service classes named for their responsibility, eg CalculatesInterest

  • Dependencies injected on construction

  • No logic in views

  • Each view only gets a single presenter object

  • Outside-in design (no speculative classes or methods)

Jump to Line
Something went wrong with that request. Please try again.