Lava Lamp
I originally made a version of this in Pascal when I was in college. This is a fairly simple particle system with only a few rules. The temperature of a particle cools or heats based on position and no two particles can have the same coordinates. However, the number of particles you have and the size of the container, combined with the speed of heating and cooling, can make big differences to how interesting it is to watch.
Use the buttons above the lamp to play, pause, step, reset, go fullscreen, and open the settings menu. Click the lamp to drop some heat.