Genealogy for Everyone in the Torah – Draft

I’ve finally finished: a family tree / genealogy of every named figure in the Torah, the first five books of the bible. I’ve been on this project off-and-on for two years– not because I didn’t have the data (that part was easy), but because creating a tree of more than six hundred nodes is more than I wanted to do by hand, especially because I intend to move on to the next books soon. My end goal is to produce a tree of every figure in the bible.

Geeks can work awfully hard at being lazy. Since I refused to do the layouts by hand, I wrote my own software. I first built a flatfile database of everyone in the Torah, then built software to convert that into the DOT graphing format for processing by the open source tool “graphviz”. I complete a first pass (in Perl) almost a year ago, but it was broken and difficult to maintain before it was done. I completed a second pass (in Java) this month. As annoying as Java is for text processing, I needed type safety and modern data structures. I spent the last several weeks massaging the output to work around weaknesses in Graphviz: it wasn’t designed for this sort of abuse either.

The end result isn’t perfect:

  • Relationship boxes still don’t show up correctly with unnecessarily wavy lines and the “offspring” dots sometimes misaligned. You can tell what’s what, but it’s not great.
  • Sometimes paths can be confusing. Even a computer can’t perfectly lay out such complex data!

This is a draft. The first draft. It has errors. My next step will be to carefully comb over the data, using the “plain” meaning of the text whenever possible, to make a better version. The Torah presents many challenges in this project such as names that may refer to multiple people (Abimelech), multiple names that refer to only one (Moses’s father-in-law), places where it isn’t clear if a “son” refers to a direct son or a descendant, etc. I will also produce an appendix (interesting to very few) where I will itemize these decisions and describe why I made each one.

I hope you find this tree as interesting as I do. I had great fun putting it together. You can download the draft genealogy of the torah here. (PDF)

(The old PNG image version is available here. Still a 5MB file.)


  • Black lines are direct descendants
  • Red lines are tribal descendants (Canaan -> Caananites & Midianites -> Reuel)
  • Blue lines are royal lines of kings / other rulers
  • Triangles represent tribes/races/nations
  • Round boxes are individuals
  • Rectangles define relationships/families

Namaste! India in the Bible

A work trip has derailed my summer posting schedule, but I hope to be back on track in two weeks. In the meantime, I am in India, a country with beautiful and varied history. It’s a place like no other in the world and I’m very glad to be here.¬†Despite its great distance, India is not unknown in the bible. In fact, the bible reports that there were ancient Jews in India! Read on for more.

In Hyderabad, India at the Charminar: towers and a mosque built in 1591 as thanks to God for saving the city from a plague.

Continue reading Namaste! India in the Bible