Как стать автором
Обновить
81
0
Vladimir Chernyshev @VolCh

Software Engineer, Technical Lead

Отправить сообщение

Как мы сделали оффлайновый SMS-локатор/трекер

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров4.8K

Сейчас начинается самый продуктивный сезон сбора грибов. В этой статье я расскажу о технически успешной попытке сделать "оффлайновый" SMS-локатор, и о том, почему проект "не взлетел". И о том, при чём тут грибы :)

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

В 2017 мне в голову пришли мысли: ну хорошо, я сам пока здоровый, и хожу в лес один, наматывая с ружьем десяток километров за раз, но вот если со мной что-то случится - то как меня найдут? Да и чтобы близкие не беспокоились — можно ли их как-то держать в курсе? Есть ли надежные способы давать весточку о своем местонахождении?

Читать далее: идея, разработка, и Гугл
Всего голосов 25: ↑25 и ↓0+25
Комментарии30

Nginx. О чем не пишут в книгах

Время на прочтение9 мин
Количество просмотров45K

Эта статья родилась случайно. Слоняясь по книжному фестивалю и наблюдая, как дочка пытает консультантов, заставляя их искать Иэна Стюарта, мой глаз зацепился за знакомые буквы на обложке: "Nginx".

Надо же, на полках нашлось целых три книги - не полистать их было бы преступлением. Первая, вторая, третья... Ощущение, будто что-то не так. Ну вроде страниц много, текст связный, но каково содержание? Установка nginx, список переменных и модулей, а дальше docker, ansible. Открываем вторую: wget, лимиты запросов и памяти, балансировка, kubernetes, AWS. Третья: GeoIP, авторизация, потоковое вещание, puppet, Azure. Ребята, а где про то, как вообще работает nginx? На кого рассчитаны ваши книги? На состоявшегося админа, который и так знает архитектуру этого веб-сервера? Да он вроде с базовыми настройками и сам справится. На новичка, который не знает как пользоваться wget? Вы уверены, что ему знание о существовании ngx_http_degradation_module и тем паче "облака" важнее порядка прохождения запроса?

Итак. О чем не пишут в книгах.
(здесь и дальше мы говорим только о NGX_HTTP_)

Фазы обработки запроса
Всего голосов 86: ↑86 и ↓0+86
Комментарии11

Настройка отказоустойчивого кластера Kubernetes на серверах с публичной и приватной сетью с помощью Kubeadm

Время на прочтение27 мин
Количество просмотров21K

У меня возникла задача настроить отказоустойчивый Bare Metal кластер для комплексного приложения, в связи с чем и возникла данная статья. Сразу хочу сказать, что не являюсь экспертом в K8S, однако имею опыт развертывания продуктовых кластеров DC/OS (экосистемы, основанной на Apache Mesos).

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

Читать далее
Всего голосов 13: ↑12 и ↓1+11
Комментарии9

Продвинутая Helm-шаблонизация: выжимаем максимум

Время на прочтение10 мин
Количество просмотров29K


Стандартной Helm-библиотеки и привычных подходов к написанию Helm-чартов обычно хватает для автоматизации несложных приложений. Но когда количество и сложность Helm-чартов растут, то минималистичных Go-шаблонов и неоднозначной стандартной Helm-библиотеки быстро перестаёт хватать. В этой статье речь пойдет о том, как сделать ваши Helm-шаблоны гораздо более гибкими и динамичными, реализуя свои собственные «функции» в Helm, а также эксплуатируя tpl.

NB. Всё описанное было проверено с werf, но так как шаблоны в этой утилите практически идентичны Helm-шаблонам, то и всё нижеприведенное будет полностью или почти полностью совместимо с обычным Helm обеих версий (v2 и v3).

А теперь разберем, как получить от Helm-шаблонов всё, что можно… и даже всё, что нельзя!
Читать дальше →
Всего голосов 52: ↑51 и ↓1+50
Комментарии18

Изменит ли Parallels отношение к хромбукам?

Время на прочтение4 мин
Количество просмотров5.6K


Хромбуки получают все большее распространение. Некоторые глобальные производители персональных компьютеров даже запускают отдельные линейки компьютеров на Chrome OS, которые ориентированы на корпоративных заказчиков. Это действительно удобно: сравнительно невысокая цена, ограниченный набор только самых необходимых приложений, удобное администрирование через консоль Google. Но, как macOS, операционка от Google обладает одним существенным недостатком. На ней невозможно запустить приложения для Windows.
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии16

Корпоративный ход

Время на прочтение5 мин
Количество просмотров3.5K
image

