Как стать автором
Обновить

Комментарии 82

Genopro не пробовали? У вас прям похоже получилось)

Вы знаете наверное натыкался, но отбросил ввиду виндового приложения и платной лицензии. На досуге изучу подробнее, что там есть)

Там триал есть который можно периодически переставлять. По крайней мере раньше точно был.

Это вы еще сложных случаев не видели :)
image

Это фантастика, связанная с путешествиями во времени.
При том что в реальности достаточно случаев, которые выбивают из колеи визуализацию, построенную на жёстких предположениях. Например, у меня среди родственников есть женщина, которая вышла замуж за одного мужчину, родила ему двоих детей, потом он умер, и она вышла замуж за его двоюродного брата, от которого у нее тоже были дети. В другом случае, семья усыновила своего внука после того, как его мать (их дочь) была лишена родительских прав, внук при этом сменил фамилию.

В другом случае, семья усыновила своего внука после того, как его мать (их дочь) была лишена родительских прав, внук при этом сменил фамилию.

Ничего необычного не вижу. Генетическая связь-то не изменилась, как были дед с бабкой, так и остались. А для смены фамилиии обычно предусматривают отдельное поле в БД, как фамилию мужа, например.
Средства визуализации таких данных отражают, естественно, не только генетическую связь, но и формальные родственные связи. За исключением случаев, когда речь идет действительно только об узкой задаче генетической визуализации.
Выглядит интересно, изучу)
Ознакомлюсь
Я тоже давно смотрю на GRAMPS, никак не засяду.

Попробовал около двух десятков бесплатных и условно-бесплатных программ и остановился на gramps.

Да, отличный вариант

Преимущество современных сервисов не только в том что можно построить генеалогические дерево, а ещё в том что можно искать по чужим (я так своё расширил в несколько раз), а так же по открытым базам (я нашёл фотографии Прапрадеда).

Совершенно верно, у меня таким образом очень круто расширилось дерево в прошлое.
Воу, это действительно круто. У меня тоже есть такие стремления сделать веб-сервис, где каждый может публиковать свое дерево и шарить его, а если где-то появляются совпадения и пользователи ассептят – мерджить. Это очень будоражит, когда смотришь на такие структуры и понимаешь, что всё это люди имеющие отношение к тебе.

Однако, одна из причин по которой я тут опубликовал этот материал – получить обратную связь, тк наверняка я не рассмотрел все решения (наверняка есть что-то лучше, чем то, что я горожу). И в первую очередь прежде чем, что либо делать дальше, мне важно понять, что есть ещё.

Было бы круто узнать больше о вашем опыте.

К большому сожалению, главная проблема с подобной фичей — контроль качества. На сервисах типа Ancestry полно деревьев за тысячу человек, где даже при поверхностном анализе вылезают проблемы типа того, что кто-то не мог быть чьим-то предком, потому что умер в подростковом возрасте и жил совсем в другом месте. Разработка качественной системы контроля качества пока оказалась не по силам ни одному сервису (My heritage пытается, но очень плохо выходит).

Хорошее замечание. Интересно как эту задачку можно решить.
Эту проблему нельзя решить, ее можно только решать. Можно составлять своеобразный рейтинг вероятности связей на основе известной информации и показывать его пользователям. Но, например, коммерческим сервисам это не очень интересно, потому что это, скорее, отпугнет массового (нетребовательного) пользователя, а привлечет только редких требовательных пользователей.

Тот же Ancestry, например, практически стимулирует бездумное добавление мнимых родственников просто на основе частичного совпадения имён.

К сожалению, в реалиях современного российского законодательства и его вектора развития в сторону ухудшения будет очень трудно организовать такой сервис, который бы удовлетворял законам о персональных данных. Многочисленные жалобы генеалогов говорят о том, что в последние годы доступность архивов, записей и работой с чужими персональными данными резко забюрократизировалась, ограничилась, усложнилась и подорожала.

