Monday, September 12, 2005

Oblique Strategies

The Oblique Strategies were originally a set of one-hundred cards, each bearing a short phrase. They were devised by Brian Eno and Peter Schmidt as ways of working through creative problems. When a blockage occurs, draw a card, and see if it can direct you in a tangential way that helps solve the problem.

I have created a Python implementation that includes two different decks.

The first deck is made up of version four of the printed cards, including all corrections, plus any strategies that were deleted from that edition but
found in previous printings, and also additional strategies taken from "A Year With Swollen Appendices: The Diary of Brian Eno".

The second deck is made up of my own strategies, devised over some time and still evolving. These were not written with any reference to the original Oblique Strategies but are designed to function in a similar way.

To use this program you will require Python 2.3 or higher. It is available as a free download. Download and run it from the command line or your favourite Python interactive environment. It will print a random strategy. There is a parameter to specify the deck; the standard UNIX "--help" switch will tell you all about that.

Thanks to Paul for inspiration. Hope this helps you make some music!



neanderpaul said...

Thanks, Robin.

Btw, this is interesting (I think):

-- p

Anonymous said...

You should make an online version too. :)

robin said...

Well, if someone wants to take the Python code and stick it online somewhere that would be great. Right now I'm restricting myself to this blog so that I spend more time on content and less time on web site maintenance. And I cannot run custom CGIs from the blog. :-(

Titus Brown said...

Done; see

Source (all 30 lines...) here.

fawcett said...

Titus beat me to it, but I put a Web version up as well at

(Mine creates an HTML fragment; you're welcome to link it into your own Web apps if you wish, as long as you don't melt my server.)

No source; it's just the original, with a short helper function, exposed as a Zope external method.

robin said...

Cool work! For some reason these comments are not showing up on the front page "recent comments" section, so I'll have to write a new article to bring this to people's attention.

Post a Comment