Из-за непрекращающегося бардака в мире решил отвлечься от стресса и в итоге три недели учился кодить на Julia — портировал с Python один из своих экспериментальных проектов.
Я уже писал про впечатления от документации Julia — «теорию», а сейчас, так сказать, будет «практика».
Наткнулся в своих завалах на оригинальный концепт-документ Сказки от 2012 года. Привожу с минимальными правками.
Как видите, не всё удалось реализовать, но концепция более-менее соблюдается.
Также у меня какое-то время было хобби — писать подобные документы на свои идеи. Если вам интересно, напишите в комментариях. Если наберётся достаточно заинтересованных людей, буду постепенно выкладывать документы в блог.
В апреле я открыл доступ к своему хобби-проекту Morphologic.
Как я и опасался, штука оказалась для очень частных случаев. Настолько, что даже я её особо за эти 3 месяца не использовал.
В то же время я всё ещё думаю, что сама по себе она полезна, а значит проект останется доступен для всех.
В рамках наведения порядка я решил открыть его исходники под лицензией BSD.
Ссылка на репозиторий: https://github.com/Tiendil/morphologic
Все заметки из Google Docs переехали в issues.
В телеграм есть группа для обсуждения проекта: https://t.me/morphologic_soft
Если кто-нибудь хочет вписаться в разработку Morphologic, я с радостью эту инициативу поддержу.
На текущий момент планы по проекту у меня следующие:
Раз в несколько лет я нахожу время, чтобы покопаться в наработках сообщества по «продвинутым» проверкам типов. Благо у меня под рукой есть взрослый, большой и нетривиальный проект, на котором можно безбоязненно ставить эксперименты.
Не могу сказать что я разделяю оптимизм по поводу продвинутой типизации в Python. Наоборот, считаю, что это как попытка пришить змее ноги — забавно, но вряд ли удобно. Но раз куча людей тратит на это время, надо быть в курсе.
В этот раз я:
Рассказывать буду тезисно, без глубоких обоснований, так как делать нормального качества обоснования для таких холиварных вопросов слишком долго, а я уже дней 5 на копание в этом потратил.
Большая часть поста не про mypy, а про философию проверки типов и будущее Python. Поэтому должно быть интересно, даже если сам mypy вас не интересует.
Обновлено: исходники проекта открыты — https://github.com/Tiendil/morphologic
В марте я писал в фейсбуке про софт для «поддержки принятия решений». О том, что не могу найти ничего подходящего.
В итоге я решил, что если гора не идёт к Магомету, то Магомет пишет необходимый софт сам.
На текущий момент у меня есть рабочий прототип, который очень надо проверить на людях.
Софт может пригодиться, если вам необходимо найти решение / выбрать архитектуру / определить лучшее сочетание параметров в сложной и / или слабо формализированной области.Например, вы знаете, что решение может обладать свойствами A, B, C, D, … Z, но не знаете какое сочетание свойств будет оптимальным. При том, что A и D несовместимы, а сочетание свойств B+X+Y выглядит лучше, чем P+Q.
В этом случае вы можете ввести список свойств, ограничения, и поэкспериментировать, меняя правила подбора и оценки решений.
По сути, софт помогает делать полный перебор всех вариантов решений с ограничениями.
На странице софта есть более подробноее описание и инструкция.
Посмотрите пожалуйста. В основном на предмет полезности для вас лично и идей в какую сторону двигать разработку.
Прототип:: https://tiendil.github.io/morphologic/
Группа в телеграм для обсуждения: https://t.me/morphologic_soft