Да, я так и понял. Идея действительно классная, но как пет проект. Я для построение семейного дерева использую myheritage ком, там гигантская база данных + несколько крутых сервисов (например можно старую фотографию сделать существенно более четкой и превратить в цветную, когда ты это делаешь с фотографией начала прошлого века, это вызывает невероятное вау). Ну и это больше соц.сеть чем сервис для построения семейного дерева.


Что касается разработки и идеи в целом, те проблемы которые вы обозначали в статье, действительно имею место быть, но я бы к таким вещам относился как к исключениям, и искал бы способ их отрисовки именно в контексте исключения. Для 90%+ процентов людей достаточно базового функционала. Многоженство обрабатывается точно спокойно, инцест и т.п. уже имеет сложности, но будем откровенны — это не так уж и часто случается. Тут просто вопрос с поиском удобного сервиса, если цель не покодить, а построить и поддерживать дерево.


P.S. Если кто ищет еврейские корни, сервис выше один из лучших.

и на каких сервисах вы остановились?

Если вопрос мне, чуть выше сказал. Остановился на одном.

А на каком сервисе нашли в итоге фотографии?

Выше написал, на myheritage

Отец давно подобным увлекается. Когда-то пробовал что-то создать свое, но так и не реализовывал до конца. Он купил лицензию на «Древо жизни» от genery. Покрывает много кейсов. У нас в древе более 400 родственников в 14 или 16 поколениях (благо, корни уходят в Польшу, Чехию и Германию, где информация в 20-ом веке хранилась более тщательно, чем в Союзе). Буквально недавно устанавливали последнюю версию, работает и на Винде, и на Маке.
16 поколений — это до 1200-1400 года. Польша эпохи становления. Если не очень знатные дворяне, то очень сомнительно.
Ты не совсем прав )))
Смена поколений — это «всего» 20 лет. При большом количестве дальних родственников оказалось, что уже есть 3 поколения «ниже» меня (очень дальнее родство), и, соответственно, 10 поколений «выше». В древе есть информация о родственниках, родившихся во второй половине 18 века, архивы католических церквей хранят и более раннюю информацию.
Вторая половина XVIII века в моём дереве — это 7-8 поколение. Максимум 9. А как вы добились от католической церкви копания в архивах и ответа вам?
Я вообще этим не занимаюсь. Отец очень интересуется. Списывается, бывал в местах, откуда родом предки. Детали не скажу. Я только по устанивке-перезапуске.

Самый сложный кейс для это задачи — построить семейное древо греческих богов...

Попробуй начать с ветхого завета )))) Вначале все просто — Адам, Ева, Авель, Каин, Сиф… потом еще пару поколений ничего, но потом начинаешь путаться в именах, связях, возрасте )))
Вначале всё просто? Где взять жен для «Авель, Каин, Сиф»…?
Лилит)
Как Драупади, на всех одна?

Нет ли здесь лазейки для Дарвина?

«100 лет одиночества» — тоже отличный материал. В этих Аурелиано запутаться — раз плюнуть.

Пользовался для этих целей myfamilytree можно данные держать как локально, так и у них на сервере. В бесплатной версии очень ограничены всякие плюшки.
Они кроме генеадогических деревьев, вроде как занимались/занимаются катологизацией захоронений

Гляну

webtrees не смотрели? Довольно топорно сделано, но для моих нужд хватило.

Обязательно сделайте поддержку формата ged — чтобы легко можно было мигрировать к вам.

Кажется не смотрел, обязательно посмотрю, спасибо за совет!

Само по себе дерево хоть и красиво, но тяжело обозреваемо, почти не представляемо в печатном виде и может сильно деформироваться при появлении новых фактов. Даже в виде скроллируемого изображения на компьютере оно бывает плохо понимаемым. Я выбрал представление моей генеалогии в виде отдельных семей с перекрестными ссылками. Семья на страницу A4. Если у человека семьи пока нет, то просто страница о нем одном. С фотографиями и краткой информацией. Новая жена/муж — новая семья. В конце общий указатель по фамилиям. Удобно распечатать и передать. Либо передать в виде pdf ки.

