Обновить
20
0
Сергей Поповичев @Vanger

DevOps

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

Обзор отечественных компьютерных модулей формата SMARC

Время на прочтение10 мин
Просмотры11K

В статье кратко описан стандарт встраиваемых компьютерных модулей SMARC. Приведен краткий обзор отечественных производителей и модулей выполненных в данном стандартен.

Компьютерные модули, называемые также компьютерами на модуле (Computer-on-Module) или системами на модуле (System-on-Module), представляют собой компактный вычислитель, содержащий центральный процессор, память, контроллеры периферии и вторичные источники питания. Все периферийные интерфейсы выведены на разъемы в соответствии с той или иной общепринятой спецификацией.

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

Описание преимуществ и наиболее популярных среди разработчиков и пользователей встраиваемых систем стандартов компьютерных модулей: ETX, QSeven, SMARC, СOM Express и COM-HPC представлено в статье «Компьютерные модули. Описание преимуществ применения и обзор популярных стандартов».

Далее будет приведено описание одного из самых молодых стандартов: SMARC и краткое описание отечественных разработчиков и модулей в данном стандарте.

Читать далее

Дебажим Golang с помощью Delve

Уровень сложностиПростой
Время на прочтение10 мин
Просмотры17K

В этой статье мы рассмотрим, как дебажить программы, написанные на Golang, с помощью Delve. Delve — это сторонний отладчик для Go, скачать на github по ссылке https://github.com/go-delve/delve. Это хорошая альтернатива отладчику GDB golang (https://golang.org/doc/gdb), так как Delve куда больше возможностей для работы.

Читать далее

Протоколы в Python

Уровень сложностиПростой
Время на прочтение8 мин
Просмотры33K

В Python 3.8. появилась новая примечательная возможность — протоколы (protocols). Протоколы — это альтернатива абстрактным базовым классам (abstract base classes, ABC). Они позволяют пользоваться структурной подтипизацией (structural subtyping), то есть — осуществлять проверку совместимости классов исключительно на основе анализа их атрибутов и методов. В этом материале мы поговорим о протоколах в Python и разберём практические примеры работы с ними.

Читать далее

Kafka UI краткий гайд

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

Буквально недавно я начал создавать свой аналог сервиса Discord, используя веб-сокеты и передавая сообщения через очередь. В один из моментов мне понадобилось проверить, корректно ли проходят сообщения в этой очереди. Тогда я осознал, как неудобно каждый раз заходить в docker контейнер и вручную вводить команду для просмотра всех сообщений в топиках. После дня анализа и советов от моего коллеги, опытного DevOps-инженера Паши, я пришел к выводу, что kafka-ui от команды provectus — это наилучший и наиболее удобный инструмент для визуализации данных в Kafka.

Читать далее

Правильная поддержка Apple Silicon: как избежать проблем при апгрейде с Intel (x86_64) на Apple (arm64)

Уровень сложностиСредний
Время на прочтение6 мин
Просмотры4.6K

Инженеры Apple придумали прекрасные по быстродействию и производительности процессоры Apple Silicon (M1, M1 Max и так далее) на архитектуре arm64. Но за полученное быстродействие разработчикам пришлось платить своим временем.  

Рассказываем, к каким проблемам мог привести апгрейд рабочего мака и что нужно учитывать с изобретением процессоров Apple Silicon.

Статья вдохновлена ограничениями в недавно вышедшем Xcode 14.3: запуск из-под Rosetta в нём стал deprecated.

Читать далее

Как не отказаться от тестирования фича-веток при переходе на микросервисы

Время на прочтение15 мин
Просмотры3.7K

В современном мире приложение — это огромная связка микросервисов. Функционально её протестировать сложнее, чем монолит. Кто-то решает это единым staging’ом и чатиком синхронизации: «займу auth на полчасика». Другой уходит с головой в shift-left или тестирует в canary. Разберём, как катнуть веточку сервиса и получить свой личный staging.

