Техлидошная | Golang Infra Dev | Project Leading – Telegram
Техлидошная | Golang Infra Dev | Project Leading
547 subscribers
25 photos
1 file
159 links
Про платформенную (инфраструктурную) разработку, golang, техлидерство проектов, профессиональному росту и всему остальному, что связано с IT.
Автор: Антон Губарев (https://antgubarev.tech/ru/) @antgubarev. Инеженер Авито PaaS, архитектор и техлид
Download Telegram
Два месяца потребовалось, чтобы полностью пересесть на NeoVim. Первый возникающий вопрос: нафига? Это был эксперимент, который давно хотелось провести. И результат - меня все устраивает больше, чем раньше. Это не просто игрушки по вечерам, на текущий момент спокойно работаю работу даже чуть комфортнее, чем раньше. И еще остался огромный простор для дальнейших улучшений. На сегодня пройдена точка "не хуже чем раньше и даже немного лучше". Есть желание подробнее описать что получилось и обязательно это сделаю в ближайшем будущем. Тут не на пару абзацев
разговор. Рассматриваю различные варианты: митап/вебинар/статья/etc, договариваюсь с площадками.
Если вкратце, то вложений часов на 30 чистого времени, не считая десятипальцевой печати, без которой в виме как мне кажется делать нечего.
Также помимо среды разработки, получаешь много экспириенса по работе с терминалом, осваиваешь попутно много дополнительных тулзов, которые в сумме дают среду не только для кодинга, но и для работы в целом. И главное с минимум протирания стола мышью.
Выложил конфиги NeoVim и заодно Tmux может кому что пригодиться. Сам вдохновлялся конфигами некторых авторов на GitHub, очнь помогло. https://github.com/antgubarev/dotfiles
В продолжении темы консольных инструментов написал небольшую статью о самых часто используемых и полезных https://dev.to/antgubarev/console-for-every-day-41eg
Как говорил уже когда с вимом начинаешь работать, то обрасташь довольно быстро такими полезностями, мимо которых раньше проходил.
Давно ничего не писал, навалилось работы, в том числе и по контенту.
- Готовлю курс по разработке телеграм ботов. Бесплатный (то есть даром). Думаю в июле должен выйти. Только теперь стало не понятно на какой платформе размещать, но это решаемо.
- 29 июня пройдет митап, где будет мой доклад по Vim.
- 14 июля пройдет митап, где будет мой доклад по контролю за потреблением ресурсов в Авито. ClickHouse, кубы и вот это все.
- В июле стартует курс в ОТУС, где я буду одним из преподов. Курс внезапно по DevOps (ну а почему бы собственно и нет)
- Несколько статей https://hackernoon.com/u/antgubarev
- И сюда https://dev.to/antgubarev
Вобщем работы навалилось.
Много есть что рассказать тут но все руки не доходят. Поэтому пока что поделюсь полезной тулзой https://github.com/dragonflydb/dragonfly которая поддерживает протоколы memcache и redis. Сам пробовал (но на пет проектах правда), действительно работает отлично. Хочется нагрузочный провести еще.
Тема рисования диаграм часто на грани со вкусовщиной. Кто-то draw.io использует, кто-то miro.com Но иногда диаграмму надо поместить в документацию, и желательно чтобы в гите это могло версионироваться. Можно конечно draw.io исходники помещать, но этот xml будет нечитаем если его не открыть в редакторе, а миро вообще не вариант, хотя ссылки на доски в доках я встречаю нередко к сожалению.
Наткнулся недавно на https://diagrams.mingrammer.com/ (есть имплементация на go) Выглядит неплохо и даже порисовал немного. Стоит рассмотреть как более читаемый аналог для plantUML. Конечно придется свой CI/CD накручивать, но тут уже надо решать стоит ли оно именно в вашем случае, главное что возможность такая есть.
И как раз недавно на эту темы выступал Саймон Браун https://youtu.be/Za1-v4Zkq5E
Завтра пройдет GoLang митап. Моя часть про NeoVim, с которым работаю ежедневно. До этого был VSCode и конечно IDEA. Есть с чем сравнить) Постарался этот опыт запихать в один доклад и показать этот инструмент таким какой он есть. https://meetups.evrone.com/go-meetup-online-0
Написал как организовал себе немного автоматизации на Lua. Будет полезно тем, кто только начинает с этим работать https://dev.to/antgubarev/extending-neovim-with-lua-30gh
И еще немного автоматизации но уже для терминала https://dev.to/antgubarev/autocomplete-with-fzf-28eb . Очень привык к fzf и использую его в самых частых кейсах. Тут описаны некоторые их них. Надеюсь в ближайшем будущем найдется время привести в порядок еще несколько скриптов и выложить в свой дот https://github.com/antgubarev/dotfiles
Open Policy Agent пока еще не обрел широкого распространения, но это точно случится. Для тех кто еще не знаком с этим инструментом из CNCF, то очень рекомендую ознакомиться. Поначалу кажется немного неудобным, особенно то что надо разбираться с еще одним языком. Однако по своему опыту могу сказать по результату оно того стоит. Написал статью, где привел пример реализации RBAC, который потом можно подсунуть в Kubernetes, Envoy и много куда еще https://dev.to/antgubarev/rbac-with-opa-3i4h
Не так часто смотрю занятое место на диске, однако все же бывает. https://github.com/muesli/duf Утилита, которая делает это занятие несколько приятнее
Долгое время пользовался p10k https://github.com/romkatv/powerlevel10k чтобы комфортно настроить себе promt в zsh и даже особо не задумывался, что можно без всяких плагинов все это настроить достаточно просто. Что обычно мне надо видеть:
- ветку git (если в директории есть реп)
- есть ли изменинея в git
- время выполнения последней команды (когда запускаешь и не следишь, уходишь делать что-то в другое окно)
- текущая дриктория на глубину 2.
Получилось все очень просто https://github.com/antgubarev/dotfiles/blob/master/.zsh/prompt.sh
Выкинул p10k, который неплохо так притормаживает оболочку. Вообще конечно такие тулзы часто перегружены возможностями показывать все что надо и не надо в промте.
Начал серию постов о написании контроллера для Envoy. Сейчас готовы первые две статьи.
- Архитектура контроллера и первая его составляющая Custom Resource Definition https://hackernoon.com/using-the-kubernetes-controller-for-envoy
- Пишем вотчер для Custom Resources на golang https://hackernoon.com/using-the-kubernetes-controller-for-envoy-part-2
В третей части планирую рассказать про xDS протокол, конечно же доработаю рабочий пример из первых двух частей и дополню его взаимодействием с Envoy.
Меня тут кстати недавно номинировали на Hackernoon contributor of the year - GitHub (неожиданно). Буду признателен за поддержку. https://www.noonies.tech/2022/programming/2022-hackernoon-contributor-of-the-year-github
Никогда такого не было и вот опять. Опять надо возвращаться к жизни и продолжать делать то, что делали. Это лучший способ сохранить трезвость ума и ясность мысли.
Завтра 12 октября в 20.00 по Москве проведу открытый вебинар в Отусе на тему “Расширение API Kubernetes с помощью CRD и контроллеров”. По сути я расскажу то, что было описано мной в статьях на hackernoon только чуть более подробно и смогу ответить на вропросы в прямом эфире.
Ссылка для регистрации https://otus.ru/lessons/linux-hl/
Завтра (18 октября) будет продолжение темы контроллеров. В этот раз разговор пойдет про xDS и динамическую конфигурацию Envoy на основе CRD. Параллельно готовил статью на эту тему (продолжение цикла статей, ссылки на которые есть выше в канале), но видимо она уже выдет на следующей неделе, с исходниками и рабочим примером на github.
https://otus.ru/lessons/linux-hl/#event-2303
Сегдня вечером проведу вебинар по башу. Инструмент вызывает сложности у многих из-за непонятного синтаксиса. Однако не все так страшно, если разобраться поглубже и использовать только там где это уместно. Вебинар называется “Bash повышенной сложности”. Однако “повышенной” весьма относительно и для кого-то это будет вполне себе ежедневная простая работа. В названии смысл скорее в том, что массивы и отладка используются немногими, кто работает с башем. В любом случае надеюсь каждый что-то сможет почерпнуть для себя нового. https://www.youtube.com/watch?v=StreIBan5m0