Managing your family tree with GRAMPS

Bloodlines


If you're planning to study your family history, you'd better be ready to manage large amounts of data. Why not use your Linux box for the hard work?

By Kevin Donnelly

www.sxc.hu

If you plan to catalog your family history, you must first find the relevant information, which is sometimes not at all easy, and then you have to keep this information in a form that allows you to get the most out of it. The good news is that Linux users now have an attractive application that meets all the requirements for family history research. Genealogical Research and Analysis Management Programming System (GRAMPS) is a handy tool for Linux and Unix systems that helps you track your family history. In this article, I'll try out GRAMPS [1] on a 530-person family tree that was originally put together on "that other OS."

Installation

The most accessible version of GRAMPS is 1.0.11, so this article concentrates on that version. (The current version 2.0.3 requires the most recent python-gnome packages - see Box: GRAMPS v2.) Richard Bos has built GRAMPS 1.0.11 rpms for SUSE 9.2, which are available via apt4rpm [2]. Mandriva and Fedora rpms are available from the GRAMPS site, along with the usual source tarball.

GRAMPS v2

Version 2 of GRAMPS was released in May after more than a year of development, most of which was devoted to reworking the internals. Changes include: a Berkeley DB backend (meaning that changes are written to disk immediately); the ability to edit GEDCOM files natively (although because of variations in the way GEDCOM is implemented, there is a risk of data loss); and a new file format.

The latest GRAMPS in this series is 2.0.3, and it requires the most recent python-gnome packages. Users of SUSE 9.3 and similar distros should find no difficulties here (and Richard Bos has again made a 2.0.3 rpm [3]), but users of older distros may need to install additional GNOME packages. The SUSE wiki, for example, has a page on installing 2.0.3 on SUSE 9.2 [4] , which lists the various packages required (around 68 MB worth!).