Меня зовут Евгений Харченко, я инженер в платформе Авито. В мою ответственность входят процессы и технологии, которые связаны с разработкой кода и внедрением его в продакшен. Сегодня я хочу поговорить о том, как организовать работу с фича-ветками при разработке.

Читать далее

Python Дайджест: как ускорить Django проект до (почти) максимума

Время на прочтение7 мин
Просмотры7.7K

Завершение цикла статей про техническое оживление Python Дайджест. В первых трех частях рассказано как был совершен переход с Python 3.4 на Python 3.11 и Django 4, отформатирована вся кодовая база с pre-commit, настроена автоматизация задач на основе Github Actions. В заключительной части расскажу как получить "быстрый" сайт.


Читать дальше →

Пишем простой ML веб-сервис на FastAPI

Уровень сложностиПростой
Время на прочтение9 мин
Просмотры22K

Данный туториал пошагово разбирает процесс создания веб-приложения для определения тональности текста на основе NLP-модели.

Мы будем использовать модель из библиотеки Hugging Face Hub, но описанный подход подойдет для любой задачи машинного обучения.

План:

1. Загрузка и подготовка модели машинного обучения для использования в веб-сервисе.

2. Создание веб-сервиса с помощью FastAPI.

3. Изучение пользовательского интерфейса FastAPI для удобного ручного тестирования и демонстрации работы приложения.

4. Написание автоматических тестов с помощью библиотеки pytest.

5. Запуск приложения в Docker-контейнере.

Код доступен на GitHub.

Читать далее

Team-lead & руководство командой: б(ы)ть или не быть?

Уровень сложностиПростой
Время на прочтение13 мин
Просмотры8.6K

«О чем это я?» или вместо предисловия.

Эта статья, каких уже наверняка много на этом ресурсе, о личном опыте работы тим-лидом, написанная непосредственным участником событий и обладателем этой несчастливой роли. В ней поговорим о рабочих моментах/вопросах и способах их решения.

В тексте, как бы сам не любил этого, используются профессиональные жаргонизмы, которые являются прямой фонетической калькой с англоязычных слов. Сделано это умышленно и намеренно, чтобы сократить количество «букаф» и обеспечить передачу смысла максимально коротким путем (как водка – сразу в мозг!).

Чего в статье нет: «золотых правил идеального тим-лида», детально-пошаговых инструкций по разрешению конфликтов и прочей нравоучительной нудятины.

Читать далее

DevOps спит, консоль работает. Как сократить путь от разработки до внедрения приложения

Уровень сложностиСредний
Время на прочтение6 мин
Просмотры2.8K

Хорошо быть умелым разработчиком и самому закрывать все задачи по запуску микросервисных приложений. Но как быть, если команда разработчиков тратит все время на управление микросервисными приложениями, настройку систем безопасности, аутентификации, мониторинга, логирования? Можно писать код и самостоятельно запускать каждый компонент, а можно нажать несколько кнопок и развернуть микросервис. Именно для этого мы создали консоль в платформе контейнеризации dBrain.cloud. В этой статье хотим подробнее рассказать, зачем и кому она будет полезна.

Что такое консоль dBrain

Особенности асинхронности в Python

Уровень сложностиСредний
Время на прочтение8 мин
Просмотры20K

Привет, Хабр! Меня зовут Николай Нагорный, я работаю в Росбанке над платформой Advisors’ Axiom. В этом посте я подробно расскажу о важной фиче, которая появилась в Python 3.5 — асинхронности. Затрону основные концепции и инструменты, приведу примеры кода. Пост будет полезен новичкам для понимания основ асинхронности и, может, даже опытным разработчикам в поиске новых идей и подходов.

Читать далее

Декоратор cached_property

Время на прочтение4 мин
Просмотры9.6K

В этой статье хочется рассмотреть декоратор cached_property. Почему он есть и в стандартной библиотеке и в Django. Чем они отличаются и когда какой лучше использовать

Читать далее

Оптимизируем изображения в HTML

Уровень сложностиПростой
Время на прочтение8 мин
Просмотры23K

