A non-metaphorical use of “crafting” as in “making by hand” completely misses the point that the entire job is using our brains to specify machines which do work on our behalf. I don’t believe knowledge work can ever be a literal craft.
Comments
Log in with your Bluesky account to leave a comment
The point is: Software development is not a pure engineering discipline. Mechanical engineers, for instance, can create a construction plan of a bridge in CAD and then it can be built from the scratch. In contrast, in software there are many ways and how the code is written is like a craft.
This is the kind of thing that people who have little to no exposure to physical engineering say. Simulation in the computer is just that, and limited by uncertainly, and approximation. Imperfect knowledge of prevailing conditions has a major impact on outcomes.
In the town where I live, a small road bridge over a railway came in three times over budget because of "ground conditions" due to lack of complete knowledge from the site investigation. The idea that bridges or other engineered structures emerge perfectly from CAD systems fully formed is naive.
I hate to shatter your illusions, but there is no 'pure engineering' where folks figure out which system of differential equations to solve and then go direct to a physical system. There are always iterations, unexpected rework, surprises, omissions, oversights, supply chain issues, etc.
[1/3] You're absolutely right, but I have to enlighten you that I'm not exclusively a software developer (...even if I gathered a lot of experience for 12 years in this discipline). I am also a Systems Engineer (in the meaning of INCOSE) and have worked on many complex and interdisciplinary systems.
[2/3] And I learned a craft in the 1980s: I'm an electrician! And I've discovered many parallels between my experience as a craftsman and the discipline of software development. More parallels than, for instance, to mechanical engineering.
Comments