Интересно, но тут есть вопросы: «что есть семья?», «как семьи соединяются?», «кого к какой семье отнести, если человека можно и туда и туда занести?» итд. Я вот для ограничения придумал алгоритм, который описал в «Ограничения отображения». Обратите внимание, мб будет полезно. Касаемо распечаток, пока ответа не нашел, остановился на использовании векторного отображения графа.

С другой стороны, на следующем этапе вы захотите зафиксировать какие-то рассказы ваших пожилых родственников о предках, чтобы о них сохранилось чуть больше информации, чем генетические связи. И уже там представление в виде «семей» станет, наверное, более предпочтительным.
Если Вы не потомок греческих богов, то да, сложно
Выглядит довольно интересно, но сложновато
в файрфоксе детали вашего дерева очень маленькие, увеличить не получилось.
Если вы говорите про прототип, то я проверил в Firefox и скролл работает.
у меня при скроллинге просто двигается вверх-вниз. то же самое, вверх-вниз, и при разведении и сближении пальцев, и при горизонтальном скроллинге. всё это на тачпаде.
Странно, у меня работает, не подскажу вам. У меня Macbook, разведение пальцев на трекпаде дает нужный эффект)
Вместе с тем как быстро граф расширяется в ширь, стало понятно, что отображать такую структуру становится сложно. Нужно как-то её ограничивать. Для этого я придумал следующий алгоритм?
1. PHASE “A” Для узла-точки-входа отображаем всех прямых предков.
2. PHASE “B” Для всех элементов на графе отображаем всех прямых потомков, при этом для каждого потомка отображаем вторых родителей (на графе отмечены серым кружком).
3. Для всех вторых родителей повторяем PHASE “A”
4. Повторяем PHASE “B”
5. Переходим к 3.

какое же это ограничение? те «вторые родители» — не родня для «точки входа». вы тут всех отобразите, кто связан с точкой входа даже через несколько неродственных связей муж-жена.
Если вы не хотите отображать на графе людей связанных через связь «муж-жена», количество таких «горизонтальных» удалений от точки входа ограничивается количеством итераций в цикле (шаги 3-5) начиная с шага 3.

В некоторых деревьях эта информация не учитывается и не храниться. Но для меня является важным хранить информацию не только о вертикальных связях, но и горизонтальных, поэтому я задумался об этом.
я тоже сделал программу для показа родных.

я обнаружил такой простой текстовый способ для отображения, также хранятся данные:

сначала родная семья «точки входа», со всеми потомками, в том числе потомки его родных. это выглядит как простой многоуровневый список.

затем то же самое повторяю для родных семей отца «точки входа», затем матери, затем так далее: их отцов и матерей и так далее, только вместо повтора уже записанного списка потомков родной семьи «точки входа» и других уже записанных списков потомков пишу коммент «потомки этого человека уже указаны выше».

вот так я записываю и храню эти данные.

я сделал сортировку людей по близости, и для навигации использую вот такую схему. но я этим сейчас не пользуюсь, пользуюсь в основном простой текстовой версией.

также я сделал более нормальное отображение тех списков, вместо javascript кода. для навигации использую, конечно же, ещё один вложенный список предков точки входа, который стоит в самом начале, как содержание, откуда можно прыгнуть к тем вложенным спискам потомков этих предков и их родных, по внутристраничным ссылкам. но этим пока тоже не пользуюсь, так как там нету интерфейса для редактирования.
Спасибо! Выглядит интересно, изучу на досуге, это мб актуально при хранении больших структур данных.
PS открыл JS и пару минут пытался найти нужную кодировку пока не понял, что это татарский xD
Добавьте поддержку формата GEDCOM, многие сторонние сервисы и ПО позволяют делать экспорт в этом формате.

