Движок для словаря
Re: Движок для словаря
Залил на https://semantic-dict.ru очередную версию, в которой в значительной степени реализовано редактирование. Правда, пока не хватает такой ключевой вещи, как приём изменений в основную версию словаря, так что пока это ещё нельзя назвать работоспособной программой.
Уже недоволен количеством грязи, которая накопилась в коде, но пока не представляю, как сделать лучше.
Все учётные записи уничтожены, т.к. база пока очень часто пересоздаётся с нуля.
Уже недоволен количеством грязи, которая накопилась в коде, но пока не представляю, как сделать лучше.
Все учётные записи уничтожены, т.к. база пока очень часто пересоздаётся с нуля.
Re: Движок для словаря
Проект пока опять приостанавливается, т.к. опять вроде берут на работу. Посмотрим, что выйдет на этот раз :)
Re: Движок для словаря
Если кто-то готов сделать движок словаря на любом движке, который удовлетворяет следующим требованиям:
- каждый пользователь может завести свой диалект и своё слово
- ячейкой является смысл, а не слово
- первичного ключа нет
- разные пользователи могут переводить один смысл
- дамп базы может быть скачан в любой момент любым пользователем (и не должен содержать хеши паролей).
- нужно закачать данные из тех словарей, которые у нас уже есть
- администрировать
То я оплачу VDS хостинг 10 рублей в день. Или можно shared hosting, если уложитесь в его рамки. У меня есть домен semantic-dict.ru, но если душа требует иного, можете зарегистрировать свой домен.
Как вариант, я готов принимать PR-ы в существующий движок, его готовность 30-50%, план развития можно уточнить/обсудить - у меня есть более-менее чёткое понимание, что должно получиться в конце.
- каждый пользователь может завести свой диалект и своё слово
- ячейкой является смысл, а не слово
- первичного ключа нет
- разные пользователи могут переводить один смысл
- дамп базы может быть скачан в любой момент любым пользователем (и не должен содержать хеши паролей).
- нужно закачать данные из тех словарей, которые у нас уже есть
- администрировать
То я оплачу VDS хостинг 10 рублей в день. Или можно shared hosting, если уложитесь в его рамки. У меня есть домен semantic-dict.ru, но если душа требует иного, можете зарегистрировать свой домен.
Как вариант, я готов принимать PR-ы в существующий движок, его готовность 30-50%, план развития можно уточнить/обсудить - у меня есть более-менее чёткое понимание, что должно получиться в конце.
Re: Движок для словаря
Пишите где-то в течение недели, после этого я откажусь от существующего хостинга и semantic-dict.ru перестанет работать.
Re: Движок для словаря
Хостинг отключил, экономия 11 руб в день. Когда смогу продолжить работу над проектом и смогу ли - не знаю.
Re: Движок для словаря
Потихоньку ползём вперёд. Добавил поле "статус предложения".
Re: Движок для словаря
Планируется выгрузка данных из старого движка и загрузка в новый. Есть желающие потрудиться? Надо написать несложный макрос на Excel, к-рый берёт данные из ячеек и квотит их в формате, приемлемом для вставки в SQL. Хотя... Можно, наверное, просто выгрузить в CSV???
Re: Движок для словаря
Ещё немного покодил сегодня - заработал первый черновик формы внесения изменений в язык. По процессу любой пользователь может создать свою версию любой статьи, но потом она отправляется на подпись владельцу языка. Владелец языка либо принимает, либо отвергает правку. Почему-то оказалось сложно поддерживать соответствующую структуру данных, но потихоньку всё же ползём вперёд.
- Лис [Вежливый]
- Сообщения: 563
- Зарегистрирован: 08.10.18 13:32
Re: Движок для словаря
Почему владелец у всего языка, а не несколько владельцев у разных групп слов? Т.е. почему он один, что за монархия. Где многопартийность?
Пример - человек, решил провести ввод некоего словаря при помощи группы волонтёров, а в это время другой человек решил провести ввод другого словаря (привлекая для этого другую группу волонтёров). Тогда всё, что вводит первая группа должно идти через первого человека, а всё что вводит вторая группа должно идти через второго человека.
То же самое относится к профессиональному сленгу. Профессий много, и могут быть коллизии, если всё пытается отмодерировать один человек, который не в теме некоторого сленга.
Пример - человек, решил провести ввод некоего словаря при помощи группы волонтёров, а в это время другой человек решил провести ввод другого словаря (привлекая для этого другую группу волонтёров). Тогда всё, что вводит первая группа должно идти через первого человека, а всё что вводит вторая группа должно идти через второго человека.
То же самое относится к профессиональному сленгу. Профессий много, и могут быть коллизии, если всё пытается отмодерировать один человек, который не в теме некоторого сленга.
Re: Движок для словаря
Где ж был ты, Лис, на этапе обсуждения ТЗ? Ведь оно небось уж год как висит?
Объясняю: монархия в языке нужна для упрощения администрирования. Для того, чтобы человек попытался начать работать и делать вклад в общее дело, не нужно ровно ничего, кроме регистрации этого человека. Но нужно понимать, что язык - это колонка в нашем гугл-словаре
https://docs.google.com/spreadsheets/d/ ... sp=sharing
Т.е. может быть "русский язык от Буддена", "русский язык от Лиса" и "русский язык от Сандро".
Кроме того, если человек в общем языке что-то наредактировал, то он может оставить свои предложения в режиме черновика, и этот язык для него будет выглядеть так, как он хочет. Единственное, что он не увидит изменений, сделанных в основной копии языка.
Таким образом, наш движок одновременно реализует разные философские идеи:
Объясняю: монархия в языке нужна для упрощения администрирования. Для того, чтобы человек попытался начать работать и делать вклад в общее дело, не нужно ровно ничего, кроме регистрации этого человека. Но нужно понимать, что язык - это колонка в нашем гугл-словаре
https://docs.google.com/spreadsheets/d/ ... sp=sharing
Т.е. может быть "русский язык от Буддена", "русский язык от Лиса" и "русский язык от Сандро".
Кроме того, если человек в общем языке что-то наредактировал, то он может оставить свои предложения в режиме черновика, и этот язык для него будет выглядеть так, как он хочет. Единственное, что он не увидит изменений, сделанных в основной копии языка.
Таким образом, наш движок одновременно реализует разные философские идеи:
- Анархизм - каждый свободен и независим
- Множественность параллельных миров, которые одновременно являются субъективно и объективно существующими (т.к. чел при просмотре языка видит свои предложения поверх общих смыслов)
- Монархия - каждый сам монарх в своём языке
- Верховный Бог-творец (ваш покорный слуга), который может творить языки. На самом деле не будет беды, если каждый пользователь сможет творить языки, просто для этого нужно будет ещё эн раз ломать глаза в поезде МЦК утром или вечером. Так что Your PRs are welcome as usual.
Re: Движок для словаря
Но на самом деле я боюсь, что эта тема не сработает, потому что множественность миров будет сложна для осознания. Я-то уже много лет работаю с распределёнными системами контроля версий и, можно сказать, для меня это как воздух. А для человека с улицы это может стать проблемой. Поэтому мне было бы весьма полезно получить обратную связь. К сожалению, для этого нужно доделать блин этот движок и выложить его на сайт... А это будет, видимо, не раньше конца года нынешними темпами. Будет печально, если по итогам окажется, что идея была ошибочной.
Re: Движок для словаря
А какая разница? Хобби проект ведь на то и хобби.БудДен писал(а):тема не сработает ... идея была ошибочной
Re: Движок для словаря
У старого "движка" было три пользователя. Нужно, чтобы они не потерялись.
Re: Движок для словаря
Как переводить движок? Прошу ответа у МихалНика, который уже имеет свои наработки.
Мне нужно перевести слова и фразы в шаблонах html, файлах golang и файлах t.sql,
а также в дампе базы данных.
Я пока мыслю с помощью pygments превратить все эти файлы в json, а потом делать замены фраз и слов в json.
Что ещё можно взять в качестве инструментов?
Мне нужно перевести слова и фразы в шаблонах html, файлах golang и файлах t.sql,
а также в дампе базы данных.
Я пока мыслю с помощью pygments превратить все эти файлы в json, а потом делать замены фраз и слов в json.
Что ещё можно взять в качестве инструментов?
Re: Движок для словаря
Для начала определиться в каком виде какие части будут работать впоследствии.
Затем выполнить выборку переводимых единиц с запоминанием мест замен.
Потом перевести.
MihalNik за создание и развитие собственных средств разбора и перевода.Что ещё можно взять в качестве инструментов?
Последний раз редактировалось MihalNik 04.07.19 18:19, всего редактировалось 1 раз.
Re: Движок для словаря
И далеко ли МихалНик в этом продвинулся? Я вполне "за" использовать самодельные средства взамен иностранных, но делать их только ради NIH синдрома я не готов, также не готов ждать их и финансировать.
Re: Движок для словаря
В отличие от Лиса, я предлагаю выходить из заколдованного круга по широкой спирали, опираясь на уже сделанное.
А не рисовать новую спираль почти из точки.
Нет большой опасности использовать иностранное для машинного перевода исходников. Поскольку исходники потом
всё равно будут проконтролированы.
А не рисовать новую спираль почти из точки.
Нет большой опасности использовать иностранное для машинного перевода исходников. Поскольку исходники потом
всё равно будут проконтролированы.
Re: Движок для словаря
Так дело не в опасности, а в производимой функциональности. Сделает ли перевод в json что-то больше, чем лексер или хотя бы столько же? Гарантировано ли отсутствие потерь и точное обратное преобразование? Квалифицируются ли при этом идентификаторы? Если этот json потом опять придется разбирать с учетом синтаксиса исходного языка, то смысл его получения под хорошим вопросом. Т.е. надо смотреть, облегчится ли труд.БудДен писал(а): ↑06.07.19 10:41В отличие от Лиса, я предлагаю выходить из заколдованного круга по широкой спирали, опираясь на уже сделанное.
А не рисовать новую спираль почти из точки.
Нет большой опасности использовать иностранное для машинного перевода исходников. Поскольку исходники потом
всё равно будут проконтролированы.
Re: Движок для словаря
Думаю, что пигменты могут примерно то же, что и лексер, или чуть больше. Преобразование обратимо, при этом формат представления един для всех языков - а это приятно.
Re: Движок для словаря
И совсем другое дело, когда удаётся работать только урывками по дороге на работу, обратно и иногда дома.
Падение интенсивности в связи с переходом в хоббийный режим можно оценить как примерно двадцатикратное.
Re: Движок для словаря
В движок вкралась ошибка проектирования, а точнее, просто процесс проектирования был недоделан. Я радостно установил, что у каждого языка будет владелец, который будет принимать предложения по поводу смыслов слов от других участников, как в гите.
Ошибка состояла в том, что типичное изменение в словарь состоит в том, что добавляется один или два смысла в разных языках и хотя бы одна связь между ними, говорящая о том, что эти смыслы друг друга переводят. Т.е. нужно утверждать не индивидуальные изменения, а группы изменений. Непонятно и то, кто будет за это отвечать. Если мы принимаем понятие "владелец языка", то нужно, чтобы сначала два владельца языка приняли два предложения о двух разных смыслах, а потом кто-то третий принял предложение о переводе. В этот момент может оказаться, что смыслы на самом деле не точно переводят друг друга, и оказывается, что работа владельцев языков была напрасной.
В итоге работа 2-3 последних месяцев вряд ли может быть сохранена. Часов-то в этой работе немного, но они были выкроены с трудом...
Думаю, что теперь делать и пока не придумал. Склоняюсь сделать как в Википедии: можно всё, но история сохраняется и модератор (пока он будет один на всю вселенную) может отменять любые изменения. Но есть и та ситуация, что я кое-как трудоустроен, и свой проект-питомец на голанге мне не нужен.
Соответственно, вторая опция - это признать поражение и заморозить проект. А словарь можно вести и в гугл докс по старинке.
Ошибка состояла в том, что типичное изменение в словарь состоит в том, что добавляется один или два смысла в разных языках и хотя бы одна связь между ними, говорящая о том, что эти смыслы друг друга переводят. Т.е. нужно утверждать не индивидуальные изменения, а группы изменений. Непонятно и то, кто будет за это отвечать. Если мы принимаем понятие "владелец языка", то нужно, чтобы сначала два владельца языка приняли два предложения о двух разных смыслах, а потом кто-то третий принял предложение о переводе. В этот момент может оказаться, что смыслы на самом деле не точно переводят друг друга, и оказывается, что работа владельцев языков была напрасной.
В итоге работа 2-3 последних месяцев вряд ли может быть сохранена. Часов-то в этой работе немного, но они были выкроены с трудом...
Думаю, что теперь делать и пока не придумал. Склоняюсь сделать как в Википедии: можно всё, но история сохраняется и модератор (пока он будет один на всю вселенную) может отменять любые изменения. Но есть и та ситуация, что я кое-как трудоустроен, и свой проект-питомец на голанге мне не нужен.
Соответственно, вторая опция - это признать поражение и заморозить проект. А словарь можно вести и в гугл докс по старинке.
Re: Движок для словаря
Я думаю можно признать поражение.
1. Система слишком сложная для пользователя. Я вон git-ом стараюсь не пользоваться, так как он слишком много времени отвлекает, а пользы 0
2. Стимуляция как википедии нету. Там вузам налоговые вычеты. Начальство напрягают преподавателей те выбирают модератора который пишет и корректирует википедию, а он если нужно спрашивает других преподавателей.
3. В Гите патчи автоматически принимаются если они проходят тесты. А тут тестов нет.
4. И собственно то, что вы написали.
Лучше сделать простую форму с 5 полями
1. Предметная область(язык, бибилотека в которой встречается)
2. Слово.
3. Указания смысла.
4. Пример употребления.
5. Перевод.
А вот остальное это уже потом, когда потребности появятся.
И первое поле должно быть с автоподстановкой.
1. Система слишком сложная для пользователя. Я вон git-ом стараюсь не пользоваться, так как он слишком много времени отвлекает, а пользы 0
2. Стимуляция как википедии нету. Там вузам налоговые вычеты. Начальство напрягают преподавателей те выбирают модератора который пишет и корректирует википедию, а он если нужно спрашивает других преподавателей.
3. В Гите патчи автоматически принимаются если они проходят тесты. А тут тестов нет.
4. И собственно то, что вы написали.
Лучше сделать простую форму с 5 полями
1. Предметная область(язык, бибилотека в которой встречается)
2. Слово.
3. Указания смысла.
4. Пример употребления.
5. Перевод.
А вот остальное это уже потом, когда потребности появятся.
И первое поле должно быть с автоподстановкой.
Re: Движок для словаря
Помодерировать я и сам могу - интенсивность процесса низкая. В остальном "просто форма" слишком проста для реальной жизни. Вы же видели табличку https://docs.google.com/spreadsheets/d/ ... sp=sharing
?
?
- Лис [Вежливый]
- Сообщения: 563
- Зарегистрирован: 08.10.18 13:32
Re: Движок для словаря
проблема: просто процесс проектирования был недоделан
решение: проектирование нужно с̶д̶е̶л̶а̶т̶ь̶ выполнить
решение: проектирование нужно с̶д̶е̶л̶а̶т̶ь̶ выполнить
Re: Движок для словаря
Спасибо, кэп.
- Лис [Вежливый]
- Сообщения: 563
- Зарегистрирован: 08.10.18 13:32
Re: Движок для словаря
Что если отказаться от понятия "владелец языка" и вместо него ввести понятие "владелец комплекта соответствий". Соответственно дальше с этими комплектами всё как в git-е. Захотел внести изменения, форкнул, внёс, предложил PR исходному владельцу.
Re: Движок для словаря
Основное условие для данного проекта - это минимальная сложность реализации, даже в ущерб лёгкости эксплуатации. Чем плох вариант википедии? Можно вносить любые изменения, но модератор их видит и может отменить.
- Лис [Вежливый]
- Сообщения: 563
- Зарегистрирован: 08.10.18 13:32
Re: Движок для словаря
Piki - A Peer-to-Peer based Wiki Engine
Re: Движок для словаря
Нет, я не говорю про Wiki машину. Я говорю лишь о принципе управления изменениями: всем можно всё, но модератор может всё отменить.
Народ, кто ещё работает с версиями словаря в гугл шитс. Предлагаю свести версии воедино и пока продолжить работу в гугл шитс.
Народ, кто ещё работает с версиями словаря в гугл шитс. Предлагаю свести версии воедино и пока продолжить работу в гугл шитс.
Re: Движок для словаря
Эх, опять трения на работе - замораживаем оберон и размораживаем движок словаря :) Чем-то похоже на бои за избушку лесника, где в роли избушки лесника выступаю я сам. Теперь концепция такова, что любой пользователь может делать всё, что угодно, но модератор может откатить историю.