https://github.com/vulcand/oxy Отличный двиг для тех кто пишет свой прокси. Кстати говоря используется в traefik
GitHub
GitHub - vulcand/oxy: Go middlewares for HTTP servers & proxies
Go middlewares for HTTP servers & proxies. Contribute to vulcand/oxy development by creating an account on GitHub.
IMG_20160123_222247.jpg
150.3 KB
Unit-тесты
Век живи - век учись. На собеседовании узнал от кандидата о существовании двух школ тестирования. Детройтской и Лондонской. Если не углубляться в подробности, то первая школа выступает за тестирование интеграционное, когда мы в первую очередь проверяем что наше приложение рабочее. Вторые выступают за юнит тесты, с моками всех зависимостей и проверкой в первую очередь работоспособности каждого элемента приложения.
Оказывается я отношусь к детройтской школе) Все никак не мог понять где я ошибаюсь, почему только я один считаю что юнит тесты:
- дольше и дороже
- если они выполнились это вообще не значит что приложение заработает в проде
Для меня очевидно, что в первую очередь надо тестировать апи методы, крон уитилиты, консьюмеры и т.д., а не каждый класс, из которого они состоят. Тем более что если наш идеальный мок работает именно так, не означает что реальная зависимость поведет себя также. Оказывается таких кто считает также как я много. Все, мне стало легче жить )
На картинке, которую я так долго искал, как раз мой взгляд на юнит тесты.
Они тоже конечно нужны и никто не призывает от них отказываться, ни в коем случае. Вопрос только в приоритезации.
Оказывается я отношусь к детройтской школе) Все никак не мог понять где я ошибаюсь, почему только я один считаю что юнит тесты:
- дольше и дороже
- если они выполнились это вообще не значит что приложение заработает в проде
Для меня очевидно, что в первую очередь надо тестировать апи методы, крон уитилиты, консьюмеры и т.д., а не каждый класс, из которого они состоят. Тем более что если наш идеальный мок работает именно так, не означает что реальная зависимость поведет себя также. Оказывается таких кто считает также как я много. Все, мне стало легче жить )
На картинке, которую я так долго искал, как раз мой взгляд на юнит тесты.
Они тоже конечно нужны и никто не призывает от них отказываться, ни в коем случае. Вопрос только в приоритезации.
Решил я тут значится недавно походить по собесам, на мир посмотреть, себя показать. Узнаю думаю сколько предлагают на рынке, чего хотят, кого ищут. Времени жалко было много тратить на это поэтому выбрал две очень известные компании из тех, что писали мне и согласился пройти интервью. Ну и закончилось все тем, что я теперь в команде архитектуры Авито. Неожиданно даже для самого себя.
Я нашел тут ту самую нишу, которая мне всегда была близка и интересна - платформенная разработка https://habr.com/ru/company/avito/blog/527400. Никакого больше бизнесового фиче-конвеера. Только кубер, service mesh, инфраструктура, golang и вот это все. Ну и контент будущий от меня тоже будет с этими темами чаще всего связан )
В мире полно интересных задач и даже в рамках только нашей страны. Желаю каждому найти рыбу своей мечты, наиболее подходящие под себя. Главное не ждать пока эта рыба найдет вас сама.
Я нашел тут ту самую нишу, которая мне всегда была близка и интересна - платформенная разработка https://habr.com/ru/company/avito/blog/527400. Никакого больше бизнесового фиче-конвеера. Только кубер, service mesh, инфраструктура, golang и вот это все. Ну и контент будущий от меня тоже будет с этими темами чаще всего связан )
В мире полно интересных задач и даже в рамках только нашей страны. Желаю каждому найти рыбу своей мечты, наиболее подходящие под себя. Главное не ждать пока эта рыба найдет вас сама.
Хабр
Платформа как сервис в Авито: как это устроено
Привет, Хабр! Меня зовут Александр Лукьянченко, я тимлид команды, которая занимается платформой в Авито. В этой статье я расскажу о проблемах, которые возникали у нас...
Долгое время не работал с go чтоб прям плотно. В основном только посмотреть/поправить. Теперь окунулся с головой и вижу что особо ничего не изменилось за время моего отсутствия 🙂 Как страдали все с обработками ошибок так и страдают, как не было стандартов логирования так и нет, ну и тд. Но я в общем-то не про это, к тому же эти минусы перевешаны плюсами. Попутно откопал еще полезняшек для гоферов.
Гайд от Uber https://github.com/uber-go/guide/blob/master/style.md Думаю каждый сможет найти что-то полезное или на подумать.
https://github.com/dariubs/GoBooks Полезный список полезных книг (некоторые даже переведены на русский https://github.com/sefus/the-little-go-book/blob/master/ru/go.md). Взял себе пару в список на чтение по вечерам.
Ну и конечно роадмап https://github.com/Alikhll/golang-developer-roadmap. Я бы конечно похоливарил насчет наличия там ветки ОРМ. Но это данность, с которой точно придется жить в обозримом будущем. А в остальном подсвечены правильные направления.
Гайд от Uber https://github.com/uber-go/guide/blob/master/style.md Думаю каждый сможет найти что-то полезное или на подумать.
https://github.com/dariubs/GoBooks Полезный список полезных книг (некоторые даже переведены на русский https://github.com/sefus/the-little-go-book/blob/master/ru/go.md). Взял себе пару в список на чтение по вечерам.
Ну и конечно роадмап https://github.com/Alikhll/golang-developer-roadmap. Я бы конечно похоливарил насчет наличия там ветки ОРМ. Но это данность, с которой точно придется жить в обозримом будущем. А в остальном подсвечены правильные направления.
GitHub
guide/style.md at master · uber-go/guide
The Uber Go Style Guide. Contribute to uber-go/guide development by creating an account on GitHub.
У меня тут образовалась лицензия свободная на любую IDE от JetBrains на год (включая саму IntelliJ IDEA Ultimate). Долго думал куда пристроить. Хоть иди и первому встречному вручай. Но в итоге подумал что спортивнее и справедливее будет придумать какой-то квест простой.
У меня есть одна проблема - я вообще не умею придумывать названия, ни для чего. Всегда получается так себе. И вот возникла идея может кто сможет предложить интересное название для канала 🙂 Автор лучшего и получит заслуженную лицензию.
Если есть интетересная идея - пиши в форму https://docs.google.com/forms/d/e/1FAIpQLSeljXYik4EI_eHs6GTqlzT7or0BhTKaKNlQny1em1275DqqiA/viewform Даже если она кажется бредовой все равно пиши) Кроме меня эти варианты больше никто не увидит.
У меня есть одна проблема - я вообще не умею придумывать названия, ни для чего. Всегда получается так себе. И вот возникла идея может кто сможет предложить интересное название для канала 🙂 Автор лучшего и получит заслуженную лицензию.
Если есть интетересная идея - пиши в форму https://docs.google.com/forms/d/e/1FAIpQLSeljXYik4EI_eHs6GTqlzT7or0BhTKaKNlQny1em1275DqqiA/viewform Даже если она кажется бредовой все равно пиши) Кроме меня эти варианты больше никто не увидит.
Контроль секретов в коде https://github.com/GitGuardian/ggshield Очень актуально когда над проектом работает (или уже поработало) много людей. Вероятно что среди них были те, кто внедрял «по-быстрому», не имея времени ли желания разбираться как организовать секреты. А чаще всего я видел варианты «потом переделаем». В итоге находишь потом различные токены от API или даже от БД.
Есть интеграции со всеми популярными системами: GitHub, GitLab, Jenkins и т.д. Один раз добавил и спишь спокойно.
Есть интеграции со всеми популярными системами: GitHub, GitLab, Jenkins и т.д. Один раз добавил и спишь спокойно.
GitHub
GitHub - GitGuardian/ggshield: Detect and validate 500+ types of hardcoded secrets with advanced checks. Use it as a pre-commit…
Detect and validate 500+ types of hardcoded secrets with advanced checks. Use it as a pre-commit hook, GitHub Action, or CLI for proactive secret detection and security. - GitGuardian/ggshield
В продолжении темы CI есть вот такая книжка по GitHub Actions https://actionsbook.com/ Как по мне дороговато по российским меркам за то, что скорее всего довольно быстро устареет. Однако для тех, кто серьезно связан с GitHub-ом может оказаться очень кстати именно сейчас. Быстро прочитать все самое нужное в одном месте, чем по крупицам собирать по Интернетам и все равно что-то пропустить.
Actionsbook
Building GitHub Actions
Learn how to build GitHub Actions to solve the issues you hit every single day, using any programming language you like
Вы все еще боитесь собеседований? Или что-то поменять в своей жизни к лучшему?) https://vc.ru/hr/293852-analitika-dlya-hantinga-i-rekomendacii-po-naymu-it-specialistov
vc.ru
Аналитика для хантинга и рекомендации по найму ИТ-специалистов — Карьера на vc.ru
В этой статье мы расскажем, сколько сейчас стоит нанять востребованных разработчиков, девопсов, SRE, QA, продакт менеджеров, продуктовых аналитиков. Опишем, какие факторы аффектят сейчас рынок найма в ИТ, и отметим растущие тренды, которые будут определять…
Говорят исходники платформы для голосования утекли https://github.com/moscow-technologies/blockchain-voting_2021 Информацию проверить невозможно конечно, однако всегда интересно посмотреть что там внутри )
GitHub
GitHub - moscow-technologies/blockchain-voting_2021: Moscow city blockchain electronic voting system
Moscow city blockchain electronic voting system. Contribute to moscow-technologies/blockchain-voting_2021 development by creating an account on GitHub.
Не коммитил в опен сорс уже несколько лет, с тех пор как с Yii завязал ) И тут на тебе, пофиксил багу в traefik https://github.com/traefik/traefik/pull/8381 Мелочь но все равно приятно что правка попала в релиз.
GitHub
Fix empty body error for mirroring middleware by antgubarev · Pull Request #8381 · traefik/traefik
What does this PR do?
Fix bug #8045
Motivation
I need usefull feature
fixes #8045
More
Added/updated tests
Added/updated documentation
Fix bug #8045
Motivation
I need usefull feature
fixes #8045
More
Added/updated tests
Added/updated documentation
На удивление часто слышу неверное понимание некоторых базвордов в API. Вот тут как раз под руку попалось описание что к чему https://inlaymansterms.io/blog/api
Там кстати на это сайте есть еще и другие определения, которые могут некторым оказаться полезными.
Там кстати на это сайте есть еще и другие определения, которые могут некторым оказаться полезными.
Уже готово описание вчерашней глобальной проблемы https://blog.cloudflare.com/october-2021-facebook-outage/ А вот у кого-то возникла похожая проблема :)
https://github.com/evilmartians/lefthook Полезная тулза для человекопонятной работы с хуками гита. Вместо черного колдовста на баше без танцев и смс пишем простой yaml. Вообще хуки отличная вещь для автоматизации рутинных операций. Например запуск линтеров перед коммитов, который часто делать забываю и потом появляются коммиты вида «fix linters», засоряющие историю.
GitHub
GitHub - evilmartians/lefthook: Fast and powerful Git hooks manager for any type of projects.
Fast and powerful Git hooks manager for any type of projects. - evilmartians/lefthook
Раньше часто пользовался ngrok.com когда надо было работать с вебхуками от внешних сервисов. Запускаешь у себя тунель и погнал тестировать все кейсы, которые прилетают от живого трафика. Оказывается есть целая подборка альтернатив для этого сервиса https://github.com/anderspitman/awesome-tunneling
GitHub
GitHub - anderspitman/awesome-tunneling: List of ngrok/Cloudflare Tunnel alternatives and other tunneling software and services.…
List of ngrok/Cloudflare Tunnel alternatives and other tunneling software and services. Focus on self-hosting. - anderspitman/awesome-tunneling
И еще одна полезность для консольников и тех, кто не сидит на JetBrains https://github.com/jesseduffield/lazygit Обалденный гуй для гита.
GitHub
GitHub - jesseduffield/lazygit: simple terminal UI for git commands
simple terminal UI for git commands. Contribute to jesseduffield/lazygit development by creating an account on GitHub.
https://twitter.com/ovh_status/status/1448185498812485633 Никогда такого не было и вот опять
Twitter
OVH Status Feed
Network and racks:: VIN/DC: We will do a maintenance on our routers on VIN DC to improve our routing. Maintenance is planned for 13/Oct/21 9:00 AM to 10:30 AM ( UTC+2). No impact expected, device will be isolated before the change. travaux.ovh.net/?do=details&id……
С помощью этой утилиты можно настроить свой промт вообще как угодно https://ohmyposh.dev/ на любой вкус и цвет. Думаю многим будет полезно.
Себе не забираю, потому что мой промт выглядит как на скрине :) Мне не нужно там видеть имя пользователя, потому что это требуется ультра редко и делается с помощью whoami, мне не нужно там видеть текущую директорию, так как она указана в заголовке iTerm и прочие штуки, которые часто вижу у других. Это все отнимает и место и внимание.
Себе не забираю, потому что мой промт выглядит как на скрине :) Мне не нужно там видеть имя пользователя, потому что это требуется ультра редко и делается с помощью whoami, мне не нужно там видеть текущую директорию, так как она указана в заголовке iTerm и прочие штуки, которые часто вижу у других. Это все отнимает и место и внимание.