Raising the House - Wed, 5 Aug 2015
Installing a database into Behold is a major endeavour that I am doing carefully. It is, in many ways, not unlike the work that has been going on at a house I have been passing by for the past couple of months.
This is a beautiful home, about 100 years old, that supposedly was used for a movie set many years ago. But it had major foundation problems. The owner decided to replace the foundation.
If you look at the picture, you’ll see there are four huge steel beams holding the house up. I wish I knew how they got those steel beams there, but this was the first view of the house I had seen after the work started. It took me by complete surprise when I first saw it, and I just stood there for a while quite incredulous at the sight of it. If you look very closely in the black area under the house below the right side of the left window, very faintly you’ll see a white plastic chair. That chair is in the backyard behind the house.
With Behold, I’m removing its foundation: the internal data structures that hold all its genealogy data in memory while Behold is running, and I’m replacing that with a database on your hard drive that will hold the data. I’m ripping out the basement and replacing it. While I’m doing so, I’ve got to keep the rest of the house (Behold) safe and together, so that it can be laid back down on its new foundation.
It’s got to fit just right and I can’t break anything as I do this. There’s no room for any attempts to add something new, or make something better to the rest of the house. It’s just a matter of getting this most important job done and getting the foundation right.
Basically, I am taking each data structure: the INDI record, the FAM record, parent-children connections, places, sources, all the references between them, and one by one I’m replacing that part of the foundation. I hope that in a day or two, I’ll have enough done to replace a few parts of Behold’s old foundation with the new ones. I’ll see Behold work in a hybrid form, with some of its data now in the new database and the rest still from the old data structures.
I’ll then slowly convert the remaining data structures over bit by bit, keeping Behold running and working the whole time.
Once it appears that the entire new foundation is ready and is made to fit perfectly, I’ll lower the house onto it. Then I’ll carefully remove the four steel beams, um…, old data structures that are no longer needed, ensuring that everything continues to work as I dismantle the old support.
Quite a feat! But this should be a foundation that will serve the house at least another hundred years.
And it will provide the base that Behold will need to save your data in Version 2.