While I was at #RootsTech, I was surprised to find out that Tamura Jones did a review of Version 1.0 of Behold.
I have said for a long time that Tamura writes the most comprehensive and accurate reviews of Genealogy software anywhere. Tamura has written full articles about Behold in the past: Version 0.98.9.90 alpha on Jan 6, 2009, Version 0.99.2 beta on Dec 1, 2009, and Behold FTW TEXT on Jan 3, 2011.
I take pride in anything that Tamura says is good about Behold. The not-so-good stuff is taken as constructive criticism and I look forward to getting that. Most of the time, I agree with Tamura’s analysis and I can then work to improve Behold’s weak spots and make it an even better program.
Being a programmer, I love recursion. So this will be my review of Tamura’s review.
First the good stuff:
“The Behold blog was started in 2002, and has been chronicling Behold’s progress ever since.”
I’m very proud of this blog. I feel I am probably the only genealogy software developer this open about what I am doing and how I think.
“Behold does not just support various Unicode encodings, its entire character set support is excellent. Behold does not only support all the character sets the GEDCOM specifications allows - ASCII, ANSEL and Unicode -but additionally reads many other ones, such as Windows ANSI, that are actually illegal.”
I don’t emphasis this enough on the Behold website and I should.
“Behold supports GEDCOM and then some. It not only deals with GEDCOM dialects, but also tries to deal with known errors vendors make, just so the user does not need to be bothered with it. Late in 2010, Behold even added explicit support for FTW TEXT.”
Oh Lord! Nobody knows like I do how horribly other vendors export their GEDCOMs. I want Behold to read as much of that junk as possible. Genealogists need a way to transfer their data between programs and the vendors don’t care. This is a real problem. Even if a BetterGEDCOM or GEDCOM X comes to be, if the vendors don’t follow the standard, the data won’t transfer properly.
“That makes Behold the first Windows genealogy application for which a 64-bit edition has been announced.”
And also coming in the future (I’m hoping with Version 2) a Mac version, followed by iOS, Android and Unix.
“Even with large files, performance is snappy; scrolling is smooth and and clicking a hyperlink immediately jumps to another section of the Everything Report. You can browse your data without getting annoyed by a sluggish application.”
Ensuring this worked well involved virtualizing TRichView, the component I use for displaying the Everything Report. That was probably the most difficult part of Behold for me to implement. It took close to six months to do and turned Behold from a slow memory-hungry app into a fast moderate-memory using app. This change was when I transitioned from alpha to beta and made Behold a viable program.
Now the not-so-good stuff:
“Behold 1.0 has a fan value of 19”
I am not proud of 19 at all. It’s not that bad a value, but Tamura recently found that RootsMagic 5 had a fan value of 24+ meaning that it can open up a file 32 times larger than Behold can. Behold still loads the entire GEDCOM plus all generated internal data structures for it into memory. This is currently limiting the maximum size. Over the next few months, I’ll be creating a native file format for Behold. Most of the data will be written to that file, and that should significantly increase the maximum file size that Behold could handle. This is a trade-off between memory and loading time. I’ll try my best to ensure that this will not slow Behold down too much, as I still want Behold to load GEDCOMs quickly. And the 64-bit version should give a big boost to Behold’s fan value.
“Behold 1.0 isn’t a genealogy editor, it is a genealogy viewer.”
Yes, I know (sigh!). As Tamura pointed out, I boxed myself into a corner and ran out of version numbers. 0.99.24 was starting to get ridiculous. But it was time. Version 1.0 is stable and capable enough to become a full release – even if it is just a viewer for now.
“it took 17 years to get version 1.0 out, so it is only natural to wonder how long will you have to wait for version 1.5”
Well, pre-alpha took 10 years. Alpha took 5 years. Beta took 2 years. I think I’m speeding up.
At the end of the review, Tamura provides a great index into many of my previous blog posts. The best of my posts get classified by: genealogy software, GEDCOM, Performance, Unicode and Technology.
Overall, I think it’s a great review. The very last line of the review gives me a challenge that I expect to meet:
“Behold 1.5 will include GEDCOM export, and if the quality of the exported GEDCOM is as high as promised, its flexible GEDCOM import and quality GEDCOM export will combine to make Behold a must-have
GEDCOMto GEDCOM conversion utility.”
I don’t know if Tamura will decide to do a review of my review of his review. But if so, I promise I won’t review that back.
Joined: Mon, 12 Jan 2009
36 blog comments, 59 forum posts
Posted: Wed, 8 Feb 2012
Louis
I still do not believe either Tamura or yourself give enough credence to the GEDCOM validation Behold achieves.
While Behold does not do consistency checks, the program should be recognised for the great GEDCOM validation. While I am unsure of any GEDCOM standard it does not compare, it certainly does a better validation job than any other program I use.
Maybe the ‘big’ programs should use Behold to ‘clean up’ their GEDCOM export act.
Brett
Joined: Sun, 9 Mar 2003
288 blog comments, 245 forum posts
Posted: Wed, 8 Feb 2012
Thanks for that, Brett.
You’ll be interested to know that as a result of your earlier email to me, I reinvestigated consistency checking. With the addition of true date parsing and my implementation of that in version 1.0.1, this is now quite possible, and the setup of Behold makes it rather do-able. If I can squeeze it in in the next week or two, I’ll do it prior to 1.5, and then Behold will have comprehensive error checking on all fronts. To be different than all programs yet again, those consistency checks will be added in the Everything Report, right beside the inconsistent data.
Not only that, but as part of my 1.5 export to GEDCOM, I will need to be 100% sure that the GEDCOM I export is true 5.5.1. (It’s got to be 5.5.1 and not 5.5 because 5.5 does not allow UTF8 Unicode). I currently only do loose input checking. But my writing of the date parser is easily extendable to writing of a full comprehensive GEDCOM parser. I’ll be able to detect “all” GEDCOM problems instead of just many (including lengths of fields) and then do my best to change them into the closest fully-GEDCOM-compliant equivalent.
To me, this is very exciting. Behold’s error checking will be very complete, and then out of the way as I develop my native file format.
Louis
Joined: Mon, 12 Jan 2009
36 blog comments, 59 forum posts
Posted: Thu, 9 Feb 2012
This is great news Louis, although I do not wish to be the cause of any delay in your quest to vs 1.5.
Joined: Sun, 9 Mar 2003
288 blog comments, 245 forum posts
Posted: Thu, 9 Feb 2012
Brett:
I’m still making my last few changes to the event sorting. I have to put the children in birthdate order, and the spouses into marriage order. I’ll be embedding them into the right place (date-wise) amongst all the events of an individual. Doing so just makes adding the consistency checking very natural to implement right now - rather than trying to come back to it later. I don’t expect it to take too long.
I’ve worked 17 years to get to this point. What’s another week or two, especially if it adds a very important and needed feature?
Louis
Joined: Thu, 9 Feb 2012
6 blog comments, 0 forum posts
Posted: Thu, 9 Feb 2012
I decided to go ahead and buy my license because of Tamura’s review, and also so that you can go out and buy yourself a beer. I’m looking forward to future releases, and you can expect to get some feedback from me from time to time.
Joined: Sun, 9 Mar 2003
288 blog comments, 245 forum posts
Posted: Thu, 9 Feb 2012
Thanks goulooze. Feedback is good. Beer is good, too.