As previously mentioned, I’ve been reading Walter Isaacson’s biography on Leonardo Da Vinci.
At one point in the book, Isaacson notes that through the discovery of related sketches and cartoons, art historians are able to see the evolutionary thinking behind some finished works of Da Vinci. Additionally, some pieces — through the use of infrared reflectographic analysis — reveal underdrawings that differ from the finished strokes on top (such as the position a figure is facing being reversed). These discoveries, Isaacoson notes, reveal Leonardo working through his options — a kind of artistic prototyping, if you will.
[Leonardo] thinks by sketching. It is a process [of] uncultivated composition that helps work out ideas through an intuitive process. It’s also instructive to look at the copies of the painting made in [Leonardo’s] workshop. “It has always been thought that Leonardo’s pupils and assistants created these works by copying Leonardo’s painting or his cartoons or even his drawings,” Francesca Fiorani noted, “but these ‘copies’ were actually produced while the original was in the making and they reflect alternative solutions Leonardo imagined for it.” (321)
I love to work this way on many of my side projects. The process of creating multiple, alternative variations — drawings, design mocks, working code in PRs, etc. — along the path to an intended single solution refines ideas through the contrast of alternative variations.
For example, I have a current side project where I’ve now built one particular view in many different ways. I have PRs for a lit-html implementation, a web components implementation, a plain HTML implementation, a React implementation, and a Preact implementation. None of these PRs are production ready and each implement a design that is subtly different visually or functionally to accomplish the same goal with the strengths of each technology. Each PR has enough fidelity to provide me contrast and a sense of taste for which solution is best. They are prototype variations of an idea, and through this production of contrasting “copies” a suitable solution becomes visible — sometimes as a refinement of an existing prototype, sometimes through the mixing of different ideas across prototypes.
But it’s not only about prototyping solutions, but also prototyping the techniques and tools for building the solutions themselves. I can try to build five identical solutions with different tools, five varying solutions with one tool, or somewhere in-between. Each approach is an opportunity to learn and gain insight — through “uncultivated composition” and the creation of contrast — into the myriad of ways to build for the web.