"Swimming with the fish" is a catchy phrase that I like which seems to
encompass the strength of Pharo's tight development feedback loop that
comes from operating in a world of live objects. I had some imagery
floating through my head on this I thought worth sharing. Only time for a
quick dump, but I hope you can piece it together...


In the style of one of those fast paced cartoon product videos...

Scene 1:
"The development process we all know..."
A neutral background with directed arcs in circle
"Debug-->Edit-->Compile-->Execute-->"


Scene 2:
"In most languages...   debugging..."
Zoom in on Aquarium 1 to show a developer standing outside aquarium
window...
https://tinyurl.com/PharoSwimWithTheFish-Outside

reaching in through quarantine-box-like-gloxes to use telescopic tools to
pick up and examine fish at a distance...
https://tinyurl.com/PharoSwimWithTheFish-OtherTool

until the lightbulb moment...
https://tinyurl.com/PharoSwimWithTheFish-Lightbulb


Scene 3:
"In most languages...   editing...."
Developer zooms out away from aquarium. It folds up into a tiny box and
drops in a bin.
Developer zooms in on an architectural drafting table with many drawings
with many different but simple flow diagrams on each. Quickly make required
edit to flow diagrams.
https://tinyurl.com/PharoSwimWithTheFish-OtherEdit


Scene 4:
"In most languages...    compiling..."
Drawings pass through a photocopier into a box that is transferred to site
supervisor.
At an empty flat construction site, supervisor opens box pulling out
drawings to review them.
Trucks and machines arrive and start building the aquarium at his
direction...
Two buildings clash when they overlap the same space (compile error).
Return to Scene 3 to fix design then rerun Scene 4 through to completion.


Scene 5:
" In most languages... execution..."
Water trucks arrive and pour water into the pool, then more trucks arrive
adding the fish.
(i.e. initialization and getting to the point of the program you want check
again)


Scene 6:
"In most languages...   debugging..."
Complete the loop by starting scene 3 again.


Scene 7:
"In Pharo.... debugging..."
Zoom out, over and into Aquarium 2 where a developer is swimming inside the
pool...
https://tinyurl.com/PharoSwimWithTheFish-Inside
http://blog.atlantisthepalm.com/wp-content/uploads/2017/05/different-in-water-2x1.jpg

Developer grabs a fish, shifts it aside, lets it go to swim some more,
grabs it again, holds it up close to look a small detail.  Out of nothing
creates a new fish to interact with the first fish.
Out of nothing creates some clay and then moulds a new scope-like tool from
it to look at the fish differently.

Lightbulb moment...
https://tinyurl.com/PharoSwimWithTheFish-Lightbulb

"In Pharo.... editing..."
Developer peers into brain of fish seeing many neurons, picks one out which
shows as simple flow diagram, makes a change to it.

"In Pharo.... compiling..."
Laser beam quickly scans the simple flow diagram and packs neuron back into
the fish.

"In Pharo.... execution..."
Fish swims off.

"In Pharo.... debugging..."
Developer grabs another fish...


Scene 8:
Zoom out to show both aquariums.
In Aquarium 1, repetitively run through Scenes 2 through 6
In Aquarium 2, repetitively run through Scene 7.
Play at 10x original speed.

Fade in a "Debug-->Edit-->Compile-->Run-->" over each aquarium, showing
synced state transitions.

Fade in "Come swim with the fish with Pharo"
Fade in "It will change the way you think about programming"


cheers -ben

Reply via email to