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!