В этом выпуске у меня в гостях Евгений Дёмин — Ruby-разработчик и автор нескольких популярных open source библиотек, которые решают проблемы с базами данных, валидацией и производительностью. Женя начинал как математик в Калининграде, попал на западный рынок почти случайно — друг порекомендовал его британскому рекрутеру, а всё собеседование свелось к фразе «Yes, please» в телефонной трубке.
Тем не менее его взяли.
Разобрались, почему open source — это не просто код на GitHub, а полноценный продукт, который нужно продвигать, объяснять и защищать. Женины библиотеки приносят ему живые деньги каждый месяц — и это получилось не по плану, а как результат маленьких последовательных шагов.
Полезные ссылки:
https://www.linkedin.com/in/evgeniydemin
https://github.com/djezzzl/
https://x.com/EvgeniyDemin
evgeniydemin.medium.com
Подписывайтесь на канал «Организованное программирование» в Telegram: https://ttttt.me/orgprog
– Список подкаст-платформ (Apple Podcast, Google Podcast, Spotify, Яндекс.Музыка и другие): https://podcast.ru/1734325321
– Смотреть в ВК Видео: https://vkvideo.ru/video-224967259_456239293
🔹 Курсы по искусственному интеллекту: https://ru.hexlet.io/courses_artificial-intelligence
🔹Хекслет Клуб в Telegram https://t.me/HexletClubBot
Отдельно поговорили про schema.rb — файл, который Rails кладёт прямо в репозиторий и который даёт возможность строить инструменты автоматического анализа. В других экосистемах этого долго не было, а где-то нет до сих пор.
Прошлись по конкретным инструментам. Выяснили, что расхождение между валидациями в коде и реальными ограничениями в базе данных — это не редкий edge case, а системная проблема, с которой сталкиваются даже крупные компании вроде 37signals. Подискутировали про N+1, что это не болезнь ORM, и вообще она существовала ещё когда люди писали запросы в циклах на чистом PHP. Обсудили, как можно пофиксить без ручного проставления includes — просто подключив нужную библиотеку.
В конце разговор свернул в неожиданную сторону — обсудили, не станут ли все эти инструменты просто скиллами для ИИ-агентов, и нужны ли они вообще в том виде, в котором существуют сейчас.
#opensource #rubyonrails #backend #programming #softwareengineering #postgresql #orm #nplusone #rails #developers #организованноепрограммирование #кириллмокевнин
Что должен знать каждый backend про N+1, lazy preload и производительность / Евгений Демин #83