Scales of cities, scales of software An Article by Linus the Sephist linus.coffee American cities seem like a product of industrial processes where older European cities seem like a product of human processes. This is because most American cities were built after and alongside the car and the industrial revolution – the design of cities took into account what was easily possible, and that guided the shape and scale of everything. Software has similar analogues. There are software codebases that feel much more industrially generated than hand written, and they’re usually written in automation-rich environments fitting into frameworks and other orchestrating code. …But despite the availability of cars, I still much prefer the scale and ambiance of European, human-scale cities, because ultimately cities are places humans must inhabit and understand. In the same way, I still much prefer the scale and ambiance of hand-written codebases even in the presence of heavy programming tooling, because ultimately codebases are places humans must inhabit. urbanismsoftwarescaleindustry
evermore, and other beautiful things An Article by Linus the Sephist linus.coffee If all evidence of civilization on Earth was destroyed, and humans had to re-build society from the ground up, what would be different? Feynman reckons that pivotal scientific moments, like the discovery of the atom, will still happen in the same way. Perhaps mathematics will be similarly rediscovered. Someone told me once in response to this question, no artwork would ever be recreated. The art we create – music, stories, dance, film – isn’t a fundamental element of the universe, or even of humanity. It’s unique to each artist. If you choose to create art, you leave something in the world that has never had a chance to exist before, and will never again have a chance to exist. There will never be another Beatles or Studio Ghibli or Picasso. Art, in its infinite variations of originality, is cosmically unique in a way the sciences will never be. Art immortalizes human experiences that would otherwise vanish in time. artsciencehumanitysociety
The heart of systems engineering While the client has some knowledge of his symptoms, he may not understand the real causes of them, and it is foolish to try to cure the symptoms only. Thus while the systems engineers must listen to the client, they should also try to extract from the client a deeper understanding of the phenomena. Therefore, part of the job of a systems engineer is to define, in a deeper sense, what the problem is and to pass from the symptoms to the causes. Just as there is no definite system within which the solution is to be found, and the boundaries of the problem are elastic and tend to expand with each round of solution, so too there is often no final solution, yet each cycle of input and solution is worth the effort. A solution which does not prepare for the next round with some increased insight is hardly a solution at all. I suppose the heart of systems engineering is the acceptance that there is neither a definite fixed problem nor a final solution, rather evolution is the natural state of affairs. This is, of course, not what you learn in school, where you are given definite problems which have definite solutions. Richard Hamming, The Art of Doing Science and Engineering: Learning to Learn What the problem isComplete and consistent requirements