Wiki Category: development

Работать надо не головой, а компьютером

функционал обеспечивается не языком или фреймворком, а бизнес-логикой самого продукта
Работать надо не головой, а компьютером
джунов не хотят брать. Не потому что знают мало. А потому что синдром Даннинга-Крюгера одного тормозит всю работу всем

Читать дальше

Наконец то: Гвидо ван Россум намерен достигнуть двукратного увеличения производительности в CPython 3.11

Наработки проекта публикуются в отдельном репозитории faster-cpython. Один из участников проекта, ранее занимавшийся разработкой JIT-компилятора HotPy для CPython, опубликовал план, в соответствии с которым считает реалистичным поднять производительность в пять раз и добиться этого результата в выпуске Python 3.13.

Читать дальше

Про разработку програм и продуктов

Отлично сказано!

Я тут может очевидное кому-то скажу, а кому-то может неочевидное.

Часто бывают программеры, которые типа “на проекте был бардак – ни четких ТЗ, ни куда гребем непонятно”. Это от непонимания, что никто никогда не знает зачем ПО вообще делают, и куда дорога вывезет. За редкими исключениями.

Давайте от противного. Вот есть, условно, MS Word. Туда никаких фичей, кроме текущих – и не надо. Да и тех что есть – можно выкосить половину. Можно ли сделать точно также? Да, думаю где-то за 100M баксов – вполне. Что копейки по сравнению с продажами. Можно ли достать 100 лямов, переписать Word – и зарабатывать как MS? Неа. Потому что срать будет всем на ваш новый Word. Чтобы стать продуктом, Office-у пришлось прожить с людьми десятилетия, делать фичи типа “радужный 3D-текст Comic Sans-ом с тенью” – потому что тогда это было модно. А потом – поддерживать эти фичи. Учить поколения людей форматировать пробелами. И так, не мытьем, но катаньем, они захватили рынок.

Сложность и сила ПО – не в текущем его наборе фич, а в возможности его постоянно менять. А талант программиста – не в том чтобы по спеке сделать с тестами. Он про то, чтобы предсказать куда дует ветер, и про вычленить те кусочки, которые скорее всего пригодятся – когда надо будет разобрать и собрать всё заново. Или понять что хер угадаешь куда вывезет, и просто писать код быстро, просто и без ошибок. А как поменялось – стирать и переписывать.

Сам код – вообще имеет отрицательную ценность – чем его больше, тем хуже, если ценность продукта постоянна.

Технический долг на проекте

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

Читать дальше

как мы решали проблему постоянных исправлений

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

Читать дальше

Скрытые расходы при переходе на микросервисы

Перед стартом работы над дроблением монолита на микросервисы рекомендую пройтись по чеклисту, чтобы ничего не упустить:

Мастер-данные
Написание кода по-новому
Проектирование IT-продукта заново
Создание новой инфраструктуры
Измерение и проверка SLA
Вклад в fault tolerance на всех уровнях
Реорганизация команд
Работы по обратной совместимости
Интеграция служб поддержки
Догоняющий поток фич

Читать дальше

Waterfall которого никогда не было

В 1970 году внесение изменений в код занимало 1 день: кодирование алгоритма, нанесение на перфокарту, проверка. А машинное время дорогое, там еще другой математик-алгоритмист хочет провериться, поэтому если ты ошибся -жди один день пока тебе дадут машинное время.

Таком образом весь Agile это про две цели:
– Идеальный мир для Инженера
– Сокращение затрат на поддержку ИТ-продукта.

Читать дальше

Никто не умеет управлять программистами — и все придумывают костыли, вместо решений

Есть компании, где процесс разработки реально работает отлично. Я скажу вам почему — они выиграли в лотерею. У них оказалось намного больше людей, которые хотят работать — с такими, как не управляй, все будет идти хорошо. Даже манагерскую мишуру с бордами они используют для дела, а их перформанс и по джировым, и по интуитивным метрикам ясно виден. И когда их менеджеры-не-разрабы приходят мешать им, у них за спиной стоит шикарный продукт, который даёт им право посылать эти говорящие головы к черту.

Но такая команда — фантастическая удача. А обычно происходит вот что. На десять человек у тебя два, которые хотят работать. Один из них тимлид, а второй увольняется.

Читать дальше

Что делать, если в вашей команде появился «эффективный» менеджер?

ряд психологических лайфхаков, которые могут помочь сохранить нервы при работе с “эффективным” менеджером:

Сохраняйте доброжелательность, в данный момент они тоже часть команды.
Презентуйте и подводите “руководителей” к нужным решениям, как будто это их идеи. Покажите, что они нужны и вносят ценный вклад в развитие продукта.
Рассказывайте о достижениях, результатах работ и планах на следующий этап. Создавайте видимость, что “эффективные” менеджеры полностью контролируют процесс разработки и при желании могут на него повлиять.
Постройте канал общения с “эффективными” менеджерами — отдавайте ту информацию, которую они хотят получить, без вреда для основных процессов.

Читать дальше

разрабы и студенты заипали

Не, я все понимаю. Такой рынок. Разработчиков нужно больше, чем их есть. И уже они устраивают собеседования работодателям, а не наоборот. И я дипломатично лавирую между интересами заказчиков и разработчиков. Ибо заказчиков не ебет. Им нужен результат, с качеством и в срок. И их даже близко не ебет, что кто-то там почему-то чего-то не сделал. При этом разработчики тоже жгут: NDA мы подписывать не хотим, эта тематика нам не нравится, тут слишком давят, там слишком не понятны перспективы проекта. Сроки, порой, вообще не про них. Съезжают с темы. И у меня уже голова пухнет. Мне отвечать перед заказчиком, а они сваливают и ищи свищи потом.

Читать дальше