В данной публикации будет описан немного другой взгляд на карьеру в IT, нежели обычно это преподносится. И, наверное, с такого угла IT будет таким же, как и все остальные сферы народного хозяйства. Разве что фантик пайки послаще, покамест.
Читать дальше →
Всего голосов 22: ↑13 и ↓9+4
Комментарии37

Тренируемся дома: отжимания по программе Пола Уэйда

Время на прочтение21 мин
Количество просмотров245K

image


Представляю программу Тюремных Тренировок Пола Уэйда. Начнём с серии классических упражнений со своим весом для верхней части тела — отжиманиям.


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


Серия сосредоточена на цепочке из 10 последовательных упражнений. Когда освоите одно упражнение, то перейдёте к следующему и так далее…
Мы называем базовые упражнения как «10 уровней», и достигнув 10 уровня, вы станете сильнейшим настолько, насколько это возможно для человека в этих движениях. По этой причине, последняя ступень именуется «уровнем мастера». Вам станет понятнее, как это работает, если дополнительно ознакомитесь с книгой Тренировочная Зона (Издательство Питер).

Читать дальше →
Всего голосов 157: ↑137 и ↓20+117
Комментарии198

Бизнес-экспансия во Вьетнам: новые возможности после пандемии

Время на прочтение5 мин
Количество просмотров4.4K
Успешнее других стран Азии справившись с пандемией COVID-19, Вьетнам становится одним из самых привлекательных мест для электронного бизнеса в мире. Изучаем особенности продвижения цифровых проектов во Вьетнаме вместе с тремя экспертами: руководителем международного платежного провайдера и эквайера ECOMMPAY в Азиатско-Тихоокеанском регионе, экспертом Gate2Asia Одри Оттевангер (Audrey Ottevanger), менеджером по глобальному развитию бизнеса и электронной коммерции компании Softline Антоном Мезенцевым и Иваном Осиповым, руководителем подразделения международных платежных систем.


Читать дальше →
Всего голосов 4: ↑3 и ↓1+2
Комментарии4

Swagger/OpenAPI Specification как основа для ваших приёмочных тестов

Время на прочтение17 мин
Количество просмотров66K

Человеческая жизнь слишком коротка, чтобы тратить ее на интеграцию и документацию. С помощью контрактов и кодогенераторов можно сократить рутинные операции и переписывание кода, обеспечить недосягаемое иными способами покрытие и достигнуть невыразимой чёткости бытия тестировщиков, разработчиков и систем.


Я занимаюсь автоматизацией тестирования в Яндексе с 2013 года. Из них более четырёх лет автоматизирую тестирование REST API-сервисов. На Heisenbug я рассказал об использовании OpenAPI-спецификации как основы для приёмочных тестов, а также о том, как легко поддерживать автотесты на огромное количество REST API-сервисов и добавлять автотесты на новые проекты.



Под катом — видеозапись и расшифровка моего доклада. Примеры из доклада есть на GitHub.

Всего голосов 19: ↑19 и ↓0+19
Комментарии5

Делаем из Power Mac G4 универсальный и дешевый ретро-компьютер

Время на прочтение7 мин
Количество просмотров22K
Ретрогейминг на ПК. С чем в первую очередь это ассоциируется? Конечно же с этими огромными кинескопными мониторами и неизменно стоящими рядом системниками на которых в подавляющем большинстве стояла какая-нибудь Windows 98. Но существовал особый пласт компьютеров от фирмы Apple, которые в странах бывшего СНГ видели единицы, а уж про игры на них вообще не стоит и заикаться. Так что, давайте разбираться, возможен ли ретрогейминг на старом компьютере от Apple.
Сразу хочу предупредить, что это своего рода эксперимент, а не руководство к эксплуатации. Да, библиотека игр на Mac поскуднее будет, но она немальнькая. И в Mac Os есть свои приколы и баги, но не будем об этом.
Всего голосов 47: ↑46 и ↓1+45
Комментарии20

Не лайтхаусом единым: как проверить свой сайт со всех сторон

Время на прочтение3 мин
Количество просмотров18K


Когда мы говорим о веб-валидаторах и оптимизации сайта под них, мы чаще всего имеем ввиду Lighthouse/Pagespeed Insights от Google, который давно стал де-факто стандартом для оценки производительности сайта. Кто-то стремится к заветным 100 баллам даже на прототипах и шаблонных приложениях в две кнопки, кто-то в шутку создает абсолютно недоступный сайт с идеальным рейтингом, но для всех фронтендеров лайтхаус предоставляет вменяемую, хоть и довольно поверхностную, аналитику производительности сайта и поиск бутылочных горлышек. Однако скорость загрузки — лишь один из множества параметров, которые стоит проверять на своём сайте, и для большинства других есть свои валидаторы и скоринговые алгоритмы. Мы рассмотрим инструменты для каждого из значимых направлений и составим список, по которому стоит прогонять свой сайт, чтобы в дальнейшем не отлавливать проблемы вручную.
Читать дальше →
Всего голосов 35: ↑33 и ↓2+31
Комментарии4

