Software Engineering as a Craft An Article by Thomas Wilson thomaswilson.xyz The decreasingly tangible product of code, i.e. that all we have are files on a hard-drive, may make it easy to forget that writing software produces a thing. If you produce a wonky chair or an overly long fork, it’s easy to see the quality of work was not great. By calling for a perception of software as a craft, we fight against that ability to forget or not notice the final quality of the product. You could watch two software engineers with different levels of experience, or in different domains, and it wouldn’t necessarily be so easy to guess which is which, at least from a distance. So maybe there is something to be said for the value of software as a craft, for sometimes focusing on the practice of making better, or at least different, software just for the sake of it. craftsoftware
Fermi Estimates and Dyson Designs An Article by Venkatesh Rao www.ribbonfarm.com A Fermi estimate is a quick-and-dirty solution to an arbitrary scientific or engineering analysis problem. Fermi estimation uses widely known numbers, readily observable phenomenology, basic physics equations, and a bunch of approximation techniques to arrive at rough answers that tend to be correct within an order of magnitude or so. The term is named for Enrico Fermi, who was famously good at this sort of thing. …It struck me that there is counterpart to this kind of thinking on the synthesis side, where you use similar techniques to arrive at a very rough design for a complex engineered artifact. I call such a design approach Dyson design, after the physicist Freeman Dyson, who was one of the best practitioners of it (not to be confused with inventor James Dyson, whose designs, ironically, are not Dyson designs). designphysics