The image is drawn via python script that carries out the below procedure.
Imagine you are inside an equalateral triangle. I'm not sure why, perhaps you're just fed up of squares. Now you pick a corner at random and walk towards it. When you are half way you stop, change your mind and put a dot on the floor. Then you repeat the same process, pick another corner and walk halfway to it. Just do this an infinite number of times. Guess what you pattern you'll make when you look at all the dots you've dropped. Surprisingly you would make Sierpinski's triangle (that thing above).
import random import math from turtle import * def sierpinski(depth, s=0): #sets speed 0=fastest speed(s) #draws triangle to make fractal inside of penup() goto(0,(300*(3**0.5))) #set the position of the top of the triangle top = pos() pendown() goto(600,-(300*(3**0.5))) #set the position of the bottom left of the triangle left = pos() goto(-600,-(300*(3**0.5))) #set the position of the bottom right of the triangle right = pos() goto(0,(300*(3**0.5))) #go back to the centre of the triangle penup() goto(0,0) count = 0 #Array of vertices vertex = [top, left, right] #loop until depth of iteration is complete while count < depth: #store current location location = pos() #goto half-way between the current location and a random vertex goto(0.5*(location + vertex[random.randint(0,2)])) #make a dot. In this case size 6 dot(6) #count them, well hey we are all mathematians here count += 1