Как и зачем в Lyft улучшали Kubernetes CronJobs

Время на прочтение18 мин
Количество просмотров3.6K
Прим. перев.: эту статью, в оригинале состоящую из двух частей, написал Kevin Yang — software engineer из компании Lyft, которая хорошо известна в Kubernetes-сообществе как минимум благодаря созданию Envoy. В новом материале автор делится интересным опытом миграции большого числа традиционных cron-задач из Linux на CronJobs в K8s. Можно в деталях узнать о том, к каким проблемам в масштабах Lyft это привело и как они были решены инженерами компании.



Мы в Lyft решили перевести серверную инфраструктуру на Kubernetes — распределенную систему оркестровки контейнеров, — чтобы воспользоваться преимуществами, которые предлагает автоматизация. Хотели получить прочную и надежную платформу, способную стать фундаментом для дальнейшего развития, а также снизить общие затраты, одновременно повысив эффективность.

Распределенные системы могут быть сложны для понимания и анализа, и в этом смысле Kubernetes — не исключение. Несмотря на его многочисленные преимущества, мы выявили несколько проблемных моментов при переходе на CronJob — встроенную в Kubernetes систему для выполнения повторяющихся задач по расписанию. В этом цикле из двух статей мы обсудим технические и эксплуатационные недостатки Kubernetes CronJob при использовании в крупном проекте и поделимся с вами опытом их преодоления.
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии1

Опенсорсные альтернативы Google Analytics на своём хостинге

Время на прочтение5 мин
Количество просмотров22K

Веб-интерфейс опенсорсного сервиса аналитики Matomo

Дегуглификация онлайновой жизни требует внедрения свободных альтернатив во всех областях. Защитники приватности ведут списки таких продуктов по категориям.

С точки зрения системного администратора в этих списках отдельно выделяется категория веб-аналитики — замена сервису Google Analytics, который собирает детальную статистику о посетителях сайта. Все знают, как работает такой сервис. Внедряете на страничках JS-код отслеживания, и если человек не установил блокировщик следящих скриптов, то каждый раз при открытии страницы будет срабатывать этот скрипт. Дальше статистика по вашим пользователям отправляется на хранение в корпорацию Google.

К счастью, есть ряд свободных, опенсорсных альтернатив Google Analytics, которые к тому же работают быстрее, поскольку скрипты меньше по размеру и загружаются с вашего собственного хостинга, а не со стороннего сервера. Информация о пользователях никуда не отправляется, а многие сервисы не используют куки и соответствуют законодательству GDPR о защите личных данных.
Читать дальше →
Всего голосов 46: ↑46 и ↓0+46
Комментарии18

Строим ролевую модель управления доступом. Часть вторая, «строительная»

Время на прочтение10 мин
Количество просмотров21K
Пост, который вы сейчас читаете, – продолжение статьи о том, как правильно выстроить в крупной компании ролевую модель управления доступом пользователей к различным системам. Напомним: построение ролевой модели – это скорее процесс, чем результат, и первую часть нашей дилогии мы посвятили подготовке к «строительству». В ней мы рассказали, как создать функциональную модель каждого подразделения и должности, провести аудит ИТ-систем и расставить их по приоритетам, создать бизнес-ориентированное описание прав пользователей и о других важных подготовительных шагах. Сегодня же поговорим о способах построения ролевой модели, ролевых матрицах, чем здесь поможет внедрение автоматизированных систем управления доступом (IdM/IGA), и что вы получите на выходе.


Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии6

Ansible playbooks — это код: проверяем, тестируем, непрерывно интегрируем. Иван Пономарёв

Время на прочтение20 мин
Количество просмотров21K

Предлагаю ознакомиться с расшифровкой доклада Ивана Пономарёва «Ansible playbooks — это код: проверяем, тестируем, непрерывно интегрируем».


