Как стать автором
Обновить
54
0
Волосатов Евгений @FFormula

Программист и Преподаватель

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

Безопасность CI/CD

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

Обычно, когда начинается разговор о DevSecOps, все сразу вспоминают о необходимости встраивать в конвейер SAST, DAST, SCA инструменты, проводить различные тесты на безопасность приложения и регулярно сканировать работающее в продуктивной среде решение.

Но при этом не стоит забывать и о необходимости обеспечивать безопасность самого конвейера CI/CD. В сегодняшней статье мы рассмотрим обеспечение безопасности конвейера, построенного на основе Jenkins. Но сначала рассмотрим краткое описание этого решения, что Jenkins из себя представляет и для чего используется. 

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

Теория, практика и личный опыт в обучении IT-управленцев

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

Всем привет. Меня зовут Сергей Фегон. Я ex-CТО, сейчас работаю руководителем нескольких групп разработки финтех-продуктов экосистемы компаний ВБЦ и TenChat, а также преподаю в OTUS. Делюсь своими знаниями на курсах CTO/Технический директор и Team Lead в OTUS. За время преподавательской деятельности и на основе личного управленческого опыта, я сформировал для себя несколько основных столпов подготовки IT-менеджеров:

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

Практические аспекты ранжирования ответов виртуального ассистента Салют

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

Всем привет! Меня зовут Аня Максимова, я занимаюсь NLP в команде Нейронные сети продукта Собеседник! 5 апреля проходила конференция Giga R&D Day, где мой коллега — Артем Снегирев рассказывал про практические аспекты ранжирования ответов виртуального ассистента Салют.

В этой статье мы подробнее расскажем вам, как делаем ранжирование ответов на примере собеседника, который является частью ассистентов Салют.

У ассистента есть три голоса — Сбер, Афина и Джой. Собеседник отвечает за общение на различные темы, ответы на фактологические вопросы и за развлекательный контент. Как правило, ассистент отвечает генеративными моделями, но есть сценарии, где используются заготовленные реплики, и их достаточно много, поэтому мы используем поиск — это классический retrieval-based подход.

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

15 тенденций в области разработки программного обеспечения в 2024 году

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

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

Читать далее
Всего голосов 16: ↑13 и ↓3+13
Комментарии5

Временные ряды с Julia с библиотекой TimeSeries.jl

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

Julia позволяет достигать скорости, сравнимой с C, что делает её хрошим выбором для временных рядов.

Пакет TimeSeriesпредоставляет удобные методы для работы с данными временных рядов в Julia.

Читать далее
Всего голосов 10: ↑9 и ↓1+14
Комментарии2

Node Pools в AKS

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

Привет, Хабр!

В Kubernetes кластер состоит из множества узлов (nodes), которые представляют собой виртуальные или физические машины, на которых запущены приложения. Node Pools — это группы узлов с одинаковой конфигурацией, управляемые как единое целое.

С Node Pools можно иметь разные пулы для разных задач или приложений, оптимизировать стоимость, используя различные типы виртуальных машин, и применять разные ОС в рамках одного кластера.

Azure Kubernetes Service (AKS) — это управляемый сервис Kubernetes от Microsoft, предназначенный для упрощения развертывания, управления и масштабирования приложений на базе контейнеров. AKS автоматически управляет хостовыми инфраструктурами, снимая бремя настройки и мониторинга, позволяя сосредоточиться на разработке приложений.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии1

Обзор языка Crystal

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

Привет, Хабр!

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

На первый взгляд, код на Crystal может показаться почти идентичным коду на Ruby — это было сделано намеренно, чтобы разрабы, уже знакомые с Ruby, могли без труда перейти на использование нового языка. Однако, несмотря на внешнее сходство, Crystal вносит ряд улучшений: система статической типизации с автоматическим выводом типов, обработка параллельных вычислений и возможность компиляции в машинный код.

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

10 полезных команд Git

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


В этой статье мы рассмотрим набор команд, которые немного облегчат вам жизнь и повысят продуктивность.
Читать дальше →
Всего голосов 30: ↑19 и ↓11+13
Комментарии9

Quality Gate для автоматизации QA

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

Понятие Quality Gate (дословно ворота качества), предполагает автоматические проверки качества, которые устанавливают пороговые значения для продвижения продукта по конвейеру разработки CI/CD.

Использование принципа Quality Gates помогает решать проблемы в коде на ранних этапах, до того, как он обрастёт зависимостями. Так, в частности выявив ошибки в коде на начальных этапах разработки мы потратим меньше времени на тестирование исправленного варианта кода, что в конечном итоге позволит снизить общие расходы на разработку.

