Turing Drawings - <AUTHOR> http://wry.me/hacking/Turing-Drawings/ <comment><USER2> This is amazing. My favourites seem to always have only 2 states.

"sunset and nightfall":

[http://wry.me/hacking/Turing- Drawings/#2,15,0,3,1,1,1,3,1,10...](http://wry.me/hacking/Turing- Drawings/#2,15,0,3,1,1,1,3,1,10,1,0,14,2,0,3,1,1,2,3,1,11,0,1,5,1,0,9,2,1,3,0,1,10,2,0,1,1,1,5,3,1,2,1,1,4,2,1,11,1,1,14,0,0,8,3,0,12,3,1,10,3,0,3,2,1,9,0,0,9,0,1,14,3,1,1,3,1,8,2,1,9,2,0,9,0,0,8,1,0,8,1)

"shoreline EQ"

[http://wry.me/hacking/Turing- Drawings/#2,22,1,6,2,0,6,0,0,21...](http://wry.me/hacking/Turing- Drawings/#2,22,1,6,2,0,6,0,0,21,1,1,1,3,0,10,3,0,13,3,0,13,1,0,14,2,0,6,1,1,11,0,0,4,0,1,12,3,0,4,0,0,7,1,0,7,2,0,2,1,0,4,3,1,19,1,0,7,1,1,5,0,0,15,0,0,7,2,1,6,1,1,8,0,1,7,0,0,6,1,0,19,3,0,10,2,0,6,0,1,14,1,1,13,1,1,15,0,0,8,1,0,2,0,1,16,3,1,3,1,0,9,0,1,15,0,0,11,2,0,13,3,0,13,3,0,17,0,1,14,2,1,5,2)

<comment><USER3> Well, if the machine has only two states, it has only a single bit of internal memory. This means (almost) all information is in the picture.

Brain dump:

A one-state TM has no hidden state -- this means that it has no way to look at the surroundings (only the current field), which makes them rather boring. (All you'll get is lines or planes of one color, they cannot sensibly navigate the second dimension.)

Two-state TMs are 'clever' enough to change the color after moving, which means they can draw corners and thereby use the whole 2d plane. They still have to put all information into the picture, meaning you get to see all the gory details of information flow. You don't have the transition table, but you can read most of it off the image. You'll see all paths or areas in which movement in a single direction can happen without changing the color. Everything else has to be left in the picture, which means it will constantly overwrite stuff. This, in turn, means that it'll likely use groups of colors for one purpose.

Example: [http://wry.me/hacking/Turing- Drawings/#2,8,0,3,2,1,7,3,0,7,0...](http://wry.me/hacking/Turing- Drawings/#2,8,0,3,2,1,7,3,0,7,0,0,6,1,1,6,3,0,3,0,0,1,3,0,3,0,1,6,3,1,3,2,1,1,2,1,3,1,0,6,2,0,5,2,1,6,1,1,5,3)

The start is boring: red - turn green & go up, green - turn black & go down, black - turn pink & move right (so far this could be done by a 1-state TM.) Pink does some state changes and introduces cyan, shortly after you'll see it 'sewing' to the left, leaving a thick structured line across the image, which is then expanded into a yellow-green covering of the whole black area (see how black/pink move right and cyan/yellow give turning directions and create yellow/green?) and then... ah, well just look at it.

Three-state TMs can hide quite a lot of information. As an example, the extra state can be used as a movement state, allowing non-destructive movement in one direction. (On jump mark (say, white), change to state #3 and keep going until you hit the next jump mark.) It can also be used to non-destructively look in one direction (e.g. for testing what color the left neighbor has). Combinations thereof can do pretty crazy stuff.

Adding more states basically just allows 'compressing' the picture more, which makes it more likely that you'll only see noise - especially if the TMs are randomly generated.

</comment></comment><comment><USER4> Fascinating. My favorite is "Rapids"

[http://www.wry.me/hacking/Turing- Drawings/#3,6,2,2,3,2,4,0,0...](http://www.wry.me/hacking/Turing- Drawings/#3,6,2,2,3,2,4,0,0,1,0,2,1,2,1,1,0,1,2,3,2,3,0,2,1,0,2,5,3,2,5,2,2,4,1,1,5,0,2,4,3,0,4,0,0,1,1,2,1,3,2,1,0,2,2,0)

<comment><USER5> Another rainy/scratchy one:

[http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,0,1,0,3,1,0...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,0,1,0,3,1,0,2,1,1,2,2,1,2,1,2,0,1,3,1,2,1,3,1,0,3,2,1,1,2,0,0,1,0)

<comment><USER6> Rain on a window:

[http://wry.me/hacking/Turing- Drawings/#4,3,0,1,1,1,1,3,2,2,2...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,1,1,1,3,2,2,2,0,1,1,2,2,1,3,1,2,1,1,1,1,2,1,1,2,0,3,1,2,0,1,1,0,2,2)

</comment></comment></comment><comment><USER7> I found a glider! [http://www.wry.me/hacking/Turing- Drawings/#4,3,2,2,1,3,2,2,3...](http://www.wry.me/hacking/Turing- Drawings/#4,3,2,2,1,3,2,2,3,2,1,2,2,2,2,1,0,0,1,1,3,2,0,3,2,3,3,2,3,2,1,2,1,2,2,0,2,1)

The glider appears after a few seconds of high speed.

Very nice implementation!

<comment><USER8> I got some bubbles wandering up the screen quite slowly: [http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,0,1,3,2,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,0,1,3,2,1,2,3,2,1,1,1,2,2,2,0,0,2,3,3,1,0,2,2,1,1,1,1,1,1,3,3,2,0)

Not exactly a glider, but it looks like this does at the start, but reversed...sort of... (maybe)

</comment></comment><comment><USER9> This one really surprised me: [http://wry.me/hacking/Turing- Drawings/#3,13,0,4,3,2,1,1,2,1,...](http://wry.me/hacking/Turing- Drawings/#3,13,0,4,3,2,1,1,2,1,3,2,9,3,2,4,3,2,9,1,2,9,3,2,7,1,2,9,0,2,6,3,1,11,2,1,12,0,0,7,3,0,10,1,1,7,3,0,12,3,1,11,1,0,2,1,0,2,3,0,9,1,1,6,0,1,10,3,0,2,1,0,2,0,1,9,2,1,8,3,2,2,2,1,3,0,2,2,2,2,1,3,2,7,2,2,5,2,1,11,1,2,8,0,2,10,2,0,10,0,2,5,3,1,12,1,0,5,2)

<comment><USER10> The three distinct stages are fascinating. The third stage is like white caps on the ocean viewed from an airplane.

</comment></comment><comment><USER11> Wolframite here: these would make a good summer school project for our summer school (plug: the 2013 one is coming up, apply at <https://www.wolframscience.com/summerschool/> if you're interested in this kind of stuff and want to do a 3-week project).

In fact I studied the space-filling behavior of precisely these 2D Turing machines in 2009. For low numbers of states and colors you can enumerate them exhaustively and calculate the distribution of space-filling efficiency (log- normal, if anyone is interested).

The full spectrum of behavior is quite fascinating to catalog. All these kinds of simple computational system have a character and 'zaniness' all their own.

Putting on a more scientific hat, it might be interesting to look at block- entropy measures and find interesting rulesets that way.

P.S. To the author: this is a great implementation! Really nice to play with. Check out [http://reference.wolfram.com/mathematica/ref/TuringMachine.h...](http://reference.wolfram.com/mathematica/ref/TuringMachine.html) for the one built into the Wolfram Language.

</comment><comment><USER12> This one takes a bit to get going, but then it does a gigantic phase transition into something like wind (play on max speed):

[http://wry.me/hacking/Turing- Drawings/#4,3,0,2,1,1,1,1,2,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,0,2,1,1,1,1,2,2,3,2,1,0,3,1,3,1,1,0,2,1,0,3,2,3,3,2,1,3,2,1,0,1,0,0,1,2)

This one starts with a great wave effect:

[http://wry.me/hacking/Turing- Drawings/#4,3,3,1,0,0,1,2,1,1,0...](http://wry.me/hacking/Turing- Drawings/#4,3,3,1,0,0,1,2,1,1,0,1,1,0,1,2,1,1,1,3,3,1,3,0,1,2,0,2,3,3,1,1,1,2,1,0,2,1)

</comment><comment><USER13> [http://wry.me/hacking/Turing- Drawings/#4,3,2,1,1,2,1,1,1,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,2,1,1,2,1,1,1,1,3,1,2,3,2,1,3,1,2,2,0,2,2,1,1,2,1,2,3,0,1,0,2,2,2,1,1,1)

<comment><USER14> This is actually very good compared to other findings; the pattern starts to disappear and then regenerates itself in different ways. Accompanying horizontal lines look like an ocean.

</comment></comment><comment><USER15> Wow, I finally got a neat one via random. 4 states, 13 symbols, yields an interesting illusion of depth as "blocks" start moving towards and away from the viewer. Recommended two notches down from default speed, three down if you're patient.

[http://wry.me/hacking/Turing- Drawings/#4,13,3,1,0,0,5,1,2,1,...](http://wry.me/hacking/Turing- Drawings/#4,13,3,1,0,0,5,1,2,1,2,1,1,2,1,7,0,3,1,1,2,8,0,2,1,3,2,2,3,2,10,0,2,8,3,3,8,2,1,11,2,2,8,3,3,6,2,2,6,1,2,3,0,1,6,1,1,9,2,2,12,1,2,4,2,3,5,2,2,2,2,3,3,0,3,2,0,0,10,1,0,2,3,2,2,1,3,2,1,2,12,0,0,3,0,3,6,3,2,10,3,2,3,0,2,2,0,2,7,3,3,5,3,2,2,3,2,10,2,3,3,0,2,1,0,1,8,2,2,6,1,3,9,0,1,11,3,1,6,1,1,2,1,2,6,3,0,2,1,3,5,0,0,10,1,1,4,0)

</comment><comment><USER14> My take: Mondrian scrolls. [http://wry.me/hacking/Turing- Drawings/#3,3,2,1,1,0,1,2,1,1,1...](http://wry.me/hacking/Turing- Drawings/#3,3,2,1,1,0,1,2,1,1,1,1,1,1,0,2,0,2,2,2,1,2,2,2,1,1,1,1,0)

I really appreciate this art of randomness, and in particular the fact that it is theoretically equivalent to any computing machine (given much, much more memory and states).

</comment><comment><USER16> Fractal: [http://wry.me/hacking/Turing- Drawings/#4,3,2,2,1,3,1,3,1,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,2,2,1,3,1,3,1,2,3,2,2,1,1,1,2,2,1,0,3,1,3,0,1,0,0,2,1,2,1,3,3,2,3,1,1,3)

</comment><comment><USER17> This is great, but can't you only show me drawings which halt? I sit there waiting and I don't know if they'll stop...

<comment><USER18> The world is finite, so every drawing eventually loops.

However, the state space is something like k * 2^18 * n^(2^18), where k is the number of states and n the number of symbols. For the default (4, 3) this is 3.125 * 10^125080, so you could be waiting for a while :)

<comment><USER19> Would every drawing have to loop? Pi doesn't. I personally don't actually know if there's something about this specifically that would force every drawing to loop, though.

</comment></comment></comment><comment><USER20> Blowing sand : [http://wry.me/hacking/Turing- Drawings/#4,3,2,2,3,3,1,3,1,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,2,2,3,3,1,3,1,2,3,3,2,1,1,2,2,1,1,1,2,1,0,0,1,0,3,2,3,2,2,2,3,1,0,0,1,3)

Wind Tunnel: [http://www.wry.me/hacking/Turing- Drawings/#4,3,3,1,3,2,1,3,3...](http://www.wry.me/hacking/Turing- Drawings/#4,3,3,1,3,2,1,3,3,1,1,1,2,0,2,1,1,1,2,0,0,2,0,1,1,0,1,2,1,2,2,3,0,1,1,1,2,2)

I think this becomes strangely stable: [http://wry.me/hacking/Turing- Drawings/#4,4,3,3,2,0,2,3,2,3,0...](http://wry.me/hacking/Turing- Drawings/#4,4,3,3,2,0,2,3,2,3,0,1,3,1,0,3,0,3,3,2,1,2,2,1,1,0,0,2,3,2,2,1,0,3,2,0,1,2,0,1,2,0,2,3,1,1,1,0,3,0)

Wavy lines: [http://wry.me/hacking/Turing- Drawings/#4,3,2,1,1,1,2,0,2,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,2,1,1,1,2,0,2,1,3,0,1,3,0,1,1,0,2,1,0,2,3,1,1,2,3,2,3,1,1,0,2,2,3,1,1,0)

Mountain: [http://wry.me/hacking/Turing- Drawings/#4,3,2,2,3,2,1,2,0,2,0...](http://wry.me/hacking/Turing- Drawings/#4,3,2,2,3,2,1,2,0,2,0,3,2,0,1,2,2,2,1,0,3,2,0,3,1,2,3,2,2,1,2,1,3,2,3,1,1,3)

Crystal: [http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,2,1,0,3,1,1...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,2,1,0,3,1,1,0,2,0,3,2,0,1,2,2,3,1,1,3,1,0,1,2,1,1,1,0,1,1,0,0,2,3)

<comment><USER20> Falling Hair: [http://wry.me/hacking/Turing- Drawings/#9,4,5,3,0,1,1,2,4,3,0...](http://wry.me/hacking/Turing- Drawings/#9,4,5,3,0,1,1,2,4,3,0,3,3,1,5,3,2,5,1,0,3,2,3,8,3,0,4,1,0,6,3,3,5,3,0,8,2,1,6,2,0,7,3,3,6,2,0,8,3,0,0,3,1,6,3,1,7,1,3,6,3,0,1,2,2,4,2,2,5,3,2,0,1,0,6,3,0,7,3,1,2,3,3,4,3,0,0,1,3,6,3,0,1,2,2,4,3,0,3,1,0,0,1,2,4,1,0,2,3,0)

</comment></comment><comment><USER21> These are called Turmites: <http://en.wikipedia.org/wiki/Turmite>

Nice implementation of it.

</comment><comment><USER22> [http://wry.me/hacking/Turing- Drawings/#2,7,1,4,3,1,4,0,1,3,1...](http://wry.me/hacking/Turing- Drawings/#2,7,1,4,3,1,4,0,1,3,1,1,2,1,1,2,0,1,1,3,1,4,1,1,1,0,1,6,0,0,6,3,1,3,0,1,5,1,0,3,0,1,1,1)

[http://wry.me/hacking/Turing- Drawings/#2,7,1,2,2,0,6,1,0,1,1...](http://wry.me/hacking/Turing- Drawings/#2,7,1,2,2,0,6,1,0,1,1,0,4,2,0,4,1,1,2,1,0,2,2,1,1,3,1,1,0,0,4,3,0,2,2,1,5,2,1,4,0,0,6,0)

[http://wry.me/hacking/Turing- Drawings/#2,23,1,6,0,0,7,3,1,12...](http://wry.me/hacking/Turing- Drawings/#2,23,1,6,0,0,7,3,1,12,3,0,20,3,1,12,1,1,19,0,1,13,0,0,20,2,0,11,1,0,10,3,1,19,0,1,7,1,0,2,2,0,10,2,0,6,0,1,5,2,1,16,1,1,22,3,1,6,2,1,12,3,0,11,2,1,7,3,1,16,2,1,2,3,0,4,3,1,10,0,1,1,1,0,21,2,1,7,3,1,19,1,0,22,3,0,15,1,1,13,1,0,16,3,1,13,2,1,18,2,0,12,2,0,15,3,0,8,2,1,7,0,1,20,3,0,17,3,1,19,1,1,3,1,1,15,3,1,9,1)

[http://wry.me/hacking/Turing- Drawings/#2,23,1,10,2,0,6,1,0,1...](http://wry.me/hacking/Turing- Drawings/#2,23,1,10,2,0,6,1,0,1,1,0,21,3,1,10,2,1,2,0,1,3,3,0,2,1,1,7,0,0,5,3,1,22,3,0,19,1,1,15,1,1,7,3,0,21,1,1,19,0,0,12,1,1,10,2,0,5,2,1,6,2,0,18,1,0,2,1,1,2,2,0,17,1,1,5,2,1,21,2,0,1,2,0,20,0,0,13,3,0,1,1,1,18,3,0,9,2,1,4,1,0,11,1,1,15,3,1,1,0,0,22,3,0,13,2,1,10,0,1,13,1,1,19,2,0,22,3,0,9,0,0,17,3,1,16,0,0,18,1)

[http://wry.me/hacking/Turing- Drawings/#5,3,0,1,1,3,1,1,3,1,0...](http://wry.me/hacking/Turing- Drawings/#5,3,0,1,1,3,1,1,3,1,0,4,2,2,2,1,2,1,2,0,2,2,0,1,2,2,3,1,0,4,2,0,1,1,3,4,1,0,4,1,0,4,1,3,2,2,2)

[http://wry.me/hacking/Turing- Drawings/#5,3,3,1,2,0,2,1,4,2,3...](http://wry.me/hacking/Turing- Drawings/#5,3,3,1,2,0,2,1,4,2,3,2,2,1,2,1,3,2,2,2,2,2,2,2,2,3,4,1,0,4,1,0,2,1,1,2,1,1,4,2,1,3,2,1,2,1,3)

Some of the more striking machines I found tonight. I spent a lot of time generating 2/23 machines, they tended to produce colorful and sometimes intricate "introductions", but most often ended in static.

</comment><comment><USER23> Love how long this takes to evolve. Nice to watch fast or slow. [http://www.wry.me/hacking/Turing- Drawings/#4,3,0,2,0,3,2,0,2...](http://www.wry.me/hacking/Turing- Drawings/#4,3,0,2,0,3,2,0,2,1,2,3,1,2,3,2,1,2,1,1,1,2,1,3,2,2,2,2,0,2,2,2,1,1,2,1,2,0)

<comment><USER6> The steady state at the end on a very slow setting is awesome.

</comment></comment><comment><USER24> I found one that looks like the ocean. (Try on max speed!)

[http://wry.me/hacking/Turing- Drawings/#4,3,2,2,1,1,1,2,0,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,2,2,1,1,1,2,0,1,2,2,2,2,1,1,0,0,2,3,1,2,2,2,2,2,1,2,2,1,1,2,3,1,3,2,2,3)

This one's building something in the middle:

[http://wry.me/hacking/Turing- Drawings/#4,3,3,2,2,3,1,3,3,2,1...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,2,3,1,3,3,2,1,3,2,1,3,1,3,0,2,3,2,2,2,2,2,2,0,1,0,3,2,2,0,1,2,2,1,2)

A very clear fractal with triangles:

[http://wry.me/hacking/Turing- Drawings/#4,3,0,1,1,0,1,3,3,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,1,0,1,3,3,1,2,3,2,2,3,1,2,2,2,1,0,1,0,1,1,0,0,2,3,1,1,0,1,2,0,2,1,0)

</comment><comment><USER25> This one has a kind of parallax effect going on:

[http://wry.me/hacking/Turing- Drawings/#4,3,1,2,3,1,1,0,0,1,1...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,3,1,1,0,0,1,1,3,1,3,0,1,0,3,2,0,2,2,3,1,1,1,1,2,1,0,2,1,1,2,3,2,1,0)

You'll want to watch it about four notches down from "fastest".

This is a _really_ cool project! It has a kind of AI feel to it. The website needs a way for users to vote on others' creations, and then they can be selectively "mutated" and evolved to produce really cool ones. The best ones will survive through upvotes. Who knows what you'd end up with?

<comment><USER26> Cool, I pressed random a few times from yours and got this. [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,2,1,2,0,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,2,1,2,0,1,2,3,1,3,2,1,3,2,2,0,0,2,1,3,1,3,2,2,0,2,1,1,3,2,1,2,1,2) I'm falling!!!

</comment></comment><comment><USER27> Fantastic. It's amazing how attached I become to the good ones, it's like I've discovered a precious truth.

So here's some driving rain: [http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,0,2,0,3,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,2,0,2,0,3,1,2,3,2,2,2,1,3,0,2,0,1,1,0,0,2,0,3,1,1,0,2,2,1,1,0,3,1,0)

</comment><comment><USER28> The sky above the port was the color of television, tuned to a dead channel.

[http://wry.me/hacking/Turing- Drawings/#4,3,0,1,2,3,2,3,3,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,2,3,2,3,3,1,3,1,2,0,2,1,1,3,2,3,0,2,3,1,1,1,1,2,0,0,1,1,2,1,2,3,1,2)

</comment><comment><USER29> I quite like this one, it's as though the environment deteriorates. Don't watch it to fast:

[http://wry.me/hacking/Turing- Drawings/#4,3,0,1,1,0,2,1,0,2,1...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,1,0,2,1,0,2,1,0,1,2,1,2,3,0,2,3,1,2,0,3,1,1,2,1,2,1,1,0,2,2,3,1,1,2)

At one point, right before it goes over the "entropy cliff" it creates what looks like a lot of Sierpinski triangles:

[http://wry.me/hacking/Turing- Drawings/#4,3,2,1,0,1,2,3,2,2,2...](http://wry.me/hacking/Turing- Drawings/#4,3,2,1,0,1,2,3,2,2,2,2,1,1,3,2,1,0,2,0,0,2,0,1,1,1,2,2,3,2,2,3,2,1,1,2,2,1)

I found it quite interesting that one as complex as this could stabilize:

[http://wry.me/hacking/Turing- Drawings/#4,3,0,1,3,1,1,2,0,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,3,1,1,2,0,2,3,2,1,1,1,1,2,2,2,1,0,2,3,0,2,3,0,2,2,0,2,0,1,1,1,0,2,1)

This seems to end up like a frozen lightning bolt: [http://wry.me/hacking/Turing- Drawings/#4,5,3,3,3,2,4,0,2,2,3...](http://wry.me/hacking/Turing- Drawings/#4,5,3,3,3,2,4,0,2,2,3,2,2,0,3,4,3,2,2,2,1,3,1,1,4,1,2,2,1,1,4,2,2,4,3,3,3,3,1,2,1,3,1,0,3,4,2,0,3,0,0,2,2,2,2,0,3,1,3,2,1,3)

This creates a pattern almost like hair in the wind: [http://wry.me/hacking/Turing- Drawings/#4,5,2,3,0,2,4,3,0,3,1...](http://wry.me/hacking/Turing- Drawings/#4,5,2,3,0,2,4,3,0,3,1,2,1,3,2,4,0,2,3,3,1,3,2,1,1,3,3,4,3,0,3,3,2,1,3,1,1,3,2,4,3,2,2,2,3,3,1,2,4,2,1,2,3,0,1,3,3,3,0,3,4,0)

Seems as though it's many cats standing on each others heads: [http://wry.me/hacking/Turing- Drawings/#4,5,0,3,1,0,3,1,2,1,0...](http://wry.me/hacking/Turing- Drawings/#4,5,0,3,1,0,3,1,2,1,0,2,1,2,2,4,3,2,2,1,0,4,1,3,2,3,2,4,2,3,1,0,3,1,3,0,4,3,1,1,2,3,4,3,2,3,0,2,2,2,0,3,1,2,4,1,2,3,2,0,2,0)

Like waves on a beach: [http://wry.me/hacking/Turing- Drawings/#4,5,3,4,2,1,2,2,0,4,0...](http://wry.me/hacking/Turing- Drawings/#4,5,3,4,2,1,2,2,0,4,0,2,4,2,2,1,2,0,1,0,3,1,3,0,4,0,0,4,3,1,3,1,0,3,3,0,2,0,1,2,0,3,4,2,3,3,3,3,2,0,3,2,3,1,2,1,2,3,0,3,4,1)

Some otherworldly data wind: [http://wry.me/hacking/Turing- Drawings/#4,5,0,3,3,3,3,1,0,3,2...](http://wry.me/hacking/Turing- Drawings/#4,5,0,3,3,3,3,1,0,3,2,2,2,2,2,4,1,3,1,2,1,3,3,1,1,2,0,3,0,2,3,0,0,2,2,0,3,1,3,3,3,3,4,3,2,2,1,0,1,1,3,4,3,0,3,1,2,4,1,1,3,2)

Eventually, all clouds fade away: [http://wry.me/hacking/Turing- Drawings/#4,4,1,1,1,1,2,1,2,3,3...](http://wry.me/hacking/Turing- Drawings/#4,4,1,1,1,1,2,1,2,3,3,2,1,0,3,2,3,1,3,3,3,1,3,2,3,1,0,1,0,0,1,0,1,3,0,2,2,1,0,2,2,2,1,1,1,3,1,3,1,0)

In and out of phase: [http://wry.me/hacking/Turing- Drawings/#4,4,2,2,0,3,1,2,3,1,0...](http://wry.me/hacking/Turing- Drawings/#4,4,2,2,0,3,1,2,3,1,0,1,1,0,3,2,3,3,2,3,1,1,0,0,3,3,1,3,2,0,2,1,1,1,0,1,1,2,0,3,1,0,2,0,2,2,2,2,3,0)

Like sand dunes moving: [http://www.wry.me/hacking/Turing- Drawings/#4,3,1,1,3,3,1,0,2...](http://www.wry.me/hacking/Turing- Drawings/#4,3,1,1,3,3,1,0,2,2,3,0,1,3,2,1,3,0,2,3,2,1,2,0,2,0,2,2,0,1,2,1,3,1,3,1,2,2)

Saws on parade: [http://www.wry.me/hacking/Turing- Drawings/#4,3,0,2,0,2,2,3,1...](http://www.wry.me/hacking/Turing- Drawings/#4,3,0,2,0,2,2,3,1,1,0,2,1,2,1,1,2,2,1,0,1,2,3,1,2,0,2,1,1,0,1,2,0,1,2,2,2,2)

Scooty lightning: [http://www.wry.me/hacking/Turing- Drawings/#4,3,3,2,0,3,2,2,3...](http://www.wry.me/hacking/Turing- Drawings/#4,3,3,2,0,3,2,2,3,2,1,0,2,1,0,1,1,2,1,1,2,2,1,2,1,2,2,2,0,3,2,2,0,1,2,3,1,0)

<comment><USER30> I got something like the Sierpinski triangles too : [http://wry.me/hacking/Turing- Drawings/#2,24,1,6,1,0,17,1,1,1...](http://wry.me/hacking/Turing- Drawings/#2,24,1,6,1,0,17,1,1,19,1,0,9,1,1,5,0,0,4,2,1,23,2,1,19,2,0,4,0,1,11,0,1,23,0,0,8,2,1,20,2,1,22,3,0,21,1,0,10,2,0,1,1,0,8,2,1,16,3,1,16,0,1,10,2,0,18,3,1,4,2,0,3,1,0,16,2,0,4,2,0,2,3,1,7,2,1,22,1,0,4,2,0,5,0,0,11,1,1,7,0,0,8,0,1,1,0,0,22,1,0,10,2,1,15,3,1,3,0,0,23,0,1,8,0,0,11,3,0,17,1,1,16,1,0,13,2,0,7,1,0,7,0,1,1,1)

even closer : [http://www.wry.me/hacking/Turing- Drawings/#2,23,1,2,2,0,19,3...](http://www.wry.me/hacking/Turing- Drawings/#2,23,1,2,2,0,19,3,0,18,2,1,19,1,0,14,3,0,10,0,1,5,1,0,2,3,0,14,0,0,3,0,0,3,1,1,21,1,1,22,0,0,4,2,0,20,3,0,17,2,0,7,0,1,16,1,1,16,0,1,9,0,1,21,0,1,3,3,0,17,1,1,5,1,1,3,1,0,1,0,0,17,0,0,19,0,1,8,0,1,4,0,1,19,3,0,6,0,1,12,2,1,9,0,1,9,1,0,10,1,0,6,3,1,6,1,1,4,0,1,14,0,0,8,2,0,21,3,1,21,1,0,8,3,1,12,2,1,8,2)

<comment><USER31> Here are some stable ones: [http://wry.me/hacking/Turing- Drawings/#4,3,0,1,3,0,2,1,3,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,3,0,2,1,3,1,2,1,2,3,3,1,1,3,1,1,1,2,2,2,1,3,0,2,1,3,1,3,0,2,2,3,1,1)

Bonus animated brass rubbing: [http://wry.me/hacking/Turing- Drawings/#4,3,1,1,2,2,1,1,3,1,0...](http://wry.me/hacking/Turing- Drawings/#4,3,1,1,2,2,1,1,3,1,0,0,2,1,1,1,2,3,2,2,0,1,2,0,1,3,0,1,0,3,2,2,1,2,0,3,2,3)

</comment></comment></comment><comment><USER32> I used a (very distant, now) variant on Langton's ant to do some "Turing drawings" of my own over the years: <http://demoseen.com/langton/#.FP$!!!!!!!!!!!!!!!!!!!!~>

The command set is detailed at the bottom of the page -- feel free to make your own and share them. They can be a whole lot of fun.

Edit: A few more examples: <http://demoseen.com/langton/#.FP$!~7> <http://demoseen.com/langton/#+.7> <http://demoseen.com/langton/#T+.gt>

</comment><comment><USER33> Darkness, Rising [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,1,2,1,0,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,1,2,1,0,2,3,0,2,3,3,2,3,2,1,2,1,2,1,2,1,0,0,1,1,1,2,2,3,1,2,1,1,0)

<comment><USER33> And its counterpart, Metropolis, Rising: [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,0,0,1,2,1,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,0,0,1,2,1,1,3,2,2,2,3,1,1,2,1,2,3,2,0,0,1,3,2,2,0,1,1,2,0,1,3,0,1,2)

Really cool how it just keeps on going, with the shadows of more towers appearing to stretch out from the city centers, and the lights of cars driving down the left and right sides. I've had it running at high speed for quite a while now and buildings keep rising up occasionally.

</comment></comment><comment><USER34> Crazy [http://wry.me/hacking/Turing- Drawings/#4,3,3,1,0,3,1,3,2,2,2...](http://wry.me/hacking/Turing- Drawings/#4,3,3,1,0,3,1,3,2,2,2,1,2,3,2,2,3,1,1,3,3,1,2,3,2,1,3,2,3,0,1,0,0,1,0,1,1,3)

</comment><comment><USER35> Seizure Robots ( _BEWARE_ : rapidly alternating / painful): [http://wry.me/hacking/Turing- Drawings/#4,3,3,1,1,1,1,2,1,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,1,1,1,1,2,1,1,3,0,2,3,0,2,1,1,2,2,0,1,1,1,2,2,2,2,2,0,2,2,2,1,2,2,1,3)

Ice 9: [http://wry.me/hacking/Turing- Drawings/#5,4,3,3,3,3,2,2,1,2,0...](http://wry.me/hacking/Turing- Drawings/#5,4,3,3,3,3,2,2,1,2,0,3,1,0,0,1,2,1,1,1,4,3,2,0,3,2,4,3,0,2,2,3,0,3,0,0,3,1,4,2,2,2,2,3,0,1,2,1,1,1,4,2,0,0,2,2,4,2,2,3,2,1)

</comment><comment><AUTHOR> Here are some cool ones I found:

Traveling pyramid: [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,0,1,1,2,2,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,0,1,1,2,2,1,3,1,2,2,3,2,1,2,1,1,3,1,0,2,2,0,3,2,2,1,2,3,0,1,0,3,2,0)

Coral-like tendrils (turn up the speed a bit): [http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,3,1,2,2,1,1...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,3,1,2,2,1,1,3,1,2,0,2,1,2,2,3,2,2,2,0,2,0,1,1,2,2,1,0,3,2,0,1,2,1)

</comment><comment><USER36> This is the best one I found so far. Most of them either freeze, run in a loop or turn to noise. This one turns into chaos, but maintains structure. [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,0,1,1,2,2,2...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,0,1,1,2,2,2,0,2,0,3,2,2,3,1,2,1,1,0,1,2,3,3,2,2,0,1,0,2,2,1,1,1,1)

It's like a wave moving to the bottom left. It has been doing the same thing for a while now, but I have not yet found any repetitions.

</comment><comment><USER37> A tilted cityscape, temporarily: [http://wry.me/hacking/Turing- Drawings/#3,8,1,4,0,0,3,2,2,7,1...](http://wry.me/hacking/Turing- Drawings/#3,8,1,4,0,0,3,2,2,7,1,0,4,0,0,4,0,0,5,0,1,5,2,1,2,2,0,6,3,2,5,0,1,2,3,2,4,3,1,6,3,1,2,0,1,1,1,2,7,1,0,2,1,0,5,2,2,5,2,0,3,2,0,3,1,0,2,2,0,7,2,1,4,1)

City across the lake at night: [http://wry.me/hacking/Turing- Drawings/#10,2,1,1,0,2,1,2,2,1,...](http://wry.me/hacking/Turing- Drawings/#10,2,1,1,0,2,1,2,2,1,2,6,1,2,0,1,3,7,1,2,3,1,3,2,1,2,4,1,3,5,1,1,9,1,2,6,1,0,9,1,1,8,1,3,8,1,2,5,1,0,2,1,1,1,1,1,7,1,1,2,1,2)

Draws solid black everywhere, waits, then draws something: [http://wry.me/hacking/Turing- Drawings/#3,20,0,1,2,0,6,3,1,17...](http://wry.me/hacking/Turing- Drawings/#3,20,0,1,2,0,6,3,1,17,1,0,10,1,1,18,2,2,14,2,0,18,3,1,8,0,0,10,2,0,1,2,0,12,1,1,1,2,1,7,1,0,14,1,2,17,1,0,7,1,0,15,0,0,14,2,0,6,2,2,9,0,2,13,0,0,7,0,1,8,2,0,4,0,2,8,0,2,4,1,2,16,2,0,6,3,0,10,3,0,11,3,1,2,1,2,9,0,2,7,1,2,14,0,0,9,2,0,15,0,2,11,1,2,7,1,1,7,3,2,16,3,1,1,3,2,7,2,2,9,0,0,5,2,0,1,1,0,12,0,1,15,0,1,4,2,0,4,0,2,18,3,1,14,1,2,11,0,0,6,3,2,16,0,0,11,3,0,19,1,2,13,1,2,10,1,1,7,0,1,11,2)

</comment><comment><USER38> Some of these could be quite useful for graphics algorithms. For example: [http://wry.me/hacking/Turing- Drawings/#4,3,1,1,2,1,2,1,0,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,1,1,2,1,2,1,0,2,3,0,2,2,1,2,2,2,1,2,1,2,3,3,2,3,3,2,2,2,1,3,0,2,1,1,1,1)

Is a pretty amazing simulation of fire with wind (although rotated 90°).

And that 'Glider' one from the other post could work as water on a car wind shield while driving.

</comment><comment><USER39> Lovely.

My findings:

Here is one with a curious counter-clockwise rotation phenomenon:

[http://wry.me/hacking/Turing- Drawings/#6,5,5,2,0,2,1,0,4,4,2...](http://wry.me/hacking/Turing- Drawings/#6,5,5,2,0,2,1,0,4,4,2,3,4,1,0,3,2,3,3,0,0,1,2,3,1,0,5,2,2,0,4,0,4,4,3,5,2,3,1,4,0,5,2,0,4,3,2,4,1,2,4,1,1,3,3,0,4,2,0,5,1,2,0,4,1,3,3,1,0,1,3,5,3,0,3,1,2,1,4,3,0,1,3,1,1,3,0,4,0,4,3,0)

And a few that take a long time to stabilize and do some interesting things in the meantime:

[http://www.wry.me/hacking/Turing- Drawings/#3,5,2,4,1,1,1,3,1...](http://www.wry.me/hacking/Turing- Drawings/#3,5,2,4,1,1,1,3,1,1,1,1,3,0,0,3,3,0,1,2,2,2,1,0,4,3,0,1,2,2,1,0,1,4,3,1,3,3,0,4,1,0,4,3,1,2,1)

[http://wry.me/hacking/Turing- Drawings/#4,3,0,2,2,1,2,1,3,2,0...](http://wry.me/hacking/Turing- Drawings/#4,3,0,2,2,1,2,1,3,2,0,3,1,2,3,1,1,0,1,2,0,1,1,1,2,0,3,1,3,3,2,0,1,1,3,3,1,3)

[http://www.wry.me/hacking/Turing- Drawings/#3,6,1,3,3,2,1,0,0...](http://www.wry.me/hacking/Turing- Drawings/#3,6,1,3,3,2,1,0,0,2,1,0,5,2,2,4,0,1,3,2,0,3,1,1,5,1,2,5,0,1,4,2,2,4,3,0,4,1,2,1,0,0,5,2,0,1,2,0,2,1,2,1,0,1,4,3)

<comment><USER39> Another with rotation:

[http://wry.me/hacking/Turing- Drawings/#4,4,0,2,0,1,2,3,1,3,3...](http://wry.me/hacking/Turing- Drawings/#4,4,0,2,0,1,2,3,1,3,3,0,1,2,2,3,1,0,3,0,2,1,3,0,2,2,3,3,0,1,2,3,0,2,2,3,3,1,3,3,3,2,1,0,2,1,0,1,2,0)

And another:

[http://wry.me/hacking/Turing- Drawings/#2,20,1,10,0,0,10,0,0,...](http://wry.me/hacking/Turing- Drawings/#2,20,1,10,0,0,10,0,0,1,3,1,19,1,0,1,2,1,19,0,1,12,3,0,13,3,0,13,1,0,18,1,1,11,0,0,13,1,0,10,2,0,11,0,0,8,2,1,17,2,0,18,2,0,2,3,0,9,3,0,9,1,1,19,3,1,11,2,1,6,3,0,19,0,0,18,0,0,13,0,0,19,3,0,16,3,0,5,2,0,19,3,1,18,2,0,17,2,0,9,2,0,5,1,1,11,1,1,5,3,1,2,3,0,11,0,1,17,0,1,13,2)

I wonder if there is a simple explanation for this phenomenon.

And just for fun:

[http://www.wry.me/hacking/Turing- Drawings/#3,6,1,2,2,2,1,0,0...](http://www.wry.me/hacking/Turing- Drawings/#3,6,1,2,2,2,1,0,0,2,1,1,2,2,0,1,3,2,2,0,1,3,0,0,2,3,2,4,0,0,2,0,0,3,3,1,5,1,2,2,3,2,1,2,1,5,1,2,3,0,1,2,3,0,1,1)

[http://www.wry.me/hacking/Turing- Drawings/#8,3,2,2,1,5,2,1,0...](http://www.wry.me/hacking/Turing- Drawings/#8,3,2,2,1,5,2,1,0,1,1,1,2,0,2,2,1,3,2,1,2,2,1,4,2,1,3,2,2,2,1,0,7,2,3,5,2,0,3,2,3,4,1,0,7,1,3,7,1,0,3,1,3,4,2,0,3,2,2,5,1,1,0,2,1,3,2,3,4,2,2,6,2,3)

[http://www.wry.me/hacking/Turing- Drawings/#3,6,1,3,0,0,3,3,2...](http://www.wry.me/hacking/Turing- Drawings/#3,6,1,3,0,0,3,3,2,1,2,2,1,3,1,4,2,0,5,3,1,4,0,1,1,1,0,4,2,1,1,0,1,3,2,0,3,3,1,1,1,2,3,3,1,1,2,0,1,1,2,5,1,2,4,0)

[http://www.wry.me/hacking/Turing- Drawings/#3,7,2,3,2,1,1,3,0...](http://www.wry.me/hacking/Turing- Drawings/#3,7,2,3,2,1,1,3,0,4,1,1,6,1,1,2,3,1,4,1,2,3,3,2,2,0,0,1,3,0,3,1,0,3,3,0,2,1,1,3,0,0,6,2,0,6,2,0,6,3,2,6,3,0,6,3,2,3,2,0,2,3,1,5,2)

That last one will surprise you.

More ...

[http://www.wry.me/hacking/Turing- Drawings/#3,7,2,6,3,2,3,3,1...](http://www.wry.me/hacking/Turing- Drawings/#3,7,2,6,3,2,3,3,1,5,0,0,1,1,2,3,1,2,6,2,0,2,0,2,1,1,1,5,0,0,5,1,1,2,2,2,4,1,1,3,3,2,2,2,1,5,2,2,4,2,2,4,1,2,5,3,0,5,0,0,5,3,1,4,0)

Wait for it:

[http://www.wry.me/hacking/Turing- Drawings/#3,6,0,1,0,1,3,2,2...](http://www.wry.me/hacking/Turing- Drawings/#3,6,0,1,0,1,3,2,2,4,2,0,5,2,0,4,0,0,4,2,0,3,1,1,5,0,2,3,1,0,2,1,1,1,2,1,3,2,0,2,1,0,5,3,1,1,2,1,5,2,2,4,0,2,5,1)

[http://www.wry.me/hacking/Turing- Drawings/#3,6,2,5,2,1,5,1,2...](http://www.wry.me/hacking/Turing- Drawings/#3,6,2,5,2,1,5,1,2,3,1,2,5,0,1,2,1,0,3,1,1,1,2,2,2,3,0,4,1,2,5,2,0,3,2,0,4,0,2,3,0,2,4,3,1,4,1,1,4,3,1,4,0,1,4,2)

</comment></comment><comment><USER40> [http://wry.me/hacking/Turing- Drawings/#4,3,2,2,0,2,2,0,0,2,1...](http://wry.me/hacking/Turing- Drawings/#4,3,2,2,0,2,2,0,0,2,1,2,2,0,3,1,2,3,2,0,2,1,3,1,2,2,0,1,2,0,1,0,0,2,2,0,1,1) reminds me of cellular automata and Rule 30 - <http://en.wikipedia.org/wiki/Rule_30>.

</comment><comment><USER41> This one is lovely. Water falls from Sierpinski triangles. It's still running, will be interesting to see if this pattern is stable

[http://www.wry.me/hacking/Turing- Drawings/#3,4,2,1,0,2,2,2,0...](http://www.wry.me/hacking/Turing- Drawings/#3,4,2,1,0,2,2,2,0,3,0,1,3,1,2,1,1,1,1,2,0,2,2,2,1,2,2,3,0,1,2,0,2,3,0,1,2,1)

</comment><comment><USER42> This is great. Here's a bug report:

If your browser window is narrow, the "Fork Me on GitHub" link overlaps the "Pause" button. (But the overlapping part of the GitHub image is transparent, so it's not immediately obvious why "Pause" doesn't work.)

The page content fits just fine, so it seems silly to make the window larger; there's just this little bug.

<comment><USER43> Thanks, Scott! As a quick patch I just broke the line of buttons in two. (I didn't want to mess with the original code more than needed, but couldn't resist adding the new buttons.)

</comment></comment><comment><USER44> Way addictive:

Visual Migraine: [http://wry.me/hacking/Turing- Drawings/#4,3,3,1,3,0,2,3,2,2,2...](http://wry.me/hacking/Turing- Drawings/#4,3,3,1,3,0,2,3,2,2,2,1,1,1,3,1,1,2,1,3,2,2,3,1,2,1,3,2,2,0,2,0,1,1,1,1,1,1)

Forest reclaims the city: [http://wry.me/hacking/Turing- Drawings/#4,3,2,1,3,3,2,3,0,2,1...](http://wry.me/hacking/Turing- Drawings/#4,3,2,1,3,3,2,3,0,2,1,1,2,3,2,2,0,3,2,2,1,2,3,3,1,3,2,2,0,2,2,1,2,1,3,2,2,0)

Triangle Parallax 1: [http://wry.me/hacking/Turing- Drawings/#4,3,0,2,3,2,1,3,1,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,0,2,3,2,1,3,1,1,2,3,1,1,0,1,2,3,2,1,2,2,3,2,1,2,2,2,0,3,1,1,0,1,0,1,2,2) Triangle Parallax 2: [http://wry.me/hacking/Turing- Drawings/#4,3,2,1,3,0,2,2,2,1,1...](http://wry.me/hacking/Turing- Drawings/#4,3,2,1,3,0,2,2,2,1,1,3,2,3,1,1,2,3,1,1,0,1,1,1,2,1,3,1,0,1,2,1,1,1,2,0,1,0)

Rain: [http://wry.me/hacking/Turing- Drawings/#4,3,2,2,3,0,2,2,1,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,2,2,3,0,2,2,1,2,3,3,1,3,3,2,3,0,2,1,3,2,2,3,2,3,0,2,1,0,1,1,1,1,3,1,1,2)

Cross town traffic: [http://wry.me/hacking/Turing- Drawings/#4,3,0,1,3,2,2,3,3,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,3,2,2,3,3,1,3,1,2,1,2,2,3,0,1,1,1,2,0,1,2,0,1,1,1,0,2,1,1,1,1,3,2,1)

Scene Carving: [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,3,1,2,2,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,3,3,1,2,2,1,2,0,2,0,1,1,3,0,2,1,0,2,3,2,1,0,3,1,1,3,2,1,3,1,2,2,1,1)

Fjords: [http://wry.me/hacking/Turing- Drawings/#4,3,0,2,3,3,2,3,3,2,0...](http://wry.me/hacking/Turing- Drawings/#4,3,0,2,3,3,2,3,3,2,0,2,2,3,3,2,3,1,1,3,0,2,1,1,1,3,1,1,3,0,1,1,1,2,2,3,1,0)

Blowing snow: [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,1,0,2,2,2,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,1,0,2,2,2,1,3,2,2,0,1,2,0,2,1,0,0,2,0,1,2,2,3,2,2,0,2,1,0,1,1,1,1,1)

</comment><comment><USER45> This one tells a story in 3 acts: [http://wry.me/hacking/Turing- Drawings/#4,5,0,4,0,2,1,0,3,2,3...](http://wry.me/hacking/Turing- Drawings/#4,5,0,4,0,2,1,0,3,2,3,2,3,3,2,3,1,2,4,0,2,2,3,0,1,3,2,2,1,1,4,0,0,4,0,3,3,0,2,4,1,1,2,2,1,3,0,0,4,3,1,4,0,3,4,1,3,2,2,2,2,2)

</comment><comment><USER46> Watch this one on very fast: [http://wry.me/hacking/Turing- Drawings/#2,10,0,8,3,1,8,2,0,3,...](http://wry.me/hacking/Turing- Drawings/#2,10,0,8,3,1,8,2,0,3,2,1,1,3,0,1,3,1,3,0,0,3,0,1,9,0,0,6,1,1,7,3,1,2,3,1,8,3,1,6,2,0,1,2,0,3,2,1,2,2,1,1,1,1,4,0,1,4,3,1,7,3)

Cool!

</comment><comment><USER47> Here's a fun one, reminds me of some abstract art I've seen: [http://www.wry.me/hacking/Turing- Drawings/#4,3,3,1,0,0,2,3,2...](http://www.wry.me/hacking/Turing- Drawings/#4,3,3,1,0,0,2,3,2,1,0,3,1,3,3,2,3,3,2,3,0,1,3,0,1,0,0,1,3,0,1,0,3,1,2,0,2,0)

</comment><comment><USER48> here's my contribution: the machine

[http://wry.me/hacking/Turing- Drawings/#4,4,2,1,2,1,1,1,2,3,3...](http://wry.me/hacking/Turing- Drawings/#4,4,2,1,2,1,1,1,2,3,3,3,2,3,0,1,2,0,1,0,3,1,3,2,2,1,0,3,3,3,2,0,0,1,1,3,3,1,0,2,0,2,2,3,3,3,1,2,2,3)

<comment><USER18> Interestingly, that's quite similar to cookingrobot's.

[ <https://news.ycombinator.com/item?id=5709406> ]

</comment></comment><comment><USER49> Windswept: [http://wry.me/hacking/Turing- Drawings/#5,3,1,2,0,0,1,0,2,1,2...](http://wry.me/hacking/Turing- Drawings/#5,3,1,2,0,0,1,0,2,1,2,2,2,1,2,1,3,1,1,0,1,1,2,3,2,0,4,2,2,1,2,3,2,1,3,4,1,2,2,2,0,3,1,0,2,1,1)

<comment><USER49> The ascension of the lines: [http://wry.me/hacking/Turing- Drawings/#10,3,0,1,2,7,2,3,3,2,...](http://wry.me/hacking/Turing- Drawings/#10,3,0,1,2,7,2,3,3,2,1,8,2,1,1,2,0,0,2,0,4,2,2,8,1,0,2,1,1,9,2,0,7,2,2,6,2,3,7,2,0,1,1,2,6,2,1,8,1,3,8,1,1,5,1,2,0,2,3,6,2,3,3,2,2,0,2,1,0,2,3,5,2,3,0,1,3,9,2,2,6,2,1,1,1,3,4,1,0,2,2,3)

Wavy lines slowly move upwards, some disappear over time.

</comment></comment><comment><USER50> What would happen if these were constrained to run inside irregularly shaped "skins" and bred for "fitness" against some criteria. For example, take a look at Marsaglia's die hard tests for statistical randomness. Any machine that terminates would have a very low random coefficient, and any that turns to noise would have a very high random coefficient. Similarly, ones that repeat quickly could also be selected against. All that remains is to restrict the number of critters, as specified by the number of "skins" and "breed" new critters from old ones which were successful (with a "pleasing" statistical randomness coefficient).

</comment><comment><USER51> [http://wry.me/hacking/Turing- Drawings/#5,3,4,2,0,2,1,1,2,2,0...](http://wry.me/hacking/Turing- Drawings/#5,3,4,2,0,2,1,1,2,2,0,1,1,1,3,2,0,2,1,3,3,1,0,0,2,1,2,2,2,0,1,2,2,1,2,4,2,3,4,2,0,4,1,2,0,2,1)

</comment><comment><USER52> Fractal [http://wry.me/hacking/Turing- Drawings/#4,3,2,1,2,1,1,3,3,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,2,1,2,1,1,3,3,1,3,3,1,1,2,2,1,0,1,0,1,2,3,2,1,2,2,2,3,3,1,0,3,2,2,0,1,3)

</comment><comment><USER53> Swarms of bees?

[http://wry.me/hacking/Turing- Drawings/#4,3,3,2,0,1,1,2,1,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,0,1,1,2,1,1,2,0,2,1,1,1,3,2,1,0,3,2,3,1,2,1,2,1,0,0,1,1,2,1,1,3,2,0)

</comment><comment><USER54> This one looks kinda cool:

[http://wry.me/hacking/Turing- Drawings/#4,3,0,1,2,0,2,0,3,2,0...](http://wry.me/hacking/Turing- Drawings/#4,3,0,1,2,0,2,0,3,2,0,1,1,3,2,1,3,0,2,1,3,1,0,3,2,2,2,2,3,2,1,1,3,1,1,0,2,1)

Edit: This one takes very long and looks somewhat like rain in the end:

[http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,0,1,2,0,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,0,1,2,0,2,3,2,2,0,2,2,1,2,1,3,3,1,1,3,2,2,2,1,0,2,2,0,1,1,2,2,1,2)

</comment><comment><USER55> Watch this one fairly slow. [http://wry.me/hacking/Turing- Drawings/#4,3,3,2,2,0,2,3,1,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,2,0,2,3,1,2,3,0,2,2,1,2,2,0,1,0,2,1,2,2,1,0,3,1,3,0,1,3,0,2,2,3,2,2) I like it because it seems to behave pretty well at first and decays only gradually.

</comment><comment><USER56> Another experiment similar to this, but uses Biham–Middleton–Levine traffic model: [http://htmlpreview.github.io/?http://github.com/MaciekBaron/...](http://htmlpreview.github.io/?http://github.com/MaciekBaron/BMLTrafficJS/blob/master/index.html#?s=Javascript&d=44&r=3981204071203)

</comment><comment><USER57> This one stops after a pretty long time (put it on Fastest).

[http://wry.me/hacking/Turing- Drawings/#5,3,4,1,3,2,1,2,4,2,3...](http://wry.me/hacking/Turing- Drawings/#5,3,4,1,3,2,1,2,4,2,3,2,2,0,4,2,3,4,1,2,1,2,0,0,2,3,1,2,3,4,1,0,4,1,2,4,2,1,3,2,2,3,2,1,1,1,3)

How usual is this?

</comment><comment><USER58> This one is _counting_ to an incredibly large number -- slow it all the way down and watch what it's doing:

[http://wry.me/hacking/Turing- Drawings/#2,3,1,1,2,1,1,0,0,1,0...](http://wry.me/hacking/Turing- Drawings/#2,3,1,1,2,1,1,0,0,1,0,1,2,3,1,1,1,0,2,2)

</comment><comment><USER59> My favorite so far - there's something chemical about it: [http://www.wry.me/hacking/Turing- Drawings/#2,5,0,4,0,0,3,1,1...](http://www.wry.me/hacking/Turing- Drawings/#2,5,0,4,0,0,3,1,1,2,2,1,3,3,0,2,3,0,4,2,0,3,1,0,1,2,0,1,1,0,2,1)

</comment><comment><USER60> I wonder if one could construct a metric for how 'interesting' a drawing is- then throw it at a genetic algorithm? I'm guessing most likely the system is inherently unstable, so two 'interesting' parents don't necessarily create 'interesting' offspring

<comment><USER61> You don't have to use crossover, you can just make small mutations. That's much more likely to result in interesting offspring.

</comment></comment><comment><USER62> Slowing down: [http://wry.me/hacking/Turing- Drawings/#4,4,0,1,3,0,1,3,0,3,0...](http://wry.me/hacking/Turing- Drawings/#4,4,0,1,3,0,1,3,0,3,0,3,2,1,1,2,0,1,1,3,3,2,2,0,3,0,3,2,3,3,2,0,2,3,3,0,1,2,3,3,3,0,2,1,2,2,3,1,1,2)

</comment><comment><USER63> Flying over a strange landscape [http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,1,1,0,2,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,1,1,0,2,1,2,0,1,2,1,1,0,3,1,1,2,2,3,3,2,1,3,2,2,0,1,1,2,2,3,1,1,2)

</comment><comment><USER64> These really remind me of the old Core War game, where to competitive programs would try to annihilate each other:

<http://www.corewars.org>

It was played on a grid as well, and frequently made patterns similar to these.

</comment><comment><USER65> Cellular autonomon-ish [http://wry.me/hacking/Turing- Drawings/#4,3,1,2,3,1,1,0,3,1,2...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,3,1,1,0,3,1,2,3,2,1,1,2,0,2,2,0,3,2,3,1,2,2,3,2,3,2,1,1,3,2,2,1,1,1)

</comment><comment><USER66> I call this one DoS attack:

[http://wry.me/hacking/Turing- Drawings/#4,3,2,1,0,2,2,0,3,2,0...](http://wry.me/hacking/Turing- Drawings/#4,3,2,1,0,2,2,0,3,2,0,1,2,0,1,1,2,2,1,3,0,2,1,2,1,3,2,1,3,0,1,0,2,2,3,2,2,3)

</comment><comment><USER67> Wheeeeee! [http://wry.me/hacking/Turing- Drawings/#4,3,0,2,1,3,2,1,0,2,0...](http://wry.me/hacking/Turing- Drawings/#4,3,0,2,1,3,2,1,0,2,0,1,1,0,2,2,3,3,2,3,1,2,3,1,2,0,3,1,0,2,2,0,2,1,2,1,1,1)

</comment><comment><USER68> [http://wry.me/hacking/Turing- Drawings/#4,3,3,1,0,1,1,3,1,2,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,1,0,1,1,3,1,2,3,2,2,0,1,2,2,3,2,3,0,1,3,1,2,2,1,1,3,0,1,1,2,1,2,1,2,3)

</comment><comment><USER69> Triangle start:

[http://wry.me/hacking/Turing- Drawings/#4,3,3,1,2,0,1,1,2,1,3...](http://wry.me/hacking/Turing- Drawings/#4,3,3,1,2,0,1,1,2,1,3,2,1,3,3,2,2,2,2,2,2,2,2,2,1,3,1,1,3,2,2,2,3,1,1,3,2,0)

</comment><comment><USER6> Xor waves (this has 2 distinct 'phases' before setting down into a nice static pattern): [http://wry.me/hacking/Turing- Drawings/#3,3,2,1,3,0,2,0,0,2,3...](http://wry.me/hacking/Turing- Drawings/#3,3,2,1,3,0,2,0,0,2,3,1,2,0,2,1,0,0,2,3,2,1,1,2,2,0,1,1,1)

Escher's hourglass: [http://wry.me/hacking/Turing- Drawings/#5,3,3,1,3,0,1,2,1,2,0...](http://wry.me/hacking/Turing- Drawings/#5,3,3,1,3,0,1,2,1,2,0,3,2,3,0,1,2,3,1,0,2,1,3,0,2,2,4,1,1,1,1,1,1,2,0,0,2,3,0,1,3,2,2,1,2,1,1)

Zigzags (devolves): [http://wry.me/hacking/Turing- Drawings/#5,4,3,3,0,3,1,2,1,1,1...](http://wry.me/hacking/Turing- Drawings/#5,4,3,3,0,3,1,2,1,1,1,4,3,3,1,1,1,3,3,2,2,1,0,3,3,2,0,2,2,1,1,1,2,1,1,3,1,1,1,2,3,0,2,1,3,3,0,3,1,1,3,2,3,3,1,1,0,3,2,2,1,3)

A big static one: Construction line: [http://wry.me/hacking/Turing- Drawings/#212,2,13,1,2,207,1,0,...](http://wry.me/hacking/Turing- Drawings/#212,2,13,1,2,207,1,0,80,1,1,16,1,2,161,1,2,109,1,1,103,1,0,42,1,1,196,1,3,73,1,1,182,1,1,16,1,3,43,1,2,193,1,2,70,1,1,53,1,1,19,1,2,137,1,0,101,1,0,166,1,3,66,1,2,187,1,3,66,1,1,16,1,0,5,1,3,133,1,3,68,1,1,183,1,0,160,1,1,39,1,2,49,1,0,51,1,1,185,1,2,23,1,1,32,1,0,68,1,0,55,1,3,92,1,1,129,1,1,138,1,3,109,1,1,82,1,2,171,1,1,209,1,3,68,1,0,106,1,1,54,1,0,94,1,0,171,1,0,152,1,1,74,1,0,54,1,3,56,1,2,67,1,2,188,1,1,135,1,1,75,1,0,111,1,3,57,1,3,192,1,3,194,1,3,105,1,2,172,1,2,20,1,2,74,1,3,16,1,2,113,1,3,58,1,3,70,1,3,20,1,0,41,1,3,122,1,3,160,1,0,139,1,0,174,1,1,110,1,2,97,1,3,23,1,1,48,1,0,98,1,1,49,1,2,78,1,3,26,1,0,30,1,0,30,1,0,45,1,1,84,1,1,91,1,2,157,1,2,116,1,1,112,1,0,159,1,1,49,1,2,207,1,1,131,1,1,182,1,1,108,1,3,140,1,0,66,1,3,195,1,0,180,1,2,74,1,1,210,1,0,208,1,3,56,1,2,8,1,0,19,1,1,164,1,2,196,1,3,198,1,2,211,1,1,155,1,2,131,1,3,36,1,2,182,1,2,180,1,3,123,1,1,96,1,1,141,1,2,192,1,2,149,1,3,81,1,3,74,1,1,137,1,1,46,1,3,200,1,3,194,1,3,9,1,3,74,1,1,2,1,0,73,1,1,203,1,0,191,1,3,19,1,3,53,1,1,83,1,0,111,1,1,74,1,2,118,1,3,8,1,2,191,1,1,11,1,3,175,1,2,48,1,0,45,1,2,24,1,1,162,1,0,25,1,2,13,1,0,118,1,2,62,1,0,60,1,3,52,1,3,1,1,1,170,1,2,150,1,0,133,1,3,200,1,0,102,1,2,1,1,0,127,1,2,123,1,0,28,1,1,71,1,3,117,1,3,6,1,1,144,1,3,49,1,1,131,1,3,92,1,1,68,1,1,109,1,3,188,1,0,4,1,1,141,1,0,89,1,3,66,1,2,162,1,2,60,1,0,36,1,0,139,1,2,175,1,3,7,1,3,157,1,3,39,1,1,113,1,2,3,1,2,2,1,0,100,1,1,45,1,3,137,1,3,123,1,0,70,1,2,198,1,1,9,1,2,25,1,1,8,1,3,86,1,3,181,1,0,1,1,0,179,1,1,45,1,2,43,1,3,101,1,3,184,1,0,62,1,2,6,1,3,2,1,0,124,1,2,105,1,0,141,1,2,99,1,2,72,1,1,139,1,0,96,1,3,187,1,0,194,1,2,166,1,3,68,1,1,155,1,2,71,1,1,14,1,1,189,1,2,35,1,3,191,1,2,200,1,1,172,1,2,207,1,3,57,1,1,167,1,1,209,1,2,112,1,3,16,1,0,184,1,3,137,1,1,144,1,1,145,1,0,154,1,2,111,1,0,130,1,0,153,1,0,35,1,0,72,1,2,135,1,0,101,1,2,79,1,0,101,1,2,24,1,3,15,1,0,5,1,1,111,1,3,21,1,2,53,1,1,185,1,2,173,1,0,133,1,2,172,1,0,119,1,1,62,1,0,126,1,0,72,1,2,99,1,1,83,1,3,189,1,3,81,1,3,110,1,2,6,1,2,49,1,0,148,1,2,208,1,0,115,1,1,65,1,3,138,1,3,26,1,1,178,1,3,92,1,3,166,1,3,150,1,1,10,1,0,137,1,3,165,1,3,62,1,0,76,1,3,70,1,2,133,1,2,2,1,0,128,1,0,133,1,0,208,1,3,76,1,2,178,1,1,98,1,2,53,1,0,98,1,2,62,1,1,43,1,3,165,1,1,127,1,1,43,1,3,131,1,1,72,1,3,19,1,0,114,1,0,75,1,2,110,1,2,160,1,0,24,1,3,173,1,1,31,1,1,111,1,0,61,1,2,200,1,3,182,1,0,131,1,1,140,1,2,171,1,2,179,1,0,93,1,1,8,1,2,197,1,1,187,1,1,139,1,3,106,1,3,147,1,3,164,1,2,110,1,1,99,1,0,147,1,3,61,1,2,137,1,1,57,1,3,103,1,0,9,1,2,15,1,3,115,1,2,167,1,0,108,1,3,5,1,2,148,1,2,104,1,2,152,1,0,104,1,0,200,1,2,170,1,2,150,1,2,32,1,1,171,1,0,134,1,1,4,1,3,81,1,3,11,1,0,164,1,0,149,1,0,111,1,2,30,1,3,155,1,1,204,1,1,84,1,3,167,1,1,105,1,0,10,1,0,109,1,3,111,1,1,10,1,1,156,1,0,163,1,1,44,1,0,65,1,3,95,1,2,93,1,0,185,1,0,8,1,2,108,1,1,211,1,2,173,1,1,40,1,2,133,1,3,59,1,1,77,1,1,127,1,1,18,1,1,135,1,3,81,1,3,207,1,0,113,1,1,196,1,1,132,1,0,32,1,1,96,1,0,84,1,1,152,1,0,146,1,0,93,1,3,154,1,1,50,1,3,162,1,2,78,1,3,23,1,3,64,1,3,27,1,2,51,1,0,40,1,1,116,1,0,190,1,2,94,1,1,87,1,3,98,1,1,59,1,0,205,1,2,197,1,2,94,1,0,62,1,2,165,1,3,59,1,1,84,1,0,121,1,1,30,1,0,136,1,2,144,1,0,138,1,0,108,1,3,141,1,1,32,1,1,35,1,0)

Mostly static: scales: [http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,2,1,3,1,1,1...](http://wry.me/hacking/Turing- Drawings/#4,3,1,2,1,2,1,3,1,1,1,2,2,3,2,1,3,2,2,0,3,2,1,0,1,3,0,1,0,1,1,2,3,2,1,1,2,2)

<comment><USER70> How does anyone find these. I keep hitting "random" with various choices of states and colors and I get either white noise or an epileptic seizure.

<comment><USER6> Too many of either is unlikely to generate anything interesting, stick to very small numbers.

</comment></comment></comment><comment><USER55> The "Fork me on Github" banner overlaps the controls invisibly. With a narrow- ish window, I can't click the "num symbols" box, or half the "restart" button or most of the "pause" button.

<comment><USER71> I don't like that banner. It uses "forking" in a sexual manner.

</comment></comment><comment><USER41> Static Sierpinski triangle

[http://www.wry.me/hacking/Turing- Drawings/#2,3,1,2,0,1,2,0,0...](http://www.wry.me/hacking/Turing- Drawings/#2,3,1,2,0,1,2,0,0,1,0,1,1,2,1,2,2,0,1,0)

<comment><USER72> Another version of this: [http://wry.me/hacking/Turing- Drawings/#2,4,0,1,1,0,3,0,1,1,1...](http://wry.me/hacking/Turing- Drawings/#2,4,0,1,1,0,3,0,1,1,1,0,3,3,1,3,3,1,2,2,0,3,3,1,3,1)

</comment></comment><comment><USER73> There's also Turing Tunes, based on the same idea: <http://maximecb.github.io/Turing-Tunes/>

<comment><USER74> Auto-IDM

</comment></comment><comment><USER75> Damn, I found one that made sierpinski triangles early on and didn't realize how rare those would turn out to be, haven't seen another one since.

<comment><USER76> I had the same experience. Not sure how they generate them but perhaps not as random as one would think?

</comment></comment><comment><USER77> this diagonal line repeats a few times and just "breaks" after a point.

[http://wry.me/hacking/Turing- Drawings/#4,3,3,2,2,1,1,3,0,2,2...](http://wry.me/hacking/Turing- Drawings/#4,3,3,2,2,1,1,3,0,2,2,3,1,2,2,1,1,1,1,3,0,2,3,0,1,1,2,1,3,2,1,0,1,1,1,0,1,2)

I thought it was a bug at first, but it actually does it every time (speed up if you're impatient)

<comment><USER43> If you slow it way down after it 'freezes' you can get an idea how it's caught in a loop. (I wonder how many people have noticed you can slow it way down to see the head move.)

</comment></comment><comment><USER57> fascinating flows: [http://wry.me/hacking/Turing- Drawings/#5,3,1,2,2,1,2,3,0,1,0...](http://wry.me/hacking/Turing- Drawings/#5,3,1,2,2,1,2,3,0,1,0,2,2,1,0,2,0,2,2,0,4,2,3,4,1,1,3,1,1,0,1,2,3,2,1,2,2,0,4,1,0,4,1,1,4,2,3)

</comment><comment><USER78> This one is probably my favorite so far: [http://wry.me/hacking/Turing- Drawings/#7,5,2,2,2,3,2,0,5,3,0...](http://wry.me/hacking/Turing- Drawings/#7,5,2,2,2,3,2,0,5,3,0,0,1,0,1,3,1,6,1,2,5,3,1,1,2,1,5,4,0,5,3,3,3,1,2,2,2,1,3,1,3,2,1,0,4,1,1,6,1,0,0,2,0,6,3,2,3,1,2,5,1,3,1,3,2,5,4,1,6,3,3,2,3,2,4,3,0,6,4,0,2,1,1,4,3,1,6,2,1,0,3,3,6,3,3,3,3,1,1,4,1,3,1,0,0,3,2)

Ends up looking like rain or an old filmreel: [http://wry.me/hacking/Turing- Drawings/#7,3,5,1,3,4,2,1,1,2,3...](http://wry.me/hacking/Turing- Drawings/#7,3,5,1,3,4,2,1,1,2,3,4,1,0,1,2,0,1,2,0,6,1,0,0,2,3,2,2,2,6,2,3,0,2,2,6,1,1,6,2,3,6,2,3,4,1,2,4,1,3,1,2,0,1,2,0,5,1,3,4,1,3,3,2,2)

Still noise, but looks like sand, maybe, or grass waving in the wind: [http://wry.me/hacking/Turing- Drawings/#7,3,4,1,2,2,2,3,2,2,1...](http://wry.me/hacking/Turing- Drawings/#7,3,4,1,2,2,2,3,2,2,1,5,2,3,0,1,2,3,2,3,5,1,3,4,1,3,3,1,3,4,1,3,0,1,0,5,2,1,0,1,1,1,2,3,0,1,1,4,2,0,4,1,1,4,2,2,1,2,2,1,1,2,4,1,1)

Wait no, this is my favorite so far: [http://wry.me/hacking/Turing- Drawings/#7,3,2,1,0,6,1,0,2,1,0...](http://wry.me/hacking/Turing- Drawings/#7,3,2,1,0,6,1,0,2,1,0,2,1,0,0,1,0,1,1,1,0,1,1,1,1,1,6,2,2,1,2,1,4,2,3,1,1,2,4,2,1,5,1,3,5,2,2,3,2,1,5,1,0,5,2,1,1,1,0,4,1,0,3,2,2)

More sand: [http://wry.me/hacking/Turing- Drawings/#7,3,0,1,1,0,1,2,5,2,3...](http://wry.me/hacking/Turing- Drawings/#7,3,0,1,1,0,1,2,5,2,3,6,2,1,5,1,1,4,1,3,1,2,0,1,1,2,2,1,3,0,2,1,6,2,2,4,2,2,6,1,2,4,2,0,1,2,1,2,1,0,3,2,2,4,1,0,2,2,1,4,1,3,2,2,0)

Proper rain: [http://wry.me/hacking/Turing- Drawings/#7,3,4,1,0,4,2,3,4,1,0...](http://wry.me/hacking/Turing- Drawings/#7,3,4,1,0,4,2,3,4,1,0,1,1,1,0,1,2,4,2,1,0,1,3,3,1,2,0,2,2,2,2,2,2,2,0,2,1,3,4,1,2,5,2,0,0,1,3,5,1,3,4,2,0,2,2,2,4,1,2,0,1,1,3,1,2)

Moving line: [http://wry.me/hacking/Turing- Drawings/#7,3,0,2,3,0,1,1,2,2,1...](http://wry.me/hacking/Turing- Drawings/#7,3,0,2,3,0,1,1,2,2,1,0,1,1,5,1,3,4,2,3,6,2,2,6,2,0,5,2,1,6,1,3,1,1,0,1,2,0,0,1,0,0,2,2,1,1,3,2,2,3,4,2,1,4,1,2,1,2,0,1,1,2,0,1,1)

Something about this is cool: [http://wry.me/hacking/Turing- Drawings/#7,3,5,2,0,2,1,1,3,2,2...](http://wry.me/hacking/Turing- Drawings/#7,3,5,2,0,2,1,1,3,2,2,5,2,1,2,1,1,4,2,1,2,1,1,1,1,0,6,1,1,1,1,2,2,2,3,5,1,1,1,1,3,4,2,3,1,1,1,3,2,3,2,2,0,2,1,0,3,1,1,1,1,3,3,2,1)

Proper grass waving in the wind (wait for it): [http://wry.me/hacking/Turing- Drawings/#7,3,1,2,2,3,2,2,0,2,1...](http://wry.me/hacking/Turing- Drawings/#7,3,1,2,2,3,2,2,0,2,1,3,1,1,0,1,3,0,2,0,5,2,2,0,1,0,2,1,1,2,2,2,3,2,0,3,1,2,5,2,0,6,1,1,4,2,1,0,2,2,3,2,2,4,1,3,4,2,2,0,2,0,5,1,1)

</comment><comment><USER57> ~ ~ [1] turing 1,132-132 All \-- INSERT -- [http://wry.me/hacking/Turing- Drawings/#5,3,1,2,2,1,2,3,0,1,0...](http://wry.me/hacking/Turing- Drawings/#5,3,1,2,2,1,2,3,0,1,0,2,2,1,0,2,0,2,2,0,4,2,3,4,1,1,3,1,1,0,1,2,3,2,1,2,2,0,4,1,0,4,1,1,4,2,3) [http://wry.me/hacking/Turing- Drawings/#5,3,4,1,1,4,1,2,2,1,1...](http://wry.me/hacking/Turing- Drawings/#5,3,4,1,1,4,1,2,2,1,1,2,2,2,1,2,1,3,1,1,4,2,3,3,2,2,2,2,0,3,2,1,3,2,3,0,1,1,0,1,3,2,2,0,4,2,1) [http://wry.me/hacking/Turing- Drawings/#5,3,4,1,1,0,2,3,4,1,0...](http://wry.me/hacking/Turing- Drawings/#5,3,4,1,1,0,2,3,4,1,0,3,2,2,4,1,1,1,2,1,3,1,2,0,2,1,0,1,1,1,1,0,0,1,2,4,1,1,4,2,1,0,2,2,0,1,3) [http://wry.me/hacking/Turing- Drawings/#5,3,4,1,0,0,2,3,3,2,0...](http://wry.me/hacking/Turing- Drawings/#5,3,4,1,0,0,2,3,3,2,0,4,2,0,2,1,0,4,1,1,2,2,1,4,2,1,4,1,1,2,1,3,0,2,3,1,1,1,4,2,0,4,2,3,4,1,3) [http://wry.me/hacking/Turing- Drawings/#5,3,1,2,1,0,1,2,4,1,1...](http://wry.me/hacking/Turing- Drawings/#5,3,1,2,1,0,1,2,4,1,1,0,1,1,4,1,3,0,2,2,3,1,0,3,2,0,1,1,0,0,1,0,2,2,0,4,1,3,0,1,0,1,1,1,4,2,3) [http://wry.me/hacking/Turing- Drawings/#5,3,4,1,3,0,2,2,4,1,1...](http://wry.me/hacking/Turing- Drawings/#5,3,4,1,3,0,2,2,4,1,1,3,2,0,1,2,2,4,1,1,1,2,3,3,2,3,2,1,2,4,2,3,1,1,3,0,2,0,0,1,2,2,2,0,1,1,2) [http://wry.me/hacking/Turing- Drawings/#5,3,4,2,1,2,2,1,4,1,1...](http://wry.me/hacking/Turing- Drawings/#5,3,4,2,1,2,2,1,4,1,1,0,2,3,1,2,3,1,2,1,1,1,2,1,2,1,0,1,2,1,1,1,4,2,0,0,1,3,2,1,3,1,2,1,4,1,0) [http://wry.me/hacking/Turing- Drawings/#5,3,2,1,2,1,1,2,3,1,0...](http://wry.me/hacking/Turing- Drawings/#5,3,2,1,2,1,1,2,3,1,0,3,2,0,3,1,2,2,1,0,4,1,0,3,2,3,3,1,2,2,1,1,4,1,3,1,2,0,4,1,0,4,2,3,2,2,2) [http://wry.me/hacking/Turing- Drawings/#5,3,1,1,0,3,2,1,2,1,2...](http://wry.me/hacking/Turing- Drawings/#5,3,1,1,0,3,2,1,2,1,2,4,1,1,3,1,2,1,2,3,1,1,2,1,2,1,1,2,2,4,2,0,0,2,0,2,1,3,2,2,2,1,1,1,0,1,2) [http://wry.me/hacking/Turing- Drawings/#5,3,1,2,0,1,1,2,1,1,0...](http://wry.me/hacking/Turing- Drawings/#5,3,1,2,0,1,1,2,1,1,0,3,1,3,0,2,2,2,1,1,2,2,0,4,1,1,2,1,0,2,2,2,3,2,3,2,2,3,3,2,2,4,1,3,1,2,0) [http://wry.me/hacking/Turing- Drawings/#5,3,0,2,1,0,1,1,3,2,0...](http://wry.me/hacking/Turing- Drawings/#5,3,0,2,1,0,1,1,3,2,0,1,1,1,1,2,2,4,1,1,4,1,1,0,2,3,1,2,2,0,2,1,4,1,2,3,1,2,0,2,0,2,2,2,3,1,3) [http://wry.me/hacking/Turing- Drawings/#5,3,3,2,1,3,2,0,4,1,1...](http://wry.me/hacking/Turing- Drawings/#5,3,3,2,1,3,2,0,4,1,1,4,2,1,1,2,0,0,1,2,2,2,1,3,1,1,0,1,0,2,2,3,2,2,1,2,2,0,1,2,0,1,1,2,0,1,3http://wry.me/hacking/Turing- Drawings/#5,3,4,2,3,4,2,0,1,2,1,3,1,2,1,2,1,4,1,1,4,1,0,3,2,0,2,1,2,0,1,1,3,1,0,0,1,0,2,1,0,2,1,1,0,1,3) [http://wry.me/hacking/Turing- Drawings/#5,3,3,2,1,0,1,1,4,1,1...](http://wry.me/hacking/Turing- Drawings/#5,3,3,2,1,0,1,1,4,1,1,4,2,2,1,1,1,0,1,0,4,1,3,1,2,2,0,2,2,3,2,1,4,1,0,1,1,1,2,1,2,3,1,2,0,2,0) [http://wry.me/hacking/Turing- Drawings/#5,3,2,2,2,2,2,3,4,1,3...](http://wry.me/hacking/Turing- Drawings/#5,3,2,2,2,2,2,3,4,1,3,3,1,3,0,1,2,2,1,2,4,1,1,0,2,3,1,2,3,3,2,2,0,2,2,2,2,1,4,2,3,4,1,1,3,2,2)

</comment><comment><USER79> Here are some of my favorites. One of them (Counter) behaves strangely. It doesn't appear to be stable, but it takes a long, long time to change appreciably. Another one (Sewing Machine) seems semi-stable in that it seems to settle around the same kind of almost-but-not-quite-chaotic pattern.

Warpspeed [http://wry.me/hacking/Turing- Drawings/#2,11,1,5,1,0,1,1,1,5,...](http://wry.me/hacking/Turing- Drawings/#2,11,1,5,1,0,1,1,1,5,0,0,7,2,1,7,3,1,7,3,0,9,2,0,4,2,0,7,1,1,7,2,1,7,1,0,3,1,1,6,2,0,4,3,0,7,0,1,2,0,1,2,2,0,8,3,0,10,1,0,1,2,0,3,1,0,2,1)

City Corner [http://wry.me/hacking/Turing- Drawings/#2,11,1,10,0,1,5,2,0,8...](http://wry.me/hacking/Turing- Drawings/#2,11,1,10,0,1,5,2,0,8,0,1,6,2,1,10,2,1,9,1,1,10,0,1,7,2,0,6,2,1,9,3,0,5,1,1,2,0,1,3,1,0,3,1,1,3,0,1,2,2,1,5,0,0,7,0,1,9,3,1,8,1,0,5,1,0,2,3)

Coloring Inside the Lines [http://wry.me/hacking/Turing- Drawings/#2,11,0,10,2,0,4,3,0,2...](http://wry.me/hacking/Turing- Drawings/#2,11,0,10,2,0,4,3,0,2,0,1,5,2,0,1,3,1,9,2,1,9,0,1,9,1,1,3,3,1,6,2,0,10,3,1,5,0,1,7,2,0,3,0,1,8,1,1,9,0,1,1,3,1,2,1,1,7,2,0,10,2,1,2,2,1,2,3)

Sewing Machine [http://wry.me/hacking/Turing- Drawings/#2,11,1,7,3,0,2,0,0,3,...](http://wry.me/hacking/Turing- Drawings/#2,11,1,7,3,0,2,0,0,3,3,1,9,0,1,5,2,1,9,1,0,6,1,1,8,3,0,3,0,0,9,1,1,1,1,1,8,2,1,6,3,1,5,1,0,7,3,1,6,3,0,3,0,1,4,1,1,6,0,1,9,0,0,2,1,0,9,0) Seems semi-stable?

Folding Paper Trick [http://wry.me/hacking/Turing- Drawings/#2,11,1,4,1,0,5,3,0,10...](http://wry.me/hacking/Turing- Drawings/#2,11,1,4,1,0,5,3,0,10,2,1,9,3,1,6,2,1,8,3,0,4,3,1,4,0,1,2,0,1,2,0,0,6,0,1,3,1,0,6,1,0,6,0,1,6,3,0,5,1,1,6,3,1,10,1,0,6,2,1,2,3,1,7,0,0,5,2)

Stable [http://wry.me/hacking/Turing- Drawings/#5,3,3,1,0,3,1,0,3,1,0...](http://wry.me/hacking/Turing- Drawings/#5,3,3,1,0,3,1,0,3,1,0,3,2,3,3,1,3,3,1,0,2,1,2,0,2,2,0,2,2,3,1,2,3,1,3,4,2,2,2,1,0,4,2,0,0,2,3)

Counter: [http://wry.me/hacking/Turing- Drawings/#5,3,1,1,0,3,1,3,2,1,2...](http://wry.me/hacking/Turing- Drawings/#5,3,1,1,0,3,1,3,2,1,2,1,1,1,1,1,1,0,2,3,0,1,2,2,1,2,0,2,0,0,1,0,4,1,3,4,2,1,0,2,0,2,1,2,2,1,0) This one seems to behave like some kind of adder. Even at the highest speed setting it takes a long time to see much change, but the black lines seem to grow and move similar to how a binary adder operates.

Spilled Drink [http://wry.me/hacking/Turing- Drawings/#13,21,10,11,1,0,7,0,4...](http://wry.me/hacking/Turing- Drawings/#13,21,10,11,1,0,7,0,4,17,3,7,16,0,11,4,1,9,3,1,7,17,3,1,7,3,11,11,1,1,11,1,8,10,0,1,8,1,1,10,2,3,8,2,0,19,2,2,15,3,8,18,0,10,17,3,11,17,2,0,1,3,4,9,3,2,1,1,10,16,3,5,4,1,5,2,1,10,10,3,1,16,3,0,18,2,7,15,0,6,15,0,10,20,2,9,14,2,11,1,1,3,10,2,9,8,3,3,5,2,3,19,2,7,15,0,8,20,1,0,15,0,7,16,0,12,12,0,0,14,0,12,5,3,5,18,1,7,5,1,3,4,2,0,17,1,6,1,1,4,7,2,3,11,2,4,11,3,6,14,2,12,9,3,11,1,2,1,16,1,3,10,1,4,17,3,9,6,3,6,15,0,11,10,1,4,15,2,12,7,2,11,6,1,7,15,1,9,11,1,1,1,3,2,4,0,4,6,2,0,1,2,5,3,2,5,15,0,5,12,0,7,19,1,6,5,0,6,5,0,0,15,1,4,2,0,0,17,2,3,20,1,0,18,1,12,12,2,7,6,0,5,19,3,6,12,1,8,20,3,1,9,1,1,15,1,6,19,0,11,3,0,2,6,2,10,20,3,1,16,1,2,10,3,2,14,0,4,2,3,3,18,3,1,5,2,6,19,3,0,13,2,7,8,2,10,4,0,6,7,1,4,12,2,7,20,1,7,11,3,1,14,0,1,15,1,11,19,2,8,20,0,3,17,2,7,14,3,12,14,1,2,2,0,2,15,1,3,19,0,9,17,2,5,8,2,7,15,2,1,8,0,9,15,3,8,14,0,6,20,0,4,8,3,6,5,0,3,1,2,12,6,3,4,16,0,7,2,0,12,13,1,9,16,1,11,10,2,2,5,0,9,8,3,7,2,0,11,9,0,3,15,1,0,3,2,11,17,0,1,9,2,5,5,0,1,3,0,7,14,0,6,1,0,5,1,2,11,18,1,3,20,2,10,14,0,12,2,1,5,19,3,10,7,2,11,11,2,9,12,0,9,11,3,3,6,1,12,15,0,10,4,3,6,4,1,5,6,2,2,7,2,9,6,0,11,5,0,0,9,2,2,16,3,8,5,2,5,8,1,10,18,2,3,17,3,12,9,1,12,7,0,4,8,2,5,11,2,9,11,2,10,7,2,11,5,2,9,5,2,10,3,1,9,2,2,10,10,1,7,17,0,8,16,1,8,14,1,9,14,3,6,11,1,2,19,1,6,13,2,2,12,0,8,10,1,10,6,3,6,7,1,3,4,2,6,6,2,12,13,2,1,14,3,10,15,0,0,7,1,9,12,3,6,9,3,11,1,3,5,5,0,7,3,2,4,10,0,2,2,0,9,9,0,5,2,0,9,15,3,9,9,0,6,9,1,9,15,2,7,6,0,10,4,3,6,13,0,6,7,3,7,17,2,12,11,2,1,10,2,0,4,0,12,12,0,11,8,2,2,11,0,7,2,0,5,4,2,9,16,0,8,2,3,7,11,1,2,7,3,3,2,2,3,20,0,4,20,0,7,10,1,6,5,3,12,13,1,0,14,3,1,7,0,5,8,1,11,7,3,6,13,3,3,7,0,7,10,3,1,2,0,7,4,2,1,1,2,3,11,3,4,6,3,7,1,0,3,20,0,7,4,3,5,7,0,10,8,2,4,20,2,7,11,2,9,8,1,10,2,0,12,8,1,0,20,1,12,15,3,8,3,3,4,6,0,9,15,0,5,4,0,6,11,2,12,7,0,4,8,3,5,11,1,5,19,3,11,5,1,5,2,2,1,20,0,3,20,1,2,10,3,3,4,2,7,11,2,11,17,3)

Donkey Kong [http://wry.me/hacking/Turing- Drawings/#13,21,0,17,3,11,4,0,0...](http://wry.me/hacking/Turing- Drawings/#13,21,0,17,3,11,4,0,0,12,0,10,5,3,11,17,2,11,14,2,4,20,3,12,2,2,1,13,3,5,14,1,5,12,0,10,16,0,3,3,3,8,4,3,2,13,2,10,11,2,0,19,2,10,3,3,5,4,0,6,19,3,8,10,2,1,20,0,10,15,2,11,18,1,8,18,3,5,7,2,3,9,0,2,13,3,6,12,2,9,13,1,6,15,1,11,18,2,12,5,3,8,16,0,1,2,2,8,18,2,12,13,0,10,10,0,9,5,2,10,8,1,10,1,3,5,17,1,1,15,2,9,12,1,5,7,0,9,16,3,12,11,1,10,4,1,0,19,2,12,16,3,2,20,0,4,13,2,12,18,1,7,12,1,7,11,3,12,3,0,1,1,3,1,4,1,1,17,2,6,20,0,4,4,1,12,18,1,12,10,3,11,12,0,12,12,2,6,11,3,4,1,0,7,4,3,0,1,1,8,16,2,6,19,2,9,6,0,6,10,3,2,2,0,1,7,0,0,15,2,1,5,0,6,6,0,9,19,3,9,5,0,0,9,1,8,17,1,0,11,2,7,3,1,1,18,2,1,17,0,9,17,3,2,11,1,1,6,1,10,8,3,8,10,0,0,6,0,6,9,1,8,1,3,5,12,3,6,3,2,9,4,2,10,9,1,8,12,2,12,12,0,7,19,2,11,9,1,12,20,0,7,18,2,10,8,2,11,8,2,1,7,1,9,3,0,3,2,3,4,12,2,3,14,2,4,7,3,3,19,2,5,18,2,2,16,2,9,19,1,0,7,2,7,20,1,9,9,2,1,7,0,3,9,2,10,11,2,2,15,2,2,9,3,8,8,1,6,19,2,9,20,2,1,5,0,8,17,3,4,5,0,10,9,3,10,10,0,11,2,0,8,10,0,7,20,2,0,9,3,8,19,3,10,8,1,9,16,0,1,11,0,10,7,0,10,20,0,11,6,3,8,12,1,6,7,1,7,2,2,0,10,1,4,17,0,2,9,1,5,8,3,8,14,2,7,11,3,9,20,1,0,1,0,2,17,1,4,11,3,4,13,0,4,3,2,1,17,0,12,17,0,4,6,3,9,14,2,7,7,1,2,7,3,2,17,2,11,18,3,8,13,0,8,3,3,0,20,0,4,1,0,2,7,3,11,20,2,4,14,2,9,10,3,10,14,3,6,20,0,11,4,2,2,4,0,3,6,0,11,16,1,2,9,0,12,19,3,8,4,3,2,2,0,6,14,3,4,17,2,10,16,0,4,14,3,11,5,3,6,17,1,2,19,0,8,3,0,1,13,1,11,11,3,6,12,1,0,12,2,5,8,3,9,9,2,12,12,1,9,20,2,10,1,2,5,3,3,10,1,1,12,11,2,8,10,2,4,1,0,0,2,1,5,3,0,10,7,0,7,19,0,10,12,3,11,11,3,5,11,2,2,2,2,2,15,1,6,8,0,5,18,3,10,11,0,5,3,2,6,16,3,6,20,3,10,5,1,9,10,1,10,18,1,7,20,2,11,16,3,2,16,0,10,6,2,10,11,1,3,1,2,3,18,1,7,11,2,3,2,3,8,8,0,11,20,1,8,19,1,10,11,1,2,13,0,11,7,3,9,14,2,1,5,0,8,16,0,11,3,0,8,8,1,0,14,2,7,18,0,9,12,0,5,2,3,11,19,3,0,20,3,1,4,1,6,12,0,2,12,0,8,5,2,1,17,2,7,20,2,1,20,3,6,11,0,1,17,0,3,17,3,6,2,3,3,19,0,1,19,3,5,12,2,11,2,0,7,10,3,10,9,2,12,11,2,9,15,0,5,9,2,12,9,3,7,16,2,3,16,2)

</comment><comment><USER80> Very good idea!</comment>


[caret] and [bang] in the shell - <AUTHOR> http://rwmj.wordpress.com/2009/11/16/tip-and-in-the-shell/

<comment><USER2> That'd be "[caret]"</comment>


Why is NASA.gov shut down while CIA.gov is still open? - <AUTHOR> http://qz.com/130255/why-is-nasa-gov-shut-down-while-cia-gov-is-still-open/

<comment><USER2> _jaw drop_

<comment><AUTHOR> A real shocker right?

No doubt the same reason some politicians thought we had enough money to attack Syria.

<comment><USER2> Of the 800,000 jobs, that's 16,000 NASA jobs: 90% of their workforce.

Imagine a parent today — this very day — telling his kid, "No, you actually should not become an astronaut, Billy. But your kids might have that chance."

</comment></comment></comment><comment><USER3> Why?

Because the shutdown is political theater.

Hundreds of billions of dollars of contracts are still valid. Money that is being wasted on [name your least favorite gov't spending program] is not affected one iota.

Instead, the "little people" will be made to suffer so one party or another can score political points. These "little people" are both the designated non- essential personnel, and end-users of government sites and services like you and me.

That's why the President can take multi-million dollar vacations, but White House tours are cancelled. Embassies are staying open and the Secretary of State's trip to Asia is still on, but national parks are closed and NASA operations are all but dead.

Billions of dollars are still being wasted. The people in power will not only continue to be in power, but they'll collect a paycheck for this period.

This is a farce.</comment>


Documenting architecture: Wireshark, PlantUML and a REPL to glue them all (2017) - <AUTHOR> https://danlebrero.com/2017/04/06/documenting-your-architecture-wireshark-plantuml-and-a-repl/ <comment><USER2> I think it's fine work and really cool.

However, this makes me wonder about the premise of this tool.

Have systems gotten so messy and complicated that we build them without knowing they're actually doing, until after they're built?

In other words, UML diagrams (including sequence diagrams) were intended ways to clarify and reason about systems during design time. This project seems like it could be a reverse engineering tool, but it isn't presented that way.

<comment><USER3> I can think of a few use cases that aren't really reverse engineering. Documenting legacy systems that weren't properly documented up front. Documenting/identifying divergence from design time documentation. Documenting a microservice stack where each service is individually well documented but the totality is not. Generating documentation from a prototype to use a starting point for a more structured design process.

Generally, I've seen very few projects that have architecture documentation which is kept up to date past the first release. So it's not an insane idea given the on the ground reality, but yes it does seem a bit like shutting the barn door after the horse is already out.

</comment></comment><comment><USER4> I really like this! I like the notion of automatically generated documentation, because it's always in line with what the source code is doing (or should be). Thanks for making this!

</comment><comment><USER5> The linked PlantUML tool looks pretty cool. Recently I've used Sequence Diagram ([https://itunes.apple.com/gb/app/sequence- diagram/id119542670...](https://itunes.apple.com/gb/app/sequence- diagram/id1195426709?mt=12)) , that is very similar but limited to (eh) sequence diagrams, and I've loved every minute.

I wish I had known of these tools 10 years ago, when I had to spend hours in Visio...

<comment><USER6> It is cool (compared to Visio or even Rational Rose), but it makes me wonder about the value of the diagram itself. The textual input is just as readable and takes up less space on a screen (or, God forbid, a printed piece of paper) - other than giving managers a warm and fuzzy feeling that there's a pretty picture there, why bother generating the diagram at all?

<comment><USER7> Depending on how you organize your relationships, the diagram can make shared dependencies more clear.

If you have multiple levels of inputs and outputs, you might define a set of relationships together that are all related to a single output. In this case shared inputs are not trivially realizable in the text.

E.g.

        @startuml

        database DB1
        database DB2

        ... lots of other artifacts ...

        artifact ArtifactN

        DB1 --> Artifact1
        ... lots of other input to Artifact1 ...

        ... other relationships grouped based on output - more than a screenful - only some of which have DB1 as input ...

        DB1 --> ArtifactN
        @enduml

In the above, it might not be clear how often DB1 is an input to an artifact. Whereas the diagram will show the size of the tree pretty clearly.

It is unlikely that such a diagram would be very illustrative to its author, but the visual representation may be a much better communication tool to others who are not as intimately familiar with the system in question.

</comment></comment></comment><comment><USER8> A really nice use of UML sequence diagrams!

A little off topic, but even though I wrote a UML book a long while ago, I have more or less stopped using hand written UML except for sequence diagrams. Any class diagrams I put in documentation are auto-generated from source code.

</comment><comment><USER9> Wireshark creates tcp sequence diagrams out of the box, they might even be exportable...

</comment><comment><USER10> This is the greatest idea! I've been writing soapui test cases that show the communication flow between microservices and use cases to provide new developers (and product owners) some incite into how the application is hung together. Something like this is the logical next step and exactly what I was hoping I could derive from new-relic/open tracing/logs (but these are only as good as the technical details)

Nice work I look forward to delving deeper

</comment><comment><USER11> This is a cool project but how does it take care of load balancers in the flow?

I think most LBs terminate TCP and then create a new connection to the backend.

<comment><USER12> I haven't read the source code, but I assume that it just looks at the timings of the request. After all, it's just one user, no need to worry about 50 concurrent requests.

</comment></comment><comment><USER13> It's really cool, but from my understanding you get only the traffic exchanged with your browser and not between the servers. I wonder if something similar could be done at the server level, aggregating traffic from all the servers, merge together and display

<comment><USER14> The bottom half of the example diagram shows traffic between the "backend" and "keycloak" that clearly isn't browser to nginx traffic.

You'd need to be running wireshark on a network interface that could see all that traffic, so yeah - sort of "at the server level" \- in the sense that you'd need to be sitting on the server's network(s) to sniff that.

</comment></comment><comment><USER15> Discussed at the time: [https://news.ycombinator.com/item?id=15325649](https://news.ycombinator.com/item?id=15325649)

</comment><comment><USER16> Mermaid works really well for this as well:

[https://mermaidjs.github.io/](https://mermaidjs.github.io/)

</comment><comment><USER17> Would be cool to add osquery or similar to the mix and get process information to pair up with the network traffic.

</comment><comment><USER18> This looks very useful. Thanks for sharing! And @danlebrero, thanks for making this!</comment>


Logic Production Systems: A new mixed logic/imperative programming language - <AUTHOR> http://lambda-the-ultimate.org/node/5419 <comment><USER2> I recall trying a few mods that made Kerbal Space Program programmable so you can automate your rocket (Some have used it to make SpaceX-style reusable boosters: [https://www.youtube.com/watch?v=sqqQy8cIVFY](https://www.youtube.com/watch?v=sqqQy8cIVFY)), and mods that provided a domain-specific language were more convenient than mods that used an existing conventional programming language. However the kOS language was still ultimately an imperative script, and too inflexible to be a complete programming language. It got me thinking about what kind of language would best be suited for the purpose of controllers (I was also writing PID controllers at the time), and I noticed there wasn't a language for it.

I also recall a Minecraft mod called ComputerCraft where you program a "Turtle" (a la Logo) to perform automated digging actions, but the task of programming it in the easily-embedded Lua proved somewhat inconvenient for simple actions, if only for the ALGOL-style syntax. Another mod tried Forth, but get the sense that while one could be productive in Forth, it's a lot to learn.

The developers have already incorporated it in a proof of concept game: [https://bobthesimplebot.github.io/](https://bobthesimplebot.github.io/), but I could imagine RTS style games or mods where you not only have to scavenge for resources, you also program your bots to do your bidding, like Dwarf Fortress with programmable drones instead of independently-minded Dwarves.

<comment><USER3> I've actually been really impressed by Shenzhen I/O ([http://www.zachtronics.com/shenzhen- io/](http://www.zachtronics.com/shenzhen-io/)), which is a game where you have to program microcontrollers to build weird products. The built-in programming language is an ultra-simple assembly language, with either one or two registers, and about a dozen operations. Program length is limited to about 10 or 15 statements. There are external ROM and RAM modules which store about 20 values. Every challenge comes with a pre-made test suite.

Something about these extreme restrictions and the simplicity make for excellent, puzzle-style gameplay. And I think you could add a Shenzhen I/O-like "microcontroller" to a lot of automation games (like Factorio: [https://www.factorio.com/](https://www.factorio.com/)) and it would work very well.

I think that one of the problems with adding traditional programming languages to games is that there are no constraints to make it challenging, and that you can write fairly large programs. But a deliberately limited and simple language could be fun.

<comment><USER4> For an alternative introduction see my guide _Junior Embedded Engineer 's Manual_ at [http://steamcommunity.com/sharedfiles/filedetails/?id=780361...](http://steamcommunity.com/sharedfiles/filedetails/?id=780361834)

</comment></comment></comment><comment><USER5> Justification from author:

[http://blog.ruleml.org/post/32629706-the-sad-state- concernin...](http://blog.ruleml.org/post/32629706-the-sad-state-concerning- the-relationships-between-logic-rules-and-logic-programming)

</comment><comment><USER6> Logic programming and productions are a wonderful idea that I studied in undergrad back in pre-2000. These days, people seem hostile towards them. People just don't like the idea of specifying rules. I couldn't find modern intro textbooks on the topic or classes that cover it on MOOCs. I'm very surprised and confused.

<comment><USER7> The trendy way to approach the problem these days is to throw massive amounts of data at a deep learning model and let the model try to learn the rules. And my irony detector can't help but squalk out the famous minsky koan:

        "What are you doing?", asked Minsky.
        "I am training a randomly wired neural net to play Tic-tac-toe", Sussman replied.
        "Why is the net wired randomly?", asked Minsky.
        "I do not want it to have any preconceptions of how to play", Sussman said.

        Minsky then shut his eyes.
        "Why do you close your eyes?" Sussman asked his teacher.
        "So that the room will be empty."
        At that moment, Sussman was enlightened.

Machine Learning has its use cases, that's for sure, but I can't help but laugh at the person who eschews a well understood model of a well understood system by an experienced and trained expert human in favor of a magic black box that at its best might converge on the expert's understanding after enough time and data. There is no shame in building off of what is already known and understood.

<comment><USER6> Any tips for introductory/intermediate material on the topic? In undergrad, we used Russel and Norvig. Surely there are more advanced books or courses.

<comment><USER7> On expert systems specifically no. With the AI winter of the early 90's, not only did expert systems research die, but so did publisher interest in the topic. "Expert Systems" is effectively a dead field of study.

That being said, the field of Operations Research, at least philosophically speaking, has picked up where AI researchers dropped it off. They've fully embraced the idea that human experts can model many systems extremely well, and have built incredible tools to do so: mathematical modeling and optimization, constraint programming, boolsat, graphical models, etc. Effectively speaking, if you think expert systems are cool, the next logical step is to delve into constraint programming, which is a sort of evolution of logic programming. I'd recommend the Minizinc Tutorial for a practical introduction with a nice DSL. Constraint Processing by Rina Dechter is a great intro with a more academic bent. I'd say mathematical modeling has been Ops Research's greatest success, and I'd definitely recommend Model Building with Mathematical Programming by Paul Williams.

I'd also say that Baysians have embraced these ideas (that of building upon human expertise) within the field of Machine Learning far more than other ML researchers have. My recommendations here are probably less helpful...I've only ever toyed with Bayesian learning models, but never employed them professionally. But I would recommend Doing Bayesian Data Analysis by Kruschke. It was very helpful as an introductory material.

<comment><USER8> Today we have production rules systems such as iLog and Drools which are head and shoulders better than OPS5 and other "expert system shells" from the golden age of A.I.

These are in widespread use for a few applications. Probably every bank has at least one iLog instance running for enforcing business rules. Another one is "complex event processing", where a RETE engine makes it easy to aggregate small events into larger events. Also, a few efforts, such as Inform7 and Clara have tried to push the boundaries of programming for non-experts and real-life applications.

It is interesting, however, that the technology is not further applied, and a deep analysis of that could be worthwhile. For instance, RETE networks can eat "callback hell" situations for lunch, much like the complex event processing case. Instead, however, we are seeing one awful Javascript framework after another, and coroutines pushed as a very narrow answer to the problems on the server.

Note that all forms of A.I. have ties to optimization. For instance, usually when you train a neural net you are minimizing some kind of an error function. Drools (and iLog) both have optimization frameworks, etc.

The recent discussion of "superintelligence" has been marked by both a lack of imagination and any awareness of previous work on the subject. For instance, Rules engines are a fairly direct answer to "AI Safety" and "AI Ethics" problems that there is so much handwringing about. Most areas that require computers to be "creative" amount to some kind of multi-objective optimization, and even if rules can't make a system good, they can at least prevent the worst abuses.

<comment><USER7> I'm in complete agreement. I didn't mean to give off the idea that you couldn't use Expert Systems anymore, merely that the research and publishing interest died. Implementations have definitely improved. Supposedly, Charles Forgy has continued researching and implementing improvements to his original RETE algorithm, but both the research and implementations are entirely proprietary and mostly inaccessible.

I likewise find it sad that the idea has died so much that we continue to build square wheels that were made obsolete by rule engines. I remember a futile attempt at Amazon to get a team to scrap their system in favor of a RETE based rule engine. Theirs was a poorly performing and fragile homemade "rule engine" that compiled xml rules into if/else statements, which after tens of thousands of rules had slowed to a snails pace. Somehow the magic of O(1) escaped them, and they practically required me to reimplement their system from scratch in order to convince them. So I let it go.

I had never considered the possibility of killing callback hell with a rules engine but I can definitely see it now. I personally have toyed with building a compiler that eschews the pipeline architecture with a rules engine where both analyses and optimizations are implemented as rules. I definitely think there is a world of possibilities out there, but maybe we'll need another AI winter before people consider them again.

<comment><USER8> +1 for the rules-driven compiler, it's one of those things that could put programming language innovation into many more hands.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Prof. Kowalski has a draft version of his book available on his website, which should provide background information on LPS:

[http://www.doc.ic.ac.uk/~rak/papers/newbook.pdf](http://www.doc.ic.ac.uk/~rak/papers/newbook.pdf)

Computational Logic and Human Thinking: How to be Artificially Intelligent

"This earlier draft of a book of the same title, published in July 2011 by Cambridge University Press, presents the principles of Computational Logic, so that they can be applied in everyday life. I have written the main part of the book informally, both to reach a wider audience and to argue more convincingly that Computational Logic is useful for human thinking."

</comment><comment><USER10> Very long time ago I was trying to program many matroids algorithms, let's say that matroids are a generalization of vector spaces and independence, in prolog. I could program those algorithm in many languages, for example in Lisp, but programming in Prolog was very painful. I think that prolog related programming is a useful tool when the program is similar to those solved by forward chaining but in other cases I can't not see the benefits, the dismissal of Prolog in day to day programming seems to reflect that sentiment.

</comment><comment><USER11> "Domain specific causal theory" means "program you wrote", right? Your if-then statements?

<comment><USER4> At [http://blog.ruleml.org/post/32629706-the-sad-state- concernin...](http://blog.ruleml.org/post/32629706-the-sad-state-concerning- the-relationships-between-logic-rules-and-logic-programming) Kowalski summarizes his theory of the classification of rules (within production logic systems) in to a triple typology, and suggests that the last of these types, which he terms _reactive rules_ , are more fundamental, and "the driving force of life". These are rules which define a subsequent action or state from current conditions, ie. "if hungry then eat".

To fully grasp the idea it is important to understand the different natures of _logic programming_ versus _imperative /procedural programming_... there is not really an if-then-else-style (ie. control flow oriented) program state. Rather, the programmer tends to throw a bunch of formal rules at a 'solver' which simply determines the result.

</comment></comment><comment><USER12> Here are some example programs:

[http://lpsdemo.interprolog.com/example/lpsExamples.swinb](http://lpsdemo.interprolog.com/example/lpsExamples.swinb)

I've always thought that someone armed with an efficiently implemented Logic Programming Language could sweep through the first few rounds of competitions like Google Code Jam.

</comment><comment><USER13> This is pretty cool.</comment>


What Extreme Life Could Look Like in the Mars Salt Water - <AUTHOR> http://www.astrobio.net/topic/origins/extreme-life/deliquescence-in-the-atacama/ <comment><USER2> Please use the original title unless it is misleading or linkbait.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)</comment>


ISPs should charge for fast lanes–just like TSA Precheck, GOP lawmaker says - <AUTHOR> https://arstechnica.com/tech-policy/2018/04/isps-should-charge-for-fast-lanes-just-like-tsa-precheck-gop-lawmaker-says/ <comment><USER2> I'm sure that lawmaker came up with that idea all on his own, too.</comment>


Pop: An extensible animation engine for iOS and OS X - <AUTHOR> https://github.com/facebook/pop <comment><USER2> Pop doesn't have any example code yet so I created a video tutorial to help folks get started (with source code): [http://tapity.com/tutorial-getting- started-with-pop/](http://tapity.com/tutorial-getting-started-with-pop/)

<comment><USER3> The video tutorial is nice but I fail to see how it's any easier to do with pop than just with CA. (I've been a Obj-C/Cocoa dev for 8 years)

<comment><USER2> It isn't much better for simple animations like this but I find it much easier for complex, gesture-based, dynamic animations that can change at any time based on user input.

<comment><USER4> Also a designer can tell a dev exactly what he/she wants in terms of animation values (assuming they're using origami)

<comment><USER5> _> Also a designer can tell a dev exactly what he/she wants in terms of animation values (assuming they're using origami)_

Thank you for introducing me to Origami! My time on HN today was not wasted.

(It's at [https://facebook.github.io/origami/](https://facebook.github.io/origami/) if somebody else reading this also did not know about it.)

</comment></comment></comment></comment></comment><comment><USER6> Also there's a blog post with more details of the library at [https://code.facebook.com/posts/234067533455773/introducing-...](https://code.facebook.com/posts/234067533455773/introducing- pop-the-animation-engine-behind-paper/)

</comment><comment><USER7> I'm missing the benefit of this over iOS 7's Core animation. I guess support for earlier os versions is the big advantage but for me all my new work is on iOS 7+ only apps and I'm not sure this helps a ton for that.

<comment><USER8> The key difference as highlighted in the video introduction is that Pop animates arbitrary properties on the model layer, allowing for easily cancelable and continuous animation. This approach is contrary to the Core Animation's transactional model, animating only the presentation layer.

If you are referring to the UIKit keyframe animation API that was added in iOS 7, that API has existed for some time at the Core Animation level. Keyframes are difficult to get right, and don't model physical systems like springs very well.

</comment></comment><comment><USER9> [https://github.com/seivan/TransitionControllerWithPop](https://github.com/seivan/TransitionControllerWithPop)

So I tried with a custom transitionController and it doesn't play along nicely without using CADisplayLink.

It's the same concept as CAAnimation, you need to manually step through the animation.

It's not bad per say, if you need to morph some layers or animate stuff like shadows or anything that doesn't work out of the box with [UIView animate:....]

</comment><comment><USER10> This is the core animations and interactions library used in Paper app for iOS. I am looking forward to see some examples and tutorials on this, because for someone like me with no experience on UIAnimation, I guess it is something fairly easy to use when there are samples out there.

<comment><USER11> Agreed. I'm going to play around and see what I can learn from it, but a small tutorial would help me get jump started as well. Whether it be the coding aspect, or just ideas on how to implement different animations.

</comment></comment><comment><USER12> What are the chances that there will be something similar for Android?

<comment><USER13> We open sourced Rebound for Android a few months ago. It provides simple spring dynamics similar to Pop and is used to drive animations in Facebook apps like Chat Heads and FB Home.

[http://facebook.github.io/rebound](http://facebook.github.io/rebound)

[http://github.com/facebook/rebound](http://github.com/facebook/rebound)

twitter: @rebound_lib

</comment></comment><comment><USER14> I've been waiting for this ever since reading [http://tapity.com/thank-you- facebook/](http://tapity.com/thank-you-facebook/) Hooray!

</comment><comment><USER15> Awesome! I've been waiting for them to put this up.</comment>


How five full-timers built an iPhone app in 3 months with no xCode experience - <AUTHOR> http://jetspeller.posterous.com/how-we-built-an-iphone-app-in-3-months-while

<comment><USER2> I am interested to know what are the original occupation of these people.

</comment><comment><USER2> The turtle looks good with so many version n_n</comment>


How to Maximize Pay-What-You-Wish Pricing - <AUTHOR> http://freakonomics.blogs.nytimes.com/2010/07/20/how-to-maximize-pay-what-you-wish-pricing/

<comment><USER2> It's odd that there is no mention here of the difference between maximizing revenue and maximizing profit. It says "new research suggests that the true path to maximizing profits is to combine pay-what-you-wish pricing with an appeal to charity" but makes no reference to the cost of goods sold.

If you have a product that costs you $6, selling it to 1/2% of the people at $12.95 is a whole lot more profitable than selling it to 5% at an average price of $5.33 and then giving half of the proceeds to the charity!

This doesn't make the study uninteresting, but it definitely limits the applicability to many real world products that do not have astronomical markups. It also makes it very unclear why the chose to compare pay-what-you- want to a single fixed high price, without even testing revenue for lower fixed prices.

</comment><comment><USER3> How would the Humble Indy Bundle sale have fared had they done things differently? This study suggests that it was wise of the Indy guys to give part of the purchase price to charity, as it encourages people to pay more on average.

However, the study also theorizes that the reason people pay more is that they don't want to appear uncharitable. Presumably the anonymity of the internet would reduce this motivation, relative to the study's souvenir stand.

<comment><USER4> The indy bundle had a marketing appeal to it in that they were indy developers (not a big corporation), and that they were giving to charity. They had a ton of press coverage because of this, and not for any other reason in particular (the game bundle selection was OK).

I think short term factors like media coverage skew results. How effective would the next Indy bundle be? And the one after that? And after that? It would be a fallacy to then say that as sales and donations dropped, consumer behavior somehow changed.

<comment><USER5>
        the game bundle selection was OK

At least 2 of the games (world of goo and braid) were some of the best known and most highly acclaimed indie games of the past 5 years.

4 of the games (Aquaria, Gish, World of Goo & Braid) were IGF winners.

These were not your run-of-the-mill indies, they were already profitable and well known games before it.

<comment><USER3> Braid was not part of the Humble Indie sale.

<comment><USER5> Sorry, my bad.

</comment></comment></comment></comment></comment><comment><USER6> Assuming 10000 visitors to the park

Flat Price No Charity: 10000 * .005 * $12.95 = $647.50 to park only

Flat Price Half Charity: 10000 * .0059 * $12.95 * .5 = $382.03 to both park and charity

Name Price No Charity 10000 * .0839 * $0.92 = $771.88 to park only

Name Price Half Charity 10000 * .0449 * $5.33 * .5 = $1196.59 to both park and charity

<comment><USER7> It's not quite that simple. All the proceeds to charity may be profit but the proceeds to the park are revenue. The printing costs of #3 are almost 17 times higher than #1, so that could put #1 in second place.</comment></comment>


China Tells Trump That Climate Change Is No Hoax It Invented - <AUTHOR> http://www.bloomberg.com/news/articles/2016-11-16/china-tells-trump-that-climate-change-is-no-hoax-it-invented <comment><USER2> Brilliant move. If China can get the US to oppose the greenhouse gas limits it also wants eliminated ... Presupposes a knee-jerk reaction from the administration. Hmmm.

</comment><comment><USER3> if so it would be good for china to act like it and not pollute so heavily. somehow china seems to get exempted from many of the terms of these climate treaties...

<comment><USER4> It might have something to do with the fact that they make most of the stuff you and I use daily.

</comment></comment><comment><USER5> Well, good luck raising import taxes on Chinese goods now Mr Trump.

China will probably invent an "environmental tax" for import from US.

<comment><USER6> Sarkozy has already suggested this for Europe - [http://www.independent.co.uk/news/world/europe/donald- trump-...](http://www.independent.co.uk/news/world/europe/donald-trump-us- carbon-tax-nicolas-sarkozy-global-warming-paris-climate-deal-a7418301.html)</comment></comment>