Coding Dojo

Edit on Github

Quote of the day CGI

About this Kata

I teach web applications programming to undergraduates. I usually explain the stuff, point them to the book, and ask them to produce a finished web application as part of their examination. On some people it works and they make great apps. On other people it doesn’t. This year I’m trying a new approach, to teach with katas. I started with this small kata.

There are two main differences with respect to the usual TDD katas. The way I describe it, there is no TDD. My students can’t do that yet, and the main purpose is to teach about the web. So I replace the feedback from the tests with the feedback of reloading the page on the web. I’m still doing BabySteps though.

The other difference is that I describe every step in detail. I’m asking the student to learn to perform the steps by memory. I think this will teach them to really do BabySteps , and get quick feedback. My inspiration is UncleBob ’s , that I found so very instructive.

The full description:

Part of the motivation behind this experiment is that I don’t have the time or resource to actually follow them in regular lab exercises. The kata with detailed steps could be a great instrument for self study.

Problem Description

You are to write a web service that returns a different quote every time you visit it. As an additional requirement, if you add a query parameter like “?q=foobar” it should return a random quote that contains the string “foobar”.


Scripting languages such as Ruby or PHP should make it much easier than Java or C#.