Почему использование классов ("данные" + "методы") вдруг стало проблемой? И каким образом создание лишних файлов (типа "репозиторий" и т.п.) делает "код более гибким и удобным для тестирования."? В будущем (при поддержке, тестировании и масштабировании) для любого простого действия нужно будет открыть не один файл (причем понятно какой), а два (а при таком подходе их будет неопределенное число, да еще нужно последовательно найти эти файлы... они ведь не являются типовыми для Django). Может нужно просто правильно научится работать с моделью классов?
Все эти "репозитории" и иже с ними и есть самые настоящие "костыли". Если для решения конкретной задачи Django не подходит или подходит процентов на 15-20, то нужно использовать другие решения. А сила использования любого фреймворка в том и заключается, чтобы использовать его подходы и типовые решения по максимуму для эффективности разработки (и кстати эффективности системы в целом, т.к. сам Django оптимизируется именно под свои решения).
Это конечно не исключает необходимости думать. А еще заниматься проектированием (и классов, и методов, и слоев обработки и представления данных) перед собственно кодированием. Наследование кстати тоже пока никто не отменял. Это к вопросу о "толщине" модели и "монолитности блоков кода"
И к вопросу "абстрагироваться от специфики хранения данных". От чего Вы предлагаете "абстрагироваться"? От моделей Django? Лучше тогда сразу выбрать другой фреймворк.
Владимир, большое спасибо за Вашу публикацию и подробные ответы.
Из последнего (про методы и этапы их применения) стал более понятен Ваш подход не в части обработки информации, а в части применения результатов Вашей деятельности. Если получится последовательно реализовать эти дополнения к работе с текстами Википедии это однозначно улучшит ее содержание. При этом сохранив свободу размещения в отдельных языковых сегментах различных точек зрения (в том числе, как Вы указали, и возможность одновременного размещения альтернативных вариантов информации/точек зрения подтверждая возможность их существования у других общностей людей).
Еще раз спасибо за Ваши труды и успехов в Ваших исследованиях.
Владимир, спасибо за ответ — он понятен и в этом я с Вами согласен.
Но главный вопрос в моем комментарии был другой.
Конкретизирую:
Каким способом (методом, алгоритмом, «вручную» или еще как-то...) Вы предполагаете разделять
… основную часть информации, которая не вызывает серьезных споров ...
от
… тем, в которых люди долго могут спорить и приводить свои «правильные» аргументы ...
Или иначе — Ваши предположения: кто и как будет этим заниматься (если Вы считаете, что это не вопрос Ваших исследований)?
Очевидно, что любой вариант с участием человека делает этот процесс бессмысленным (из-за объемов уже имеющейся информации, да и потому, что авторы текстов и так сейчас могут это делать).
А любая автоматизация приводит к следующему уровню проблемы «объективности» и «достоверности» («качества» если хотите :-) ) теперь уже алгоритма, который будет разделять эту информацию на эти 2 казалось бы простых класса.
В этом случае либо кто-то (например, «владельцы» ресурса Википедия) присвоит себе право определять, что есть «факты», а что есть «мнения» (понятно, что речь не о конкретной информации, а об методике определения), и соответственно реализует это как алгоритм обновления данных в различных языковых разделах Википедии, например, в рамках указанного Вами проекта GlobalFactSync (GFS), чтобы
синхронизировать фактические данные во всех языковых разделах Википедии и Викиданных.
Либо нужна независимая от мнений людей технология выделения понятий и их деления на эти 2 класса. Технологии конечно развиваются, и объемы Википедии более чем достаточны, например, для обучения любых самых навороченных нейросетей… вот только для обучения кто-то должен разметить наборы данных, то есть определять, что есть «факты», а что есть «мнения»… Кажется я это уже только что писал — то есть реально вариант все же один.
Ну и почему бы и нет? Прекрасно!!! Ведь скорее всего формулировать алгоритм разделения будут вполне разумные люди и 99,9...% ошибок будут исправлены правильно. При этом большинство пользователей вообще не будут знать об этих исправлениях, а просто будут получать эту информацию.
Но есть одна опасность. Никто не обратит внимание на объемы исправленной таким методом информации, а вот одна единственная исправленная этим алгоритмом не в ту сторону «ошибка», являющаяся критической для подавляющего большинства пользователей определенного языкового раздела Википедии может быть разнесена и раздута современными информационными технологиями и СМИ так, что поставит вопрос о «достоверности» всей информации, содержащейся в Википедии.
А с учетом объемов информации этих ошибок будет много. И примеров можно привести массу. Та же география. Вроде все цифры объективные. Но стоит вспомнить сколько непризнанных государств и спорных территорий, как огромное количество цифр становятся спорными!!!
Может лучше оставить все как есть?
PS
В среде военных авиационных техников есть такая поговорка: «Технарь не трогай самолет и он тебя не подведет».
Может быть Википедия так популярна, именно потому, что существующая сегодня методика работы с текстами разумно достаточна и всех устраивает. А попытки автоматического ее «улучшения» могут сделать только хуже?
А как Вы решаете вопрос «достоверности» (а так же «актуальности», и тем более «объективности») если в разных «достаточно достоверных» источниках просто содержится разная и иногда прямо противоречащая друг другу информация?
И речь даже не о фэйк ньюс (хотя этой информации часто значительно больше, чем «объективной» информации, причем очень часто именно в «достаточно достоверных» источниках), а о ситуации когда для разных общностей людей (страны, народы и народности, политические партии и движения, различные профессиональные сообщества, «научные» и «антинаучные» группы «специалистов» и т.д. и т.п.) существуют прямо противоположные взгляды (и соответственно «объективная» с их точки зрения информация) по одному и тому же вопросу?
Когда дело не в ошибочном переводе на другой язык, а в том, что для большинства носителей другого языка сами факты «объективно» другие? Ну так устроен наш мир, что очень многое в нем — это конфликт интересов и конкуренция между разными людьми и общностями людей. А с развитием инструментов информационных технологий это превратилось в реальные информационные войны.
Извините за множественные кавычки, но в текущей ситуации сами понятия «актуальности», «достоверности» и «объективности» давно потеряли свой изначальный смысл.
И если бы речь шла только о вещах типа «2 х 2 = 4» или документально подтвержденных датах, параметрах объектов и т.п.
Но к сожалению огромная часть информации в Википедии это именно личное мнение автора текста (его субъективная оценка, разделяемое автором общепринятое мнение или даже заблуждение и т.д. и т.п.), точнее автора текста того источника информации, содержание которого (или выдержка из которого) перенесено в статью Википедии.
А в этом случае огромные затраченные Вами усилия просто приведут не к «достоверному» результату, а к «принятому большинством» (или еще хуже к навязанному манитуляторами, владеющими большинством «достоверных источников»).
Но в науке как известно «голосованием ничего решить нельзя».
Если тогда вообще смысл в Вашей деятельности?
Что Вы думаете по этому поводу?
Или все о чем я написал не входит в область деятельности разрабатываемых Вами алгоритмов? Но тогда как отличать одно от другого?
К "Fat Models" и "Альтернативы".
Почему использование классов ("данные" + "методы") вдруг стало проблемой?
И каким образом создание лишних файлов (типа "репозиторий" и т.п.) делает "код более гибким и удобным для тестирования."?
В будущем (при поддержке, тестировании и масштабировании) для любого простого действия нужно будет открыть не один файл (причем понятно какой),
а два (а при таком подходе их будет неопределенное число, да еще нужно последовательно найти эти файлы... они ведь не являются типовыми для Django).
Может нужно просто правильно научится работать с моделью классов?
Все эти "репозитории" и иже с ними и есть самые настоящие "костыли".
Если для решения конкретной задачи Django не подходит или подходит процентов на 15-20, то нужно использовать другие решения.
А сила использования любого фреймворка в том и заключается, чтобы использовать
его подходы и типовые решения по максимуму для эффективности разработки
(и кстати эффективности системы в целом, т.к. сам Django оптимизируется именно под свои решения).
Это конечно не исключает необходимости думать.
А еще заниматься проектированием (и классов, и методов, и слоев обработки и представления данных) перед собственно кодированием.
Наследование кстати тоже пока никто не отменял.
Это к вопросу о "толщине" модели и "монолитности блоков кода"
И к вопросу "абстрагироваться от специфики хранения данных".
От чего Вы предлагаете "абстрагироваться"? От моделей Django?
Лучше тогда сразу выбрать другой фреймворк.
Из последнего (про методы и этапы их применения) стал более понятен Ваш подход не в части обработки информации, а в части применения результатов Вашей деятельности. Если получится последовательно реализовать эти дополнения к работе с текстами Википедии это однозначно улучшит ее содержание. При этом сохранив свободу размещения в отдельных языковых сегментах различных точек зрения (в том числе, как Вы указали, и возможность одновременного размещения альтернативных вариантов информации/точек зрения подтверждая возможность их существования у других общностей людей).
Еще раз спасибо за Ваши труды и успехов в Ваших исследованиях.
Но главный вопрос в моем комментарии был другой.
Конкретизирую:
Каким способом (методом, алгоритмом, «вручную» или еще как-то...) Вы предполагаете разделять
от
Или иначе — Ваши предположения: кто и как будет этим заниматься (если Вы считаете, что это не вопрос Ваших исследований)?
Очевидно, что любой вариант с участием человека делает этот процесс бессмысленным (из-за объемов уже имеющейся информации, да и потому, что авторы текстов и так сейчас могут это делать).
А любая автоматизация приводит к следующему уровню проблемы «объективности» и «достоверности» («качества» если хотите :-) ) теперь уже алгоритма, который будет разделять эту информацию на эти 2 казалось бы простых класса.
В этом случае либо кто-то (например, «владельцы» ресурса Википедия) присвоит себе право определять, что есть «факты», а что есть «мнения» (понятно, что речь не о конкретной информации, а об методике определения), и соответственно реализует это как алгоритм обновления данных в различных языковых разделах Википедии, например, в рамках указанного Вами проекта GlobalFactSync (GFS), чтобы
Либо нужна независимая от мнений людей технология выделения понятий и их деления на эти 2 класса. Технологии конечно развиваются, и объемы Википедии более чем достаточны, например, для обучения любых самых навороченных нейросетей… вот только для обучения кто-то должен разметить наборы данных, то есть определять, что есть «факты», а что есть «мнения»… Кажется я это уже только что писал — то есть реально вариант все же один.
Ну и почему бы и нет? Прекрасно!!! Ведь скорее всего формулировать алгоритм разделения будут вполне разумные люди и 99,9...% ошибок будут исправлены правильно. При этом большинство пользователей вообще не будут знать об этих исправлениях, а просто будут получать эту информацию.
Но есть одна опасность. Никто не обратит внимание на объемы исправленной таким методом информации, а вот одна единственная исправленная этим алгоритмом не в ту сторону «ошибка», являющаяся критической для подавляющего большинства пользователей определенного языкового раздела Википедии может быть разнесена и раздута современными информационными технологиями и СМИ так, что поставит вопрос о «достоверности» всей информации, содержащейся в Википедии.
А с учетом объемов информации этих ошибок будет много. И примеров можно привести массу. Та же география. Вроде все цифры объективные. Но стоит вспомнить сколько непризнанных государств и спорных территорий, как огромное количество цифр становятся спорными!!!
Может лучше оставить все как есть?
PS
В среде военных авиационных техников есть такая поговорка: «Технарь не трогай самолет и он тебя не подведет».
Может быть Википедия так популярна, именно потому, что существующая сегодня методика работы с текстами разумно достаточна и всех устраивает. А попытки автоматического ее «улучшения» могут сделать только хуже?
А как Вы решаете вопрос «достоверности» (а так же «актуальности», и тем более «объективности») если в разных «достаточно достоверных» источниках просто содержится разная и иногда прямо противоречащая друг другу информация?
И речь даже не о фэйк ньюс (хотя этой информации часто значительно больше, чем «объективной» информации, причем очень часто именно в «достаточно достоверных» источниках), а о ситуации когда для разных общностей людей (страны, народы и народности, политические партии и движения, различные профессиональные сообщества, «научные» и «антинаучные» группы «специалистов» и т.д. и т.п.) существуют прямо противоположные взгляды (и соответственно «объективная» с их точки зрения информация) по одному и тому же вопросу?
Когда дело не в ошибочном переводе на другой язык, а в том, что для большинства носителей другого языка сами факты «объективно» другие? Ну так устроен наш мир, что очень многое в нем — это конфликт интересов и конкуренция между разными людьми и общностями людей. А с развитием инструментов информационных технологий это превратилось в реальные информационные войны.
Извините за множественные кавычки, но в текущей ситуации сами понятия «актуальности», «достоверности» и «объективности» давно потеряли свой изначальный смысл.
И если бы речь шла только о вещах типа «2 х 2 = 4» или документально подтвержденных датах, параметрах объектов и т.п.
Но к сожалению огромная часть информации в Википедии это именно личное мнение автора текста (его субъективная оценка, разделяемое автором общепринятое мнение или даже заблуждение и т.д. и т.п.), точнее автора текста того источника информации, содержание которого (или выдержка из которого) перенесено в статью Википедии.
А в этом случае огромные затраченные Вами усилия просто приведут не к «достоверному» результату, а к «принятому большинством» (или еще хуже к навязанному манитуляторами, владеющими большинством «достоверных источников»).
Но в науке как известно «голосованием ничего решить нельзя».
Если тогда вообще смысл в Вашей деятельности?
Что Вы думаете по этому поводу?
Или все о чем я написал не входит в область деятельности разрабатываемых Вами алгоритмов? Но тогда как отличать одно от другого?