This is just an excellent visualization to explain a concept that is hard to imagine.
Lots of difficult concepts are actually very simple once you boil them down to the fundamentals and visualize them.
This has big implications for education. Many concepts like derivatives in finance, algorithmns in computer science are suprisingly simple.
I remember a visualization for Paxos (a distributed consensus algorithmn) which basically have an actor to represent each node in the network. That was the moment I finally "got it".
It is a shame that educators are still so backwards at how they communicate concepts to students. and how ineffective that is. I think it comes down to the fact that professors in universities have to play dual role of being a researcher + to teach. And since they are recognized for publishing papers and not so much for making helpful visualzations to explain concepts to first year students. Education part is neglected.
My experience was nearly the opposite of that. Projects were half, homework 20, tests were the rest, however if your test was higher than the rest of your grade, you'd get that instead.
Also a great way of visualizing some basic problem with concurrency.
Gridlock is excellent demonstrated as above, if you are putting things in a queue for a thread that is taking forever to run, the producer thread will eventually (hopefully) be blocked due to memory issues, thus passing the slow down further up the chain. Much like a road, and exactly like the visual effect seen here.
I like how dynamics of complex systems are getting so captivating and easy to understand by visually simplified simulations rather than mathematical expressions.
The human mind somehow grasps these dynamic, subconsciously creates an in-brain simulation and you can predict what will happen when you play with the parameters on the computer simulation. It just feels so natural.
Its too bad there is only one lane of traffic in the simulators. There are interesting insights to be had when simulating multiple lanes and adding "incentive" lanes. One of the first Java applets was a multi-lane simulator which showed the impact of people getting on to a 4 lane freeway, merging all the way across to the HOV lane on the left, then merging all the way across again to get off. Versus having the HOV lane on the right, vs having no HOV lanes.
The fun stuff is that queuing theory applies to all sorts of things like packets and getting seats on an airline. Lots of fun to play with.
So fun. For kicks, I just spent more than a few minutes trying to find a semi-steady equilibrium where, say 80% to 90% of cars are temporally stalled without pushing the system into total gridlock.
Just now, I got it down to only one car moving for about a quarter of the circle. Then you really have to pay attention to which car is going where. :)
"Deadlock" is the term used in concurrent processing. It can happen if the resources are distributed. I actually had the privilege of troubleshooting such an issue not too long ago: http://dba.stackexchange.com/q/73833
I wasn't talking about deadlocks - a deadlock is when no work ends up being done, whereas I was wondering about the situation where very little work ends up being done. Interesting link though!
Not sure that needs a visual to understand, although it would be interesting to to see how you would present it, in my mind it's just another form of bottle-neck. In essence:
The lead bus has to stop for longer to pick up waiting passengers than the following bus. The less time the following bus has to stop, the closer it gets to the bus in front, so the less time for new passengers to accumulate. And so on down the chain.
Lots of difficult concepts are actually very simple once you boil them down to the fundamentals and visualize them.
This has big implications for education. Many concepts like derivatives in finance, algorithmns in computer science are suprisingly simple.
I remember a visualization for Paxos (a distributed consensus algorithmn) which basically have an actor to represent each node in the network. That was the moment I finally "got it".
It is a shame that educators are still so backwards at how they communicate concepts to students. and how ineffective that is. I think it comes down to the fact that professors in universities have to play dual role of being a researcher + to teach. And since they are recognized for publishing papers and not so much for making helpful visualzations to explain concepts to first year students. Education part is neglected.