Borkware CryptoGrammer

(last updated January 21, 2004)

What It Is

CryptoGrammer is a little toy that helps make solving those "CryptoGram" letter-substitution puzzles that you find in newspapers and magazines easier. Type in your puzzle, or load one of our pre-built puzzles. Then click on letters to type a substitution and watch all of those letters automatically change. Runs on Jaguar (Mac OS X 10.2.8 or later) or Panther.

CryptoGrammer is freeware. Use and enjoy. The source code is available too. Any questions or comments? Send them to

The original suggestion from Penny read:

I love the Cryptogram puzzles you find in the newspaper and crossword puzzle books. But solving them by hand is tedious, because I end up doing a lot of erasing. The newsprint these things are printed on tend not to hold up to a lot of erasing, plus it's a pain finding that I forgot some letter somewhere that points me to an error I made. erase erase erase. I'd love to have a little app where I can type in my puzzle and have the computer swap letters around for me.


  • 1.0 : it works! (January 21, 2004)


Download CryptoGrammer (v1.0), 159K (compressed disk image format)
Includes 26 sample cryptograms for you to solve.

Download XCode Pröject (with source) (v1.0), 162K (tar.gz format)

Known Problems

in 1.0
  • Note that CryptoGrammer won't tell you when you've solved the puzzle. I figure you can tell when you've got a readable sentence.

  • Drawing performance is a little pokey on Jaguar. I think it has to do with the drawing of the letters. If it's a problem for you, let us know. We've got an optimization (draw the letters to images) we can try.


Here is the CryptoGrammer playfield. The first letter V has been selected. It's shown with a darker background. All the other Vs have been drawn with a lighter background, so you can see which letters you might change if you type a replacement.

Here we've typed an R. Now all the Vs will now be replaced by Rs. Take a look over there in the Letter Frequencies column. What was V(V) is now V(R). The first letter is the original letter, and the letter in the parenthesis is the replacement letter. The number next to them is how many times they appear in the given cryptogram. The Letter Frequency is handy for some starting letters to try. And here is the game nearing completion. The original phrase was "Cryptograms are fun!" This is terribly exciting, isn't it? You can save Cryptograms that are in-progress. Open one of the samples for a pre-built cryptogram. You can enter your own too. Choose Enter Cryptogram. This will show you a sheet where you can enter your own cypher-text.

Items of interest about the code

  • The initial feature-complete version took about a day to write.
  • NSView drawing and hit-testing the letter boxes.
  • The text boxes automatically reflow as you resize the window.
  • Probably the world's most inefficient string processing code.
  • Uses the document architecture.
  • Has Apple Help.
  • Documents stored as property lists in XML format.
  • Solutions for the provided cryptograms.
  • Using XCode to target Jaguar.
  • Tons of the usual code commentary.

borkware home | products | miniblog | rants | quickies | cocoaheads
Advanced Mac OS X Programming book