Pull to refresh
0
0
Сергей @Aineko

User

Send message

Основные инструменты Kubernetes в 2021 году

Reading time21 min
Views25K

В этой статье я кратко расскажу о своих любимых инструментах для Kubernetes, уделяя особое внимание новейшим и малоизвестным, которые, как мне кажется, скоро станут популярными.

В основе этого списка — мой личный опыт, и чтобы избежать предвзятости, я расскажу и об альтернативных инструментах, чтобы вы могли всё сравнить и принять решение, исходя из своих потребностей. Постараюсь дать информацию сжато и привести источники, чтобы при желании вы могли изучить всё самостоятельно. Описывая инструменты для различных задач разработки ПО, я хотел ответить на вопрос: «Как я могу сделать X в Kubernetes?»

Читать далее
Total votes 40: ↑40 and ↓0+40
Comments5

Отладка продакшена бесплатно: ELK, Jaeger, Sentry

Reading time4 min
Views4.8K

Наш продукт три года существовал в монолите, а ошибки мы мониторили с помощью New Relic. Когда мы перешли на микросервисы, дорогой New Relic c посервисной тарификацией надо было чем-то заменить. Вместо него мы сформировали стек из трёх основных инструментов — они бесплатны и полностью закрывают наши потребности

Я Миша Гудов, тимлид и бэкенд-разработчик в CarPrice, и под катом вы увидите, как мы перешли на маленький, но удобный стек.

Читать далее
Total votes 12: ↑10 and ↓2+8
Comments2

LogDoc: логи здорового человека

Level of difficultyMedium
Reading time6 min
Views5.3K

Привет, Хабр

Однажды команда LogDoc, которая тогда ещё была просто дружеской компанией суровых разработчиков, после бурного обсуждения очередного напряжённого рабочего дня вынесла однозначный вердикт — в мире нет и не предвидится нормального, человеческого продукта для работы в распределённой среде с логами, трейсами, сигналами и прочим подобным. Нас это опечалило (по очевидным причинам) и воодушевило — мы увидели возможность создать полезный продукт. Подумали, собрались с духом и выложились полностью в попытке реализовать задуманное. Именно результат наших усилий мы представляем вам в этой вводной статье.

Читать далее
Total votes 8: ↑4 and ↓40
Comments32

От идеи к развертыванию: искусство современной разработки программного обеспечения

Level of difficultyHard
Reading time19 min
Views4K

Только мировые Best-Practice's. Примеры.

Делюсь опытом о процессе разработки программного обеспечения используя Agile, начиная со сбора требований и заканчивая развертыванием.

Читать далее
Total votes 4: ↑3 and ↓1+2
Comments6

Итак, вы установили fzf. Что дальше?

Level of difficultyEasy
Reading time4 min
Views17K

Разработчики ПО — если не единственные, то практически единственные, кому очень просто создавать инструменты для улучшения своей профессиональной работы; однако со временем это усложняет жизнь людям, постоянно переключающимся между разными инструментами и не вкладывающим время в глубокое изучение своего инструментария. Имея глубокое уважение к негласным знаниям людей лучше меня, я всё же считаю, что отличная эвристика 80/20 заключается в том, чтобы изучать старые добрые инструменты Unix cat, ls, cd, grep и cut. (а если вам повезло устроиться на должность настоящего современного сисадмина, то ещё и sed с awk.)

Однако существуют инструменты, выгода от использования которых настолько мгновенна и ценность от применения настолько уникальна, что эвристика 80/20 полностью к ним неприменима. Один из них — это fzf. И меня очень печалит то, что многие скачивают его, запускают в командной строке «как есть», а потом просто мотают головой и произносят: «Я не понимаю».

Мне хотелось бы изменить ситуацию. Предположим, что вы работаете на более-менее стандартной машине с Ubuntu. Вы только что установили fzf при помощи стандартного скрипта установки. Что же дальше?
Читать дальше →
Total votes 54: ↑54 and ↓0+54
Comments25

