With only 3 days to spare before expiry, the new version of Behold is now up. I’m very pleased with some of the improvements to the data structure. The code is much cleaner than before and even though the users of Behold don’t see it, it will make it much easier for me to maintain, and that is important.
The main visual change is that now there are links to parents, children, and other spouses. And any information associated with those links is displayed with them.
This does add to the size of the Everything Report. As an example, one GEDCOM I test with that was 124 pages in 0.98.5 is now 152 pages. It does result in taking about 50% longer to load - mostly because all those extra links add a lot to what the Richview component has to handle.
I’m not too worried about that right now. I’ll be optimizing Behold during beta testing and I expect to make improvements to speed and memory use then. I did notice, for example, when Behold runs that test GEDCOM, it makes over 2.5 million calls to a routine called “MyCompare”, and that takes 4 seconds. The code for that routine is not very efficient, and I expect I can optimize it to take one-tenth the time, for a savings of 3 and a half seconds a run.
The one other thing I am pleased with is that I’m finally including better handling of names that are in reverse order such as are used in India. These are names in the GEDCOM that are in the form: “/Lastname/ Middlename Firstname”. Kartik told me about this problem in January, and I’m sorry it took me so long to get to it. In the end, the basic work for this only took an hour or so.
Next on the agenda, I need to finish off several things before the beta is released. First will be finishing off the display of linking data and custom events. Then the exciting new addition will be better handling of large numbers of small GEDCOMs that identify individuals with AFNs (Ancestral File Numbers). Behold will recognize that these people are the same and display the data together. This will introduce “Virtual file merging” to the world - my attempt to eliminate the misguided wasteful effort involved in manual or even automated merging of all or part of another person’s GEDCOM into one’s own.