Once the site was launched and the pressure was off, we were faced with a decision. We could leave the code the way it was and struggle to make changes to it when needed. Or we could throw out the old code and rewrite it from scratch now that we had a complete set of requirements from the customer, as well as the needed time. Fortunately we opted for the second. Fortunate because that site changed a lot over the next few years, and the clean code base made that much easier. Without that, it would likely have been impossible to keep updating the site.
I find this process to be very similar to the approach many take when coming to Christ. We have been busy with building our own lives, and are comfortable with where we are, even though our lives may be a mess with all the pieces cobbled together. And when Christ comes we are tempted just to add in a few new features (like periodic Bible reading, occasional prayer, worship attendance, and maybe putting money in the offering plate if I have any extra) into the old existing code base. And the result is not very satisfying.
The alternative is what Paul describes in the passage below, throwing out the old me, and allowing the master programmer to rebuild me into something that would be useful to him.
I have been crucified with Christ and I no longer live, but Christ lives in me. The life I now live in the body, I live by faith in the Son of God, who loved me and gave himself for me.Crucified with Christ and no longer alive. This sounds pretty drastic. But it is what is needed if I am going to experience the life God has prepared for me. Trying to hold on to my life with just a few upgrades just will not cut it. Throw it all out and start over again.
Galatians 2:20 NIV
Where once Paul was at the center of his life, now Christ occupies that position. Talk about an upgrade.