Архив метки: Open source

Этика передачи знаний

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

В тему будет вспомнить и обилие курсов тематики «войти в IT», большинство которых не даёт никакой гарантии.

Подобные курсы пиарятся по лучшим методичкам, из-за чего сложно объяснить неподготовленному человеку в чём подвох. А иногда надо. Поэтому я попробую зайти с другой стороны.

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

Читать далее

Открыл исходники Morphologic

В апреле я открыл доступ к своему хобби-проекту Morphologic.

Как я и опасался, штука оказалась для очень частных случаев. Настолько, что даже я её особо за эти 3 месяца не использовал.

В то же время я всё ещё думаю, что сама по себе она полезна, а значит проект останется доступен для всех.

В рамках наведения порядка я решил открыть его исходники под лицензией BSD.

Ссылка на репозиторий: https://github.com/Tiendil/morphologic

Все заметки из Google Docs переехали в issues.

В телеграм есть группа для обсуждения проекта: https://t.me/morphologic_soft

Если кто-нибудь хочет вписаться в разработку Morphologic, я с радостью эту инициативу поддержу.

На текущий момент планы по проекту у меня следующие:

  • Ждать, пока он мне реально и сильно понадобится, чтобы получить интересный пример использования.
  • Если будет настроение, опубликую статью на Хабре про морфологический анализ со ссылкой на Morphologic в конце. Лишние звёзды на гитхабе и карме ещё никому не мешали :-D

Хакерская этика

…и дух информационализма. 

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

Собственно, книга больше всего интересна как раз изложением взгляда на хакерскую культуру из конца XX века. Оригинал «Хакерской этики» издан в 2001 году, как раз после падения доткомов и перед бумом интернета. 

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

Особенно с учётом идеологического кризиса царящего сейчас в культуре open source везде. Когда агрессивные популисты и дилетанты (успешно!) захватывают власть во многих хакерских проектах. 

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

Читать далее

Модная типизация в Python

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

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

В этот раз я:

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

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

Большая часть поста не про mypy, а про философию проверки типов и будущее Python. Поэтому должно быть интересно, даже если сам mypy вас не интересует.

Читать далее

Генерация подземелий — от простого к сложному

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

В итоге у нас получится генератор подземелий со следующими свойствами:

  • Комнаты будут соединены коридорами.
  • Топологически подземелье будет иметь форму дерева. Добавить циклы будет элементарно, но уже в качестве домашнего задания.
  • Будет настраиваться количество комнат, их размер, «уровень ветвления».
  • Подземелье будет располагаться на клеточной сетке (состоять из квадратных клеток).

Весь код можно найти на github

Кода в посте не будет — все используемые подходы легко описываются словами. 

Для каждого этапа разработки в репозитории будет создан отдельный тэг, содержащий код на момент завершения этапа.

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

Читать далее