Tag Archives: GRAMPS

Genealogy Software for the Mac

This week I’m attending the IAJGS Conference on Jewish Genealogy in Boston. Last night I attended the Mac BOF (Birds-Of-a-Feather) meeting. It was packed from one of the room to the other, thanks to the hard work of Doris Loeb Nabel and other volunteers.

I first attended a Mac BOF meeting back in 2011 in DC. Like two years ago, both Duff Wilson from Ancestry and Daniel Horowitz from MyHeritage spoke briefly about their future Mac offerings. Both, by the way, are planning new Mac offerings by the end of the calendar year. Ancestry is planning a new Mac version of FTM that is closer in feature-parity to the Windows version than previous versions. Wilson also noted that the price of the Mac version, which is currently higher than the Windows version, would likely come into line with the Windows version. MyHeritage is working on the first Mac version of FTB, which will also not have all the features of their Windows version. MyHeritage wants to get a version out, but doesn’t want to wait until all the features they have built over the years in their Windows version, have been coded for the Mac. Hopefully both companies will bring their Mac version into sync with their Windows versions over time.

One of the things I noticed at the meeting was that many of the people did not know about all the Mac genealogy software available. Most knew about Reunion, and Family Tree Maker, but many did not know about others. I thought it would be useful to take a quick look at the genealogy applications available for Mac. Most of these I’ve discussed in the past to differing degrees, but this is probably the first time I’ve listed them all together. The list consists of most Mac genealogy software (in alphabetical order) that have been updated in the past year (and I’ll point out a few that have not been recently updated recently at the end). If I miss any that you use, post in the comments.


Not a traditional genealogy program based on people – Evidentia is based on recording sources and building a case to prove claims. Costs $24.99 on the web site (although currently on sale, 20% off through August at $21.25).

A very powerful genealogy program, GEDitCOM II‘s main drawback is its antiquated interface. GEDitCOM II has a few power features that no other genealogy program has, such as scripting with Applescript, Python or Ruby, and outputting a book in LaTeX format. These are not features most genealogists will ever use, but for some advanced users, these features definitely set it apart. Costs $64.99 on the web site.

GRAMPS is a free and open-source genealogy application originally developed for Linux, but now also available for Windows and Mac. I’ve discussed GRAMPS in the past (here and here), and now there’s a new version out, version 4. Free from the web site.

Developed in France, Heredis is popular in Europe and is available for both Mac and Windows. I’ve mentioned Heredis in the past but have not done a full review. Two interesting features Heredis has are its illustrated charts and book publishing. Free companion app for iPhone. Available on the web site, and via the Mac App Store, for $59.99.

Recently updated to version 7, MacFamilyTree has a very modern user interface, and lots of options for charts and reports, and can integrate with FamilySearch family trees (the only Mac software that can that I am aware of). Syncs with MobileFamilyTree, a paid app, on iPhone and iPad. Normally costs $59.99 on the Mac App Store (only), but currently on sale for 50% off for a few more days (until Aug 11).


Reunion is a very popular genealogy program for the Mac, with advanced reporting and charting capabilities. Relatively easy navigation through your tree. A very active support forum. Paid separate companion apps for iPhone and iPad. Costs $99 on their web site, and from some retailers including Amazon.

There are also some other genealogy programs like iFamily for Leopard, myBlood, ohmiGene, and PA Writer II. Not all of these are updated frequently, and I’m not as familiar with them. I also took a look at the various genealogy applications available through the Mac App Store back in February. This includes a few I don’t mention here, including the app Memory Miner, which is not strictly speaking a genealogy program, but a ‘digital storytelling’ application, and can import GEDCOMs to help assign names to people.

What program do you use? What do you like about it? What don’t you like about it. Have you been thinking about using one of these programs, but not started?

Another look at GRAMPS

