John Horton Conway, Creator Of Conway’s Game Of Life, Has Died

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]

A Stylish Coffee Table Featuring Conway’s Game Of Life

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”

A Tetris Clock

We have had no shortage of clock projects over the years, and this one is entertaining because it spells the time out using Tetris-style blocks. The project looks good and is adaptable to different displays. The code is on GitHub and it relies on a Tetris library that has been updated to handle different displays and even ASCII text.

[Brian] wanted to use an ESP8266 development board for the clock, but the library has a bug that prevents it from working, so he used an ESP32 board instead. The board, a TinyPICO, has a breakout board that works well with the display.

Continue reading “A Tetris Clock”

Building A Working Game Of Tetris In Conway’s Game Of Life

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.

A Clock Created With Conway’s Life

Conway’s life has to be the most enduring zero-player computer game in history. Four simple cellular automaton rules have been used to create amazing simulations since the 1970’s. The latest is an entire digital clock implemented in life. StackExchange user [dim] created this simulation in response to a challenge from [Joe Z]. We have to admit that we didn’t believe it at first, but you can run it yourself by importing [dim’s] gist to the online Javascript Conway’s Life Simulator. To say this is impressive would be an understatement. We don’t know exactly how long it took [dim] to build this clock, but the challenge has been around since August of 2016.

[Dim] does a pretty good job of describing exactly how the clock works. The timebase is at the top. Below it is clock distribution and counters. After that come counters, latches, and lookup tables. Data moves around the clock in the form of gliders. P30 (aka Queen Bee) gliders to be exact. It might make things simpler to think of the glider paths as circuit traces, and the gliders themselves as clock pulses.

We couldn’t get over all the little details in this design. If you zoom way in, you can see all the lookup table patterns have been annotated, much in the way a schematic would be. For [Dim’s] next feat, we hope he takes on [Joe Z’s] Tetris challenge!

Conway’s life is like honey for hackers. We’ve seen it running on our own Hackaday Badge. We’ve even seen clocks that run the game on their display. Someone needs to implement a clock that runs the game that runs this clock. Clockception, anyone?

That’s Life…on A Hackaday Badge

Our Hackaday Chief [Mike] sent me an e-mail the other day with a link to the Belgrade Hackaday Badge simulator. He clearly wanted me to enter something into the demo scene competition. The good news is that because of the simulator, you didn’t have to leave your desk to participate. The bad news is that I had very little time left at the end of the month, so I wanted to do something appealing but it had to be fairly easy to roll out. I wound up doing a very quick project but it had a few fine points that I thought I’d share. The end goal was to have an interesting display of Conway’s game of life on the badge.

By the way, there was a completely different project with the same goal by [Jeremias] on Hackaday.io. As far as I know, this was just the result of two people setting out to do the same thing. You’ll see the user interface is a good bit different, so you might see which you prefer.

If you haven’t seen it, the real badge is below. The emulator, of course, just runs as a window on your PC. For those that will be at the conference, or just want to program closer to the actual hardware, there is now a preconfigured MPLABX framework  for the PIC18LF25K50 and the bootloader/kernel running on this badge.

Continue reading “That’s Life…on A Hackaday Badge”

MSP430 Launchpad Game Of Life Shield

[100uf] built an LED matrix shield for the MSP430 launchpad. His goal with this design was to have it play Conway’s Game of Life. It does just that, as you can see in the clip after the break. But it’s just waiting to learn some more tricks. After he tires of watching the cellular automaton he can try his hand at making some LED pendant animations.

As you can tell, the board was made in his home workshop. It’s not etched, but milled using the CNC machine shown in this image gallery. This is a single-sided PCB, which works well enough for the surface mount components and the downward facing pin sockets. But we wonder how difficult it was to solder the legs of that 8×8 LED matrix. It does have plastic feet at each corner that serve as standoffs to separate the body from the copper layer. But it still looks like a tight space into which he needed to get his iron and some solder.

Continue reading “MSP430 Launchpad Game Of Life Shield”