Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Does it suck? Or does it rock?
Ruby JavaScript Shell
Branch: master
Failed to load latest commit information.
app fix bug: NoScore wasn't converted to nil in JSON
config add ScoresController
db add CachedScore model and database table
doc create rails app
features run features against whole API
fixtures/cassettes add scenario: Search for term with no score
log create rails app
public js gets scores from server, not suck/rock counts
spec fix bug: NoScore wasn't converted to nil in JSON
vendor create rails app
.gitignore create rails app
.rspec install rspec and cucumber
.rvmrc add rvmrc
Gemfile add SearchEngine class
Gemfile.lock add SearchEngine class add readme
Rakefile create rails app create rails app



Sucks/Rocks judges the goodness of terms by searching the web for positive and negative mentions of them.

Its design is intended to illustrate isolated unit testing as well as service-wrapper-record design. Services have no concrete knowledge about the database or external services; records wrap the database, providing the interface that the services need; and wrappers hide details of third-party APIs, narrowing their interfaces to only what the services need.

This application was built test-first as a demonstration, and the full process is viewable as a series of eight Destroy All Software screencasts.

Something went wrong with that request. Please try again.