Back in January I took a look at the free genealogy program GRAMPS. GRAMPS started on Linux, but is now available for Windows and Mac. I was looking at it specifically for use on the Mac, as that’s the platform I use. At the time, at version 3.2.5, it was not yet stable enough on the Mac to use. Indeed there was at least one major issue which I submitted as a bug to the developers, but I haven’t had time since then to fully test it again. Recently version 3.3.0 was released, and I decided to give it a spin once again. As I mentioned back in January, I really like the idea of a free open-source cross-platform genealogy program, and I’m rooting for GRAMPS to be competitive with other genealogy programs out on the market.

This time, things went a lot smoother than my first attempt. For one, everything installed easily and I didn’t see any error messages when loading the program. Oddly the program loaded on my second monitor, which is very unusual. It’s possible I had moved the application to my second monitor back in January and this version accessed some preference file from the old version, but in any case I’ve never seen an app boot directly to my second monitor.

Exporting and Correcting a GEDCOM from Reunion

The first thing I did was export a GEDCOM file from Reunion to load into GRAMPS. Knowing from previous attempts that GRAMPS would not recognize the relative paths used int the image file locations, I opened the GEDCOM first in a text editor and did a find-and-replace on the relative path:

GEDCOM excerpt showing relative path to an image file

In the above image (click to enlarge) you can see the relative path on the line that starts with FILE starts with ~/ which is supposed to point to my home directory. This is a UNIX shortcut, which makes it is surprising that GRAMPS doesn’t know how to deal with it. In any event, on the Mac your home directory is located at /Users/USERNAME/ or in my case /Users/philip/ and as you can see in the Find box, I replace all instances of ~/ with /Users/philip/.

GEDCOM excerpt showing absolute path to an image file (after Replace All)

In the above image you can see that 935 instances of ~/ were replaced, including in the image location shown in the GEDCOM.

One other thing to notice in the GEDCOM is that Reunion output not only the image location, but a line called _CROP which gives coordinates of how the image was cropped within Reunion. Reunion lets you re-use images with different people (or even multiple times with the same person) and for each instance of the image you can crop it how you’d like. For example, if you have a family photo that shows two parents and four children, you can assign that photo to all six people, and crop the photo for each person so when displayed will only show the head of the person you want. This is a very nice feature, but GEDCOM doesn’t have a standard way to deal with it. I don’t even know if GRAMPS can handle per-instance cropping of photos, but in any case it certainly doesn’t know how to import Reunion’s cropping information. Hopefully the efforts to improve/replace GEDCOM will in the future include a standard way to share that kind of information, and hopefully GRAMPS will add this feature as well.

Importing the GEDCOM into GRAMPS

Once I made the replacements in the file I wanted to load it into GRAMPS. For those used to standard Mac user-interface norms, GRAMPS doesn’t try to match them. This has been a complaint by other users of GRAMPS, that they should try to adapt to the user-interface ‘widgets’ of the operating systems they are targeting. Beyond the look of an app, there are also usage norms of which Linux users, Mac users and Windows users all expect something different. That said, I’m not sure if some of the user-interface issues are due to the fact that the program originated on Linux, or are just the user-interface decisions of the developers. When getting started, GRAMPS makes you create a new family tree, then load the new tree (which oddly takes more than a few seconds) and then lets you import a GEDCOM. The GEDCOM import was quite fast, and in my case importing 1800 records took only few moments. Why couldn’t I just import a GEDCOM into a new family tree? No idea.

GRAMPS Views

GRAMPS offers several very interesting views of your data – People, Relationships, Families, and Ancestry. GRAMPS also lets you look at your Events, Places, Geography, Sources, Media and Notes. These views are great, as they let you look at your data in some very useful ways very quickly. One thing that is very interesting, for example, is to be able to see all the Places that are present in your family tree. As Reunion does not standardize place names, in my case the list of Places shows some of the many duplicate and inconsistent names I’ve used in my tree. It also lets you easily correct the names and then merge duplicate names so that they link to a single reference. Thus, if you choose to change the name of the town later, the change will show up in all records that reference that location.

I also tried the Geography view which starts out as a map of the world, but somehow I zoomed out so far that I couldn’t see anything and I couldn’t get it to go back to a normal view of the Map. In fact, the coordinates shown for my location on the map was:

