Pull to refresh
20
10
Send message

Не пузырьком единым. Поговорим об алгоритмах сортировки

Reading time10 min
Views3.2K

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

Читать далее

История одного QA

Reading time7 min
Views2.1K

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

Читать далее

РПшники тоже ошибаются

Reading time7 min
Views976

Руководитель проекта — это по факту главный человек на проекте. Да, в любой проектной команде есть архитекторы, тимлиды, инженеры, менеджеры по продажам, но по факту все они несут свои проблемы и идеи к проектному менеджеру и с ним решают, что делать дальше. Именно в руках РП находятся все нити управления проектом и он как паук ими управляет. И, конечно, проектный менеджер тоже может ошибаться.

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

Читать далее

K8s как основа: строим инфраструктурную платформу

Reading time9 min
Views3.1K

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

Читать далее

COO: ключ к успешной стратегии

Reading time9 min
Views986

В крупных компаниях есть различные руководящие должности и одним из ключевых C*O для эффективной работы компании является COO (Chief Operating Officier) или по-нашему, операционный директор. Будучи правой рукой генерального директора (CEO), операционный директор является важнейшим элементом управления в организации. Выступая в роли связующего звена между стратегией компании и ежедневными операциями, операционный директор работает над совершенствованием различных уровней функционирования компании.

Читать далее

Test Driven Development: сначала тесты, потом реализация

Level of difficultyMedium
Reading time14 min
Views1.6K

Для большинства разработчиков очевидно, что сначала должен появляться код, а только потом тесты для проверки работоспособности этого кода. Но в этой статье мы рассмотрим обратный процесс — Test Driven Development. В простом понимании это означает написание тестов перед написанием кода, но на самом деле этот подход гораздо шире. Тесты перед реализацией заставляют вас больше думать о том, что на самом деле ожидается, а «как» приходит позже, и «как» — это деталь реализации, которую можно изменить с помощью рефакторинга.

В этой статье, написанной на основе публикации Rogério Chaves «The complete guide for TDD with LLMs» мы рассмотрим использование больших языковых моделей (LLM) для Test Driven Development.

Читать далее

ИИ и проблемы его безопасности

Reading time8 min
Views1.6K

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

Читать далее

Прячем shellcode в приложениях

Reading time6 min
Views1.3K

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

Читать далее

Машинное обучение в Apache Spark с помощью MLlib

Reading time8 min
Views1.2K

Apache Spark содержит в себе множество различных библиотек, среди которых есть библиотека MLlib, предназначенная для машинного обучения. Она содержит реализации различных алгоритмов машинного обучения и может использоваться во всех языках программирования, поддерживаемых фреймворком Spark.

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

Читать далее

GUI-приложения с помощью Python-Tkinter

Reading time5 min
Views6K

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

Читать далее

Дымовое тестирование

Reading time7 min
Views2K

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

Читать далее

Bad Pods: поговорим о подах-плохишах

Reading time8 min
Views3.1K

Обычно, когда мы говорим о безопасности Kubernetes, мы прежде всего говорим о защите подов от внешних угроз, но в некоторых случаях они сами могут представлять определенную опасность. Для того, чтобы эти угрозы мог реализовать атакующий, у него должны быть доступ к кластеру, разрешение RBAC на создание одного некоторых типов ресурсов (CronJob, DeamonSet, Deployment, Job, Pod, ReplicaSet, ReplicationController, StatefulSet) хотя бы в одном пространстве имен, и также должны отсутствовать политики безопасности.

Если у вас все это есть — тогда мы идем к вам в этой статье мы рассмотрим, какие атаки из подов вам могут грозить. А даже если есть не все, то особенно расслабляться все равно не стоит.

Читать далее

Cервисы в Android

Reading time11 min
Views3.1K

Под ОС Android можно разрабатывать приложения различного уровня сложности: от простых оконных игр до довольно сложных системных приложений. Достаточно распространенным типом приложений являются сервисы, и в этой статье мы поговорим о том, какие сервисы бывают и как их можно написать.

Читать далее

Разворачиваем GitLab за пару кликов

Reading time5 min
Views7.2K

Когда нужна полноценная среда для CI/CD, но нет времени на развёртывание инфраструктуры с нуля, контейнеризированный GitLab становится быстрым и удобным решением. В этой статье покажем, как развернуть локальный GitLab и GitLab Runner через Docker и Docker Compose, избежать распространённых ошибок на старте и настроить базовый пайплайн за минимальное время.

Читать далее

Доверенная работа с Notary

Reading time5 min
Views870

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

Проект Notary, спонсируемый Docker, обеспечивает высокий уровень доверия к цифровому контенту с помощью криптографических подписей. Он гарантирует, что контент не изменен без одобрения автора и что его происхождение подтверждено.

Notary позволяет системам, таким как Docker Enterprise Edition (EE) с Docker Content Trust, устанавливать политику использования только подписанного контента при развертывании. Это делает Notary важным элементом безопасной цепочки поставок Docker, интегрируя безопасность на всех этапах работы.

Давайте посмотрим подробнее, как работает Notary и как его можно использовать на практике.

Читать далее

Контролируем качество данных с помощью Python

Reading time6 min
Views5.1K

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

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

Читать далее

Популярные средства для нагрузочного тестирования

Level of difficultyEasy
Reading time7 min
Views1.1K

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

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

Читать далее

Agile и информационная безопасность: проблемы и решения

Reading time9 min
Views927

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

Но для начала рассмотрим, что из себя представляет методология Agile, и чем она отличается от классической Waterfall.  

Читать далее

Выявляем повторную передачу пакетов в сети

Reading time6 min
Views4.6K

Медленная работа сети — проблема, с которой сталкиваются многие специалисты. В отличие от очевидных обрывов связи, «тормоза» зачастую трудно диагностировать, и найти их причину может быть не так просто. В этой статье мы разберем механизмы, лежащие в основе одного из таких случаев — повторной передачи пакетов в TCP-сети. Вы узнаете, как работает этот процесс, какие инструменты можно использовать для диагностики, а также как на практике выявлять и устранять проблемы с производительностью сети, связанные с потерей пакетов.

Читать далее

Как снять трафик, когда нельзя, но очень хочется

Reading time6 min
Views11K

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

Читать далее
1
23 ...

Information

Rating
603-rd
Works in
Registered
Activity