Хорошо

Замечу, что подавляющее большинство средств визуализации вполне намеренно не стараются отобразить всё дерево, а ограничиваются только его подмножествами, которые меняются на основе контекста.

пользовался myheritage. бесплатного тарифа более чем хватило.
тоже не один день потратили с семьей, что бы хоть как-то заполнить.
в итоге всего 153 человека получилось. мой дед по отцовской линии был из детдома — целая цепочка утерялась ((
Давно интересуюсь темой, из пощупанного не нравится вообще ничего. В качестве компромисса остановился в итоге на GRAMPS.
Касательно того, что у вас получилось — визуально очень так себе.
Вообще моё очень личное мнение: ценность подобных данных не в том, «КТО все эти люди», а в том «кто МНЕ все эти люди», ну то есть грубо говоря я глядя на такую картинку должен обнаружить — «о, а вот этот-то мне троюродный брат, оказывается»

Где-то тут идея и кроется, конечно, не совсем «кто мне», но около. составив более менее большой в ширь граф посмотреть как связаны разные семьи. Это представляет интерес для меня.

Как раз эта идея в качестве основной для меня не улавливается, история оно конечно хорошо, но лично мне интересно в принципе знать, что вот эти семьи связаны, а как — это уж второй вопрос.
Разверну, почему мне важно именно «кто МНЕ», вот прямо на имеющихся примерах:
-в детстве неоднократно ездил «к родственникам» под Тольятти. Сейчас никто из ближайших здравствующих родственников внятно не может объяснить, кто это. «Какая-то родня», отлично.
-был один уважаемый родственник, к которому каждая поездка праздник и вот это вот всё. Внезапно одна из «соседних» родственных веток уверенно называет его своим родственником тоже. Быстрое расследование ничего не дало, все путаются в показаниях вплоть до того, что я на полном серьёзе начал подозревать скелеты в шкафу (в смысле их наличие на том самом древе).
-очень долгое время навещал родню в доме престарелых, а спустя где-то лет 20! совершенно случайно узнал, что они родственники совсем с другой стороны, тогда как я был уверен, что они по моей.
Ну и, к сожалению, старшее поколение потихоньку уходит, а с ними уходят и те самые связи, которые потом будет не восстановить, поэтому надо всё-таки завестись. Архивы оцифровать, опять же, я уже лет 10 об этом думаю, с этим ещё хуже, потому что там вопросов кроме «кто это» ещё «где это» и «когда это», на которые всё меньше людей могут дать ответ.
Я дёргался было, но всё никак не могу завестись, работа на самом деле колоссальная предстоит.
Я вас понимаю, я не отрицаю важность «кто МНЕ», это тоже является для меня основным. Однако для меня также интересно и другое, о чем я написал выше.
Тогда всё-таки разверните мысль, так как я не совсем понимаю ценности этого знания. Семьи связаны, я это и так знаю, дальше-то что?
Вопрос действительно хороший, попробую: так или иначе через связь «муж-жена» родственники с другой от меня стороны действительно не представляют для меня ценности (если не брать в расчет, что они могут связаны со мной как-то ещё).

Однако с точки зрения «ребенка» между тем самым «мужем» и «женой», я буду являться его родственником, как и люди в этом графе находящиеся от меня за этой связью. Поэтому для такого «ребенка» такой граф будет представлять ценность.

Для меня же представляет интерес увидеть как разрастаются такие родственные связи, на сколько они велики в пределах города или мира. Через сколько таких детей я могу дотянутся до какого-то другого человека.

Если добавить сюда третий закон генеалогии, который я упоминал в статье: то интересно ещё и то на сколько замкнуто это множество (тоесть сколько в нем вообще уникальных родов). — Хотя, это, конечно, очень сложно.
Я честно несколько раз перечитал ваш комментарий — и всё равно до конца не уловил ценности подобного знания, тем более что вы в итоге всё равно по сути сводите к «кто МНЕ» в «через сколько таких детей». И граф связи между конкретными людьми — это в общем-то оно и есть. То есть не сам факт, а именно граф.

Ценность средства для организаций данных может быть очень разной. Самая очевидная и наименее субъективная — историческая. Занимаясь поиском и упорядочиванием данных о предках и родственниках, можно раскопать очень интересные истории о жизни в прошлом. Сколько у кого детей было, сколько из них выжили, кто чем занимался, где учились, чем владели, с кем как войны обошлись, кто куда уехал искать лучшей жизни или кого куда загнали обстоятельства. И эту информацию неплохо бы делать публичной, чтобы историческая информация об обычных людях, а не только о знатных и знаменитых, сохранилась и была доступна в будущем.

Попробуйте My Family Tree: бесплатна, вполне удобна (даже моя очень возрастная мама, которая и является основным заполнителем БД, успешно с ней справляется), имеет русский интерфейс в том числе, позволяет работать с семейными данными ДНК, хоть и весьма топорно и не очень функционально.

Тут уже писали про неё, изучу

А мне понравился сервис www.familyecho.com тем, что можно сделать отображение и написание Имён и Фамилий на нескольких языках (для иностранных родственников) и расшариваением путём ссылки и добавлением родственников в авторы для редактирования.
GENI.COM бесплатного тарифа более чем хватает
Лучшая реализация всех Ваших запросов на мой взгляд — Древо жизни: настройка веток древа, его отображение, линии связи и много, много другого полезного, кроме всего прочего программа поддерживает экспорт/импорт в getcom и xml. Предусмотрены различные ситуации с усыновлением, приёмными детьми/родителями, инцестами и прочими семейными ситуациями. Программа не стоит на месте и периодично развивается, как уже отмечалось в комментариях вышла версия для macOS, отзывчивая техподдержка, есть живой форум. Сам много лет пользуюсь данной программой, в древе более 800 человек на 12 поколений. Для online версии рекомендую сервис familyspace.ru, хотя говорят есть более продвинутые.
Спасибо) гляну
Кстати, пробовал. Вначале понравилась. Потом не врубился, можно ли что-то нормально делать хотя бы с генетическими различиями близких родственников, не говоря уже про наследование мутаций. Отказался
Еще был такой может немного попсовый проект, но думаю, что идея крутая, если бы в него вовлеклось больше людей. Чтобы найти уже дальних родственников через этот проект и через них восстановить более тщательно родословную.
Кстати да, и всё это, конечно, требует изучения прежде чем делать что-то свое)

При первом погружении в генеалогию традиционное зависание происходит при осознании, что древо - это не дерево, и даже не граф. Потому что существует два типа связей: "родитель-ребенок" и "муж-жена", и два типа узлов - "человек" и "брак". То есть это два графа, связанных друг с другом. Или можно обойтись одним, но тогда связи "муж-жена" придется вычислять, а стрелочек "родитель-ребенок" становится очень много.

думаю, это очень просто оформляется в виде (списка) компонентов-троек (ребёнок, отец, мать). я сделал программу так. доступ по имени (или идентификатору, в моей программе имя, с добавленными символами для недопущения повторов) ребёнка. т. е. имя человека это ключ, а содержимое по каждому ключу это имена 2-х родителей. другого содержимого, типа дополнительных данных, в моей программе пока нет.

Хранение данных - не самоцель. Выбирая способ организации данных, я думаю о задачах, которые на этих данных нужно будет решать. Для генеалогии это построение древа предков, древа потомков, всех путей от одного человека до другого, пути y-хромосомы, определение степени родства. И другие, это просто навскидку. Если ваш способ хранения решает все эти задачи, тем более, если решает быстро, то он хороший.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории