Pull to refresh
17
0
Send message

Практичный Go: советы по написанию поддерживаемых программ в реальном мире

Reading time 48 min
Views 54K
Статья посвящена лучшим практикам написания кода Go. Она составлен в стиле презентации, но без обычных слайдов. Постараемся кратко и чётко пройтись по каждому пункту.

Для начала следует договориться, что значит лучшие практики для языка программирования. Здесь можно вспомнить слова Расса Кокса, технического руководителя Go:

Программная инженерия — то, что происходит с программированием, если добавить фактор времени и других программистов.

Таким образом, Расс различает понятия программирования и программной инженерии. В первом случае вы пишете программу для себя, во втором создаёте продукт, над которым со временем будут работать и другие программисты. Инженеры приходят и уходят. Команды растут или сокращаются. Добавляются новые функции и исправляются ошибки. Такова природа разработки программного обеспечения.
Читать дальше →
Total votes 59: ↑57 and ↓2 +55
Comments 14

Новогодний контакт-центр 2020: No-Code Edition

Reading time 3 min
Views 1.8K

Примерно 5 лет назад мы написали статью о том, как можно быстро создать простой новогодний кол-центр с Дедами Морозами и Снегурочками в качестве операторов, используя Voximplant. Несмотря на широкий доступный инструментарий, предлагаемый платформой (Web SDK, Serverless JS для управления звонками и очередями и т.д.), создание кол-центра занимало определенное время и требовало определенных знаний разработки, хоть и незначительных.

5 лет – достаточный срок, чтобы успеть многое, а мы каждый год как активно развиваем саму платформу, так и запускаем новые решения, которые позволяют пользоваться её функциональностью даже тем людям, которые далеки от мира разработки. Хорошим примером является наш новый Voximplant Kit – облачный омниканальный no-code контакт-центр. Kit позволяет запустить полнофункциональный контакт-центр с широкими возможностями по автоматизации обслуживания буквально за полчаса. После прочтения старой статьи у меня возникло огромное желание показать, насколько Kit упростил и ускорил запуск новогоднего контакт-центра со Снегурками и Дедами Морозами.

Читать далее
Total votes 23: ↑22 and ↓1 +21
Comments 0

Машинное обучение в Hum to Search от Google

Reading time 5 min
Views 3.2K

Навязчивые мелодии (англ. earworms) – хорошо известное и порой раздражающее явление. Как только одна из таких застревает в голове, избавиться от нее бывает довольно трудно. Исследования показали, что так называемое взаимодействие с оригинальной композицией, будь то ее прослушивание или пропевание, помогает прогнать навязчивую мелодию. Но что, если вы не можете вспомнить название песни, а можете только напеть мотив?
Читать дальше →
Total votes 22: ↑22 and ↓0 +22
Comments 2

RED: Улучшение качества звука с помощью резервирования

Reading time 8 min
Views 4.8K

Еще в апреле 2020 года Citizenlab сообщил о довольно слабом шифровании Zoom и заявил, что Zoom использует аудиокодек SILK. К сожалению, статья не содержала исходных данных, чтобы это подтвердить и дать мне возможность обращаться к ней в дальнейшем. Однако благодаря Натали Сильванович из Google Project Zero и инструменту трассировки Frida я смог получить дамп некоторых необработанных кадров SILK. Их анализ вдохновил меня взглянуть на то, как WebRTC обрабатывает звук. Что касается восприятия качества вызова в целом, больше всего на него влияет качество звука, поскольку мы склонны замечать даже небольшие сбои. Всего десяти секунд анализа было достаточно, чтобы отправиться в настоящее приключение – на поиски вариантов улучшения качества звука, обеспечиваемых WebRTC.
Читать дальше →
Total votes 27: ↑27 and ↓0 +27
Comments 0

Облачный гейминг с открытым исходным кодом на WebRTC: p2p, мультиплеер, zero latency

Reading time 12 min
Views 9.4K

ПО как услуга, инфраструктура как услуга, платформа как услуга, коммуникационная платформа как услуга, видеоконференции как услуга, а что насчет облачных игр как услуги? Уже было предпринято несколько попыток создания облачных игр (Cloud Gaming), например, Stadia, недавно запущенная компанией Google. Stadia не новичок в WebRTC, но могут ли другие использовать WebRTC так же?
Читать дальше →
Total votes 24: ↑24 and ↓0 +24
Comments 25

«Живые» интерактивные логи: визуализация логов в Voximplant Kit

Reading time 5 min
Views 4.9K

Мы продолжаем обновлять Voximplant Kit с помощью JointJS. И рады сообщить о появлении «живых» логов (live logs) звонков. Насколько они живые и опасны ли для простых юзеров, читайте под катом.
Total votes 25: ↑25 and ↓0 +25
Comments 2

Снятся ли выключателям вопросы морали (и электроовцы)?

Reading time 4 min
Views 5K


