Simulator
-
simulating "in head" vs "in computer" aka "playing computer"
- computer is better at simulating (infinite) possibilities (Ladder Of Abstraction) than our mind
- humans are great at choosing based on what they can see (Creating-Curating, Solving Things Visually, Novelty Search)
- simulating computer in our head is most probably not be the best way to program, it's just something that we are used to
- proper generic simulator could become a Bicycle for the Mind
- this might be loosely related to Metacognition and Debugging where we can also simulate our own thinking process to debug it (and even further simulating a brain inside a brain is one of ideas of Computationalism)
-
related to Future Of Coding - "playing computer" is just silly
-
computers being able to simulate any other computers (ad infinitum) is an important computing idea that had to be invented! (Everything Was Invented)
- taking a step back, Alan Kay keeps talking about computers as a meta-medium - one that can simulate any other one, and also one that allows us to create simulations to understand the world
-
references:
computation as simulation
— Metaphor in User Interface Design ↗
One of the realizations we had about computers in the 60s was that they give rise to new and more powerful forms of arguments about many important issues via dynamic simulations. That is, instead of making the fairly dry claims that can be stated in prose and mathematical equations, the computer could carry out the implications of the claims to provide a better sense of whether the claims constituted a worthwhile model of reality. And, if the general literacy of the future could include the writing of these new kinds of claims and not just the consumption (reading) of them, then we would have something like the next 50 year invention after the printing press that could very likely change human thought for the better.
— The Real Computer Revolution Hasn't Happened Yet - Alan Kay
- it's interesting to look at "simulator" problems from the point of view of VPLs - visualizing program state/execution is more useful than visualizing the AST - this, again, ties into Solving Things Visually
What kind of a thinker would you become if you grew up with an active simulator connected, not just to one point of view, but to all the points of view (...) so they could be dynamically tried out and compared?
— User Interface, a Personal View - Alan Kay
My main complaint about [SimCity] has always been the rigidity, and sometimes stupidity, of its assumptions (counter crime with more police stations) and the opaqueness of its mechanism (children can't find out what its actual assumptions are, see what they look like, or change them to try other systems dynamics).
So I have used SimCity as an example of an anti-ed environment despite all the awards it has won. It's kind of an air-guitar environment.
(...)
Going to Python can help a few areas of this, but a better abstraction for the heart of SimCity would be a way to show its rules/heuristics in a readable and writable form. Both of these could be stylized to put them in the child's own thinking and doing world. For example, just the simple route of making a drag and drop scripting interface for Etoys allows children to make very readable and writeable scripts and helps the children concentrate on what they are trying to do. A carefully designed object system (that is filtered fro children) can expose the environment so they can really think about it.
— Alan Kay's ideas about SimCity for OLPC ↗
-
a relevant snippet from Building SimCity:
In Kay's analysis, SimCity is technically impressive but not "good enough for children." Its rules should be exposed so kids can see and change them. The underlying model lacks legibility and agency. SimCity's world is veiled: players cannot look under the hood; investigate its baked-in assumptions about crime, taxes, and mass transit; and then tinker with them. Nelson's simulations instead invite students and teachers to observe, negotiate, and reinvent the rules of their make-believe world. Good learning environments, Kay argues, "make contexts visible, make them objects of discourse and make them explicitly reshapable and inventable." Many simulation makers argue that to truly understand a complex system, one must build a model of it oneself; being a mere player in someone else's world is a poor substitute. Nelson laments the fixity of SimCity's make-believe world; players cannot invent new technologies or architectural ideas. Her city builders, by contrast, are free to perceive, discuss, and coinvent the rules of their world. They can build underground or float structures in the air. And they choose their own goals, defining the criteria by which they themselves will judge their cities (as in SimCity).
- Alan Kay keeps on repeating how "simulator" is not only about the surface-level "playground", but a playground that can itself have its rules inspected and changed