Управление ресурсами нашего мозга

Level of difficultyMedium
Reading time15 min
Views4.8K

Эта статья по своей сути что-то вроде конспекта по вебинарам Ани Обуховой об эффективном использовании ресурсов нашего мозга, дополненного моими умозаключениями и рекомендациями.

Если хотите посмотреть оригиналы, то вот ссылки на её видео:
Как изменить mindset в Agile сторону
OKR изнутри — как мозг ставит цели

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

Читать далее
Total votes 16: ↑8 and ↓80
Comments6

Продвинутая работа с логами в Linux

Level of difficultyMedium
Reading time6 min
Views22K

Журнал событий, это компонент systemd, который захватывает сообщения Syslog, логи ядра, все события при инициализации системы (RAM, диск, boot, STDOUT/STDERR для всех сервисов), индексирует их и затем предоставляет удобной пользовательский интерфейс для поиска и фильтрации логов. Журнал (systemd journal) можно использовать вместе или вместо syslog или syslog-ng.

Утилита командной строки journalctl, если сравнивать ее с традиционным инструментами для работы с логами в UNIX (tail, grep, sed, awk) более широкие возможности.

Давайте рассмотрим основные возможности которые предоставляет журнал systemd и способы их применения.

Читать далее
Total votes 27: ↑26 and ↓1+25
Comments12

Как коммитить в open source. Пошаговый гайд

Level of difficultyEasy
Reading time2 min
Views8.3K

Инструкция написана для сервиса github. Вам нужно войти в свой аккаунт или зарегистрироваться.

Все команды вводятся в терминале.

Шаг 1

Делаем fork (копию) нужного проекта. Переходим в свой аккаунт и заходим в только что созданный fork.

Читать далее
Total votes 44: ↑38 and ↓6+32
Comments23

Чистый код. Часть 2

Reading time14 min
Views11K

Привет! Продолжаем цикл постов про чистый код по мотивам видеолекций Дяди Боба, первая часть тут. В этом посте поговорим про структуру функций и не только.

Передача булевых аргументов

Чаще всего передача булевых аргументов говорит о том, что функция делает сразу две вещи, а это значит, что она нарушает принцип единственности ответственности, и у нас должно быть две функции. Например, есть какая-нибудь функция createPayment, которая делает что-то одно, если это токен, и делает что-то другое, если это карточный платеж.

Читать далее
Total votes 25: ↑22 and ↓3+19
Comments10

Книга «Компьютерные сети. 6-е изд»

Reading time12 min
Views13K
image Привет, Хаброжители!

Перед вами шестое издание самой авторитетной книги по современным сетевым технологиям, написанное признанным экспертом Эндрю Таненбаумом в соавторстве со специалистом компании Google Дэвидом Уэзероллом и профессором Чикагского университета Ником Фимстером. Первая версия этого классического труда появилась на свет в далеком 1980 году, и с тех пор каждое издание книги неизменно становилось бестселлером. В книге последовательно изложены основные концепции, определяющие современное состояние компьютерных сетей и тенденции их развития. Авторы подробно объясняют устройство и принципы работы аппаратного и программного обеспечения, рассматривают все аспекты и уровни организации сетей — от физического до прикладного. Изложение теоретических принципов дополняется яркими, показательными примерами функционирования интернета и компьютерных сетей различного типа. Большое внимание уделяется сетевой безопасности.

Шестое издание полностью переработано с учетом изменений, произошедших в сфере сетевых технологий за последние годы, и, в частности, освещает такие технологии, как DOCSIS, 4G и 5G, беспроводные сети стандарта 802.11ax, 100-гигабитные сети Ethernet, интернет вещей, современные транспортные протоколы CUBIC TCP, QUIC и BBR, программно-конфигурируемые сети и многое другое.
Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments23

Шаблон проектирования: Chain of Responsibility

Reading time7 min
Views10K

Всем привет.

