Учимся работать с Kubernetes через запуск приложения

Вместе с Павлом Агалецким, ведущим разработчиком PaaS в Авито, изучим команды утилиты kubectl в Kubernetes, попробуем запустить два приложения и познакомимся с консольным дашбордом k9s.
Пользователь

Вместе с Павлом Агалецким, ведущим разработчиком PaaS в Авито, изучим команды утилиты kubectl в Kubernetes, попробуем запустить два приложения и познакомимся с консольным дашбордом k9s.

Недавно я увидел сообщение, демонстрирующее будущий дизайн итераторов для Go 1.23 (август 2024 года). Насколько я могу судить, многим людям этот дизайн не нравится. Я хотел высказать свои мысли по этому поводу как разработчик языка.

В последних числах мая 2024 года появился анонс новой визы цифрового кочевника в Таиланде - DTV. Цифровые кочевники теперь, могут подать заявку на визу и проживать в стране до 5 лет. Требований почти нет, ясности пока мало, однако все это выглядит как существенное снятие барьеров для желающих пожить здесь подольше. Таиланд решился на очередное послабление, вслед за аналогичными программами, стартовавшими в Малайзии и Индонезии.
Привет, Хаброжители!Не секрет, что многие в IT‑индустрии не имеют высшего образования (вообще или законченного). Причины, по которым это происходит, известны — многие начинают программировать еще в школе, и им скучно слушать лекции по уже известным знаниям, слишком мало практической работы, жалко тратить несколько лет, форма обучения ощущается устаревшей.
Я сам, уйдя из университета 18 лет назад, закончив только три курса, задним числом могу сказать, что у меня нет претензий к учебной программе по содержанию. Те знания, что я успел изучить, действительно пригодились. Но форма обучения и атмосфера университета мне не понравились совершенно. Среди прочего, были преподаватели, которые говорили «мы не знаем, зачем вам те знания, что мы рассказываем». При том, что эти знания мне тоже пригодились.

Привет, гоферы!
В этой статье я хочу поделиться мыслями и идеями, которые у меня накопились за время работы с дженериками в Go, и в частности о том, как шаблоны многозадачности могут стать более удобными и переиспользуемыми с помощью дженериков.
Горутины виснут непонятно почему, случайная запись в закрытый канал вызывает panic, нормально протестировать приложение вообще невозможно.
Наверняка многие из вас сталкивались с такой проблемой: синтаксис языка Go вроде бы очень простой, можно сказать примитивный, да и горутины создаются элементарно, но при этом написать мало-мальски серьёзную программу, которая конкурентно что-то делает, внезапно оказывается не так-то просто.
Чтобы не запутаться, люди придумали концепцию structured concurrency, которую можно применять и в Go.

Привет! Меня зовут Денис, я ведущий Golang-разработчик в МТС Диджитал. Еще год назад я работал экспертом по запуску новых сервисов и услуг в Корпоративном центре МТС и параллельно заканчивал курс «Продвинутый Go‑разработчик» от Практикума.
В этой статье я расскажу, как начал программировать на Python и зачем мне понадобился Go, как и чему я учился и почему теперь посматриваю на Rust.

Привет, Хабр! Меня зовут Александр Лырчиков, я разрабатываю систему хранения данных TATLIN.UNIFIED в YADRO. СХД — сложная система, и, если при работе произошла ошибка, она должна своевременно и понятно сообщать пользователю об этом. В большинстве веб-сервисов для этого используют баннер с надписью «Что-то пошло не так», но такой способ уведомления нам не подходит.
Мы столкнулись с проблемой, когда переданных сообщений и HTTP-кодов уже не хватает. Поэтому разработали собственный инструмент для обработки ошибок Terror (TATLIN + error). В результате работа с кодом стала проще, мы получили красивый API, а пользователи — понятное описание ошибки и локализацию текста на разные языки. В этой статье расскажу, как мы создавали Terror, чтобы вы смогли повторить решение.

История про интересный пример кода на Go и то, что иногда для понимания происходящего в коде полезно смотреть на него под другим углом.

Недавно появились мысли походить на собеседования чем я успешно занялся. Если конкретно - смотрел лидовскую/сеньерскую позиции на Python и Golang(но статья может пригодиться backend разработчикам в целом). Не ставлю целью статьи объять все не объятное и дать какие-то гарантии. Я лишь зафиксирую данные для себя на будущее.
Вообще ходить на собеседования неплохой навык - в моем случае удается неплохо прокачать технические скилы и узнать запросы рынка на текущий момент(ведь может случиться так, что твои навыки перестанут быть актуальными).
Сразу сделаю пометку, что некоторые навыки/ресурсы специфичны(по типу нарешивания Leetcode), но отталкиваемся от текущих реалий рынка.