Прямо сейчас в компьютерных сетях происходит революция: устройства все лучше оценивают происходящее вокруг себя, при этом анализируя данные локально, то есть «здесь и сейчас». Благодаря этому устройства могут предложить людям все бОльшую функциональность, не обращаясь к облаку. Но смогут ли в итоге выключатели освещения озаботится вопросами морали?
Читать дальше →
Total votes 29: ↑28 and ↓1 +27
Comments 3

Компьютерное зрение на WebRTC-сервере с аппаратным ускорением от Intel OWT

Reading time 10 min
Views 7.6K

WebRTC упростил (в большинстве своем) получение и отправку видеопотоков в реальном времени. А значит, можно немного поразвлекаться с ними при помощи машинного обучения. В прошлом месяце я показал, как запустить компьютерное зрение (Computer Vision – CV) локально в браузере. Как я уже упоминал, локально – это, конечно, хорошо, но иногда требуется более высокая производительность, и для этого нам понадобится удаленный сервер. В данном посте я расскажу о том, как запускать серверные модели OpenCV с аппаратным ускорением на чипсетах Intel с помощью Open WebRTC Toolkit (OWT) с открытым исходным кодом.
Читать дальше →
Total votes 38: ↑38 and ↓0 +38
Comments 1

Deepfakes и deep media: Новое поле битвы за безопасность

Reading time 7 min
Views 6.5K


Эта статья является частью специального выпуска VB. Читайте полную серию здесь: AI and Security.

Количество дипфейков – медиа, которые берут существующее фото, аудио или видео и заменяют личность человека на нем на чужую с помощью ИИ – очень быстро растет. Это вызывает беспокойство не только потому, что такие подделки могут быть использованы, чтобы влиять на мнения людей во время выборов или впутывать кого-то в преступления, но и потому, что ими уже злоупотребляли для создания фейкового порно и обмана директора британской энергетической компании.
Total votes 23: ↑23 and ↓0 +23
Comments 9

SIP-коннектор Telegram + Voximplant = звонки на сотовые и софтфоны

Reading time 4 min
Views 8.4K

Для телеграма разработали SIP-коннектор (@siptg). Voximplant – это платформа телефонии. Правильно, они могут прекрасно работать в паре и сегодня мы покажем, как. Добро пожаловать под кат!
Читать дальше →
Total votes 28: ↑26 and ↓2 +24
Comments 2

AI против COVID-19: опыт Хубэя и Флориды

Reading time 4 min
Views 10K

Ученый работает над вакциной против COVID-19 в Университете Копенгагена. Дания, 23 марта 2020.

Всего за 10 дней количество заболевших COVID-19 увеличилось более чем вдвое – 153 тысячи 14 марта против 372 тысяч 24 марта. Даже с учетом совместных усилий и ресурсов китайских экспертов и «Врачей без границ», высокая скорость распространения вируса в Италии привела к полному заполнению больниц, невозможности принимать новых пациентов в реанимацию и, как следствие, повышенной смертности по сравнению с другими странами.
Читать дальше →
Total votes 33: ↑26 and ↓7 +19
Comments 16

Как Smartcalls стал Voximplant Kit’ом – ребрендинг и киллер-фичи

Reading time 6 min
Views 3.8K

Мы долго готовили обновление Smartcalls – визуального редактора для исходящих звонков – и вот оно случилось. Сегодня под катом расскажем про UI/UX-изменения и залезем под капот деморежима, чтобы показать, как мы приручали JointJS.
Total votes 24: ↑24 and ↓0 +24
Comments 6

Contact Center AI: третий участник в разговоре – это нормально

Reading time 4 min
Views 3.8K

Наши клиенты и читатели блога знают про Dialogflow – платформу для создания умных ботов. Именно Dialogflow лежит в основе Contact Center AI (далее CCAI) от корпорации добра. Схематично стек технологии равен DialogFlow + WaveNet (text-to-speech) + voice recognition (speech-to-text), на выходе оно расширяет возможности обычного колл-центра, а именно позволяет оказывать более персонализированные услуги поддержки. Как именно? Рассказываем под катом и даем примеры успешной интеграции, добро пожаловать!
Total votes 24: ↑23 and ↓1 +22
Comments 13

Проект Neon от Samsung: цифровые банкиры, телеведущие, компаньоны

Reading time 5 min
Views 13K

Суперреалистичные цифровые люди из проекта Neon – настоящие. Ну, вроде того. И да, не спрашивайте у них прогноз погоды…

Загадочная компания, выросшая из Samsung Technology и Advanced Research Labs (STAR Labs), показала себя на выставке CES 2020 в Лас-Вегасе с 7 по 10 января. Они презентовали технологию Neon – «виртуальное существо, которое выглядит и ведет себя как человек, проявляет эмоции и разумность». По сути, Neon создает видеочат-ботов (далее – неоны), которые выглядят как настоящие люди; это не всезнающие ассистенты, андроиды, заменители или копии людей, Они не расскажут вам о погоде или когда умер Авраам Линкольн. «Неоны – это не ИИ-ассистенты, они больше похожи на нас. Это независимые, хоть и виртуальные, существа, которые учатся на собственном опыте. Они не знают всего на свете и они – не интерфейс для доступа в Интернет, чтобы уточнять, какая погода за окном или включать вашу любимую музыку», – говорят в компании.
Total votes 33: ↑31 and ↓2 +29
Comments 16

