[erlang-questions] How to Name Concurrency Patterns
Loïc Hoguin
essen@REDACTED
Wed Feb 19 23:53:35 CET 2014
On 02/19/2014 11:08 PM, Joe Armstrong wrote:
> The idea is simple - but it could take *hours* to discuss possible
> implementations.
> Umm - are message eventually delivered in order? what happens during a
> failure etc. Do we make
> a log tree of publishers ... etc.
It really sounds like you should actually say those open ended questions
after showing a simple implementation, since you don't have the time to
cover them.
> Most of these patterns can be explained with a fairly simple drawing.
>
> pipeline: data -> intermediary -> result
>
> map-reduce (I simplified, I'm no good at this ASCII stuff):
>
> data -> intermediary -\
> data -> intermediary ---> result
> data -> intermediary -/
>
> And so on.
>
> A good drawing and a few known examples are worth a million words.
>
>
> Now that's trolling - what about Maxwell's equations? All of
> electrodynamics in
> four equations
>
> This is fun:
>
> https://en.wikipedia.org/wiki/Deferent_and_epicycle
>
> Ptolemy and his mates thought the planets moved in epicyles, they make
> wonderful drawings
> of this, and gave examples - trouble was they were all wrong. Good old
> Kepler put them
> right with a few equations.
For most purposes it's enough to say that the sun rises in the morning,
it doesn't have to be precise. You don't start by teaching general
relativity, you first make an observation, give a blurry picture of what
happens, and then dig a little to learn something from it, and then you
observe again and continue ad infinitum.
Since you only have 5-10 minutes per pattern, you probably don't have
enough time to do that more than once or twice, but it's still a
starting point as it tells people where to look at to learn more.
Of course the picture will be more or less blurry depending on who you
talk to. Genius students can probably get it if you get deep from the
start, while the duck will need the colorful drawing with big letters.
I'll stop there as I am not helping you finding names by discussing
this. Good luck!
--
Loïc Hoguin
http://ninenines.eu
More information about the erlang-questions
mailing list