Skip to content

Latest commit

 

History

History
269 lines (239 loc) · 11.7 KB

TODO

File metadata and controls

269 lines (239 loc) · 11.7 KB

Database

Create indexes in database:

Assertion.subject1 Assertion.subject2 (Assertion.subject1, Assertion.value) ??? (Assertion.subject2, Assertion.value) ??? Assertion.Value should point into a table rather than be a text

Investigate storing trees more efficiently

See for instance http://articles.sitepoint.com/print/hierarchical-data-database and http://code.google.com/p/django-mptt/

Trees

Look at H-Trees for efficient visualization

http://www.tco.utah.edu/NEWSLETTER/2011June/featured-article.php http://rootstech.org/schedule/saturday/TD044

Gedcom import

Import all missing GEDCOM information (reported by ./manage.py import)

share NOTE, PLAC and SOUR in the database

At least when they are shared in Gedcom, and if possible more

some INDI end up with a non-empty description, which is a xref to a NOTE.

We should create a proper note instead (but not clear how this is done in GENTECH)

Option to capitalize last names, instead of preserving capitals from some

gedcoms.

See invalid tags list

http://www.beholdgenealogy.com/blog/?p=876

In GenTech, occupation is a characteristic, not an event (since it doesn’t

involve other persons or roles).

Testing

http://timforsythe.com/blog/gedcom-import-testing-introduction/ http://heiner-eichmann.de/gedcom/gedcom.htm http://gedcomindex.com/gedcoms.html

Pedigree View

Dnd on Pedigree icon should display the pedigree for that person

When showing children, show the name of the matching spouse

Support for multiple parents (foster parents, ambiguities,…)

Make pedigree configurable:

