liveBook · Manning

Creative tinkering

As explained in The Creative Programmer

Tinkering is exploratory making or modification through informal experimentation with materials, tools, or technology.

Creative tinkering means following curiosity through informal experiments with code, hardware, materials, or ideas. It has no fixed destination: the point is to learn, discover interests, and enjoy making. Chasing a rabbit differs from yak shaving because distraction is the purpose rather than an accidental detour from a real task. section 6.7.1

Try creative tinkering as a habit:

  • Follow an intriguing question down the rabbit hole, even when it is not immediately productive. section 6.7.1
  • Make small experimental projects—such as a toy language, emulator, or graphics experiment—and notice which interests keep returning. section 6.7.1
  • Shape a personal workshop with accessible tools, materials, references, and room to think; the environment can redirect the work. section 7.5.2
  • Leave space for coincidence, while choosing deliberately when to depart from the planned path. section 7.5.2

A workshop changes the artifact

Engineers who printed circuit boards while reverse-engineering Game Boy internals could produce something different from engineers who simply ordered parts. The available materials and the willingness to persist became part of the creative result. section 7.5.2

Figure 7.7 A peek inside Joke Raes’ atelier. The walls are decorated with her sculptures. Ample sketchbooks, manuals, and various materials are within reach, yet enough light and space remain to breathe, think, and work. Photo courtesy of Joke Raes.
CH07_F08_Groeneveld

Use the atelier as a visual model for a programming workshop: keep tools, references, experiments, and enough open space within reach. section 7.5.2

How The Creative Programmer covers it

How deep it goes
Explains exploratory practice, its distinction from yak shaving, and the influence of materials and environment without prescribing a single recipe.
Examples
Uses fantasy emulators, toy languages, graphics projects, bread baking, fountain pens, Game Boy development, and circuit-board printing as examples.
What it assumes
Assumes willingness to follow curiosity and take risks, while linking the initial leap to growth mindset.
What you can do after
Practice/perform curiosity-led experiments and create a personal workshop that supports exploratory programming.
How it connects
Connects curiosity, growth mindset, serendipity, yak shaving, programming, hardware tinkering, and creative workshops.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of The Creative Programmer. The section links point to the parts of the book it draws on.