# Comprehension > Code

by  
Irene Sandler  
August 30, 2024

> “Do the best you can until you know better. Then when you know better, do better.”  
> — _Maya Angelou_

In the beginning, there was the void, and the void was without form, and emptiness filled the digital expanse. And a voice spoke: "Let there be code," and thus arose the ancient tongues: Assembly, Fortran, and COBOL. The languages were inscribed upon the scrolls of punch cards and magnetic tapes; fed into great, computational beasts whereupon instructions upon instructions poured forth to populate the expanse.

And behold! We still tend to classify systems across the decades along language lines: C, Pascal, Prolog, Smalltalk, Java, C++, Python, Ruby on Rails, etc. No wonder that when it comes to modernizing legacy systems, the typical approach is to look first at converting source code written in one programming language into an equivalent source code in another programming language—a.k.a. transpilation.

Transpilation seems logical and—be still my beating AI heart—eminently automatable. But consider the [Chinese Room thought experiment](https://plato.stanford.edu/entries/chinese-room/). Proposed by philosopher John Searle, it argues that there’s a meaningful difference between the _appearance_ of understanding and _actual_ understanding.

Rather, modernizing legacy systems should begin with comprehension: in this vast monolith of millions of lines of code, what does what? Where are the seams we can identify to discern relatively discrete components? What is this component’s behavior? What other system elements does it interact with? The more critical the system, the more important comprehension is.

To be sure, transpilation has an important role to play—preferably after the system is analyzed and understood. Otherwise, it’s a bit like [assembling a Lego Technic kit without instructions](https://www.reddit.com/r/lego/comments/18yw4ey/technic_can_be_brutal_if_you_miss_a_step/).

Once you have a better sense of what’s happening, it’s much easier to decide on which tools and techniques to use to rebuild the behavior of the system incrementally in modern, easy-to-understand code.

Or, to hand it back to my Book of Genesis-themed LLM co-pilot:

_And so it was rewritten, and so it was done. From the chaos, the light of well-understood, malleable, modern software shone forth, illuminating a path forward free from technical debt and abundant with opportunity._

### News and Views

Irony: the software designed to protect companies instead created the greatest disruption since [Petya](https://www.wired.com/story/notpetya-cyberattack-ukraine-russia-code-crashed-the-world/). It hurt airlines the most, and [insurance companies estimate an impact north of $5 billion](https://www.washingtonpost.com/business/2024/07/24/crowdstrike-microsoft-crash-bug-report/) for the Fortune 500. Reports indicate [incremental roll-outs could have better managed risk](https://www.cnbc.com/2024/07/20/the-crowdstrike-fail-and-next-global-it-meltdown-already-in-the-making.html). And—a harsh realization for this GenXer—by now, Windows _is_ legacy.

Yet another example of how much we rely on software, car dealerships had to resort to pen and paper after [CDK Software experienced a cyberattack](https://www.wsj.com/business/autos/shopping-for-a-car-this-weekend-be-patientand-bring-a-pen-add20b18?st=1yukz0zkxvhim8m&reflink=desktopwebshare_permalink). A sharp dip in car purchases, a [probable $25 million ransomware payment](https://edition.cnn.com/2024/07/11/business/cdk-hack-ransom-tweny-five-million-dollars/index.html): these are real impacts on the economy and companies.

Speaking of ransomware payments, do you have what it takes to bargain with hackers? The Economist takes us [behind the scenes of a negotiation](https://www.economist.com/1843/2024/07/24/secrets-of-a-ransomware-negotiator)—prior experience with hostage situations a must.

Appearance of understanding vs actual understanding illustration in action: learn [how to unmask a bot with four simple words](https://www.nbcnews.com/tech/internet/hunting-ai-bots-four-words-trick-rcna161318).

### From the Orchard

Introducing [On a Limb](https://www.mechanical-orchard.com/media/on-a-limb-the-risk-of-poor-quality-software-with-professor-herb-krasner), our podcast celebrating the quiet, consistent work of managing risks to prevent full-blown crises. In this inaugural episode, I speak with [Professor Herb Krasner](https://www.it-cisq.org/wp-content/uploads/sites/6/2022/11/CPSQ-Report-Nov-22-2.pdf) about the risks that poor-quality software and technical debt present to the global business landscape. Also available on [Spotify](https://open.spotify.com/episode/42CoRd3MPAoehRQ0q5Gzzg?si=qHjYDcm3QpS6vGCXpJpBvQ) and [Amazon](https://music.amazon.com/podcasts/8c0b4158-4cbc-4742-8360-9b9f2ea318ac/on-a-limb).

Curious to learn more? Say [hello@mechanical-orchard.com](mailto:hello@mechanical-orchard.com).

—

_*Issue first published on July 30th, 2024._
