Modern Software Experience

2008-08-06

state of the art

limited to small databases

Quite a lot of genealogical software is limited to small databases, if not by design, then by other limitations. Lots of software is so slow and uses so much memory that it cannot practically be used with anything but small to medium databases, perhaps 20 or 25 thousands INDI records.

For example, Geni.com was so slow that it initially limited GEDCOM import to small files of up to 5.000 INDI records. After speed improvements, it is still so slow that it limits GEDCOM import to just 15.000 INDI records. On the desktop, GenoPro 2007 already runs out of memory when asked to import a database of just some 34.000 INDI records.

These programs waste CPU cycles as if supercomputers are freely included in each box of cereal.

not improving

Worst of all, the situation is not improving. GEDCOM import tests show that Legacy Family Tree 7 is about 10 % slower than Legacy 6, that Family Tree Maker 2008 is almost six times as slow as Family Tree Maker 16, and that WinFamily 7 needs about 330 times as much time as WinFamily 6 does.
These programs waste CPU cycles as if supercomputers are freely included in each box of cereal.

slow GEDCOM import

hours

Several programs fail to complete the import of the 100k INDI GEDCOM, a large PAF GEDCOM file with just over 100.000 INDI records, and many programs that do manage it are painfully slow.
On my 2,7 GHz Intel Pentium 4 PC with 2 GB of RAM, Legacy Family Tree 7 takes more than an hour, The Master Genealogist 7 takes more than 1½ hour, Heredis 10 needs almost 3 hours, Family Tree Maker 2008 SP3 takes more than 3 hours and Hereditree 2008 takes more than four hours.

minutes 

PAF 5.2.18.0, a program last updated in 2002, imports its own file in less than four minutes. RootsMagic takes less than six minutes, MyHeritage Family Tree Builder takes less than 2 minutes, Relatives 1.1 takes just under one minute, Legacy Charting does it in 12 seconds, an MudCreek GENViewer Lite 1.15 in less than 2½ seconds.

thousands

Legacy 7 is more than thousand times as slow as GENViewer, TMG 7 is more than two thousand times as slow and Family Tree Maker 2008 SP3 is close to five thousand times as slow. GENViewer import speed exceeds 40.000 individuals per second, while FTM barely manages 8 individuals per second.

Are you willing to twiddle your thumbs for hours when you know it can be done in less than a minute?

editor versus viewer

It’s arguable unfair to compare a genealogy editor with a genealogy viewer that does not a save a file to disk, and does not create an import log either, but taking several thousand times as long remains embarrassingly inefficient. A thousand seconds is more than a quarter of an hour (16m40s to be precise), and the difference between a second and a quarter is the difference between a joy to use and frustratingly slow.

The fastest genealogy editor in the bunch of programs I’ve tested is Relatives 1.1; Relatives takes less a minute. Legacy takes more than hour, and the tardiness of TMG, FTM, Heredis and Hereditree is measured in hours. Are you willing to twiddle your thumbs for hours when you know it can be done in less than a minute?

serious design mistakes

Once you know how big the differences are, and how poorly some well-known and widely used programs perform, you cannot help but wonder how these programs came to be so slow. There must be some serious design mistakes in there, to take hundreds or even thousands times as long as the competition needs.

reasons

You probably do not really care much about the program’s internal design, that is the vendor’s problem. All you really care about is the resulting performance - or lack thereof.
Still, a few reasons are easily identified. One is that many of today’s best known products started out as hobby projects, and never saw a redesign. Today’s version is essentially a bunch of features bolted on top of the same decade-old design. That original design wasn’t done by a software architect, wasn’t meant for all those features, wasn’t created for today’s PCs and wasn’t created with today’s large databases in mind.

forward

Any experienced programmer can tell you that there is a practical limit to fitting new features into old programs. Over time, the code becomes an intricate mess that no one really understands, and the only practical way forward is to redesign and rebuild from scratch. For many of the older programs, especially those build on dead platforms such a FoxPro, rebuilding is the proper way forward.

Rebuilding is a fantastic opportunity to redo the design, use modern methodologies, technologies and the latest tools, but is not without risks. Done right, it combines years of domain experience and modern technology in a fantastic product That’s a joy to use.

Done wrong, the result is a disaster such as Family Tree Maker 2008. This rebuild of Family Tree Maker is not just considerably slower, it is actually so bad overall that buyers switched back to their earlier versions. The old Family Tree Maker isn’t a particularly good genealogy program, but it is so much better than FTM 2008, that Ancestry.com would make a bundle if it started selling version 16 again as Family Tree Maker Classic.

Millennia may be moving in the right direction. Legacy 7 is slower than Legacy 6, but Millennia’s Legacy Charting comes close to MudCreek GENViewer’s speed, and that may bode well for Legacy 8.

conclusion

One thing is sure: a lot of today’s software genealogy is not able to handle large databases. Some software cannot even handle moderately sized databases, other software becomes too slow to be practical, and a lot of software that performs reasonably is crippled by embarrassingly slow import speeds.

Genealogy software should be able to handle large databases, and handle them with speed and grace. Our family trees keep growing. As all our databases get bigger, the products that cannot handle it will be dumped for their competition. Performance matters, and the vendors who understand that will do better than those who don’t.

update

2008-08-22 Confucius Challenge and Cup

I’ve issued The Confucius Challenge; to handle the database of Confucius’ descendants and handle it well. The Confucius Cup 2008 tests whether current genealogy software is up to the first part of that challenge: importing the Confucius database in a reasonable time. Not one program succeeded.

links