I am teaching an introductory class in web programming to a room full of Liberal Arts majors, and I'm running short of ideas for small programs that are both simple enough to demonstrate programming concepts, and also have obvious utility (to a non-Computer Scientist). Were these all CompSci majors, I would be willing to throw out a fair number of "pointless" exercises - generating a fibonacci sequence, finding prime numbers, that sort of thing. But given that the average level of maths in the class is (dimly remembered) high school algebra, and the interest in maths is even lower... I need programs that are a little more concrete.
So far the examples I have used are a tip calculator (to learn input, output, expressions and variables), and form validation (to learn flow control and logical operations). I would love it if any of you were willing to throw some other examples into the ring to help me brainstorm - small programs that do something meaningful, without a whole lot of domain-specific knowledge (i.e. maths)?