Chose which events to show in each boxes (“birth” and “death” by default, but should fallback on “baptism” and “burial” for instance, or the user might want to see other info (if “residence”, there can be multiple of them) See also engagement instead of marriage

Tooltip to display person info

Compact layout should compute width of boxes in one generation by looking

at the maximum width to display the info.

Test infinite loops with invalid pedigree: A parent of B parent of C parent of A

descendants: should show a node for the wife(s), and link children to that.

Display timeline (ie range of date at the top of each column of boxes)

Save configuration of pedigree and fanchart in local storage, and restore it the

next time it is displayed. This configuration can also be used to detect whether we need to recompute the layout. This will also allow reloading the whole page when selecting a new decujus, which will preserve Back and Forward arrows.

Bracket View

Force layout

label placement

http://bl.ocks.org/MoritzStefaner/1377729

Timestamp

http://www.cotrino.com/lifespan/

Dynamic “infinite” expansion

See “Interactive Visualization of Genealogical Graphs” http://www.youtube.com/watch?v=fZ1GXZ0hJPY

Highlight rules

Store them in the database

Create them graphically

Use presets

Quilts

Easy navigation to parents and children (GeneaQuilts uses pie charts)

Add a way to unselect

Currently, clicking on a selected person does nothing, and the only way to undo a selection is to select something else.

Autoscale

Link to the highlight_rules.py colors

Clicking on a person should show his/her details

Geneaquilts has a timeline view

Geneaquilts automatically zooms in or out when navigating from the

overview canvas, to show the whole generation. Not sure whether this is convenient.

Implement other layout optimizations from the graphviz paper

Use local information to compute cut values, and refresh tree traversal info locally rather than recompute it from scratch every time. Also only recompute cut values for a subset of the nodes, as explained in the paper.

Trellis Charts

http://progenygenealogy.com/products/family-tree-charts/trellis.aspx

Print

Should hide unwanted parts of the page when printing

FanChart

Possibility to fold part of the fanchart to concentrate on specific

families See www.cs.utah.edu/~draperg/research/fanchart/demo/

Display SOSA number related to a given person

Not necessarily related to the current root

Display last name on a separate line to make it more readable

Tooltip to display person info

Rotation fan chart

See https://plus.google.com/u/0/115195430424417504730/posts/QrXM4z9JxrG

Half and Quarter circle view

http://www.gramps-project.org/wiki/index.php?title=GEPS_030:_New_Visualization_Techniques

Display rotated text (on a path)

when HTML5 canvas supports it (it is now part of the standard, but not implemented by browsers yet)

Person View

Add a rounded box showing the color from highlight_rules.py

Person list view

Slow to display with big databases

If we paginate based on first letter of last name and only query those, it might be made much faster, and also easier to navigate.

Sources

Use Bibtex as a reference for which fields are needed for the various

formats of sources. http://www.tex.ac.uk/tex-archive/biblio/bibtex

See

http://www.gramps-project.org/wiki/index.php?title=GEPS_018:_Evidence_style_sources http://jytangledweb.org/genealogy/evidencestyle/

Surety schemes

http://www.youtube.com/watch?v=l6PRflCvBCo

Citations

Repositories

In the Evidence Explained style, the repository information is already part of some of the styles, would we end up with duplicates. In fact, the repository information is part of the citation itself, including call number. If the user goes to another repository to look at the same source, it will be a different copy, so should likely be a different entry in the list of sources (for instance a lower-level source). Perhaps we should not try to handle repositories separately at all.

Groups

For: neighbor, friend, clergy, care-taker, and more

Graphically editing the surety scheme

This scheme is properly taken into account when displaying assertions

in the person view, but currently the user cannot edit it.

Take these custom schemes into account when importing gedcom files

Ideas for names

Geneatica, Forebears, Testimony, Testimology

GeneaProve

Packaging

Use py2exe and py2app to provide standalone executables

Compile with Closure compiler for efficiency

Compile CSS for efficiency

Add a way to precompute (into a .js file) all the tree data for

a given person, so that we can have a demo of the program running on github

Design

Should we be using groups to store families ?

Currently, a child belongs to a family through his birth (that gives his parents). But we have to create dummy personas sometimes to preserve the information on siblings (when none or only one of the parents is known). We could instead create a group “Family” in which personas are added as “child” or “father” or “mother”. Main drawback is in the GUI, since we don’t want users to have to create such a family every time. Perhaps when entering a birth event GeneaProve could transparently create the group. Likewise, have dummy persona-to-persona relationships like “sibling”, which are saved in the group rather than as assertions in P2P.

Face detection in images

See https://github.com/jaysalvat/jquery.facedetection

Online courses

Inferential Genealogy

https://www.familysearch.org/learningcenter/lesson/inferential-genealogy/251

Gedcom replacements

Several models are proposed to replace Gedcom. Most of them share a number of characteristics with the GenTech datamodel that GeneaProve uses, but with slight differences. It would be useful to be able to export to one of those, and perhaps to even change the internal datamodel if a clear contender emerges.

Maps

dates

From W. Berry:

I did have a quick look at the dates module. I note that you have coded in the date at which France adopted the Gregorian Calendar. Great Britain did not adopt the Gregorian until 1752. Secondly, there was another complication in Britain, in that the day on which the year number changed was (“Old Style”) March 25. Therefore the day after March 24 1588 was March 25 1589. 1752 was the first year in which the year ended on 31 December. The Gregorian Calendar was adopted as from September 2 (which became September 14). See http://www.crowl.org/lawrence/time/britgreg.html

to which I replied: Basically, the intent is to leave this to the user as much as possible. The “normalized” dates should not appear on the various views (where we only want to show whatever the user has entered, i.e. presumably what was found in the original documents). The normalized dates are only used for sorting, so exact conversion is not necessarily needed, although of course it would be better to handle this correctly.

web

timeline

http://www.chronozoomproject.org/ http://www.geneanet.org/blog/index.php/post/2015/03/Des-frises-chronologiques-a-creer-soi-meme.html

What are conclusions ?

http://michaelhait.wordpress.com/2012/02/26/simple-and-complex/

Evidence-based genealogy

http://timforsythe.com/blog/evidence-based-genealogy-vs-conclusion-based-genealogy/ http://www.geneamusings.com/2012/02/more-on-conclusion-based-and-evidence.html http://www.youtube.com/watch?v=7mlSV1E6saA

splatter heatmaps

http://timforsythe.com/blog/introducing-splatter-the-gedcom-population-distribution-heatmap/

Calendars

http://books.google.fr/books/about/Calendrical_Calculations.html?id=DPbx0-qgXu0C&redir_esc=y

Stats

http://timforsythe.com/blog/once-more-please-this-time-with-pizzazz/

US Census

http://factfinder2.census.gov/faces/tableservices/jsf/pages/productview.xhtml?pid=ACS_12_1YR_DP02&prodType=table Nationalities: http://factfinder2.census.gov/faces/tableservices/jsf/pages/productview.xhtml?pid=ACS_12_3YR_B04001&prodType=table

European kings

http://histfam.familysearch.org/descend.php?personID=I1891&tree=Nixon

Local history: toilets in the middle ages

http://blog.geneanet.org/index.php/post/2013/11/L-histoire-par-le-petit-bout-de-la-lorgnette-%3A-les-besoins-au-XVIIIe-siecle.html

Old maps

http://www.oldmapsonline.org/#bbox=-2.25731,47.420731,-2.032776,47.530723&q=&datefrom=1000&dateto=1745

Existing code

gedcom parsers

gedcom matching and merging

objective-c

other programs

Mac

http://blog.eogn.com/eastmans_online_genealogy/2013/03/genealogy-programs-for-macintosh.html http://blog.eogn.com/eastmans_online_genealogy/2013/05/macfamilytree-7-and-mobilefamilytree-7-released-.html http://www.macg.co/logiciels/2015/03/ohmigene-perd-son-createur-et-cherche-un-repreneur-87999

Replace icons with fonts

http://fortawesome.github.com/Font-Awesome/ This can also be used to replace the star plugin, see the above page

CSS

http://learnlayout.com

GUI

The toplevel menubar sections should match the genealogical process (collect, analyze,…)

Use consistent black-and-white icons