Бодрый кодер – Telegram
Бодрый кодер
450 subscribers
249 photos
24 videos
5 files
164 links
Меня зовут Лев, я руководитель направления в ПСБ. Это мой личный блог о DevOps, разработке, системном анализе, AI и управлении IT-командами. Делюсь своими мыслями, инсайтами, полезными инструментами и тем, что меня вдохновляет.

Автор: @nemirlev
Download Telegram
Возможно вброс, под другой статьей пишут что пофиксили часа за 3 и действительно было, но нормальных доказательств и разборов я не видел.

Называется последствие плохого проектирования, к тестированию правда тоже вопросы:

https://habr.com/ru/news/844446/
🥴3
Основатель filibusta, самой легендарной русскоязычной онлайн-библиотеки, сообщил что у него рак мозга, денег на хостинге остается на пару недель, после чего сайт будет не доступен.

С этим сайтом однозначно уйдет эпоха.
😢8
💬 Давно не писал полезного.

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

В своей новой статье я делюсь несколькими яркими моментами и нюансами, с которыми столкнулся. Как избежать проблем с лимитами на отправку сообщений, как работать с медиа и динамическим контентом, как добавлять локализацию и многое другое — все это можно найти в статье. Думаю, многим, кто уже работает с ботами или только собирается, будет полезно! 🙌

https://telegra.ph/Nyuansy-raboty-s-Telegram-botom-lichnyj-opyt-09-29
🔥5
Всегда было сложно собраться и сделать нормальный Changelog. На это уходило кучу времени — нужно, чтобы было и красиво, и понятно. Пока не открыл для себя утилиту git-cliff, и жизнь стала проще.

Эта штука написана на Rust и умеет генерировать удобный и понятный Changelog. Но, конечно, сама по себе она не сделает всё за вас — важно, чтобы вы использовали conventional commits при написании коммитов. Это не только помогает генерировать Changelog на автомате, но и дисциплинирует в стандартизации того, что пишете.

Пару примеров — на скринах.

P.S. Если хотите автоматизировать это на GitHub — есть удобный git-cliff-action. Теперь весь процесс можно сделать в пару кликов.

#git #changelog #gitcliff #разработка #conventionalcommits #GitHub #автоматизация #Rust
👍5
Зарелизили PostgreSQL 17 - в реальных приложениях ускорение на 20-30%.
🔥5🤔1
Настройка терминала "под себя" — это что-то вечное, как бесконечный тюнинг Arch Linux.

Когда я пользовался Windows, терминал для меня вообще был чем-то, что хочется закрыть сразу после ввода команды. Linux? Тоже без изысков — стандартный терминал, не важно, какой дистрибутив, никаких настроек, пару раз пробовал что-то "накрутить", но всё равно возвращался к дефолту.

Но вот с появлением у меня мака всё изменилось. Сначала по старой традиции оставался на стандартном терминале, разве что шрифт чуть больше делал — и этого было достаточно. Но постепенно начал слышать всё больше рекомендаций попробовать iTerm. Долго сопротивлялся, но в итоге сдался. И вот тут началась настоящая любовь. Почти одновременно с этим я открыл для себя zsh, и тут я осознал, что терминал может быть не просто функциональным, но ещё и красивым.

И как только я начал использовать zsh, мне показали oh my zsh (фреймворк для конфигурирования zsh) и тему Powerlevel9k. Честно, ребята, я тогда ощутил себя так, как будто пересел с лады на ламбу! Долгое время пользовался именно этой конфигурацией, сменил несколько ноутов, но настройкам не изменял. Потом перешел на обновлённую тему Powerlevel10k, и тоже был доволен.

А потом я увидел Warp — терминал нового поколения, который был только для macOS. Его удобство и эстетика сделали его моим основным инструментом. Самое крутое — это встроенный чат-бот на базе ChatGPT (3.5 тогда), который не блокировался по региональному признаку. В этом году Warp значительно улучшился: добавили поддержку Linux и вывели работу с нейросетью на новый уровень. Теперь можно писать команды на естественном языке (посмотрите на скрине, как это работает).

JetBrains, кстати, тоже внедрили что-то похожее, но Warp были первыми. Так что если ещё не пробовали — очень рекомендую.