Overall, the application looks similar to 1.0.11, but the most obvious change is the move to providing one big list of names in the People view, instead of splitting the names over alphabetical tabs. Arthur preferred this (though I didn't!). A new menu entry (Edit | Column Editor) allows you to choose which items of information will appear in the People view - for example, you can elect to list the spouse, as well as birth and death dates. Another change, which goes a long way towards addressing the navigation issues in the Pedigree view, is the introduction of a right-click menu giving access to immediate relatives of the person, including siblings. The other innovation is a scratchpad, which lets you drop snippets of information onto forms instead of having to type the information in again - see the tutorial at [5].

Adding Individuals

When you first launch GRAMPS, the program will collect some initial information and then ask if you want to open a family history database. Since you don't have a family history database yet, select Create a new XML database and click OK (Figure 1).

Figure 1: Creating a new database for your genealogy project.

Navigate to a folder you will be using for your genealogy work, type in a name for the database (e.g., myfamily), and click OK. The GRAMPS work area will now open, with a sidebar allowing you to choose various views of your data (Figure 2).

Figure 2: The GRAMPS work area.

You can now begin adding information about your family. Click the Add icon on the icon bar, and the Edit Person dialog box will open (Figure 3). The General tab is for basic information, and a series of other tabs let you enter more detailed data. The Names and Addresses tabs allow you to enter multiple names or addresses for the same person, The Notes tab provides a free form text area to jot down relevant facts, and the Sources tab lets you enter references to other information on this person. These sources might include formal written records (such as birth and baptism records, military service records, death certificates, wills, headstone inscriptions), as well as less formal oral records (such as family anecdotes or reminiscences of friends), which serve to flesh out the basic facts.

Figure 3: The Edit Person dialog box lets you enter information on a specific relative.

The ability to sort the information by clicking on the column heading is very useful, and another nice touch is the fact that the tab name is highlighted in bold if the tab contains information. One missing feature that would be very welcome is word wrap. If the Description column on the Events tab contains a long entry, you need to scroll far to the right to see the Date and Place columns.

The Gallery tab lets you associate media objects with this person - clicking the Add from file button opens the Select a media object dialog, where you can select the relevant object (Figure 4). By default, the object is copied to your genealogy folder, but you can tick Do not make a local copy to leave it in its current location and only insert a link to it. Multiple objects can be added to the Gallery tab. The first image in the group will become the default image shown on the General tab.

Figure 4: Adding a media object to a person record.

Importing Existing Information

If this is your first journey into you family history, you can continue inputing information about your family manually. But if you have been collecting material for some time, it is likely that you have already been using a computer to keep track of your genealogy data. In that case, you will not want to re-enter all the data simply because you have moved to a superior OS. All you need to do is get your old family history program to export the data in the standard GEDCOM (GEnealogical Data COMmunication) text-file format, and let GRAMPS import it. Individual applications tend to use their own "flavor" of GEDCOM (a bit like the situation with SQL), but GRAMPS can import GEDCOM files from Brother's Keeper, Family Origins, Family Tree Maker, Ftree, GeneWeb, Legacy, Personal Ancestral File, Pro-Gen, Reunion, and Visual Genealogie.

The test file we are going to import for the purposes of this article was assembled over several years by Arthur Sutton using Family Tree Maker on Windows 98. The file has details of 530 of his relatives, along with related background material such as sources, notes, etc. None of the associated media objects (mostly photos) was included in the exported GEDCOM file.

To import the file, choose File | Import | Import from GEDCOM..., navigate to the file, and click OK. Wait for a few seconds as GRAMPS does the import, and then you should see your data in the work area, neatly listed in alphabetical order of surname, with a row of tabs along the bottom to jump to each letter of the alphabet. To view the individuals listed under a surname, click on the arrow beside the name to open the list.

Exploring the Data

Now that we have plenty of data to work with, we can explore some of the other features of GRAMPS. Perhaps the first thing to say is that the import was (so far as I could see) flawless - the ancillary material, for example, was properly assigned to individuals. The ability to transfer all your information without incident is of major importance if you are considering moving your family history to Linux.

Double-clicking on any individual will open the editing box shown in Figure 3. Selecting an individual, and then clicking on the Family view will open a dialog box with information about the individual's immediate family (spouse, parents, children). Double-clicking on any of the text areas will open a dialog box in which you can edit the relevant details (for example, the type of relationship).

This box also offers a number of clever ways to move around in the database (Figure 5). Button (1) switches between the individual and his/her spouse as the active individual. Buttons (2) and (3) make the individual's parents or the spouse's parents (respectively) the active individuals. The + button lets you add a new set of parents (e.g., in the case of foster-parents). Selecting one of the children and clicking button (4) sets that child as the active individual. Other options are also available by right-clicking on the different areas.

Figure 5: GRAMPS lets you navigate easily through family relationships.

Clicking on the Pedigree view will allow you to see the relationships in the usual tree format (Figure 6). The default format is left to right, but you can select top to bottom in Edit | Preferences | Display | General. The small arrow buttons at either end of the pedigree allow you to move back and forth through the generations - on the left-hand side, pressing the button brings up a list of children (if any), with those who had children of their own marked in bold italics.

Figure 6: Clicking on Pedigree view lets you see relationships in a tree format.

Another view gives a combined list of all the sources and places mentioned in the file, with details of all the media objects included.

Clicking on the Tools icon will give you access to a range of utilities, for tasks ranging from repairing the database to finding duplicate entries (Figure 7).

Figure 7: The Tools window gives you access to a range of utilities.

The Tools window also includes a handy relationship calculator (Figure 8), which determines the relationship between the active individual and any other individual in the family tree.

Figure 8: Use the relationship calculator to determine the relationship between an individual and other individuals in the family tree.

Getting It Down on Paper

In some cases, you may need a written report of the information available on your PC. GRAMPS excels here, offering a wide range of reports. You also have the ability to edit the built-in reports or write new reports from scratch (if you know Python). Reports are available in a variety of formats: HTML, PDF, AbiWord, KWord, LaTeX, RTF, and OpenOffice.org formats for text reports, and PostScript, PDF, SVG, OpenOffice, and GraphViz formats for graphical reports containing charts and diagrams.

The most comprehensive report is probably the Book report (Books | Book Report), which combines various reports into one large OpenOffice.org file. Once you have selected the reports you want, you are asked to pick a filename for the report. (OpenOffice Writer is the default format.)

The same system of saving to an external file is used for most of the other reports. Some of the reports are not as useful as they might be - for instance, the Ahnentafel report does not seem to note the generational relationship of the listed individuals to the active individual, making it easy to get lost. It would also be helpful to give a slightly more detailed description of the different reports - there is enough space on the Reports dialog box to do this.

Perhaps the most exciting report is the one that allows you to export your file to a series of web pages. After selecting Web Page | Generate Web Site, you enter a location for the HTML pages. You can then choose from a number of templates or use a user-defined template, and you can also adjust particular aspects of the page layout via a style editor. You can also select how much of the family tree you wish to export. This report, if placed on a password-protected website, could be a very valuable tool for sharing the results of your research with other members of the family.

One report that is not included is a "research journal" (in effect, a to-do list). This report would allow you to enter the date, the relevant individual, the area to be researched, the source (if any), and some notes. If you were planning a trip to the Record Office to look at Census or Probate records, for instance, you could call up a list of all the individuals whose Census or Probate details you wished to check.

How Does GRAMPS Measure Up?

Does GRAMPS hold its own against other applications such as Family Tree Maker (FTM)? According to Arthur, a genealogy expert who helped me with this article, the answer is a resounding "yes." Once he got used to the slightly different interface, he found that GRAMPS grew on him, and he felt that GRAMPS probably offers more functionality than the version of FTM he had been using. However, there were a few areas that he thought could be improved.

The first area is the connectivity between the different "islands" of information. For example, the Pedigree view narrows down to one individual on the left-hand side, meaning that it is difficult to view this individual in context - for instance, siblings are not displayed. A better approach might be to have a timeline along the bottom of the screen, allowing the user to travel backwards and forwards along this individual's "line." You could then click any individual on this line to make that individual active, and at that point the individual's siblings would also be shown.

Another example of an area for improvement is the layout on the Family view. The display of both sets of parents for the active individual and spouse was very welcome, but better use could be made of the screen space to pull in information from the active individual's General tab. This design would provide "at-a-glance" information about the active individual. On the same screen, place of birth would be more useful for the children entries than the status (type of relationship to the parents).

Perhaps the biggest difference between GRAMPS and FHM is that, in GRAMPS, nearly all the reports are written to a new file. Although there may be benefits here in terms of easy export of parts of the history; the disadvantage is that several applications need to be open, and it is more cumbersome if you want to make incremental improvements to the reports - they need to be repeatedly exported and opened. Some sort of print preview function in GRAMPS might deal with this point.

In summary, GRAMPS has matured considerably in the last 18 months. It is wonderful that such a powerful and attractive application is now available for Linux users who are interested in family history. The fact that GRAMPS was able to handle a large real world data file like this flawlessly, and allow a completely novice user to become quite comfortable with it in less than an hour, shows what a great job the developers have done and demonstrates how close the Linux desktop is to general consumer usability.

Acknowledgment

I would like to thank Arthur Sutton for allowing me access to his family history file, and for sharing his impressions of GRAMPS with me.

INFO
[1] GRAMPS homepage: http://gramps-project.org
[2] GRAMPS 1.0.11 rpms for Suse 9.2: ftp://ftp.gwdg.de/pub/linux/suse/apt/SuSE/9.2-i386/RPMS.suser-rbos
[3] GRAMPS 2.0.3 Suse rpms: ftp://ftp.gwdg.de/pub/linux/suse/apt/SuSE/9.3-i386/RPMS.suser-rbos
[4] Installing GRAMPS 2.0.3 on Suse: http://www.susewiki.org/index.php?title=Gramps
[5] Recording UK census information with GRAMPS: http://gramps-project.org/index.php?module=pagemaster&PAGE_user_op=view_page&PAGE_id=13