Geography view coordinates

Now I wasn’t a geography major, but I’m pretty sure it’s not possible to go to W 16534˚ on a map. Now the way I zoomed was using the multi-touch trackpad on my MacBook Pro, which the developers who use Linux might not be familiar with, so perhaps this bug isn’t possible to reproduce on Linux, but it definitely exists on the Mac. A map reset button might be good here.

In any event, I like that with each view there is a Filter panel that lets you search within the view and reduce the number of records shown to match what you’re searching. Reunion lets you search lots of fields, probably more than GRAMPS, but it does so from a single search window, and you either search one field or all fields at once. GRAMPS’ filtering seems more useful for quick searches within the view you’re currently in.

I have to say, having used Reunion for more than ten years, the views in GRAMPS seem a bit strange to me. Obviously one can argue over what views are best in genealogy program, and having many options (Reunion is really just one view) is a good thing, but I find the views somewhat redundant and inconsistent. For example, The Relationships view is a view that shows all the direct relationships of a person, such as parents, spouse(s), children and siblings. The siblings are a nice touch since most genealogy programs only show parents  and children of a person in a single view. That said, I generally need to scroll down to see all the information in this view, which limits its usefulness for quick navigation through family members. In Reunion, which is based on a Family view (a Couple is the center of the view, which shows basic information on each of the couple’s parents above them, and of all of their children below them), if I want to see someone’s siblings I click on the parents of the person, and the parents become the couple at the center of view, and the children at the bottom include the person I was originally looking at and all of his/her siblings. That isn’t necessarily the most natural way to see this information, but it works in a very consistent manner. Thus it is easy for me to navigate up and down through the tree using just this single Family view.

In GRAMPS, the closest thing to the view in Reunion is the Families view, except that its usage is user-interface-challenged. For example, if I go to the Families view I see a list of families, which is essentially a list of couples and their marriage dates if known. If I click on a couple I get a view that is similar to Reunion’s view that pops up in a new window (except it only shows parents and children, not the parents of the couple). In this new window, if I click on the one of the parents’ names, for example, nothing happens. There is a little document icon next to the names, however, and if I click on that icon I get a third window which lets me edit the person’s details (this is actually the same as Reunion except Reunion doesn’t use an icon but lets you just click on the name). Indeed this is the People view in GRAMPS, so you are seeing more than one view at a time). If I click on the childrens’ names, I get a different window which just seems to allow me to define the relationship of the child to the parent (birth, adopted, etc.). This seems like a waste of a window. If I was going to have a window like this, I would at least allow you to switch who the parents are of the child (such as when there are multiple marriages and you find that a child was born from a different set of parents than you thought). This raises a few other UI decisions I don’t understand in GRAMPS. In the view showing the parents and children, there is a minus sign that lets you remove one of the parents as a parent – but of which child? What if the father is the father of one child but not the other? In addition, there seems no logical way to add additional spouses in this view. Second marriages are common enough that this should be integrated into the view.

No Easy Navigation

The worst part of the UI seems to be that there is no way to easily navigate to other families through the view itself. Instead, I need to close the window, go back to the list of families and find the right family. That’s a bit absurd actually, especially if you have lots of people with similar names in your tree, or if you simply don’t remember the names of the parents. Reunion is a bit limited in its single view, but it is actually very easy to navigate within that view to find almost all the information you need quickly.

You might have noticed that earlier I said above that the user-interface in GRAMPS is inconsistent. Let me give an example. In the above mentioned view you can’t easy switch to the parents or children. In the Ancestry view, which is a kind of navigatable graphic tree, you can click on a parent of the person at the ‘bottom’ of the tree (it’s actually on the left side) to make them the bottom of the tree, but if the tree doesn’t show the children of the bottom person. There is a pop-up menu you can click on and then choose a child in order to make them the bottom person. This seems a weak UI choice. Why not show all the children of the primary person in the tree, to allow quick navigation of the entire tree. My main problem with GRAMPS is navigation-oriented, and when I see different (inconsistent) choices made in different views, and no easy way to navigate in a single window to information on different families, it is a big problem for me.

