During my career in calculational science, the design and utilization of software systems for the simulation of physical systems was an integral part of my research. The software that my colleagues and I designed, created, and maintained, sometimes for decades, functioned as virtual laboratories for scientific experimentation that might otherwise have been prohibitively expensive or unfeasible for a variety of reasons. In the course of those decades of evolution in computer hardware and software, the importance of code-development style emerged as a critical component for our scientific and technological advances.
The reason that style is crucial to the success of any system is two-fold: robust functionality and long-term maintainability. In the early days of code development, the programming "gunslinger" ruled. Various tricks of the trade were discovered and re-discovered daily; slow hardware required software work-arounds leading to very clever algorithms for random sampling, square-root solvers, and many other mathematical applications. Much time and effort was spent on clever solutions to compensate for relatively crude (by today's standards) computers. And programming style received little attention. The standard software product was "spaghetti" code, produced by "code-jockeys" (often "young Turk" physicists who wrote their own code to solve the physics problems they were interested in solving). The "spaghetti" was a visualization of the convoluted design resulting from interminable retro-fitting to adapt the code for un-anticipated consequences of the original, as well as to patch up the inevitable bugs (logical errors) introduced by the seat-of-the-pants approach to gunslinger programming. This early approach to software development was quite similar to the way the Federal Tax Code has evolved via the machinations of Congress, the main difference being the much lower IQ of our Congressional tinkerers.
As software design and development matured, programming style improved dramatically. Large maintainable systems are developed with sophisticated design and development tools, enabling teams of programmers to work in concert without stepping on each other's toes, but rather leveraging each other's contributions. The systems produced are much more robust (some of Microsoft's well known exceptions notwithstanding). And these self-documenting systems are designed to last, often with smooth transitions between generations of development teams, withstanding the onslaught by millions of both sophisticated and unsophisticated users.
Which brings me to the heart of my post. The United States Constitution is the apotheosis of style for what amounts to the kernel of our Nation's judicial system. This marvelous creation by a handful of geniuses has no equal in the entire history of humanity's search for the means to enable large numbers of otherwise uninhibited individuals to live a civilized life. The power of our Constitution to prevail for over two centuries, to accommodate unprecedented technological and societal innovations, to withstand interminable attacks by reactionary forces within and without its sphere of influence is in no small measure due to its incomparable style. It is compact, yet flexible. It is understandable by any high-school graduate who cares to read it. It is amenable to conceptual innovation, but at the same time sufficiently difficult to amend, which accounts for the negligible amount of "spaghetti" (barely two dozen Amendments including the original ten of the Bill of Rights) compared to the tons of pasta in our opaque Tax Code, with its ten thousand retro-fits.
Not to put too fine a point on it, anyone intent on subverting our Constitution — our National treasure — is deserving of our collective contempt.
h/t Theo
Post #784 The Intrinsic Value of Style
The reason that style is crucial to the success of any system is two-fold: robust functionality and long-term maintainability. In the early days of code development, the programming "gunslinger" ruled. Various tricks of the trade were discovered and re-discovered daily; slow hardware required software work-arounds leading to very clever algorithms for random sampling, square-root solvers, and many other mathematical applications. Much time and effort was spent on clever solutions to compensate for relatively crude (by today's standards) computers. And programming style received little attention. The standard software product was "spaghetti" code, produced by "code-jockeys" (often "young Turk" physicists who wrote their own code to solve the physics problems they were interested in solving). The "spaghetti" was a visualization of the convoluted design resulting from interminable retro-fitting to adapt the code for un-anticipated consequences of the original, as well as to patch up the inevitable bugs (logical errors) introduced by the seat-of-the-pants approach to gunslinger programming. This early approach to software development was quite similar to the way the Federal Tax Code has evolved via the machinations of Congress, the main difference being the much lower IQ of our Congressional tinkerers.
As software design and development matured, programming style improved dramatically. Large maintainable systems are developed with sophisticated design and development tools, enabling teams of programmers to work in concert without stepping on each other's toes, but rather leveraging each other's contributions. The systems produced are much more robust (some of Microsoft's well known exceptions notwithstanding). And these self-documenting systems are designed to last, often with smooth transitions between generations of development teams, withstanding the onslaught by millions of both sophisticated and unsophisticated users.
Which brings me to the heart of my post. The United States Constitution is the apotheosis of style for what amounts to the kernel of our Nation's judicial system. This marvelous creation by a handful of geniuses has no equal in the entire history of humanity's search for the means to enable large numbers of otherwise uninhibited individuals to live a civilized life. The power of our Constitution to prevail for over two centuries, to accommodate unprecedented technological and societal innovations, to withstand interminable attacks by reactionary forces within and without its sphere of influence is in no small measure due to its incomparable style. It is compact, yet flexible. It is understandable by any high-school graduate who cares to read it. It is amenable to conceptual innovation, but at the same time sufficiently difficult to amend, which accounts for the negligible amount of "spaghetti" (barely two dozen Amendments including the original ten of the Bill of Rights) compared to the tons of pasta in our opaque Tax Code, with its ten thousand retro-fits.
Not to put too fine a point on it, anyone intent on subverting our Constitution — our National treasure — is deserving of our collective contempt.
h/t Theo
Post #784 The Intrinsic Value of Style
No comments:
Post a Comment