Answer: Binary Secret #387

The secret message is:

Go Pixel!

The decoded message: Go Pixel!
Every row decoded.

Row by row

RowBulbsAdd the ‘on’ numbersCharacter
10100011164 + 4 + 2 + 1 = 71G
20110111164 + 32 + 8 + 4 + 2 + 1 = 111o
30010000032 = 32a space
40101000064 + 16 = 80P
50110100164 + 32 + 8 + 1 = 105i
60111100064 + 32 + 16 + 8 = 120x
70110010164 + 32 + 4 + 1 = 101e
80110110064 + 32 + 8 + 4 = 108l
90010000132 + 1 = 33!

Crack it with Python

Python can do the adding for you. int(code, 2) reads a string of 1s and 0s as a binary number. Then chr() turns the number into its character.

secret = [
    "01000111",
    "01101111",
    "00100000",
    "01010000",
    "01101001",
    "01111000",
    "01100101",
    "01101100",
    "00100001",
]
message = ""
for code in secret:
    number = int(code, 2)
    message = message + chr(number)
print(message)

When you run it, it prints:

Go Pixel!

<strong>Beep says:</strong> Want to write your own secret message? Turn it around: ord() turns a character into its number, and format(number, “08b”) writes the number as 8 binary digits. Beep boop!