Games to learn programming

Robocode is a programming game, where the goal is to develop a robot battle tank to battle against other tanks in Java or .NET. The robot battles are running in real-time and on-screen.

RoboWar is a freeware strategy game. Yes it is free. The goal of the game is to make your robot kill all other robots and be the alone survivor. To do this you must program a robot in RoboWar’s own language which is easy to learn.

Core Wars is a programming game in which two or more programs run in a simulated computer with the goal of terminating every other program and surviving as long as possible.

Bug Brain is a game where you build brains to run a bug. You start in the lab where you experiment with the neurons and nodes that make up a brain. From there you move out into the field to build a brain for a Lady Bug to help it feed and survive. Bug Brain features rendered graphics, challenging puzzles and the opportunity to learn about neural networks.

Inspired by Behat

Pride comes before a fall – A person who is extremely proud of his or her abilities will often suffer a setback or failure, because he or she tends to be overconfident and to make errors of judgment.  Latching onto Agile as a weak guide can give people a false sense of security.  Continue reading

Groovy DSL

The gap between language-driven requirements and code is getting smaller, but for some reason it is taking us all a while to realise that programming languages have to become more readable. If you look a piece of any code, you will dereive things that you understand. If you remove all that you understand from the program and paste it in another doc, the chances are you will have (more of less) a description of what the code is doing, that you (and others) can understand.
Continue reading

Grammar-oriented programming

What the biggest risk in development (leaving out frightening common omission of unit testing)?   That what is written down as requirements suffers a chinese-whispers style path to code.  TDD was an approach to address that risk, by saying that before functional coding starts as test based on requirement is derived, then functional coding done to pass the test.   Oversimplifying the nuts and bolts, but that is general idea.

Continue reading