Рефакторинг кода может быть увлекательным, особенно если это код вашей инфраструктуры. К тому же Ansible-роли почему-то имеют тенденцию к быстрому увеличению сложности. И это добавляет «изюминку» в вашу задачу. Иван расскажет, как можно преодолевать сложность Ansible-кода с помощью тестирования. В Docker-контейнерах.
По мере разрастания кодовой базы в Ansible приходят знакомые проблемы: сложность поддержки кода, ошибки и страх изменений. У знакомых проблем есть знакомое решение: автоматическое тестирование и CI. В докладе Иван покажет, как с использованием ряда инструментов решить проблемы «хрупкости» Ansible-кода, выполнить статический анализ, протестировать Ansible-скрипты и настроить CI-системы для публикации ролей в Ansible Galaxy.


Всего голосов 14: ↑14 и ↓0+14
Комментарии18

Документирование микросервисов в LeanIX (EAM)

Время на прочтение9 мин
Количество просмотров4.5K


Расскажу о нашем опыте автоматического документирования 150+ микросервисов в системе LeanIX Enterprise Architecture Managment. Многое получилось, как мы и хотели, для чего-то пришлось делать специальные доработки, часть вопросов не смогли решить. Но в любом случае мы получили опыт и готовы им поделиться.

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии13

Как я веду Zettelkasten в Notion уже год: стартовый набор и полезные трюки

Время на прочтение8 мин
Количество просмотров171K

Zettelkasten — крутой метод хранения идей и знаний — сейчас на слуху, его уже обсуждали на Хабре. Я веду такой в Notion уже год, потому что Notion лучше всех воплощает три главных принципа Zettelkasten: взаимосвязанность, категоризацию, актуальность. Метод улучшил качество моего обучения и исследований, и без него как-то уже не так. 

Я почитал русскоязычные и англоязычные ресурсы и не нашел ни нормального шаблона для Notion, ни объяснения как реализовать главные преимущества метода Zettelkasten. Под катом и то, и другое. 

UPD: На текущий момент, статья безбожно устарела, потому что за еще один год я набрался опыта, помогая другим людям организовать их Цеттели и наблюдая за чужим опытом. А еще Notion выпустил несколько фич, заточенных именно под Цеттель. И теперь мне совестно, как новички страдают, разбираясь в теме после меня.

Эту статью можно почитать для понимания основ, но актуальные источники информации тут:

  • У меня в Психотронке можно следить за подготовкой обновленной версии, ну и написать мне за помощью. А можете не следить: версия 2.0 выйдет на Хабре.
  • В русскоязычном сообществе Zettelkasten в Телеграме сидят люди, которые хорошо разбираются в теме. Мы обожаем помогать новичкам.

Дисклеймер: ни Notion, ни автор метода мне за статью не платили.
Читать дальше →
Всего голосов 49: ↑49 и ↓0+49
Комментарии88

Microsoft Azure Virtual Training Days — 3 крутых бесплатных вебинара

Время на прочтение2 мин
Количество просмотров1.7K


Microsoft Azure Virtual Training Days — это отличная возможность глубоко погрузиться
в наши технологии. Специалисты Microsoft помогут вам раскрыть весь потенциал облака, поделившись своими знаниями, предложив эксклюзивные идеи и практические занятия.

Выберите интересующую вас тему и зарезервируйте место на вебинаре прямо сейчас. Обращаем ваше внимание, что часть вебинаров, это повтор прошедших мероприятий. Если вы не смогли принять участие ранее, это отличная возможность подключиться сейчас и задать свои вопросы экспертам. Заглядывайте под кат!
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии1

Основы Ansible, без которых ваши плейбуки — комок слипшихся макарон

Время на прочтение12 мин
Количество просмотров134K

Я делаю много ревью для чужого кода на Ансибл и много пишу сам. В ходе анализа ошибок (как чужих, так и своих), а так же некоторого количества собеседований, я понял основную ошибку, которую допускают пользователи Ансибла — они лезут в сложное, не освоив базового.


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


Ожидаемый уровень читателя — уже написано несколько тысяч строк ямла, уже что-то в продакшене, но "как-то всё криво".

Читать дальше →
Всего голосов 112: ↑110 и ↓2+108
Комментарии66

Иван Чашкин: «Мне нравится, что OpenStreetMap — это открытые данные, которые доступны всем и всегда»

Время на прочтение7 мин
Количество просмотров2.8K

Иван Чашкин — web-программист и владелец небольшого интернет-магазина из Нижнего Новгорода. Но после работы он — волонтер. Причем в абсолютно разных проектах: он и куратор «Добрых крышечек» в своем городе и опытный картограф OSM, который сделал несколько интересных инструментов. Почему он кайфует от JOSM, зачем надо отмечать подъезды и как лучше всего это сделать — обо всем этом он рассказал в интервью.
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии0
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность