The Art Of Programming
2.48K subscribers
605 photos
56 videos
2 files
797 links
Канал подкаста The Art Of Programming о Developer Experience, инструментах, технике и разработке ПО в самом широком смысле, включая менеджмент ИТ-проектов.

По вопросам интеграций, рекламы, приглашений на круглые столы и в качестве докладчика — @golodnyj
Download Telegram
Реквием по здравому смыслу.

Недавно меня просили дать пример дофаминового контента, а вот же он. Этот пример подкинул дорогой камрад Алексей, статья, полная передергиваний, где жир течет из каждого абзаца. Для затравки наслаждения:

И вот блестящий инженер-интроверт получает отказ не потому, что он плохой специалист, а потому, что его психотип не подходит под текущую «астрологическую карту» отдела.


Или вот прекрасное:

И здесь на сцену выходит Искусственный Интеллект, замыкая круг абсурда. Кандидаты используют ChatGPT, чтобы генерировать пафосные письма о «миссии» и «ценностях». Рекрутеры используют ИИ, чтобы эти письма фильтровать и анализировать «тональность». Мы пришли к ситуации, где боты общаются с ботами, имитируя человеческие эмоции, которых нет ни у одной из сторон.


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

Статья круто замешана на страхах, скандалах, обидах и противоречиях:

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


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

А вот насколько она полезна, экспертна, экологична, помогает рынку... Ну, это вам решать, дорогие читатели. Комментариев там уже под триста насыпало.
🔥53🗿3😱1
Что делать, что делать...

Эти ваши Ai делают людей тупыми, так говорят исследователи и эксперты (раз, два, три).

Похоже, скоро на всех столах страны появятся подобные книжки. Но мы это будем посмотреть. Годика 2–3 надо будет понаблюдать. Но мы же никуда не спешим?
😁1
ПинКод. Новейшие технологии.

Приближается новый год и хочется чего-то волшебного. Чего-то из детства. Попалась мне серия подкастов — «ПинКод. Новейшие технологии». Это прекрасная колаба Смешариков и экспертов из Яндекса!

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

П.С. Ну, мы же все любим смешариков?
2😁1🎉1
State of DevOps с новогодним вкусом.

Давно не хулиганили, а точнее, хулиганили давно, но вот руки добрались только сейчас. Собрались как-то с Александром Кирилловым, CTO Evrone, и с наскока разобрали ранее вышедший и полностью созревший State of DevOps Russia 2025. Ну и, конечно, трем про конференции.  

Именно об этом наш предновогодний 340-й подкаст The Art of Programming — «State of DevOps с новогодним вкусом».

Подписаться в iTunes
Смотреть на VK
Слушать на Яндекс Музыке

#подкаст #taop
2🔥93🎉1
С наступающим!

Этот ИИ-год подошел к концу. Хочется пожелать всем по-настоящему эффективно использовать новые инструменты. Развивайте свою память, сосредоточенность и внимание.

Берегите себя в новом году!
16😁7🎉6
Сказ про то как красноглазики опять менеджеров обманули.

Вместе с Алексеем в две каски развлекались в новогоднем 301-м эпизоде подкаста «Разбор полетов».

Вспоминали JetBrains, Kotlin, хоронили Fleet и думали над тем как все по кругу на...егорили.

Слушать подкаст на Яндекс.Музыке.
Читать полезняшки от «Разбора Полетов».

#подкаст #debriefing
Science Fiction Day.

Коллеги, да здравствуют наши прекрасные писатели, творящие в жанре научной фантастики! 2 января 2012 года в США учреждён Science Fiction Day. Праздник насквозь неофициальный, но это не мешает нам его праздновать и вспоминать прекрасных авторов, создавших наши прекрасные воспоминания.

Впереди еще несколько дней праздников, и можно насладиться великолепной литературой, например:

Дуглас Адамс — «Автостопом по галактике»

Роберт Хайнлайн — «Дверь в лето»

Аркадий и Борис Стругацкие — «Пикник на обочине»


А что из фантастики читаете вы?

П.С. Из коментов:

Питер Уоттс — Ложная слепота

Айзек Азимов — «Конец вечности»
Станислав Лем — «Солярис»

Лю Цысинь — «Задача трех тел»
Лю Цысинь — «Темный лес»
Лю Цысинь — «Вечная жизнь Смерти»

Баошу — «Возрождение времени»

Деннис Тейлор — «Мы – Легион. Мы – Боб»
Деннис Тейлор — «Потому что нас много»
Деннис Тейлор — «Все эти миры»
Деннис Тейлор — «Небесная река»
Деннис Тейлор — «Пока мы не сбились с пути»

Энди Вейер — «Марсианин»
Закон Брукса.

Недавно в разговоре упомянул закон Брукса, и внезапно пришлось объяснять. Ноги растут прямиком из 1975 года, тогда вышла книга Фредерика Брукса — «Мифический человеко-месяц, или Как создаются программные системы» (так название было переведено на русский язык).

Frederick Brooks Jr. — Mythical Man-Month, The: Essays on Software Engineering, Anniversary Edition

