Theory and Tools

Puzzle Practice

Code puzzles, challenges and how to design them.

Designing Your Own Code Puzzles

Practical advice on puzzle design: how to write clear, fair coding puzzles with answers that can be checked, and how to test them before sharing.

4 min read

FizzBuzz in Odd Languages

A look at the classic FizzBuzz puzzle and what changes when you express it in a tape, stack or grid language instead of a conventional one.

4 min read

Learning from Other Peoples Solutions

How to study code you did not write: when to look, how to read it, what to take away, and how to avoid simply copying someone else's answer.

4 min read

Obfuscated Code and Its Purpose

A look at obfuscated code: playful obfuscation as a creative pastime, practical code protection, how they differ, and what each can and cannot do.

5 min read

Palindromic Programs

Why programs that read the same forward and backward are a favorite puzzle, what makes them hard, and why grid languages suit the idea so well.

5 min read

Polyglot Programs

What polyglot programs are, how one source file can be valid in several languages, the common techniques behind them, and why people enjoy making them.

5 min read

Scoring and Fairness in Code Challenges

How scoring rules shape which solutions win in code challenges, common scoring methods, their side effects, and how organizers can aim for fairness.

4 min read

Solving Mazes as a Programming Puzzle

Maze solving as a programming puzzle: common traversal ideas such as wall following and search, and how they map to a pointer moving across a grid.

5 min read

Writing Programs Under a Size Limit

Strategies for fitting a program into a small number of characters or grid cells: planning, reuse, reshaping the algorithm, and knowing when to stop.

5 min read

Related topics

More in theory and tools