Skip to content
This repository
branch: master

This is the source for the new website.

Running the site locally

Clone this repository

git clone git://

Install Ruby

Ruby 1.9.3 is recommended. You can install it with RVM. Then install some gems.

gem install bundler
bundle install

Start the server

bundle exec rackup

Alternatively, if you want any changes to app.rb to be picked up:

bundle exec shotgun

See the site

Just go to http://localhost:9292 (alternatively http://localhost:9393 if you started with shotgun)

Creating new pages

Just create a new file under views/ with either .markdown or .erb extension. Use .erb to create special layout using the Twitter Bootstrap Grid.

Files starting with an underscore (_) do not become individual pages---they are meant to be included by erb pages.

Special Markup

See the RDoc in lib/super_markdown.rb

Hacking on js/css

Most of the files under public/css and public/js are generated by rake and checked into git so they can be served on e.g. Heroku. These files should not be edited directly. The only files under public/css and public/js you should edit directly are:

  • public/js/app.js

If you want to modify any other css or js files, please do so via the submodules:

Get submodules

git submodule update --init --recursive

Build static assets

bundle exec rake

A great tip for tweaking SHJS CSS is to use Opera

pre.sh_sourceCode span:hover{

Beta site

Currently at

Content !!!

Summarise that and play devil's advocate. Make people understand that C is not supposed to be exhaustive - and it's not really for testing.

It's for conversations and broad-stroke tests.

It's easy to learn and use, but don't over-use it because that almost always incurs a huge cost. It carries weight.

Think of it as packing a light suitcase before going on a week-end trip. You only bring essentials like clean underware, evening clothes, cigars and a box of chocolate for the lady.

Of course, you could get four big suitcases on wheels and a hard plastic shell. Pack it full with all sorts of clothes, your golf clubs, a cookbook in case you get tired of dining out, an iron in case the hotel room doesn't have one and why not throw in a couple of different boxes of chocolate in case there are more ladies around.

(Picture of 2 different travelers - a young smart man and a young man struggling with luggage)

Except - that would be heavy and burdensome to carry around. So you stick to the bare minimum.

Specification by Example is not Design by Contract (formal and exhaustive). It isn't testing either (validating).

It is a pure activity of communication and how to be specific without being descriptive.

TODO: an example from the real world.

Something went wrong with that request. Please try again.