В этой книге был сформулирован принцип:

Adding manpower to a late software project makes it later.

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


Фредерик Брукс в некотором смысле опирался на несколько базовых тезисов, среди которых два ключевых:

1. С ростом количества людей в проекте быстро растут дополнительные каналы связи и, как следствие, значительно увеличиваются накладные расходы на связь.

2. Каждого нового сотрудника необходимо адаптировать в проекте. А также требуется на базовом уровне его синхронизировать с командой.


И то, и другое занимает время и замедляет работу всей команды. При этом, как замечал позднее сам Брукс, затраты возможно снизить при грамотном планировании и дополнительные люди были добавлены в начале проекта, но если проект уже опаздывает — то всё, труба!

#DevRel
👍8
Ценности.

Есть забавное упражнение. Можно сказать, медитативное. Берем список ценностей, допустим, этот из двухсот штук, заранее составленный Владимиром Моженковым. Берем карандаш. И начинаем вычеркивать те ценности, которые мимо вас, вашей идентичности, к которым вы не склонны.

Первое время идет достаточно бойко. Вы убираете те, что точно не про вас. А те, в которых сомневаетесь, пока оставляете. Список стремительно сокращается. И потом становится сложнее и сложнее.

Когда остается 20–30, вы уже детально сравниваете. Раздумываете. А задача — оставить 3–5 базовых для вас ценностей, лучше 3. Забавно то, что как только их реально так мало в вашем личном списке, то вы все свои решения, проекты, связи очень быстро начинаете сортировать!

Оооо... Как много интересного вы о себе узнаете.
👍11🔥5
The Modern Software Developer.

Случайно набрел на репозиторий осеннего Стэнфордского курса по ИИ-программированию.

Внутри «The Modern Software Developer», всё о том, как использовать ИИ на различных этапах разработки. Начинается всё с промптинга. Конечно, можно будет разобраться и с управлением контекстом, вайбкодингом и т. д. Отдельное внимание уделено созданию ИИ-агента и MCP-сервера. 

К каждому уроку есть полезные ссылки для чтения, презентации и, разумеется, подробные практические задания. По мне, так приятное начало нового года. Не самый сложный обучающий курс.
👍8
Logging sucks.

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

Boris Tane — Logging sucks. And here's how to make it better.

В публикации, наверное, самое ценное — это отработка возражений. Например, про OpenTelemetry: ну правда, если ты перешел на OpenTelemetry, это совершенно не значит, что у тебя все хорошо.
1👍3🔥1
Встреча с Программным комитетом Saint HighLoad++ 2026

Буквально через неделю, 14 января, в Санкт-Петербурге, ул. 2-я Советская, д. 18, Failover, в 19:00 начнется встреча с Программным комитетом Saint HighLoad++ 2026.

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

Если вы хотите стать спикером Saint HighLoad++ 2026 или принять участие в формировании программы летней конференции — приходите (или подключайтесь онлайн) на встречу. Программный комитет расскажет все подробности о конференции: как все будет, какие темы будут особенно актуальны, какие нововведения будем внедрять.

Поговорим о трендах, набросаем темы докладов, приоткроем закулисье работы Программного комитета и дадим ответы на ваши вопросы.
Hints on Programming Language Design.

Зимние каникулы — прекрасное время для чтения интересных околонаучных публикаций. Пока рылся в подборке, зацепила фамилия C.A.R. Hoare. Чарльз Энтони Ричард Хоар — британский учёный в области информатики и этих наших computer science — он же Charles Antony Richard Hoare, Tony Hoare или C.A.R. Hoare (так чаще всего подписаны его работы). К своему стыду не был знаком с его работой.

Хоар в 1959 году обучался в МГУ компьютерному переводу и теории вероятностей в школе Колмогорова. И в это же время в Москве (примерно 1959–1960 года) им была выполнена работа по созданию алгоритма «быстрой сортировки». А в 1980 он получает премию Тьюринга за «его выдающиеся достижения в определении и дизайне языков программирования».

Вчера с большим удовольствием прочитал его работу 1973 года:

C.A.R. Hoare — Hints on Programming Language Design.

В публикации много полезных мыслей, и она оказала большое влияние на других исследователей. Среди всего прочего Хоар выдвигается пять критериев хорошего языка программирования:

1. Простота (simplicity) — язык должен быть лёгким для понимания и использования.

2. Безопасность (security) — минимизация ошибок на этапе компиляции и выполнения.

3. Быстрая трансляция (fast translation) — быстрая компиляция.

4. Эффективный объектный код (efficient object code) — высокая производительность исполняемой программы.

5. Читаемость (readability) — понятность кода для человека.


Работа опубликована в рамках сборника работ Stanford Artificial Intelligence Laboratory (SAIL) — лаборатория исследований в области искусственного интеллекта (AI) в Стэнфордском университете. Лаборатория, кстати, основана в 1963 году учёным Джоном Маккарти.

