views:

683

answers:

1

Duplicates:


Sometimes I like programming a self-contained, "small" problem just for leisure and fun. Project Euler's problems in this regard are to big and need to much brain power for the math. And frankly I'm not so interested in the challenge and the chance of learning hard topic, the "chance to grow" but something smaller: I'd like to solve something in programming language du jour just for exploring language idioms, for elegance in usage, description or programm flow or just for aesthetics by whatever measure is on my mind. It's just for fun.

So, I'm in a weird middle ground in searching for this problems. Forums like this one ore other elsewhere have this problem that the problems often are to small and not much of an inspiration. Often the right answer ist just getting the syntax right or explaining the documentation which the asker did not read. And of course the solution has to be in the programming language or enviroment which was asked, not the one in which I think today. And of course the problems are often frankly boring. On the other hand Project Euler is too much of a challenge to amount as an half hour of fun. The context is too much learning new stuff instead of executing already known stuff more elegantly. And just getting a bug from the tracker of the open source project of choice ist too much work to be just fun. Additionally you've got to learn a whole new system and and how to navigate in this technical and social enviroment. The same goes for incrementally work on bigger personal projects; those have higher standards and best practices like documentation and tests andd and and. Porting something known from language A to language B is plain boring.

So. Do you have a place of interesting, small (= solvable in half an hour to two hours), self-contained (= not dependend on larger libraries) problems, challenges and such? Or better: Do you have some and are willing to post them here?

Some examples which I had fun with: implementing a (falsy) subset Unicode Normalization Forms algorithm in Javascript, strange date arithmetic in Python, generating SVGraphics with Haskell, weird bookmarklets in Javascript, generatic ASCII calendar tables in Common Lisp, parsing an ad hoc documentation format in Python, an IRC bot module, pipelines of log files, etc.

+2  A: 

Have you already written your own 'game-of-life' implementation (in a language by choice)?

It's quick and easy to implement (different possible approaches) and fun...

http://www.math.com/students/wonders/life/life.html

ChristopheD