> ## Content Index
> Fetch the complete content index at: https://nolongerset.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# Make Your Access App More Resilient with Version Control
- URL: https://nolongerset.com/humpty-dumpty/
- Published: 2023-09-25T15:26:41.000Z
- Updated: 2026-05-08T12:35:47.000Z
- Description: Reassembling the pieces of a fragile system is a fool's (horse's?) errand. Turning back the clock is a more reliable fix.
- Author: Mike Wolfe
- Tags: Version Control, #Import 2026-05-20 02:59

No one sets out to write fragile code.

But over the lifetime of an application, simple code becomes complicated. Side effects and dependencies intertwine as [complicated code leads to a complex system](https://nolongerset.com/complex-vs-complicated/). As we apply band-aids, bubble gum, and duct tape to handle changing requirements, the already-complex system becomes fragile.

Like the proverbial Humpty Dumpty, fragile systems don't bruise; they shatter.

## Recovering a Shattered System

When working with complex and fragile code, small changes can have wide-ranging, unintended consequences.

It's surprisingly easy to apply a handful of small changes, hopelessly break the system, and then not be able to remember *exactly* what it was you changed. If you wrote the original software, you likely feel like all the king's men, trying in vain to put Humpty Dumpty back together again.

But if you *didn't write the original software...*then you feel more like the king's *horses*, pulverizing what's left of the shell into dust as you lament that even the world's best iron horseshoes are no replacement for opposable thumbs.

> King's men: sorry your highness...we couldn't put Humpty Dumpty back together again  
>  
> King (drunk af): let the horses try
> 
> — your bff alex (@psybermonkey) [October 27, 2017](https://twitter.com/psybermonkey/status/923725966697992192?ref%5Fsrc=twsrc%5Etfw)

## Turning Back Time

The best way to recover a shattered software system–or an anthropomorphized ovum–is to turn back time to before the precipitating event.

That's exactly what version control allows us to do: turn back the clock to return to a known working state of our application. More than that, it allows us to see *exactly what we changed* since we were last in that known working state. This is why an actual text-based version control system is superior to the "version control system" most Access developers use (read: making `.accdb` copies):

[Learn to Love Text-Based Version Control with “Highlights for Children”Why use text-based version control for visual objects like forms and reports? I’ll tell you why, but first, find all the differences between these two pictures...![](https://nolongerset.com/favicon.png)No Longer SetMike Wolfe![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2021/07/Img-v-Txt-Version-Control.jpg)](https://nolongerset.com/highlights-for-children)

## Getting Started with Version Control

If you've been thinking about trying version control with Access, Adam Waller's [msaccess-vcs-addin](https://github.com/joyfullservice/msaccess-vcs-addin) project is a great place to get started:

[A Quick, Free Way to Try Version Control with Microsoft AccessCurious about getting started with version control in Microsoft Access, but don’t want to commit a lot of time or money? This could be just the solution for you.![](https://nolongerset.com/favicon.png)No Longer SetMike Wolfe![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2021/07/Instant-Version-Control-1-.jpg)](https://nolongerset.com/instant-version-control/)