В 1980 году SAIL была закрыта как независимое учреждение. А что такое? А дело в том, что в то время бушевала первая зима искусственного интеллекта. «Зима искусственного интеллекта» — период в истории исследований искусственного интеллекта, характеризующийся сокращением финансирования и общим снижением интереса к этой области. Термин был введён научным сообществом по аналогии с понятием «ядерная зима». Впервые он прозвучал в 1984 году на ежегодной встрече Американской ассоциации искусственного интеллекта (AAAI).

Считается, что первая зима искусственного интеллекта продлилась с 1974 по 1980 год.
👍3🔥1
I'll be back.

Недельку провел в молчании. Обдумывал результаты предыдущих периодов. Одна из важных заметок — 2025 год точно стал годом возвращения командной строки

Может, вы со мной не согласны или, наоборот, поддерживаете мой вывод? Я думаю, это можно будет обсудить в предстоящее воскресенье (формат придумаем).
👍7
Врываемся в новый год! 

Неделя посленовогодних понедельников завершилась, вы точно уже пришли в себя и наверняка готовы одним нахрапом ворваться в информационное поле новых знаний в ИТ, чему-то научиться, что-то прочитать, ну и развлечься по дороге. Тут вам поможет наша подборка каналов «IT в деле», которую составили неутомимые гномы, пока вы отдыхали. 

Что внутри сборки?

А это вам придется разобраться самостоятельно. Есть каналы о программировании и разработке на Python, C++, C#, Java. Есть что-то про создание игр, подсказки для ваших проектов и реальный опыт в этой сфере (которая, очевидно, должна бустануть после выхода на сцену вайбкодинга). Базы данных? QA? 

Надеюсь, в подборке вы найдете то, что нужно именно вам!
1
В поисках.

Разыскиваю «подопытных-экспертов»! Ну, точне, я готовлю новый доклад и провожу исследование. Не очень хорошо опираться только на свой опыт. Если вы повседневно используете AI Coding и готовы выделить некоторое количество времени для разговора со мной — вы подходите.

Напишите в комментах, и договоримся.

П.С. Спасибо всем кто пришел в коменты и в личку, не со всеми еще назначил встречи +) но я очень рад что так много откликов.
1🔥1
Скоро «Я 💛 Фронтенд»

Ну как скоро, в феврале.

Коллеги заранее анонсировали конференцию. «Я 💛 Фронтенд» — главная фронтенд-конференция Яндекса и ежегодный флагман для тех, кто создаёт современные интерфейсы.

Внимание! Пройдет 14 февраля в субботу. Офлайн в Москве и, конечно, онлайн. Регистрация тут.

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

И вот почему я хочу лично попасть на конференцию. Ai-инструменты серьезно увеличили продуктивность в простых задачах и сделали более доступными концепцию фулстек-разработчиков, а значит, нужно проникаться тем, что происходит на темной стороне.
4👍1🔥1
1994, 2007, 2015, 2026.

С большим удовольствием почитываю opennet, но эту новость пропустил, спасибо Алексею подкинул ее.

Удивительная история как одна и таже ошибка пролезает раз за разом год от года. Суть ошибки.

В сервере telnetd из набора GNU InetUtils выявлена уязвимость, позволяющая подключиться под любым пользователем, включая пользователя root, без проверки пароля.

Проблема вызвана тем, что для проверки пароля процесс telnetd вызывает утилиту "/usr/bin/login", передавая в качестве аргумента имя пользователя, указанного клиентом при подключении к серверу.

При вызове утилиты login значение данной переменной окружения подставлялось без дополнительной проверки и без экранирования спецсимволов. Таким образом, для подключения под пользователем root достаточно выставить в переменную окружения USER значение "-f root" и подключиться к telnet-серверу, указав опцию "-a":

$ USER='-f root' telnet -a имя_сервера


Ни когда не было и вот опять.
🤩3
21 Lessons From 14 Years at Google.pdf
104.6 KB
21 Lessons From 14 Years at Google.

Сегодня хочу поделиться с вами заметкой Эдди Османи, он Software Engineer в Google, сейчас работает в Google Cloud над проектом Gemini и уже мелькал тут и тут. Сейчас меня привлекла его статья, над которой я долго думал:

Addy Osmani — 21 Lessons From 14 Years at Google

Все уроки, изложенные в статье, по-своему прекрасны. Они стоят того, чтобы каждый обдумать по отдельности, а также в композиции с другими уроками. Но я выделю и подсвечу один:

4. Ясность — это преимущество. Умность — это издержки.

Стремление писать умный код присуще почти всем инженерам. Это воспринимается как доказательство компетентности.

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

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


Многократно говорил, что лучше писать «просто», писать просто, пусть и с большим объемом текста. Сейчас писать с использованием простых конструкций даже стало более важно. Особенное значение это высказывание приобретает, учитывая, что большую часть кода сейчас будут генерировать LLMки. Лучше писать и комментировать, оставлять документацию. Опять же, комментировать код стало проще, и, как следствие, поддерживать целостность и непротиворечивость комментариев.

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

П.С. Прикрепил PDF.
😁3💯3