151: Python Adventure - Brandon Rhodes
Adventure, or Colossal Cave Adventure, was written between 1975 and 1977 in Fortran. Brandon Rhodes ported it to Python 3, initial release in 2011, and still maintains it. We talk to Brandon about this wonderful game.
YOU ARE STANDING AT THE END OF A ROAD BEFORE A SMALL BRICK BUILDING. AROUND YOU IS A FOREST. A SMALL STREAM FLOWS OUT OF THE BUILDING AND DOWN A GULLY. >>> east A bit later... IT IS NOW PITCH DARK. IF YOU PROCEED YOU WILL LIKELY FALL INTO A PIT. >>> light(lamp) YOUR LAMP IS NOW ON. YOU ARE IN A DEBRIS ROOM FILLED WITH STUFF WASHED IN FROM THE SURFACE. A LOW WIDE PASSAGE WITH COBBLES BECOMES PLUGGED WITH MUD AND DEBRIS HERE, BUT AN AWKWARD CANYON LEADS UPWARD AND WEST. A NOTE ON THE WALL SAYS ...
What's happening is that I'm playing adventure, which you can pip install thanks to Brandon Rohdes. Adventure is a faithful port to Python 3 from the original 1977 FORTRAN code by Crowther and Woods that lets you explore Colossal Cave, where others have found fortunes in treasure and gold, ...
In this episode, we talk with Brandon Rhodes about this marvelous game.
Links:
- adventure · PyPI
- python-adventure: Original Colossal Caves adventure game, but in Python 3
- Brandon Rhodes Personal Site
- Python Design Patterns
- pyephem: Scientific-grade astronomy routines for Python
- python-skyfield: Elegant astronomy for Python
- Adventure in Python 3 - announcement blog post from 2012
- NetHack
- FTL: Faster Than Light
- PEP 517 -- A build-system independent format for source trees | Python.org
Help support the show AND learn pytest:
- The Complete pytest course is now a bundle, with each part available separately.
- pytest Primary Power teaches the super powers of pytest that you need to learn to use pytest effectively.
- Using pytest with Projects has lots of "when you need it" sections like debugging failed tests, mocking, testing strategy, and CI
- Then pytest Booster Rockets can help with advanced parametrization and building plugins.
- Whether you need to get started with pytest today, or want to power up your pytest skills, PythonTest has a course for you.
Creators and Guests

Guest
Brandon Rhodes
Brandon Rhodes draws on more than 20 years of experience with Python and 30 years with Unix to offer effective patterns and practices to the audiences of his talks, writing, and training. His Python Patterns website offers Pythonic alternatives to the design patterns that are necessary in less flexible languages. He’s the author of both the old PyEphem astronomy library as well its modern alternative Skyfield, along with smaller projects like the elegant little logging_tree module that’s compatible with every Python back to Python 2.3. He is a Fellow of the Python Software Foundation, on whose behalf he served as the volunteer chair of PyCon 2016–2017 in Portland