Quality Gate также можно назвать контрольными точками качества, и именно это понятие мы и будем дальше использовать.

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

Прежде всего, контроль качества - это любая проверка, которая может остановить поставку продукта, если она не пройдена.

Читать далее
Всего голосов 8: ↑5 и ↓3+4
Комментарии0

Краткий обзор развития лямбда-выражений в C++11, C++14, C++17 и C++20

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

Привет, Хабр!

Сегодня рассмотрим лямбда-выражения в C++ и их эволюцию с момента появления в стандарте C++11 и до последних обновлений в C++20.

Лямбда-выражения в C++ — это анонимные функции, которые позволяют писать инлайн-выражения прямо там, где они используются. С их помощью можно легко определять функции обратного вызова, передавать их в функции высшего порядка или использовать для инициализации функциональных объектов.

Читать далее
Всего голосов 22: ↑15 и ↓7+13
Комментарии201

Как использовать Fetch API в Node.js, Deno и Bun

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

Получение данных с помощью HTTP-запроса — это фундаментальное действие веб-приложений. Возможно, вы делали такие вызовы в браузере, но Fetch API поддерживается в Node.js, Deno и Bun.

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

Кратко про FP в Julia

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

В отличие от императивного подхода, где выражается последовательность операций, функциональное программирование (FP) сосредотачивается на "что" и "как" должно быть вычислено, а не на "когда". Это приводит к более чистому, модульному и легко тестируемому коду.

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

Читать далее
Всего голосов 12: ↑10 и ↓2+12
Комментарии5

Разбираемся с Cloud Landing Zone

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

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

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

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

Как украсить и оживить сайт на Astro с помощью KwesForms и Rive

Время на прочтение6 мин
Количество просмотров996


В этой статье я расскажу, как добавить веб-форму KwesForms на сайт, созданный с помощью Astro, а затем оживить её с применением пользовательских событий и Rive.

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

С примером репозитория, содержащего весь код, и страницей предварительного просмотра можно ознакомиться по ссылкам:

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

Основы репликации в Kafka

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

Привет, Хабр!

Репликация в Apache Kafka - это механизм, который обеспечивает доступность и надежность в обработке потоков данных. Она представляет собой процесс дублирования данных с одной части темы в другие, называемые репликами.

В этой статье рассмотрим основы репликации в кафке.

Читать далее
Всего голосов 10: ↑7 и ↓3+6
Комментарии2

Инструменты автоматического тестирования безопасности QA

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

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

DevSecOps по своей сути является логичным дополнением выстроенных процессов DevOps. Так на рисунке ниже представлены те инструменты и методы, которые должны использоваться для того, чтобы разрабатываемое приложение содержало меньше багов и уязвимостей и в целом было более защищенным. 

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

Зачем нужен архитектор 1С. Часть 2

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


В предыдущей статье habr.com/ru/companies/otus/articles/772490 я постарался на конкретном примере показать различие между разработчиком 1С и архитектором 1С. Насколько по разному они подходят к решению одной и той же задачи. В этот раз я приведу пример, в котором различие между разработчиком и архитектором доходит до крайности. Решение архитектора, с точки зрения разработчика, противоречит самим основам.
Читать дальше →
Всего голосов 9: ↑6 и ↓3+5
Комментарии6

Продюсеры и консьюмеры с Apache Kafka в Python

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

Салют, Хабр!

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

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

В статье мы и поговорим именно про продюсерах и консюмерах в экосистеме Kafka в коннекте с Python.

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

Основы Rust: синтаксис и структуры данных

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

Привет, Хабр!

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

В этой статье рассмотрим основы Rust. Статья будет полезна тем, кто только начинает своё знакомство с языком.

Читать далее
Всего голосов 34: ↑20 и ↓14+9
Комментарии15

Управление загрузкой с помощью PostgreSQL и pg_headerkit

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

Привет, Хабр!

Supabase – это крутой open-source аналог Firebase, с его помощью можно организовать крутые штуки вроде ограничения скорости запросов.

Supabase – это инструмент, который дает возможность создавать масштабируемые серверные решения, используя PostgreSQL. С его помощью можно легко управлять базами данных, аутентификацией, хранением данных и реальным временем, но без всяких vendor lock-ins.

Rate Limiting контролирует поток запросов, чтобы ваш сервер не ушел в нокаут от перегрузки. Это спасает сервера от DDOS-атакти помогает обеспечить более равномерное распределение ресурсов среди пользователей.

Читать далее
Всего голосов 10: ↑7 и ↓3+6
Комментарии0
1
23 ...

Информация

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