Search
Write a publication
Pull to refresh
3
0

Разработчик(в основном на С#)

Send message

Распознавание речи через Deepgram API в PWA

Level of difficultyMedium
Reading time5 min
Views3.6K

Распознавание речи — штука довольно прикольная и не очень полезная. С одной стороны голосовой интерфейс для общения с роботами в фантастике является обычным, наверное, годов с 60-х, а с другой стороны — в наше время голосовой интерфейс не продвинулся сильно дальше "Алиса, а какая у нас погода на завтра?". Для того, чтобы самому составить мнение о текущих возможностях систем распознования речи, я попробовал использовать сервис Deepgram в браузерном приложении. Команда сервиса в ноябре прошлого года привлекла дополнительное финансирование в размере $47 млн. и с оптимизмом смотрит в будущее. Сервис хорош тем, что распознаёт русский язык (не все STT-сервисы это делают), даёт приличный кредит для тестирования возможностей (из 150 промо-денег я израсходовал меньше 0.50 "на поиграться"), не требует серверной части (всё работает из браузера). Готовая демка — тут, детали — под катом.


КДПВ

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

Большой обзор Service Mesh: часть первая

Reading time7 min
Views16K

Service Mesh входит в перечень стандартных для бэкенда технологий, а недавно и вовсе был на вершине хайпа. Вы решаете идти в ногу со временем и добавить в свой кластер Kubernetes первый Service Mesh. От друзей слышите, что Istio требует много памяти, а прокси в Linkerd очень быстрые, хотя никто не проверял. А еще все почему‑то говорят про Cillium, хотя это CNI‑плагин. Обсудим, что к чему.

Меня зовут Максим Чудновский, я занимаюсь развитием интеграционной платформы Synapse в СберТехе. Она имеет поддержку всех возможных стилей интеграции: RPC, файловые, шаблоны в Event Driven architecture. Есть в ней и RPC, а соответственно и Service Mesh, которым я и занимаюсь. Поэтому сегодня поговорим именно о нем.

Читать далее

Как рисовать красивые соединения с помощью SVG

Level of difficultyMedium
Reading time5 min
Views15K

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

Читать далее

KeyCloak и микро-сервисы. Как облегчить жизнь программисту

Level of difficultyMedium
Reading time12 min
Views24K

Привет! Если ты так же как и я решил использовать keycloak для аутентификации и авторизации в своей микро‑сервисной архитектуре, то я расскажу вам как правильно настроить сам keycloak, его рабочую среду а в конце мы подключим Active Directory к нашему приложению.

Читать далее

C# и обработка медиафайлов средствами FFmpeg, Pandoc и ImageMagick

Level of difficultyMedium
Reading time13 min
Views13K

Приветствую читатели, в этой статье я бы хотел рассказать о написанной мной OpenSource библиотеке MediaFileProcessor под платформу .NET (.netstandart 2.0).

Читать далее

Репликация в PostgreSQL: Write-Ahead Logging (WAL) и Logical Replication

Reading time7 min
Views16K

Репликация PostgreSQL с опережающей записью (WAL) — ключевая концепция в высоконагруженных архитектурах, поскольку она позволяет создавать высокодоступные и отказоустойчивые системы баз данных.

Читать далее

Засылаем картинку из Unreal Engine на сервер в теле HTTP запроса

Reading time10 min
Views4K

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

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

Читать далее

Bittorrent с нуля на Go

Reading time15 min
Views25K


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

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

Как мы ищем документы в Naumen Disk или еще один вариант организации FTS

Reading time14 min
Views3.6K

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

Читать далее

Визуальные карты сетей кластеров K8s для оценки их производительности

Reading time8 min
Views8.6K

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

Хотя Kubernetes при выборе системы управления контейнерами является стандартом «де факто», многим организациям не удаётся её реализовать. Растущие организации в процессе увеличения масштабов своих сервисов ненамеренно вносят в систему усложнения. Критически важно понимать, как настраивать инфраструктуру и как кластеры могут работать и взаимодействовать между собой.

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

Делаем дашборды для Grafana из того, что отдает экспортер метрик Prometheus и автоматизируем это

Reading time4 min
Views21K

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

В статье описание работы конвертора и рассказ о некоторых хитростях в настройке мониторинга Apache Spark и Hadoop.

Укыйбызмы?

Тестируем Web Application Firewall

Reading time5 min
Views10K

Итак, вы купили компьютер Web Application Firewall. В каком количестве предстоит ловить ложно-положительные срабатывания (False Positive), вы, как счастливый обладатель коммерческого продукта, вскоре узнаете. Если повезет - их будет мало, если нет - готовьтесь каждые 10 минут составлять правила исключения. Но как вы собираетесь проверять пропуски атак? Сканеры веб-уязвимостей будут не лучшим выбором.

Как проверить WAF на пропуски атак, пока за вас это не сделал злоумышленник?

__main__

Как оплатить подписку Midjourney из России

Reading time5 min
Views82K

Для проведения оплаты понадобится два приложения. OlduBil – сервис позволяющий выпустить бесплатную виртуальную карту для онлайн оплат (c бесплатным обслуживанием), турецкий аналог отечественного Qiwi, а также Binance – известная криптобиржа.

Читать далее

Telegram WebApps. Как встроить веб-приложения в чат-бота?

Reading time5 min
Views128K

Относительно недавно команда Telegram выпустила обновление, с которым появилась возможность встраивать в мессенджер веб-приложения. Эта статья — обзор основных моментов внедрения веб-приложениий в телеграм-ботов.

Читать далее

Разбор пакетов NetFlow v.9 на C#

Reading time7 min
Views21K
NetFlow это сетевой протокол, созданный компанией Cisco Systems для учёта сетевого трафика. Наиболее распространёнными версиями данного протокола являются 5 и 9. Девятая версия более гибкая так как используются шаблоны, согласно которым присылаются данные. В пятой версии данные присылаются согласно спецификации.
image

Система сбора информации о трафике по протоколу NetFlow состоит из следующих компонентов:
  • Сенсор. Устройство (маршрутизатор, L3-коммутатор) собирающее статистику по проходящему через него трафику;
  • Коллектор. Занимается сбором данных от сенсора и помещает их в хранилище;
  • Анализатор. Анализирует данные, которые собрал коллектор и формирует отчёты.


О разработки части функций анализатора на C#, а точнее разбор пакетов NetFlow я и расскажу
Читать дальше →

Прогнозируем результаты Чемпионата мира 2022 FIFA простой моделью на Python

Reading time5 min
Views8.4K

Многие люди (включая меня) называют футбол «непредсказуемой игрой», потому что в футбольном матче есть множество факторов, влияющих на окончательный счёт. И это верно… в определённой степени.

Сложно спрогнозировать окончательный счёт или победителя матча, однако при прогнозировании победителя в соревнованиях всё не так. За последние пять лет «Бавария» выиграла все Бундеслиги, а «Манчестер Сити» выиграл 4 Премьер-лиги.

Совпадение? Не думаю.

На самом деле, в середине сезона 20-21 годов я создал модель для прогнозирования победителя Премьер-лиги, Чемпионата Испании, Чемпионата Италии и Бундеслиги, и она успешно спрогнозировала всех победителей.

Прогноз сделать было не так сложно, потому что на тот момент было сыграно уже 19 матчей. Теперь я запущу ту же модель для прогнозирования результатов Чемпионата мира 2022.
Читать дальше →

Шпаргалка для подготовки к экзамену по машинному обучению

Reading time9 min
Views20K

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

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

Читать далее

Обзор платформ service mesh

Reading time11 min
Views4.2K

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

Кроме того, нам нужно защищать трафик между сервисами и реализовывать распределённую трассировку, чтобы понимать, сколько времени занимает каждый вызов. Надёжным распределённым сервисам нужны повторы запросов, размыкатели цепи(circuit breaker) и подобные возможности. Микросервисы поддерживают почти любые языки, библиотеки и SDK. Нужно немало времени и денег, чтобы написать универсальное и многоразовое ПО, которое будет управлять общением сервисов с помощью разных протоколов, вроде HTTP, gRPC и GraphQL. В этой статье мы сравним самые популярные платформы service mesh для облачной экосистемы.

Читать далее

«Оживляем» наше iOS-приложение с помощью Live Activity

Reading time10 min
Views5.1K

В то время как Android-устройства в целом ушли в направлении простых вырезов в экране под фронтальную камеру или даже подэкранных фронталок, Apple создала совершенно новый пользовательский опыт благодаря своему новому пространству для размещения камеры — «челке» (the notch). Сегодня мы с вами обсудим, как реализовать нечто подобное в iOS.

Виджеты, которые Apple представила в iOS 14, позволяют нам просматривать информацию прямо на наших главных экранах.

Но что, если мы пойдем еще дальше и представим контекстно-зависимую информацию, которая всплывает при необходимости и не задерживается на экране слишком долго? А что, если бы это было реализовано таким образом, чтобы все это гармонично работало с самым большим обновлением для фронтальной панели, которое наши iPhone видели с момента появления челки? Больше никаких «а что, если» — встречайте Dynamic Island.

Читать далее

Information

Rating
4,717-th
Registered
Activity