Делитесь, на чем сидите вы, и что для вас важно в терминале! 👇

#терминал #iTerm #Warp #zsh #ohmyzsh #Powerlevel10k #Linux #macOS #JetBrains #ChatGPT #настройкитерминала #IT
👍8
Готовлю доклад по AsyncAPI, обещал рассказать.

AsyncAPI — это спецификация для документирования и проектирования асинхронных API. В отличие от привычного REST, здесь речь идет о взаимодействии между сервисами через события, сообщения и очереди. Это особенно актуально для EDA, микросервисов, IoT-устройств и любых систем, где важен асинхронный обмен данными.

AsyncAPI помогает упорядочить и стандартизировать процессы работы с асинхронными коммуникациями. Это упрощает как разработку, так и поддержку проектов, где задействованы сложные архитектуры. По сути, это своего рода OpenAPI, но для асинхронных систем. Если с ним знакомы - удивитесь как похож синтаксис.

Основное преимущество — улучшение командной работы. AsyncAPI делает взаимодействие между разработчиками, тестировщиками и аналитиками более прозрачным. Все понимают, как работают события, и какие данные передаются. Это снижает ошибки и упрощает тестирование.

Кодогенерация и автоматизация — вот что мне больше всего зашло. Вы буквально можете сгенерировать код клиента или сервера на основе спецификации, а это экономит кучу времени. AsyncAPI отлично работает с современными DevOps процессами, что делает релизы более быстрыми и стабильными.

Если вы работаете с событиями, настоятельно рекомендую попробовать AsyncAPI в вашем следующем проекте.

Интересно, кто уже внедрил у себя? Пишите в комментариях! 👇

#AsyncAPI #API #микросервисы #IoT #документация #кодогенерация #DevOps #технологии #IT
🔥4
Бодрый кодер
Основатель filibusta, самой легендарной русскоязычной онлайн-библиотеки, сообщил что у него рак мозга, денег на хостинге остается на пару недель, после чего сайт будет не доступен. С этим сайтом однозначно уйдет эпоха.
Отличные новости в субботу: книжному братству суждено жить!

Создатель Флибусты вышел на связь, чтобы сообщить хорошие вести:
«Сервера оплачены, сайт поддерживается, работаем в стабильном режиме.»
15🔥5
Недавно я прочитал перевод видеоразбора от Скотта Чакона, одного из сооснователей GitHub. Он рассказал о внутренней кухне и ключевых причинах успеха этой платформы. Было невероятно интересно услышать историю из первых уст.

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

Для меня стало настоящим открытием, что именно сообщество Ruby так сильно повлияло на взлёт платформы. Именно эти ребята задали тренд, и благодаря им GitHub стал популярным так быстро.

Что касается моего личного опыта, GitHub всегда был для меня чем-то особенным. Это не просто удобный инструмент для работы — это место, где можно встретить невероятных и увлечённых людей. Хотя GitLab я тоже люблю — особенно за его возможности для CI/CD и поддержку своих серверов, но GitHub всё равно остаётся номером один. Это как старая любовь, от которой не уйдёшь: удобство, сообщество и просто атмосфера, которая вдохновляет.

Видео: 📹
Перевод: 📄

#GitHub #историяуспеха #SCM #разработка #Ruby #сообщество #инструментыразработчика #GitLab #CI_CD #технологии #инсайты #вдохновение #DevTools
🔥5👍2
Не знаю, как у вас, но я пытался раз 10 сделать свой персональный сайт. Сначала хотел для портфолио, потом думал сделать блог, а потом просто как резюме. И каждый раз начинал, но не заканчивал.

Недавно писал о своей идее сделать Resume As Code — чтобы описать резюме в yml и автоматически отправлять его на все основные площадки (HH, LinkedIn, Habr.Карьера), плюс генерировать PDF и сайт. Но после ресерча стало понятно, что с публикацией всё не так просто, ведь почти все API заточены под рекрутеров, а не соискателей.

После обсуждений в комментариях решил начать с простого — сделать сайт и PDF с резюме. Думал, что управлюсь за выходные, но оказалось не так легко. Я не дизайнер, поэтому решил взять готовый шаблон — и тут начались поиски и эксперименты. Ничего не нравилось, и я забросил идею.

