Archive for category Programming

Portable Google App Engine For Windows (Enhanced)

5/12/2011: Updated to support Google App Engine Version 1.5.0.

A while back I put together the information and steps to get Google App Engine running on Windows wrapped up in a portable little bundle. Since it has been a while I thought it could use a good refresh with the latest versions of everything and make things work more like the real Google App Engine. Some of the content may seem the same as last time but there definitely will be some new ways of running things and new capabilities that were not available last time. This new way is much easier and should keep up with all the changes that newer versions of Google App Engine may bring.

Read the rest of this entry »

4 Comments

When? Version 1.0.3 Just released in the App Store!

When? Logo
I am happy to announce that version 1.0.3 of When? has just been released in the App Store!

Click here to check it out in the App Store!

Read the rest of this entry »

, ,

No Comments

When? Holidays and Important Events App for iOS4 Devices

Introduction

When? Logo

Do you want to know when Mother’s Day is this year? Wouldn’t it be easier to have it on your calendar? It gets pretty tedious adding all those important events and holidays by hand. When? is an App for iOS4 Devices that allows you to easily find and add holidays and important events to your built in calendar.

It contains important events for many countries (with states or provinces where applicable) and religions. New categories and events will be continually added. When? makes it simple to add events to your calendar in two easy steps:

  1. Find the event or events you want using categories.
  2. Tap the + button and the event is immediately added to your calendar!

You can even add an entire category with just two taps. Tired of having an event on your calendar? Remove it just as easy by pressing the red check mark. That is all you need to do!

Click here to check it out in the App Store!


, ,

No Comments

WebSolver: An Interactive Cryptogram Solver for the Web!

A great carpenter does not need to know how to make a hammer or saw in order to create a masterpiece.

Web Solver: Start
A while back I wrote a bunch of articles describing how to create your own interactive cryptogram solver using python. I’ve used it a lot in my own personal solving and have had a few friends use it too but it definitely is not a tool for everyone. There are a lot of great tools out there for solving ciphers but many of them are very technical, require a special environment to run, or require programming knowledge and experience. Now, I don’t want to down play the usefulness of these great tools or tell anyone that they shouldn’t learn computer programming (Note: I think all computer users should know the very basics of programming logic as it is so useful for many things). That being said, there are many people out there who love a good challenge but either don’t have the desire or the time to learn to program. Sometimes the greater skill is knowing how to use the tools properly and efficiently. A great carpenter does not need to know how to make a hammer or saw in order to create a masterpiece.

So for all you great carpenters (solvers) out there, I have ported my interactive cryptogram solver to the web! No downloads, no special environments (other than a modern web browser), and no programming skills needed. Just a clean area where you can do what you do best: solving.

Read the rest of this entry »

, , , ,

No Comments

Creating an interactive cryptogram solver (Part IV)

Execute Interactive Solver

I’ve been working hard on this part of the series because I really wanted the interactive cryptogram solver to make it quick and painless to jump right into solving and still give you plenty of room to expand the functionality and reflect your own style of solving. In this part of the series, we will create solver.py which will become our gateway to solving. It will allow us to quickly select a cipher class that we want to work with. We will also add a self documenting system that will allow us to use the solver without memorizing all the commands or shortcuts that each solver class may use. So, lets just jump right back into the code!

Read the rest of this entry »

, , , , ,

No Comments

Creating an interactive cryptogram solver (Part III)

Execute Interactive Solver

In Part I and Part II of this series we created the framework for our interactive solver and finally had a working AristocratSolver class. In this part, we will enhance our existing framework by adding some commonly used functions, add frequency counting of characters and character sequences to the AristocratSolver class, add the ability to display the current plaintext and ciphertext keys to the AristocratSolver class and then finally create a PatristocratSolver class that reuses all our work in the AristocratSolver class.
Read the rest of this entry »

, , , , ,

1 Comment

Creating an interactive cryptogram solver (Part II)

Execute Interactive Solver

In Part I of this series we started creating the framework for our solver by creating the Cipher and Aristocrat classes. You are probably thinking “This is a series about interactive solvers but this is all code!” Well, the classes inheriting from Cipher will be the ones doing all the work in our solver. In this part of the series we will finally create the CipherSolver class that will work with the Cipher classes to interactively get the work done. So lets just jump right into the code so we can finally get to our first working solver, the AristocratSolver class!

Read the rest of this entry »

, , , ,

5 Comments

Creating an interactive cryptogram solver (Part I)

Execute Interactive Solver

In this post we’ll first analyze what we are trying to accomplish and then begin to create an extensible framework that will allow us to adapt our solver to many different kinds of ciphers.

Building the framework

Our main goal is to create an extensible interactive solver, so lets break down the similarities that all ciphers have.  You’ve got to think really generic here. All ciphers have the following similarities:

  1. They manipulate some kind of text.
  2. They have an encryption algorithm.
  3. They have a decryption algorithm.

Read the rest of this entry »

, , , ,

No Comments

Creating an interactive cryptogram solver (Introduction)

Execute Interactive Solver

I’ve been a member of the ACA (American Cryptogram Association) for about a year now.  I started out solving Aristocrats and Patristocrats with pen and paper.  It was definitely a slow start as trial and error created a lot of eraser dust on my desk.  Being a programmer by trade, my brain instantly sees how I could speed up the process using computers and programming.  Now, I didn’t want to ruin the sense of accomplishment that I got when I solved my first Aristocrat by hand by making the computer just do all the work for me.  It has taken much constraint for me not to write an automatic solver.  The happy medium I found was with computer assisted solving.  Let the computer do all the tedious manual labor and let my mind work on the actual solving process and techniques.

I started writing my own interactive solver about a month after I joined the ACA and I wanted to share my experience with others.  Hopefully, someone will find this information useful or it might inspire them to delve into cryptography or programming.

Read the rest of this entry »

, , , , ,

No Comments

Portable Google App Engine For Windows

Update: An enhanced version of this tutorial has been published that is a lot more efficient and more powerful.

Recently, I’ve been playing with Google App Engine.   It is a neat platform and I wanted to take it around with me so I could develop anywhere. To get a portable version of Google App Engine for Windows you need to download the following:

Read the rest of this entry »

6 Comments