How code and scripture are similar
Jan 2024
Having spent thousands of hours looking at code and at scripture, I’ve noticed many ways in which the two are similar. In no particular order:
- Both are written by multiple authors.
- Both are (or can be) written over a long period of time.
- The audience (users) changes over time. (Although the changes are different.)
- Both can be (are) written in different (multiple) languages.
- Both can be (and are) written in different styles.
- Different parts of the text (code) have different features, purposes, intended goals, and usages.
- Can sometimes be used/useful in part.
- Using either other than as unintended can have negative consequences.
- Beware people who (re)sell either. Evaluate what those training in the understanding or use of either say.
- Parts of both can be confusing but that doesn’t rule out the value of the whole.
- Some duplication (in content) can be useful and/or necessary.
- Constraints can guide and provide a benefit to the reader (and author).
- Neither is “just” a list of things you can’t do.
- With both, some of the text goes on and on, seems repetitive, and is not easy to read.
- Lots of small, but important details can be easy to dismiss, overlook, or ignore but can be really important.
- Important instructions are repeated.
- Some important details may only be 1 or 2 sentences/lines (or instructions) in a much larger text.
- Even repeated instructions are often ignored or forgotten (by those reading or working with the text/code.)
- People do what’s easiest for them now, even if told about long-term negative consequences. (In the text/codes/comments/docs.)
- Some people will do the opposite of what told to do in the text/comments/docs.
- God uses people of all ages (in the text of scripture and as the author of code.)
- God uses people when they don’t want to be used or even know they are being used. (Both in scripture and through the authoring of code.)
- Reading the Bible can be like reading a codebase that uses an unfamiliar framework. The words are understandable on their own, but how they’re put together can have meanings and implications that may not be immediately obvious.
- Some things (words/terms/names) have special meanings that may not be obvious to the reader.
- It’s not always obvious from reading a codebase how it got to this point, as is the case for some parts of scripture. The older the test (or codebase) the more likely this is to occur.
- Don’t remove the bits, of either, you don’t understand.
- You can’t see how the text or code developed and changed over time.
- Some parts of the text (or codebase) may be “borrowed” from other sources.
- If written now, both might be structured differently.
- Details and parts that are unclear are an invitation to look more deeply.
- Both can often be difficult to read. (Sadly?) writing so that it is clear to the (future) reader isn’t (wasn’t) always a priority.
- The meaning of both is often obscured.
- Both are often around for a lot longer than the original author (or developer) probably expected
- At a high level, both can show intent, but when examining the details, workarounds and exceptions can be found.
- “to the tune of {song you don’t know the tune of}” (in the Psalms) can feel like reading out-of-date comments or finding a link that is no longer valid.
- Both can (and should?) be written to glorify God and as worship.
- Both are influenced by the life events, experiences, and knowledge of the authors.
- Both can have evidence (style?) of the author
- Both use domain-specific terms that are meaningless to others.
- The meaning/purpose of both can be uncertain.
- Repetition of a theme can reinforce basics and fundamentals.
- Both are honest and exact. (Although, this isn’t true for all of scripture.)
- The conventions and patterns of code AND language change over time.
- Showing/knowing the authors (if known) can be helpful in understanding how and why things were written as they are.
- Ordering and grouping matter and can help with understanding.
- Both were written for immediate use and benefit.
- Both were written for the future, not to be thrown away.
- Both can have different levels of detail. They may look simple on the surface, but more details are revealed if (and when) you dig deeper.
- Everyone should be encouraged to ask questions about both. (What’s a “Maskil”? - people used to know, but when people didn’t and stopped asking–eventually no one knew.)
- Can easily lose sight of the big picture when focusing on a small section.
Of course, there are differences too!
Please consider sharing this with anyone you think would appreciate or benefit from it. twitter | facebook | LinkedIn | WhatsApp | reddit | email