CIMON-2: (не)судный день, или как IBM Watson забрался выше облаков

Reading time 6 min
Views 3.3K

CIMON – Crew Interactive Mobile CompanioN (далее «Саймон») – научная разработка аэрокосмического агентства Airbus и IBM, спонсированная германским центром авиации и космонавтики DLR. В прошлом году его впервые испытали «в бою» на МКС, а в этом месяце начали испытание второй версии помощника. Так как нам интересно все, что связано с высокотехнологичными и прорывными коммуникациями – например, мы уже писал про работу с IBM Watson – то мы не смогли пройти мимо этой новости и подготовили перевод-компиляцию из нескольких зарубежных материалов, чтобы понять самим и сообщить вам – зачем астронавтам условная Алиса/Алекса/{you name it}? Под катом вас ждет хронология событий, цитаты сопричастных и небольшой вывод. Приятного чтения!
Total votes 25: ↑24 and ↓1 +23
Comments 0

Бэрримор, что за шум вокруг Voximplant? Внедрили веб-сокеты, сэр

Reading time 8 min
Views 7.5K

WebSocket — это прогрессивный стандарт полнодуплексной (двусторонней) связи между клиентом и сторонним сервисом в режиме реального времени. Веб-сокеты используются для организации непрерывного обмена данными без дополнительных HTTP-запросов.

И мы рады сообщить вам, что все это стало возможным в Voximplant благодаря новому модулю VoxEngine, который называется – сюрприз – WebSocket. Отныне вы сможете передавать текст и аудио, пользуясь преимуществами веб-сокетов в полной мере. Проще говоря, у вас появился еще один инструмент, чтобы прокачать ваше приложение.

Из этой статьи вы узнаете, как создать исходящее WebSocket-соединение, передать через него аудиопоток и преобразовать его в текст с помощью Google Cloud Speech-to-Text API.
Читать дальше →
Total votes 32: ↑31 and ↓1 +30
Comments 9

Хранилище key-value, или как наши приложения стали удобнее

Reading time 3 min
Views 6.1K


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

Раньше приложения «не помнили» ни действия, что выполняют сценарии, ни результаты вычислений, так что разработчики были вынуждены сохранять значения в сторонних сервисах или на своем бэкенде. Если вы когда-либо работали с local storage в браузере, то наша новая функциональность весьма похожа на это, т.к. позволяет приложениям запоминать пары «ключ-значение», которые уникальны для каждого приложения в вашем аккаунте. Работа хранилища стала возможна благодаря новому модулю ApplicationStorage – под катом вас ждет краткое руководство по его использованию, welcome!
Читать дальше →
Total votes 30: ↑27 and ↓3 +24
Comments 0

Стриминг видеозвонков по RTMP

Reading time 6 min
Views 6.8K

Сегодня стриминг-платформы на пике популярности, так как миллионы талантливых людей регулярно делятся своими знаниями – читай, используют стриминг на всю катушку. Так как этот рынок растет, то существует и масса приложений, которые могут стримить видео в реальном времени, используя камеру смартфона или ноутбука. Возможно, вы тоже хотите внедрить в ваше приложение такую функциональность; если так, то спешим обрадовать – теперь Voximplant позволяет прокидывать видеозвонки по RTMP в любой CDN, который поддерживает этот протокол.

Эта функциональность стала возможна благодаря новому модулю VoxengineStreamingAgent. Под катом вас ждут 5 шагов по настройке этой интеграции, добро пожаловать!
Читать дальше →
Total votes 28: ↑25 and ↓3 +22
Comments 0

14 ноября пройдет Intercom'19 — конференция об автоматизации коммуникаций от Voximplant

Reading time 5 min
Views 1.2K


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

Мы немного поменяли формат участия в мероприятии: это первый год, когда участие в конференции бесплатное для всех желающих, но регистрация обязательна. Будем ждать вас 14 ноября в ЦДП (Цифровое Деловое Пространство, Москва, м.Курская, ул. Покровка, 47).
Читать дальше →
Total votes 26: ↑26 and ↓0 +26
Comments 0

Высококачественная, легковесная и адаптируемая технология Text-to-Speech с использованием LPCNet

Reading time 4 min
Views 7.6K

Последние достижения в области глубокого обучения привносят существенные улучшения в развитие систем синтеза речи (далее – TTS). Это происходит благодаря применению более эффективных и быстрых методов изучения голоса и стиля говорящих, а также благодаря синтезу более естественной и качественной речи.
Читать дальше →
Total votes 35: ↑34 and ↓1 +33
Comments 1
1

Information

Rating
3,865-th
Registered
Activity