Dany Shaanan

A mathematician by original intention and a software developer by final decision

I find great beauty in the combination of programming, math and design. I've studied mathematics and I work as a software developer, and in this site and the ones linked from it I play with animation, interaction, fractals, technology, math, and the Rubik's Cube.

My open source code (Mainly websites and NPM packages) is hosted on Github.

Feel free to find my email address and contact me.

Some things I've made


An interactive animation of different L-systems. Javascript on Canvas


A multiuser pixel art drawing board, written in NodeJS

Square Memories

A collection of photos from my defunct Instagram and Twitter accounts

Visual mathematics

Various mathmatical objects, visually rendered in Python, explained in English

Turning gears

Interactive animation of gears, written in JavaScript on canvas

Fractal tree

Interactive visualisation of a fractal tree, written in JavaScript on canvas

Langton's Ant

An interactive simulator of Langton's Ant and varients. Javascript on Canvas

Css animation

Interactive animation of moving circles, using CSS3's box-shadow property

Avalon 2048

A videoclip I've created for the postrock band Avalon, using a camera mounted on a kite

Animation of 2D symmetry groups

A Flash animation I've created with my brother, Uri

Uri Shaanan's homepage

My brother's personal homepage. His design, my code

Reverse md5 calculator

A small technological project usign HTML, CSS, JavaScript, jQuery, Ajax, PHP, and MySQL

How to solve the Rubik's cube

Instead of supplying a step-by-step guide for solving the Rubik's cube and spoiling the fun, I have this chart that shows the three basic moves I use to solve it, and a little general explanation on how to use them.

First, you should be able to solve one full layer by trial and error. Notice that you are not moving and placing one-color tiles, but pieces of plastic with one, two, or three colors on each. (Lets call those 'cubies'). This means that while you solve the first face, you should also take care of the other sides of the cubies you place. Once you've solved one full layer, turn it until it fits the centers of the adjacent faces, and go ahead and figure out the chart: There are a few small details missing from this short explanation, but that's some of the challenge...