Эссе о разработке игр, мышлении и книгах

Эксперименты с Тарантогой закончены

Чтоб я ещё когда взялся делать blackboard мультиагентную систему с темпоральными свойствами :-D

В этом посте будет краткое подведение итогов, чтобы закрыть вопрос.

Заметок по ходу эксериментов я не делал, поэтому какие-то интересные детали рассказать сложно — в голове всё смешалось и затёрлось уже.

Далее

Пара слов о GitHub Сopilot

DALL-E: "Vrubel style painting of pair programming Robot + Human. An robot is writing code, a human is reviewing code".

DALL-E: "Vrubel style painting of pair programming Robot + Human. An robot is writing code, a human is reviewing code".

Последние несколько недель использовал GitHub Сopilot, благо для Emacs есть плагин. Поделюсь впечатлениями.

Для справки, я уже лет 15 осознанно не использовал умное автодополнение. Всё моё автодополнение — это DynamicAbbreviations, по сути — дополнение написанного слова на основе словаря из открытых исходников.

Причина отказа такая: используя «умное» автодополнение (например, подсказку аттрибутов/методов объекта) перестаёшь понимать проект. Начинаешь на автомате брать предлагаемые варианты методов/переменных, не разбираясь что они конкретно делают и есть ли альтернатинвые варианты.

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

С Copilot я, похоже, вернуcь к умному автодополнению, в его более правильном варианте.

Итак, давайте посмотрим чего умеет и не умеет Copilot.

Далее

Я и «умный» GUI в IDE

[Машина Голдберга](https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%B0_%D0%93%D0%BE%D0%BB%D0%B4%D0%B1%D0%B5%D1%80%D0%B3%D0%B0)

Машина Голдберга

Updated: Этот пост написан до появления Copilot. Моё мнение о Copilot в отдельном посте.

В комментарии к модной типизации в Python мне обоснованно указали, что я не рассмотрел использование типов для помощи IDE. В частности, для автодополнения и подсказок.

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

Собственно году в 2010 я отказался от «умных» версий того же автодополнения и не жалею. В то же время, мои периодические порывы сменить Emacs на крутую современную IDE во многом вызваны как раз желанием проверить, не сделали ли наконец нормальный программистский CAD с действительно крутыми помощниками. Пока не сделали, так что сижу на Emacs :-)

Я ни разу не хейтер IDE. Просто не использую те фичи, для которых IDE ставят — не вижу от них существенного профита для себя на текущем уровне развития софта.

На сколько я знаю, моя позиция не распространена, поэтому расскажу про её логику подробнее.

Далее

О блоге

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

Он состоит из трёх частей:

  • Исторической справки — как я маялся с блогом, как пришёл туда, куда пришёл.
  • Ответа на вопрос почему я веду блог.
  • Размышлений о текущем состоянии блога.

Первая часть вряд ли вам будет интересна — это скорее подводка для меня к следующим  главам.

Далее

Мой экзокортекс

Хорошая иллюстрация экзокортекса из незвестного мне источника. Если знаете откуда — напишите.

Хорошая иллюстрация экзокортекса из незвестного мне источника. Если знаете откуда — напишите.

Экзокортекс — по аналогии с экзоскелетом — устройства для расширения возможностей мозга. Впервые с этой концепцией я столкнулся в посте Анатолия Левенчука. История технологий экзокортекса, в широком смысле, тянется уже тысячи лет — первым усилителем мозга по праву можно считать письменность (а может и наскальную живопись). Сейчас к письменности добавились мобильники и облачные сервисы.

Сколько себя помню, постоянно что-то в нём менял, а тут глядь — последние пару лет стабильность. И хотя текущий набор инструментов мне не нравится, зафиксирую как baseline для будущих изменений.

Далее