Но на позапрошлых выходных меня поперло! Сайт сделал буквально за несколько часов и просто влюбился в результат. Никаких заморочек — чистый CSS + HTML, без JavaScript. Загружается мгновенно и выглядит, на мой взгляд, классно. В чем был секрет? Появилась четкая цель — мне нужно было сохранить свою активность как специалиста: публикации, выступления, статьи. Не портфолио проектов с "дизайнерскими" шаблонами, которые больше про красивые картинки, а просто место, где можно найти мои материалы. Резюме и контакты — это приятный бонус.

В эти выходные немного доработал сайт. Чистый HTML — это классно, но с несколькими языковыми версиями стало неудобно править. Поэтому решил натянуть всё на Hugo — статичный генератор на Go. Теперь редактировать намного проще, и выложил это дело на Github: сайт, тема. Вдруг кто захочет подправить дизайн или сделать что-то своё. В итоге сайт остался HTML + CSS, но за счет шаблонизации управлять им теперь намного удобнее.

Вот так спустя десятки попыток я наконец-то доволен результатом!

#персональныйсайт #ResumeAsCode #HTML #CSS #Hugo #OpenSource #разработка #статическийсайт #IT
6
WebStorm и Rider теперь бесплатные для не коммерческого использования.

https://blog.jetbrains.com/blog/2024/10/24/webstorm-and-rider-are-now-free-for-non-commercial-use/
👍61🔥1
Если вы, как и я, используете Conventional Commits, то этот трюк для вас. Чтобы не копаться в истории коммитов руками, используйте:

git log --oneline --grep="feat:" --since="2 weeks ago"

Можно искать по любому типу: feat, fix, chore. А --since поможет ограничить период. Идеально сочетается с автоматической генерацией changelog!

#git #DevTools #productivity
4
Dev Containers - крутая штука для изоляции окружения разработки. Пользуюсь в JetBrains IDE, есть поддержка в VSCode, GitHub Codespaces и т.п. Один конфиг в .devcontainer/devcontainer.json, и можно забыть про "оно не работает на моей машине". Особенно удобно для проектов с нестандартным окружением или сложной конфигурацией.

#Docker #DevEnvironment #IDE
👍4
Всегда удивляюсь тем, кто не использует алиасы в консоли. Это как печатать двумя пальцами, когда можно десятью!

Вот что у меня есть в ~/.zshrc:

# Kubernetes
alias k='kubectl'
alias kns='kubectl config set-context --current --namespace'

# Brew
alias bubu='brew update && brew upgrade'

# Git
alias gst='git status'
alias gp='git pull'

# Docker
alias dps='docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"'

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

#CLI #productivity #DevTools
👍7
Event Storming - это техника моделирования бизнес-процессов с помощью цветных стикеров. Каждый цвет обозначает определенное событие или действие в системе.

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

#EventStorming #SystemAnalysis #BPM
👍4
Недавно я опубликовал статью [OrbStack: Почему я забыл про Docker Desktop](https://habr.com/ru/articles/853720/), которая вызвала оживленную дискуссию в комментариях. Основные вопросы возникли вокруг производительности различных Docker-подобных решений. Мои аргументы, основанные в первую очередь на личном опыте использования, оказались недостаточно убедительными.

Чтобы получить объективную картину и предоставить сообществу реальные данные, я решил разработать комплексный benchmark для сравнения различных решений.

Подробности в новой статье: https://habr.com/ru/articles/854832/
🔥5👍3
Выпустили новую версии телеги, 11.3. И самое крутое в этой версии - для ботов увеличили лимит сообщений до 1000 штук в секунду, но отправка сообщений оплачивается за 0,1 ⭐️

Это болезнь была давно и не позволяла например массово разослать уведомления всем пользователям, теперь это можно сделать. Причем ценник очень гуманный, особенно в сравнении с смс ( 100 звезд - 229 рублей). Получается что за 100 звезд можно отправить 1 000 000 сообщений.
Как в бизнесе измеряется время:

Квартал: 90 дней
Спринт: 14 дней
Срочная задача: ПРЯМО СЕЙЧАС!!!
Рефакторинг: что это и зачем?

😅 #пятничныйюмор
😁7