Programmers everywhere are familiar with Conway’s Game of Life: whether they’ve written a version themselves or simply seen the mesmerizing action resulting from the cellular automata, it’s a household name in all homes where code is spoken. On Saturday April 11th, 2020 its inventor and namesake, John Horton Conway passed away from COVID-19 at the age of 82.
Born in Liverpool, Conway received his PhD in mathematics in 1964 from Gonville and Caius College, Cambridge. He accepted a position at Sidney Sussex College, Cambridge which he held until joining the faculty of Princeton University in 1987. A brilliant mathematician, he received numerous awards and was well known for his work in combinatorial game theory, group theory, and theoretical physics.
Many readers will be familiar with his Doomsday algorithm which can be used to deduce the day of the week for any given date in your head. But by far the rockstar mathematics moment of developing Conway’s Game of Life in 1970 cements him a perpetual place of legend in computing lore. His original work on the concept used pencil and paper as the computing revolution had yet to make digital resources easily available, even to mathematics researchers like Conway.
The game uses an infinite grid of squares where all of the edges of the grid wrap around. Four simple rules (which can be boiled down to three if you’re clever) determine which cells live and which cells die during each frame of the “game”. The only parameters that are needed are the number and position of living cells at the start of the game, and the delay between each game frame. But the effect of this simplicity is not to be understated. The game can be coded by a novice — and it’s become a common challenge in University course work. Small errors, or intentional tweaks, in the implementation have profound effects on behavior of the game. And the effect on the person programming it for the first time can be long lasting. You could call it a mathematics gateway drug, grabbing the curiosity of the unsuspecting mind and pulling it down the rabbit hole of advanced mathematics discovery.
We’d love to celebrate his life by hearing your own stories of programming the Game of Life in the comments below. If you haven’t yet had the pleasure, now’s a great time to take on the challenge.
[Game of Life example shown in this article is John Conway’s Game of Life – 1.0 written in Python by Nick Jarvis and Nick Wayne]
Coffee tables are a great place to put your hot beverages, but most don’t offer a lot beyond that. For most people this is perfectly acceptable, but hackers often desire a little more. [Andrei Erdei] is one such person, who built Conway’s Game of Life into this handsome piece of furniture.
The build began with an existing coffee table, chosen for its glass top. Unfortunately, the top was painted black on one side, and was completely opaque, negating its use as a diffuser for LEDs. Instead, this was replaced with smoked glass, with frosted window film applied to make the final piece darker. This attention to detail allowed [Andrei] to install the WS2812B LED strips underneath such that they’re invisible when switched off. The LEDs themselves are run by a WEMOS D1 mini, based on the ESP8266. This microcontroller has plenty of grunt, which makes running the LEDs and the Game of Life code a cinch.
If you want to make something attractive and blinky, it’s hard to go wrong with Conway’s Game of Life. You can even use it to make a clock or a synthesizer; or build an entire game of Tetris within it. Video after the break.
Continue reading “A Stylish Coffee Table Featuring Conway’s Game Of Life”
[Paul Klinger] can’t seem to get enough of building tiny, amazing gaming rigs, and we love him for that. They combine two of our favorites: miniatures and portable gaming. His newest creation honors the form of the formidable ThinkPad.
Of course it has the red nipple and lid LED—wouldn’t be a ThinkPad without ’em. ThinkTiny’s nipple is a 5-way joystick that plays Snake, Tetris, Lunar Lander, and more on an OLED screen. Like its predecessor the Tiny PC, [Paul] used an ATtiny1614, which (FYI) has a new one-wire UDPI interface. He can easily reprogram it through pogo pin holes built into the case.
There are some nice stylistic details at play here, too. The lid LED is both delivered and diffused by a 2mm grain of fiber-optic cable. And [Paul] printed the cover with a color change to transparent filament to make the Think logo and the charging LEDs shine through. Maneuver your way past the break to see it in action.
If you haven’t leveled up to AVR programming yet, introduce yourself to Arduboy.
Continue reading “Tiny ThinkPad Plays Tiny Games”
If you haven’t been following along with Conway’s Game of Life, it’s come a long way from the mathematical puzzle published in Scientific American in 1970. Over the years, mathematicians have discovered a wide array of constructs that operate within Life’s rules, including many that can be leveraged to perform programming functions — logic gates, latches, multiplexers, and so on. Some of these creations have gotten rather huge and complicated, at least in terms of Life cells. For instance, the OTCA metapixel is comprised of 64,691 cells and has the ability to mimic any cellular automata found in Life.
A group of hackers has used OTCA metapixels to create a Tetris game out of Life elements. The game features all 7 shapes as well as the the movement, rotation, and drops one would expect. You can even preview the next piece. The game is the creation of many people who worked on individual parts of the larger program. They built a RISC computer out of Game of Life elements, as well as am assembler and compiler for it, with the OTCA metapixels doing the heavy lifting. (The image at the top of the post is the program’s data synchronizer.
Check out the project’s source code on GitHub, and use this interpreter. Set the RAM to 3-32 and hit run.
For a couple of other examples of Life creations, check out the Game of Life clock and music synthesized from Life automata we published earlier.
[Matthews] needed a good present to give to his brother-in-law, who just so happens to be a mathematician and programmer. He wanted something functional but equally geeky at the same time, so he decided to try his hand at making a Game of Life style clock.
He was originally inspired by a Game of Life Clock we shared a few months ago, but with a few improvements. First, he wanted a much bigger playing field, so he found a 16×32 RGB LED matrix. Second, he wanted the time to always be visible so it actually works as a functional clock.
At the heart of the device is an Arduino UNO which utilizes a Chronodot RTC module for accurate time keeping. The entire clock is encased in acrylic sheets and it looks extremely good for a home-made project. He designed the case using a site called MakerCase, which is a super handy application for designing boxes.
At the beginning of every minute starts a new Game of Life which plays over top of the time displayed. Three buttons on the top allow for many adjustments including brightness, timezone, speed, colors, and even edge behavior! To see it in action, stick around after the break.
Continue reading “Extremely Slick Game Of Life Based Clock”
[Alex] wanted to make an LED clock. But simply making an LED array clock was far too easy — so he decided to make it follow some interesting rules…
Ever heard of John Conway’s Game of Life? It’s quite simple — there are four rules.
- Any live cell with fewer than two live neighbours dies, as if caused by under-population.
- Any live cell with two or three live neighbours lives on to the next generation.
- Any live cell with more than three live neighbours dies, as if by overcrowding.
- Any dead cell with exactly three live neighbours becomes a live cell, as if by reproduction.
So [Alex] decided to make his clock LED matrix follow these rules, with lit pixels representing life. Every minute, on the minute, the time is displayed. But as soon as it is displayed, the rules take over, and the display disintegrates, following the rules of the Game of Life. It makes for an very interesting display that’s just waiting to be scaled up to a larger size!
He’s done a great job writing it up on his blog, and has included his code as well — so if you’re so inclined, take a look! If not, stick around after the break to see the clock in action.
Continue reading “Game Of Life Clock”
We see a lot of projects related to Conway’s Game of Life, but this one is Hasbro’s Game of Life. The board game company recently commissioned a giant game spinner as part of a museum exhibit. Here’s the build log that shows how it was pulled off.
The first thing to note is that [Jzzsxm] does this for a living. His company was hired to build several exhibits related to board games for a children’s museum in Springfield, MA. But don’t let that stop you from offering to help at your own local museum. We know some hackers love doing that kind of work.
The scale of the project is what makes the build really interesting. It starts with a design which can be cut out with a CNC router. First the spinner frame and numbers are cut out of MDF to verify the code. From there the design is cut in two pieces out of HI-MACS, a durable solid-surface material. Pegs for spinning the dial are milled from more HI-MACS stock. The clicker mechanism uses a steel rod as a pivot point. On the underside of the table it has opposing springs to hold it in place no matter which way the thing is spun. [Jzzsxm] mentions that it sees a lot of abuse from the young patrons, but seems to be holding up just great!