In the End…

After writing the above I decided to check out the different graphical views and reporting options, but ran into a roadblock. When trying to switch to a different Ancestry view (Timeline Pedigree) an error message was generated, and I was unable to continue. Indeed, this issue has prevented me from adding many of the screenshots I intended to add to the above to illustrate various features. I was prompted to submit a bug report which I did, but when I tried to re-launch GRAMPS and re-load my family tree I kep getting an error message saying the database was corrupt and to run a tool to fix it, but the program would crash before I could access the tool to fix the database. I suppose I could delete the tree and start over, but for the time being I’m going to wait. While this version (3.3.0) is much more stable than the previous version I tested, it clearly is not ready yet for everyday use, at least not on a Mac. I look forward to testing it in the future when these issues have been worked out.

GRAMPS 3.2.5 released for Mac, but not ready for primetime

I really like the idea of an open-source genealogy program. The only real open-source genealogy program that runs on the desktop seems to be GRAMPS. GRAMPS stands for Genealogical Research and Analysis Management Program System. Yeah, I’ll stick with GRAMPS. Originally developed for Linux, it now has versions that run on Windows and on the Mac. I’ve tried it in the past but never really gotten it to work. When I saw a new version released today I installed it and tried again.

Unfortunately, I ran into error messages right from the beginning. I suspect this has to do with running the program on a Mac, a platform they claim to support, but which is not supported very well. After I got past the initial error messages (which prompted me to submit a bug report, but the bug reporter feature led to an error as well) I tried to import a GEDCOM, but found that the Import function didn’t do anything.

I suspect GRAMPS run significantly better on Linux, but alas most people don’t use Linux. As with most open-source projects, the development of the project is directed by those developers who choose to do the actual work. In the beginning, all the developers of GRAMPS were on Linux, and the goal was to create a genealogy program for that platform. It is common sense that under such a situation Linux would be the focus. Over the years GRAMPS has added developers who have chosen to make GRAMPS work on other platforms.

In a recent blog post by one of the developers in response to a post in their own forum about a two-year old blog posting on GRAMPS for Windows, the general ideals of this (and many other) open-source project is revealed, that the developers decide what is best, and if you don’t agree then become a developer for the project and then you can’t have an opinion. In this case, the original two-year-old blog posting was recommending a very specific technical route to take, which I would agree if you’re not going to contribute to the development efforts, is probably a silly thing to do. Developers don’t listen to outside suggestions – they listen to inside suggestions, so even if a developer working inside the project made the same exact technical suggestion, it would be better received than from an outsider. Why a developer decided to bring this up two years later, when the technical issues being discussed are very different than they were in 2008, however, is beyond me.

I would agree with the original sentiment of the two-year-old posting, however, that if you are going to port your application to platforms like Windows and Mac, you should be prepared to use the interface tools available natively on that platform. The look of GRAMPS on the Mac, while familiar to a Linux user, is totally foreign to a Mac user. If I was going to make a suggestion to the GRAMPS developers, it would probably be to look at a cross-platform GUI toolkit like wxPython which lets one use native GUI widgets for each platform, so on Windows the buttons are Windows buttons and on the Mac they’re Mac buttons. If they really wanted to support the Mac natively they could look at PyObjC, but that wouldn’t help them for Linux or Windows, so wxPython is probably a better choice. Of course, I’m not a developer, and I am not offering to become one, so my opinion doesn’t really count here.

The hopefully good news here is that in that same developer blog posting, he says the forthcoming 3.3 version has the best support for multiple platforms GRAMPS has ever had. It’s planned to release in March, so I guess we’ll see then how GRAMPS has improved. When GRAMPS 3.3 is released, I expect to try it again, and post the results here.

Anyone reading this using GRAMPS? I’d love to hear your thoughts in the comments.

[June 27, 2011 - I've posted a follow-up to this post on a newer version of GRAMPS, 3.3.0, which is improved in terms of stability, but is not yet ready to use on a regular basis on the Mac in my opinion.]