include("models/jspe/run.e"); intro is Slide("
We want you to build a construal of a vending machine.
Imagine that you are standing in front of a vending machine.
Since this is a short exercise, we make some assumptions to simplify your task. In general, you might want to make different initial assumptions.
Suppose that
Suppose that the components of the vending machine are
You could draw these as cubes, but we only have 2D! - so we'll use rectangles.
Suppose that you have been given (or have been able to find or create) images of the six different fruits.
Using only rectangular shapes and these six images, draw a rough sketch on a piece of paper of what you see in your imagination.
"); orientation is Slide("Your first task is to use the computer to imitate the experience of standing in front of the vending machine.
You will do this by trying to draw a simple sketch of the vending machine in the canvas 2D window.
Your computer sketch can be similar to your pencil and paper sketch.
"); primitives is Slide("To create a rectangle you make a definition:
testrectangle is Rectangle(10,10,100,50);
To save typing (and errors!) you can press the 'Submit' of 'Copy to Input' buttons below to make definitions automatically.
To put this rectangle on the screen:
We call testrectangle an observable. It probably isn't a rectangle that you can use in your sketch! You will want to change the size and position of testrectangle.
There are exercises to enable you to do this on the next slide ...
"); makingconnections is Slide("Making construals is all about 'making connections' through direct interaction.
To do this, you have to arrange things on the computer screen so that the connections can be experienced.
The observable testrectangle is defined as 'Rectangle(10,10,100,50)'.
We'd like to make the connection between the values 10, 10, 100, 50 and the observable testrectangle.
To experience this connection, you first arrange the screen so that you can see a Script Input Window, the Canvas 2D window, and can read this presentation.
If you go back to the previous slide, you can try putting different values into the Rectangle() function. To do this, you use 'Copy to input' and edit the values.
Changing the values by editing is tedious and indirect. A better way of making the connection between the values 10, 10, 100, 50 and the observable testrectangle is to substitute observables for the values
Let's call them albert, brian, cynthia and diana. We can define them by
Making connections is a very subjective thing. Connections are personal and not binary.
[We can all make some connection between the fragments from the Antikythera and an actual mechanism in a historical context. But consider how much richer an expert's understanding of that connection is that than other people's.]
We enrich our understanding by experimenting with the rectangle and making new connections:
Set up a new window by submitting
Select 'All sources' from the drop-down menu in the 'Symbol List'.
Another kind of connection is the connection between things we draw on the screen. Recall the first definition
of the observable testrectangle:
Copy this definition to input and edit it by appending a '0' character to the name of testrectangle. Submit this definition.
You now have two observables - one referring to the first rectangle we drew, the other one referring to the rectangle we've been experimenting with.
You can put them both on the canvas:
What other connections are you able to make in this way?
"); firststep is Slide("When you've made the connections between observables of type 'Rectangle' described above, you've understood the basic nature of learning to make construals.
You've also learnt some basic skills that you can now use in making your construal of the vending machine.
You are now ready to put these into action! All you have to do now (!) is to draw the rectangles to represent the components of the vending machine:
"); slideListA is [intro, roughsketch, orientation, primitives, makingconnections, exptrectangle, moreconnections, firststep]; bluepeter is Slide("
Laying out the rectangles for your sketch can be rather boring (!), but this is what is interesting about making construals: you do lots of quite boring things, and yet can get a most interesting and engaging overall effect.
Consider how the best players of billiards are those who play long sequences of what seem to be exceptionally easy shots. To be good at making construals is to maintain vivid connections continuously in the stream of thought.
To load the 'complete' purse and vending machine construal
To operate the machine:
To reset the vending machine for the next purchase:
There are some issues:
The resources to continue this exploration can be found online. Feel free to send your questions and answers to info@construit.org
"); slideList is slideListA // [bluepeter] // [completevendingmachine]; /*Displaying the change ...