The term “pull yourself up by your bootstraps”, which of course is completely impossible, first came into use around 1860.
In computing, the ‘bootstrap’ is a chain of events that results in the core (kernel) of the operating system loading into memory. This chain of events starts small with testing this and that, making sure the system is ready, knowing what is required and that resources are available. With all these pre-flight checks done we are ready to load the core or kernel. If we don’t get any “Houston we have a problem” messages we should have a workable operating system. The system then goes through a learning cycle.

“Who am I?” — This is your Hostname.
“Where am I?” — This is your IP address, network, gateway etc
“What day is this?” — Time and date services start
“Why am I here?” — Web server, phone, TV
“How do I do that?” — The system is presented with a whole slew of configuration files and instructions for the life ahead.

Now I know that most of us have those questions first thing in the morning, especially before the first cup of coffee but those morning questions are just a restart not a reboot. When your system has no work to do it conserves resources and takes a snapshot of its current state and goes for a nap. On big corporate systems we call that elasticity and scalability, on user systems like your PC or phone we give it a cute name ‘sleep’. When it wakes up it should take over from where it left off, you may have to wait a bit while it has a coffee.

Now that our system is up and running we can give it more jobs to do, install new things and generally have a good time and get stuff done. It will operate in the same way over and over again. The problem arises when we don’t want it to operate in the same way. As system designers, if we see a fundamental problem in the way the system operates we need to fix it, this will mean a core OS or kernel patch. We load new code or a new kernel and reboot the system, the bootstrap goes through its cycle and hopefully everything is the way it was only better. There is no change in identity, location, what the system does or how it does it.

To be honest our lives can be a little like an operating system, even if at times a poorly performing one. Sure you get kernel upgrades every now and again which give you a bit of a lift, but you wake up to the same logo on the box, same fundamental problems as yesterday.

I get excited when I get to try new operating systems or new flavors of old ones, I even collect operating systems, I know its a bit sad. I sometimes change or migrate my phone to some weird operating system for fun, just so I can realize “Wow, I am really in over my head this time!” Just imagine if you had to flip from iPhone to Android or visa versa, to some of us it would be daunting, to some unthinkable!

I think of the most radical engineer of all time, Jesus, who said stuff like “Repent for the Kingdom of Heaven is at hand” [Mat3:2]. My picture of ┬áJesus saying that is with a smile on his face, not with a pointing finger, clipboard and frown. Repenting is just like migrating, its turning 180 degrees, like flipping your phone from one OS to the other. Just imagine if you had the chance to migrate to the perfect operating system, you get a new identity, new function and purpose. It’s not a simple upgrade its a migration.

I know this sounds daunting and many choose to be happy with a few regular patches, maybe a new feature here or there. But I want to be where things are alive, where things happen. I want to race down the torrent of life not be drip fed slowly. I want rivers of living water [Jn7:38], what have you got to lose, migrate, turn repent, dive in and reboot.

Categories: Code

Leave a Reply

Your email address will not be published. Required fields are marked *