Вместе со Стивом Сьюэллом, CEO Builder.io, разбираемся, почему с точки зрения оптимизации производительности изображения лучше загружать через HTML, а не через CSS. 

Читать далее

Как установить и настроить LXD на Ubuntu

Время на прочтение9 мин
Просмотры10K

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

Данный материал не претендует на самое современное правильное решение для продакшена, а больше формирует понимание работы контейнеров, существующих альтернатив Docker.

Читать далее

Мониторинг SSL-сертификатов и доменов с помощью Zabbix

Время на прочтение16 мин
Просмотры20K

Если вы отвечаете за работоспособность сайтов, то эта статья поможет вам и вашим клиентам своевременно продлить срок регистрации доменов и вовремя обновить SSL-сертификаты. 

Как и предыдущих статьях нашей серии про Zabbix, мы сначала рассмотрим ручные методы контроля, а затем перейдем к описанию шаблона и скриптов контроля для Zabbix.

Читать далее

5 полезных библиотек Python (с примерами)

Уровень сложностиПростой
Время на прочтение6 мин
Просмотры33K

Python остается топ 1 среди языков программирования по версии многих журналов и сайтов. Популярность языка и его большое сообщество привело к тому, что сейчас для Python существует огромное число библиотек. К сожалению, большая часть этих библиотек была создана энтузиастами и больше не поддерживается. Давайте посмотрим на 5 хороших развивающихся библиотек, которые могут помочь при решении практических задач.

Ознакомиться

Подключение жидкокристаллического дисплея LCD1602 (HD44780) к микроконтроллеру ATmega8 в 8-битном режиме

Уровень сложностиСредний
Время на прочтение7 мин
Просмотры16K

LCD-дисплеи (Liquid Crystal Displays) используют для отображения состояния или параметров в различных приборах.

Жидкокристаллический дисплей LCD1602 представляет собой 16-выводное устройство, имеющее 8 выводов для передачи данных (D0-D7) и 3 вывода управления (RS, RW, EN). Остальные 5 выводов предназначены для питания и подсветки ЖК-дисплея. Цифры «1602» указывают на формат выводимой (отображаемой) информации: 16x02 символов (рисунок 1).

Выводы управления помогают нам настроить LCD-дисплей в командном режиме или режиме передачи данных. Они также помогают настроить режим чтения или записи, а также время чтения или записи.

LCD-дисплей 16x2 можно использовать в 4-битном или 8-битном режиме в зависимости от технических требований. Чтобы использовать его, нам необходимо отправить определенные команды на LCD-дисплей в командном режиме, и как только ЖК-дисплей будет настроен в соответствии с нашими требованиями, мы сможем отправить необходимые данные в режиме передачи данных.

Для получения дополнительной информации о LCD-дисплее 16x02 и о том, как его использовать, необходимо обратиться к datasheet.

Читать далее

Документирование кодовой базы. Зачем и как?

Время на прочтение10 мин
Просмотры41K

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

Читать далее

Выгружаем историю изменений статуса задачи в Jira с помощью Python

Уровень сложностиПростой
Время на прочтение2 мин
Просмотры7.5K

В данной статье поэтапно расскажу, как подключится к Jira используя Python и выгрузить историю изменений статуса.

Читать далее

Хорошая документация: критерии, методика разработки и личный опыт техписателя

Уровень сложностиПростой
Время на прочтение9 мин
Просмотры6.4K

Всем привет! Меня зовут Антон, я 9 лет занимаюсь документацией для программистов и год работаю техническим писателем в IT-департаменте Банка РНКБ. За это время у меня сложилось своё видение «хорошей» документации и методики её разработки, и я решил поделиться им с вами.

Планирую рассказать всё в двух статьях. Сегодня поговорим о документации для IT-департамента — той, которую распространяют в электронном виде, размещают на отдельном сайте и которой пользуются программисты, тестировщики, аналитики и руководители отделов. Помимо своего опыта, покажу примеры, статьи и исследования на тему ведения документации, которые помогли мне — и могут пригодиться вам.

Читать далее

Информация

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