Solution Architect в DataArt
  • Как мы оптимизировали деплой и льем код в любое время суток

    E2E хорошо применять только для отдельных участков продукта

    Я с этим не спорю, а наоборот поддерживаю. Все зависит от продукта: для некоторых случаев e2e достаточно постые, где-то наоборот очень сложные.
    Если вы например покрыли unit-тестами какой-то сервис и у вас есть e2e, которые в полной мере используют функционал этого сервиса, то это и есть пересечение.
    У меня был проект, где одним из важных компонентов был сервис по просчету Excel-документов с кастомными функциями. По-хорошему, при добавлении новой функции, нужно писать соответствующий unit-тест. Но QA всегда такие кейсы добавляли в e2e, потому как это основа функционала. В этом случае unit-тесты были просто излишними.

  • Как мы оптимизировали деплой и льем код в любое время суток

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

  • Как мы оптимизировали деплой и льем код в любое время суток

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

    Підтримали: Yarik Ponomarenko, Larisa Timiș
  • Как мы оптимизировали деплой и льем код в любое время суток

    Поддерживаю. Сейчас многие гонятся за большИм покрытие кода тестами, хотя если есть e2e, то они будут покрывать большинство unit-тестов и они фактически не нужны.

    Підтримав: Dmitry Adonin
  • Як і з чого почати вчити Java?

    Я так и написал, что в этом случае ничего учить не надо. Зачем тратить драгоценное время, если можно просто рубить бабло.
    Ну а вам я бы посоветовал не расписываться за других. У всех амбиции разные, да и у нас не особо хотят брать кому за 40. Поэтому либо твоими конкурентными преимуществами будет опыт и глубина знаний, либо останешься за бортом где бы то ни было.

  • Як і з чого почати вчити Java?

    Если хочешь реально научиться программировать, то начинать нужно не с Java. Если твоя цель как можно быстрее рубить бабосы, читай любую книгу, например отца Гослинга, иди на любую галеру практикантом, потом попадешь в проект, будешь стараться и пойдешь по фейковой лестнице. Где-то на синьйоре твоя техническая карьера закончится и прийдется идти в менеджеры. Про работу в компаниях типа Гугл-Амазон можешь забыть, или тебе прийдется потратить пару лет на подготовку, с которой собственно все и нужно было начинать.
    Если хочешь реально научиться, то прийдется сначала потратить время на базу: схемотехнику, машинные коды, алгоритмы, теория реляционных и нереляционных БД, теория сетей, ну и конечно базово знать С++. После знания С++, тебе практически любой язык будет даваться за неделю. По крайней мере Java так уж точно. Сейчас в Java-проектах часто встречаются ML на Python и JS на UI. Будет легче ориентироваться, зная как все работает внутри.

  • Выбор телефона

    Недавно тоже стоял перед выбором, взял именно Mi9T. Сначала тоже смущало отсутствие microsd, но потом спросил себя зачем оно мне нужно — и сам ответил, что не за чем. Взял вариант с 256Гб и забыл про карточку. На самом деле, даже если бы и был слот — вставил бы карточку один раз и тоже забыл. Только карточка медленнее и был бы обычный гемор, что вроде и карточка есть, но срастить ее с внутренней памятью не получится — поэтому например для фоток приходится юзать или то или то. Когда у тебя вся память одним регионом, то задумываться об этом не приходится.

    Підтримали: Oleksandr Suvorov, Bot Bot
  • DOU Hobby: Ironman — соревнования по триатлону на 225,8 км

    Да уж, только вчера мне друг рассказал про Ironman и Харьковскую команду Team404, а сегодня статья на DOU :) Действительно популярность растет!

    Підтримав: Artem Pavlov
  • Яка несподіванка. Avast збирає та продає данні користувачів

    Так, мабуть підзабули: gdpr.eu/...​32-Conditions-for-consent

    Silence, pre-ticked boxes or inactivity should not therefore constitute consent.
    Підтримав: Valeriy Shvets
  • Яка несподіванка. Avast збирає та продає данні користувачів

    Кстати, пречекнутая галочка есть нарушение GDPR.

    Підтримав: Bender Rodriguez
  • Дом с голосовым управлением: мой опыт реализации

    Кстати, нашел выключатель, который давно искал. www.aliexpress.com/item/32974697281.html есть вариант для питания только по фазе, т.е. им можно заменить любой выключатель, даже в домах со старой проводкой под свет, где подведена только фаза. Xiaomi Hub может управляться не только через GA или Alexa, но и из локальной сети. Так что часть проблемы можно решить уже готовыми продуктами из коробки.

  • Дом с голосовым управлением: мой опыт реализации

    Как машина различит, к примеру, «turn on the light in the kitchen» и «how can I turn on the light in the kitchen/car/plane» без пост-обработки?

    Список команд ограничен и каждая команда имеет определенный формат. Список устройств также доступен локально. Для нативных устрой не вижу ничего сложного. Управление сторонними устройствами действительно маловероятно.

  • Дом с голосовым управлением: мой опыт реализации

    Ну русский-то мы получили. Глядишь скоро будет и украинский.

  • Дом с голосовым управлением: мой опыт реализации

    Я понял, вариант 1, ждем гугл :)

    Підтримав: anonymous
  • Дом с голосовым управлением: мой опыт реализации

    Я боюсь, что в таком активном режиме, через года 2-3 мы наврядле получим результат :)))))

  • Дом с голосовым управлением: мой опыт реализации

    Но как именно оно интегрируется с Алексой и Гуглом. В описании нет не слова об этом. Где задается friendly name, на которое откликается устройство? Источников света то может быть и несколько в комнате. Или все контролируется через некий «Smart Life» app?

    Вся интеграция Гугла со сторонними устройствами выглядит одинаково и кстати описана в вашей статье. Есть приложения вендора, специфические для каждого устройства, с помощью которых происходит обнаружение и настройка устройств. Также они обеспечивают специфические функции, например мигание светодиодной ленты в такт музыки с телефона. Дальше есть вендор-облако, в котором живет это устройство и фактически агент, который реализует требуемые Гугловские/Амазоновские контроллеры. Вам нужно из Google Home авторизоваться в облаке вендора, а дальше все как у вас описано — авторизационный токен есть, адрес сервера с агентом известен, туда можно отдавать команды.
    Да, согласен, это дополнительное звено. Но во-первых, за легкость интеграции приходится чем-то платить. Во-вторых, конечная скорость реакции на практике меня вполне устраивает. Это не та операция, которая требует миллисекундных реакций :)

    Давайте возьмем более сложные кейсы: кондиционер без WiFi, светодиодная лента с неизвестным протоколом, не smart ТВ. По сути то, что можно спокойно встретить в произвольном доме или квартире нашей страны. Каким будет ваш подход?

    Sonoff — если просто вкл/выкл или Wi-Fi->RF/IR шлюз, если нужны доп. команды. Все приведенные устройства включаются в сеть и имеют как минимум IR пульт. У ленты может еще быть RF управление.
    Для ленты можно еще поменять контроллер на смарт. Я себе 4 года назад делал ремонт и еще таких не было, теперь потихоньку меняю, стоят они по $7.
    К телеку можно подключть Chromecast и если у вас он не совсем древний и поддерживает HDMI CEC, то из Google Home можно не только включить телек, но и попросить проиграть музыку или видео.

    А насчет Google Assistant и смарт колонки можно подробней? Каким образом осуществляется подвязка и голосовая идентификация устройств без smart home actions?

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

    Насчет Offline Speech Recognition: тут же дело не просто в получении текста, а в распознавании базового контекста. Все эти умные колонки то рассчитаны на более широкий круг задач. Не только smart home. Сейчас вам захотелось включить лампочку, через минуту — рассказать сказку ребенку. Дабы понять ваше намерение, Амазону и Гуглу придется весь post-processing и intent detection переносить в офлайн, а не только speech recognition.

    В описанных вами случаях контекст как раз и не нужен. Команды независимы между собой. Контекст нужен для так называемых «continued conversation», когда вы спрашиваете «Кто такой Илон Маск?», а после ответа спрашиваете «А сколько ему лет?». Такое может пока только Google Assistant и то только для US и только для гугловых продуктов. А так для ассистанта контекстом является голосовой профиль пользователя, и в рамках уже его будут подбираться какие-то предпочтения.

    Підтримав: ТЗ
  • Дом с голосовым управлением: мой опыт реализации

    Короче говоря, пока что мечта ТС о голосовом управлении домом на русском языке своими руками так и остается мечтой. И тогда подход с Kaldi на практике имеет еще меньше смысла.

  • Дом с голосовым управлением: мой опыт реализации

    Я не про это, а про Cassandra в докере. Но сейчас посмотрел, она используется только в решениях с кастомными скилами. Так что да, RPi4 должно хватить.

  • Дом с голосовым управлением: мой опыт реализации

    Мне кажется мы говорим о разных вещах. Какой это Sonoff выключатель стоит 6 баксов? Даже на aliexpress сенсорный двухкнопочник стоит около 20. В Украине ± такой же ценник. Или речь все же о голой WiFi-driven плате, требующей постоянных 5-24В?

    Я говорил о вот таком реле www.aliexpress.com/item/4000017013908.html, вот даже по 5 баксов. И никаких 5-24 В не нужно.

    По поводу русского языка: у нас тут какой-то замкнутый круг образуется. Я писал о его поддержке в контексте умных колонок и smart home скиллов. Причем тут Google Assistant? Это лишь сервис. Его нельзя рассматривать в изоляции, ровно как и Kaldi. Вы же не будете осуществлять голосовой ввод через мобильный телефон?

    Google Assistant это не сервис, а технология, которая лежит в основе как телефонных приложений, так и смарт-колонок. Причем как гугловских, так и сторонних. И по функционалу они в основном одинаковые, только гугл на свои продукты как обычно новые фичи выкатывает быстрее, а некоторые, как например совершение звонков, может запрещать сторонним производителям. Но тем не менее, мы это позволяет управлять голосом умным домом абсолютно одинаково как с телефона, так и со смарт колонки, что я собственно говоря и делаю. Поэтому можно поставить в каждую комнату колонку за 25$ и будет голосовое управление умным домом из любой его точки.
    Более того, это даст все возможности Google Assistant, а не только управление умным домом. Не буду перечислять все, но это как минимум на порядок больше возможностей.
    А еще Google Assistant позволяет отличать голоса пользователей и благодаря этому менять контекст. Поэтому, когда я и мой сын дают команды на проигрывание музыки, то музыка играет разная. Этот момент вообще в статье не освещен, хотя он конечно не имеет сильного значения в контексте управления умным домом.

    Разворачивание Kaldi локально безусловно потребует сервера. Но к счастью, совсем недавно выпустили версию, оптимизированную под RPi. Так что уже можно начинать тестить на 4й версии.

    Так у вас там кроме Kaldi есть Cassandra на Java, да еще и в докере. RPi 4 все это потянет?

    В контексте офлайн работы все равно победа будет за Kaldi. Независимо от сетапа, оба провайдера при любых раскладах будут ходить для транскрайба на облачный Speech-to-Text.

    Вот именно этот момент и интересен, и как раз это и хотелось бы увидеть в статье. Потому как в Android как минимум есть Offline Speech Recognition и мне кажется ваше утверждение спорно.

  • Дом с голосовым управлением: мой опыт реализации

    Если у вас к выключателям подведено питание — вопросов никаких нет.

    У меня выключатели разрывают фазу. Да и какое это имеет значение, если планировалось реле прятать в плафон:

    Это радиореле, которое может быть спрятано где-то на подходе (к примеру, в полом плафоне).
    Сравнивать Соноф с реле за 2 бакса вообще бессмысленно

    6 баксов за Соноф и 2 за радиореле — это такая большая разница?

    По большому счету, если есть желание и возможность покупать колонки по 300 баксов в каждую комнату

    Google Home Mini можно было на распродаже купить по $25. Тем более подход с кастомными скилами подразумевает наличие либо Google Home либо Alexa. Они есть в диаграммах и в видео. Так что их все равно для этих случаев покупать.
    Для решения с Kaldi тоже прийдется покупать сервер, который должен работать круглосуточно. Сколько прийдется еще потратить на электричество?

    Касательно Google Assistant, JBL и русского языка: тут я уже не совсем понял, где в этом сетапе массив микрофонов?

    Вот здесь я уже не понял при чем тут массив микрофонов. Я про Google Assistant, JBL и поддержку русского языка написал в ответ на вашу фразу:

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

    К сожалению, о том, что это ключевая задумка, в статье явно нет ни слова и рассматриваются два варианта облачных сервисов. Тогда может наоборот нужно было показать возможности локального разворачивания сервисов Amazon и Google?

← Сtrl 123456...21 Ctrl →