Привет, Хабр! Меня зовут Макс, я Go-разработчик в компании SimbirSoft. Язык Go (Golang) стремительно набирает популярность, он всё чаще внедряется в существующие программные решения, а также встречается в стеке новых проектов. Высокая производительность и скорость работы – его главные преимущества, поэтому для реализации бизнес-задач он подходит как нельзя кстати. Go легко поддерживается и отлично годится для создания MVP, из-за чего востребованность в нём растёт.
Но чтобы этот язык программирования был действительно производительным, разработчикам необходимо учитывать некоторые тонкости работы с ним. Иначе ваше приложение станет таким же медленным, как айтишник без чашки кофе :) В этой статье мы с вами на примерах разберём часто возникающие ситуации при работе с Go, а также рассмотрим приёмы, которые позволят повысить производительность кода. Надеюсь, разработчики уровня джуниор и мидл смогут почерпнуть для себя что-то полезное.
Мы начинаем!

Привет, Хабр! На связи Кирилл Веркин. Вообще, я занимаю в СберМаркете должность Senior QA, но ради большей производительности команды стал немного кодером.
Эта статья может быть интересна тем, кто замечает, что задачи в команде часто теряются, и хочет автоматизировать процесс напоминалок. Я делюсь кодом, поясняя ключевые моменты для таких же новичков в Go. Мой код написан для сочетания GitLab, Jira и Mattermost (корпоративный мессенджер, которым мы пользуемся в СберМаркете), но подобное решение можно реализовать и с другими сервисами.

Введение: Пересмотр Традиций в Мире Go
В мире разработки на Go выбор фреймворка часто превращается в лояльность, сопоставимую с выбором между Apple и Android. Фреймворки вроде Gin, Echo и Beego долгие годы были верными спутниками программистов, помогая быстро развертывать проекты и достигать первых успехов. Они предлагали удобные инструменты и привычные шаблоны работы, но со временем становится очевидным, что у каждого свой «язык». Это создаёт трудности при переходе между ними или интеграции с другими системами.

4 июня СДЭК предварительно подтвердил, что сбой в его работе связан с внешним воздействием. 6 июня совет директоров компании соберется, чтобы обсудить данные внутреннего расследования.
Желаем ИТ-команде СДЭК скорейшего восстановления работы в полном объеме.
Официальные итоги расследования мы узнаем еще не скоро, если их вообще опубликуют. Но когда происходит публичный инцидент таких масштабов — обсуждения неизбежны. Важно не превращать их в бестолковый хайп и не надевать белое пальто — мол если бы они сделали то-то и то-то — такого бы не было.
Нужно делать правильные выводы из ситуации и уже сейчас подумать, а что мы можем сделать для того, чтобы уменьшить вероятность таких инцидентов в наших компаниях.

Я java-программист по профессии и алкоголик go-developer по зову души. И вот в один прекрасный день я подумал о том, что раз уж в Go есть пакет reflect, то должны быть и способы АОП, прямо как в java. Если вкратце, я захотел генерировать обертки для функций в рантайме, позволяя красиво оборачивать логи, мониторинги, трейсинги, и прочие довольно однотипные штуки, по аналогии с тем, как я проделывал это в java.
Если вам стало интересно, что у меня из этого вышло, добро пожаловать под кат!

С начала прошлого года я наблюдал за появляющимися в больших количествах статьями и материалами на тему изучения английского языка с помощью ChatGPT. Конечно, как преподавателя английского языка, меня очень интересует этот вопрос, так же как и лодочников, сломавших первую лодку с паровым двигателем, и извозчиков, недовольных трамваями. Однако с течением времени моя тревога прошла, потому что полтора года спустя не объявилось ни одного человека, выучившего английский язык только с помощью нейросети. А отсутствие подтвержденных результатов – это достаточно мощный аргумент.
Как вы относитесь к гомеопатии? Стали бы вы с ее помощью лечить опасное заболевание, если есть проверенные годами методы? Хотя можно привести и примеры с ГМО, где есть прослойка населения, опасающаяся использовать «новинку», но здесь у нас хотя бы есть некие исследования о безвредности, а в ChatGPT – нет свидетельств по типу «я использовал только ChatGPT и достиг отличных результатов». Под результатами мы конечно понимаем способность работать за границей, общаться с коллегами или хорошие баллы на экзамене типа IELTS или TOEFL.
Но это обывательский подход, конечно же, уже проводились некие исследования, задействующие фокус-группы, в ходе которых, например, было выяснено, что «ChatGPT оказывает позитивное воздействие на навыки письма и незначительное – на развитие разговорных и грамматических навыков, словарный запас, мотивирование участников занятия». Упоминается, что «хотя AI-технологии по типу ChatGPT могут оценивать уровень знания, и проводить инструктаж по обучению языкам, они должны рассматриваться скорее как дополнение, а не как замена людям».

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


Привет, Хабр!
Представьте себе, вы приходите домой после долгого рабочего дня, и вас встречает пушистый котик. Вы знаете, что он ждет вас, чтобы вы рассказали ему о своих подвигах на работе. И вот, вы начинаете свой рассказ, а он, этот милый мурлыка, вдруг спрашивает: "А как там у тебя с оптимизацией запросов в PostgreSQL?"
Вы, конечно, удивлены: "Откуда у кота такие знания?" Но котик смотрит на вас с понимающим видом и говорит: "Ведь хороший запрос должен быть как прыжок кошки - быстрым, точным и грациозным..."