Данная статья будет полезна начинающим Java разработчиком понять зачем нужен шаблон проектирования «Цепочка ответственности» и как его можно использовать на примерах.

Итак начнем с самого начала. Основная суть данного шаблона: связывание объектов‑получателей в цепочку и передача запроса по ней.

Читать далее
Total votes 10: ↑8 and ↓2+6
Comments1

Begin /* Лицензии

Level of difficultyEasy
Reading time8 min
Views2.7K

Оглядываясь вокруг нельзя не заметить, что отношение отечественных разработчиков к результатам собственного труда довольно сильно отличается от того чем руководствуются западные их коллеги. Меня могут заклевать за то о чем я буду говорить ниже отдельные прошаренные экземпляры, но речь здесь не о них, а как и заявлено в названии рубрики, о начинающих, о вчерашних студентах, о ребятах, по ушам которых не так давно поездили в отделе кадров. И о том как им начать думать о себе не как о простом маленьком человечке среди прожженных опытом знатоков, а как о самостоятельном субъекте гражданского права, и, как следствие, права авторского.

Потому что правовая подготовка, даже базовая, как правило у обозначенных опытных товарищей так же отсутствует. Более того нередки случаи, когда и у руководства в том числе юридического, не в всё с этим в порядке. Укоренившаяся стандартная мантра из уст таких деятелей звучит примерно следующим образом: “Ты работаешь по трудовому договору, в котором прописаны твои должностные инструкции, по которым ты в рабочее время на рабочем месте разрабатываешь ПО. Которое потом таким образом автоматически становится собственностью работодателя”. Некоторые, чуть более прошаренные, при этом ссылаются на технические задания и некие исключительные права, которыми, опять же, якобы автоматически обладает работодатель.

И это выглядит на первый взгляд настолько убедительно, что у нового наемного работника даже не возникает нотки подозрения, что здесь что-то не так. И почему на западе так носятся со всякими патентами, судами, авторскими отчислениями и прочим юридическим балластом. Часто приходится слышать и аргумент в пользу того, что наше законодательство дескать отличается от, скажем, американского, и по этому это их американские заморочки. Да и вообще кто ты такой, что бы ставить под сомнение профессиональную пригодность целого юридического отдела?

Читать далее
Total votes 15: ↑7 and ↓8-1
Comments19

Книга «Современная программная инженерия. ПО в эпоху эджайла и непрерывного развертывания»

Reading time17 min
Views5.6K
image Привет, Хаброжители!

Дэвид Фарли, легендарный разработчик и создатель continuous delivery, рассказывает о фундаментальных принципах разработки современного ПО. Пора познакомиться с наиболее эффективными и грамотными методами управления рабочими процессами, которые позволят повысить качество ваших приложений, вашей жизни и жизни ваших коллег.

Ключевые концепции, лежащие в основе эффективной разработки ПО, — это непрерывное обучение и управление сложностью. Дэвид Фарли анализирует их и формулирует принципы, следование которым приведет к улучшению дизайна ПО и качества кода, а также методы и подходы, доказавшие свою эффективность и приводящие к успеху.

Речь идет не об абстракциях, вы освоите реальные приемы, которыми пользуются опытные разработчики ПО. Эти техники эмпирические и итеративные, они основаны на обратной связи и сосредоточены на выполнении кода, то есть соответствуют всем требованиям современной разработки.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments2

DTO в языке PHP: примеры для начинающих

Level of difficultyEasy
Reading time12 min
Views21K

DISCLAIMER


Друзья, читая этот текст, вы мало того, что общаетесь со вселенским разумом, но и принимаете участие в социальном эксперименте. ChatGPT пытается рассуждать о DTO в языке PHP. Пока ему сложно, с каждым вашим комментарием, замечанием, он пытается улучшить свой ответ, получается не всегда хорошо. Мы со своей стороны его почти не редактируем. Просто просим переформулировать какие-то фрагменты, дополнить свой ответ. Скоро опубликуем статью в ВАКовском журнале об этом эксперименте. Ссылку приложим в комментариях.

DTO (Data Transfer Object) — это шаблон проектирования, который используется для передачи данных между слоями приложения. DTO представляет собой объект, который содержит данные, необходимые для выполнения операции или запроса в приложении.
Читать дальше →
Total votes 14: ↑5 and ↓9-4
Comments36

Мой путь в профессию: из аналитиков в Go-разработчики

Level of difficultyEasy
Reading time6 min
Views5.7K
image

Привет! Меня зовут Герман, я backend-разработчик в команде Managed Service for Redis в компании #CloudMTS. В этой статье расскажу про свой приход в разработку на Go и поделюсь полезными ресурсами, которые мне помогли на этом пути.

Читать дальше →
Total votes 15: ↑12 and ↓3+9
Comments5

Типы HTTP-запросов и философия REST

Reading time4 min
Views939K
Этот пост — ответ на вопрос, заданный в комментарии к одной из моих статей.

В статье я хочу рассказать, что же из себя представляют HTTP-методы GET/POST/PUT/DELETE и другие, для чего они были придуманы и как их использовать в соответствии с REST.
Читать дальше →
Total votes 84: ↑78 and ↓6+72
Comments111

Основы веба, которые должен знать начинающий разработчик

Level of difficultyEasy
Reading time8 min
Views34K

В этом посте я объясню, как работает Интернет. Мы ответим на вопросы наподобие «Как браузер находит файл HTML для запрошенной веб-страницы?», «Как файл HTML превращается в интерфейс пользователя?», «Что можно сделать, чтобы ускорить этот процесс?», «Как устанавливается и поддерживается связь с сервером?», а также рассмотрим следующие концепции:

  • Клиент-серверную модель
  • Жизненный цикл запроса веб-страницы
  • Hypertext Transfer Protocol
  • Как браузеры рендерят контент
Читать дальше →
Total votes 50: ↑41 and ↓9+32
Comments16

Как навсегда запомнить выученное — 2 самые эффективные техники запоминания

Reading time17 min
Views57K

Интервальное повторение, эффект припоминания, метод Фейнмана, гипотеза желательной сложности, эффект генерации и другие свойства памяти, не позволяющие информации затеряться в синапсах мозга. Существуют ли техники обучения (запоминания) более эффективные, чем последовательное чтение учебного материала, пусть даже и с заметками?

Читать далее
Total votes 35: ↑34 and ↓1+33
Comments23

Что читать техлиду: 7 увлекательных книг

Reading time6 min
Views27K

Какие качества отличают хорошего технического лида? Уверены, как минимум инициативность, стратегическое видение, интерес к новым практикам и инструментам, идущие рука об руку с желанием постоянно развиваться. Немалую роль в lifelong learning техлида могут сыграть правильно подобранные книги.

Немет, Луц, Лав, Танненбаум, Страуструп, Олифер, Лукас — вот лишь некоторые известные авторы, о которых мы сегодня не будем говорить. Надеемся, что раз вы стали лидером технической команды, то с фундаментальной литературой в своей области знаний знакомы не понаслышке.

Под катом рекомендуем 7 изданий о soft-skills, методологиях, управлении командами и проектами.

Читать далее
Total votes 64: ↑62 and ↓2+60
Comments16

Git для ленивых: обзор консольной утилиты Lazygit

Reading time7 min
Views25K

При работе с Git-репозиториями часто нужно выполнять множество одинаковых действий: фиксировать изменения, переключать ветки, синхронизировать репозитории. Всё это требует ввода соответствующих команд в терминале. Когда частота ввода повышается до утомительной, на помощь могут прийти различные GUI-инструменты. В статье расскажу об одном из них — Lazygit, легковесном консольном клиенте для Git, который облегчает и упрощает работу с репозиториями.

Читать далее
Total votes 50: ↑48 and ↓2+46
Comments35

Information

Rating
Does not participate
Location
Воронеж, Воронежская обл., Россия
Date of birth
Registered
Activity