Как стать автором
Обновить
315.84
Рейтинг
OTUS
Цифровые навыки от ведущих экспертов
Сначала показывать

О проверке захвата

Блог компании OTUS Программирование *Scala *
Перевод

Несколько дней назад мы увидели новую экспериментальную фичу под названием “проверка захвата” (capture checking), анонсированную в твите Мартина Одерски (Martin Odersky).

Эта фича является новой главой в десятилетней борьбе за добавление какой-либо формы системы эффектов в scala 3. Она имеет некоторое сходство с предложением линейных ограничений (linear constraints) для Haskell и временами жизни (lifetimes) Rust.

Читать далее
Всего голосов 3: ↑1 и ↓2 -1
Просмотры 1.8K
Комментарии 2

Новости

У SDET — сердце разработчика

Блог компании OTUS Тестирование веб-сервисов *
Перевод

Я Software Engineer in Test (SET). Многие не совсем понимают, что это значит. Разработчики часто называют меня «тестировщиком» или «QA», а бывший директор однажды подумал, что я занимаюсь DevOps. Хотя моя работа и охватывает данные области, они не являются моим основным направлением занятости. Давайте я постараюсь прояснить, что значит быть SET. 

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

Что такое облачный архитектор (и как им стать)?

Блог компании OTUS Облачные сервисы
Перевод

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

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Просмотры 2.3K
Комментарии 1

Сериализуемость транзакций

Блог компании OTUS Программирование *
Перевод

В этой статье рассмотрим, что такое "Сериализуемость" (Serializability) и какие гарантии она предоставляет.

В реляционных СУБД уровень изоляции Serializable (сериализуемость), как следует из названия, обеспечивает сериализуемость транзакций. Однако, как вы увидите далее, в некоторых базах данных реализована также строгая сериализуемость (Strict Serializability), которая представляет собой комбинацию сериализуемости и линеаризуемости (Linearizability).

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

Повтор — тоже атака. Часть 1

Блог компании OTUS Информационная безопасность *

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

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

Обзор — ConvNet для 2020

Блог компании OTUS Машинное обучение *
Перевод

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

Среди наиболее известных архитектур трансформеров можно назвать Google ViT или Microsoft Swin Transformer, которые доминируют в обнаружении объектов и сегментации естественных изображений. Эти две архитектуры являются лишь одним из примеров многих работ, которые были сделаны для того, чтобы адаптировать трансформеры к обработке естественных изображений.

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

Pachyderm от Poorman: Нужны ли нам корпоративные ML- платформы?

Блог компании OTUS Машинное обучение *
Перевод

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

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

Автоматизация модульного тестирования в Unity с помощью Codemagic

Блог компании OTUS Unity *
Перевод

Итак, из этой статьи вы узнаете:

— Почему автоматизированные модульные тесты необходимы для эффективной гибкой разработки.

— С какими проблемами можно столкнуться при автоматизации модульного тестирования в Unity.

— Как создать простую игру (понг), которую мы будем использовать в качестве примера проекта.

— Как настроить модульные тесты для нашей игры.

— Как настроить Codemagic для автоматизации модульного тестирования и сборки проектов Unity.

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

Использование потоков для создания высокопроизводительных Node.js приложений

Блог компании OTUS JavaScript *VueJS *
Перевод

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

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

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Просмотры 2.1K
Комментарии 2

C++20: Пулы потоков в cppcoro

Блог компании OTUS Программирование *C++ *
Перевод

Этот пост является заключительным в моей мини-серии из трех постов о cppcoro. cppcoro — это библиотека абстракций корутин от Льюиса Бейкера (Lewis Baker). Сегодня я покажу вам пулы потоков (thread pools).

 

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 2.5K
Комментарии 1

Не самые популярные методы Django ORM

Блог компании OTUS Python *Django *
Перевод

Все мы знаем, что Django предоставляет ORM прямо из коробки, что не позволяет нам писать SQL-запросы. В этом механизме есть большой потенциал. Однако большинство из нас знакомы только с методами filter(), get(), update() и delete() из Django ORM.

В Django ORM есть много других опций, поэтому у нас все же возможность использовать функционал традиционных SQL-запросов. Сегодня в статье я вам про него расскажу.

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Просмотры 2.3K
Комментарии 4

Мониторинг Apache Spark

Блог компании OTUS Apache *
Перевод

Из этой статьи узнаете, как использовать Listener API и библиотеки качества данных, чтобы улучшить наблюдаемость данных для Apache Spark на разных уровнях.

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

Тестирование сетевых политик с помощью Minikube

Блог компании OTUS Kubernetes *
Перевод

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

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

Читать далее
Всего голосов 12: ↑8 и ↓4 +4
Просмотры 1.1K
Комментарии 0

Что такое MLOps? (Часть 1)

Блог компании OTUS Машинное обучение *
Перевод

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

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

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Просмотры 1.2K
Комментарии 1

Создание собственного React с нуля

Блог компании OTUS ReactJS *
Перевод

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

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

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 3.5K
Комментарии 0

Автоматизированный бот на Selenium

Блог компании OTUS Тестирование веб-сервисов *
Перевод

Selenium – один из самых популярных фреймворков автоматизации тестирования. Несмотря на то, что Selenium поддерживает шесть популярных языков программирования, его можно использовать для волшебной реализации с наименьшим количеством кода в связке с Python.

Читать далее
Всего голосов 8: ↑6 и ↓2 +4
Просмотры 5.3K
Комментарии 1

Удобные инструменты для разработчика при непрерывном тестировании производительности

Блог компании OTUS Тестирование веб-сервисов *
Перевод

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

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 760
Комментарии 0

RabbitMQ Streams для сбора и обработки телеметрии умного дома

Блог компании OTUS Go *Разработка для интернета вещей *DevOps *Распределённые системы *

Традиционно для сценариев поточной обработки с использованием Map-Reduce рассматриваются такие решения как Hadoop/Spark, либо используются конвейерные системы (например Kafka), для которых есть возможность реализовать концепцию потоков (streams) с помощью дополнительных инструментов (в случае с Kafka это Kafka Connect (для подключения к источникам и получателям потока) и Kafka Streams для реализации Map-Reduce на потоке сообщений.

Начиная с версии 3.9 RabbitMQ анонсировал поддержку нового типа очереди, оптимизированного для поточной обработки. В этой статье мы посмотрим на основные отличия очередей RabbitMQ от классического режима очереди сообщений, а также возможные сценарии использования (с примерами кода на Go).

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

Инженерный подход к тестированию алгоритмов: исследовательский анализ рабочего процесса. Часть 2

Блог компании OTUS Алгоритмы *

Как мы уже говорили в первой части, для демонстрации анализа алгоритма в более широком контексте примером послужит расстояние редактирования Левенштейна. Расстояние редактирования также иногда называют поиском похожих строк (или нечетким поиском). Это метрика редактирований (изменений символов), необходимых для преобразования одной строки в другую (целевую) строку. Из самых известных применений алгоритма можно выделить предоставление предложений по правильному написанию, нечеткий поиск по строке поискового запроса и сравнение последовательностей ДНК/РНК.

По сравнению с бинарным поиском, который построен вокруг одной операции поиска, классический алгоритм Левенштейна поддерживает три операции: вставить/insert, удалить/delete и заменить/substitute (символ в строке). Расстояние редактирования, которое он выдает, является минимальным количеством необходимых операций.

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

Информация

Дата основания
Местоположение
Россия
Сайт
otus.ru
Численность
51–100 человек
Дата регистрации
Представитель
OTUS