Froebel’s Gifts were meant to be given in a particular order, growing more complex over time and teaching different lessons about shape, structure and perception along the way. A soft knitted ball could be given to a child just six weeks old, followed by a wooden ball and then a cube, illustrating similarities and differences in shapes and materials. Then kids would get a cylinder (which combines elements of both the ball and the cube) and it would blow their little minds. Some objects were pierced by strings or rods so kids could spin them and see how one shapes morphs into another when set into motion. Later came cubes made up of smaller cubes and other hybrids, showing children how parts relate to a whole through deconstruction and reassembly.
These perception-oriented “Gifts” would then give way to construction-oriented “Occupations.” Kids would be told to build things out of materials like paper, string, wire, or little sticks and peas that could be connected and stacked into structures.
Everyone who interacts with computers has in important ways always already been programming them.
Every time you make a folder or rename a file on your computer, the actions you take through moving your mouse and clicking on buttons, translate into text-based commands or scripts which eventually translate into binary.
Why are the common conceptions of what a programmer and user is so divorced from each other? The distinction between programmer and user is reinforced and maintained by a tech industry that benefits from a population rendered computationally passive. If we accept and adopt the role of less agency, we then make it harder for ourselves to come into more agency.