OddThinking

A blog for odd things and odd thoughts.

Cross-A-Pix: Trying out Constraint Programming engines

After the Snail Puzzle, I took a huge departure from my previous attempts at newspaper puzzle solving. Basically, I broke all of my self-imposed rules. I had a discussion about Constraint Programming with some other developers. My contribution to the discussion was basically “I don’t know anything about Constraint Programming,” so I decided to give […]

Read more...

Categories: Puzzle Solving,S/W Dev
Tags: puzzles

The Snail Puzzle

[*FX*: Sound of man blowing dust off and old engine, opening the fuel valve, adjusting the throttle and then yanking the pull cord a couple of times until the motor starts up.] Would you look at that? The blog still works. I’ve come back for a couple of quick posts. I used to document all […]

Read more...

Categories: Puzzle Solving,S/W Dev
Tags: puzzles

Bashing bash

Microsoft are porting bash to Windows. Microsoft may as well tell me that they are going to support those old Sun mice that required the special gridded mouse mats. Why would we want to go back to that?

Read more...

Dice Games: Part 3 of 3: Solutions

Warning: Contains spoilers. Go read Part 1 and Part 2 first. Game A Jump to rules. It is easy to work out the model for this game by hand, but remember my goal here is to exercise some code. So, let’s see some output from the code. Here is the distribution of payouts. The expected […]

Read more...

Categories: Geek,Puzzle Solving,S/W Dev
Tags: dice

Dice Games: Part 2 of 3: Revealing the Meta-Goals

This is background information for Part 1. About six years ago, I was taught a dice game called Farkle. If you haven’t heard of it, it is not the same as Yahtzee, but it is close enough for this discussion. I have been meaning to get around to modelling Farkle, and coming up with an […]

Read more...

Categories: Puzzle Solving,S/W Dev
Tags: puzzle

Dice Games, Part 1 of 3: Defining the Rules

So, suppose we’ve been hired by the research division of SomeBetOdd
Casinos. They want an analysis of some new dice games they are thinking of introducing.

Read more...

Categories: Geek,Puzzle Solving,S/W Dev
Tags: puzzle

Haskell versus Python at solving Alphametics

Eight years ago, I posted a description of an Alphametics Helper. I wasn’t much interested in the answers (as was evidenced by the fact it gave wrong answers, and I only just noticed) so much as the architecture – I wanted to implement a new Puzzle Solving Framework that later proved to be very versatile. […]

Read more...

Categories: Puzzle Solving,S/W Dev

Light Up Puzzle

Long-term readers (given the radio silence, do I have any other type?) will remember that I wrote a Puzzle Solving Framework to help solve “newspaper” pencil-and-paper puzzles. I’ve been thinking of preparing a presentation about it for a local Python group, so I decided to implement another one. Introducing Light Up Light Up is an […]

Read more...

Categories: Puzzle Solving,S/W Dev
Tags: puzzles

Over-experienced

Apparently, I used C# well before the iPhone.

Read more...

Anti-Pattern: Report Proliferation

Report generation involves a conflict of interest, leading to proliferation.

Read more...