Попался мне как-то неисправный автомобильный навигатор, который включался и показывал симпатичную картинку. Пейзаж мне очень понравился, и дисплей был довольно большой. Решил изъять его и сделать что-нибудь полезное. Посмотрим, что из этого вышло, а также, где найти и как использовать большие экраны.
Новости
Обработка естественного языка (NLP) методами машинного обучения в Python
В данной статье хателось бы рассказать о том, как можно применить различные методы машинного обучения (ML) для обработки текста, чтобы можно было произвести его бинарную классифицию.
Рассмотрим задачу обработки естественного языка (NLP — Natural Lanuage Processing) на примере классификации психического здоровья для определения депрессии по комментариям в Reddit.
Минимизация ошибок продуктового дизайнера с помощью коридорного тестирования
Всем доброго времени суток! Сегодня я решила затронуть такую актуальную тему, как минимизация ошибок со стороны дизайнера с помощью коридорного тестирования.
Для начала, кратко, что такое коридорное тестирование (с англ. Hallway testing, Five-Second Testing) — это один из наиболее простых видов тестирования, при котором продуктовая команда может проверить макет или прототип своей программы на людях, которых встретили в коридоре или на улице. Применяется на ранних этапах проектирования. Как правило, к процессу привлекаются всего несколько человек.
Я не буду рассказать почему так важно проводить коридорные исследования, какие задачи они решают, какие преимущества имеет данный метод и так далее, так как в сети интернет есть множество материалов на эту тему, и вы без труда найдете подробную информацию.
Здесь я поделюсь с вами своим опытом, в применении коридорного тестирования, и отвечу на вопрос — «Каким образом метод помогает минимизировать ошибки продуктового дизайна?».
И да, меня зовут Армине. Я продуктовый дизайнер MyQRcards.
Ранее при проектировании продукта я допускала типовые ошибки, которых можно было бы избежать. После внедрения на регулярной основе коридорного тестирования количество таких типовых ошибок сократилось в разы. Что, в свою очередь позволило минимизировать доработки интерфейса и переделывание продукта, не затрачивая время и ресурсы команды на масштабное UX-тестирование.
Расскажу на конкретном примере, как мы сделали редизайн нашего продукта — популярного сервиса электронных визиток MyQRcards.
DoubleSubs — переводите текст на любых страницах
Выберите текст на любой странице для просмотра окна перевода.
Вы сможете получить перевод слова и использование в контексте, прослушать произношение и добавить его в словарь.
Школы IT: что делать, куда идти?
С ростом популярности разработки, вопрос IT-школ становится все острее. Главная проблема - завышенные обещания, гарантирующие ажиотаж работодателей вокруг вас. Это конвейер клише, вроде «айтишники=большие зарплаты». В реальности есть свои нюансы, которые принято замалчивать. Тем не менее существуют школы, достойные внимания. Как их отличить – об этом и поговорим.
Дитя малое, разумное: как запустить чат-бота с душой и пользой
Меня зовут Артур Новрузов, на момент написания данной статьи я отвечал за техническую поддержку сотрудников в Уральском банке реконструкции и развития. Расскажу о муках рождения и первых месяцах жизни нашего чат-бота, который, надеюсь, станет полноценным членом банковского цифрового сообщества.
Как запустить DevOps-конвейер на полную мощность
У нас в Газпромбанке сложилась довольно интересная ситуация. Банк относительно недавно начал активно работать с розницей, которая как локомотив начала тянуть все внутрибанковское IT и менять характер работы всех подразделений.
Одна из главных наших проблем (впрочем, как и у многих) — долгие релизы, низкое качество кода, недоступность и нестабильность систем на тестовых полигонах. Но главное — интеграционные релизы. Когда несколько команд одновременно пытаются зарелизить свои доработки, нужно много времени и средств, чтобы синхронизировать всех. При этом каждый привносит новые баги, все начинают бегать кругами, спотыкаться, фиксить, перенакатывать… В итоге качество продукта низкое, а пользователь смотрит на это все с недоумением.
Как с этим всем бороться? Вот короткий рецепт от нас: избавиться от интеграционных релизов. Вообще. Собрать автономные, кросс-функциональные команды, каждая из которых будет выполнять свою задачу, не толкаясь локтями с другими. Для этого перепилить пайплайн, повысить инженерную культуру, ввести стандарты и так далее. Подробнее — под катом.
Обзор изменений в законодательстве за август 2022
Автор: Татьяна Пермякова, старший аналитик УЦСБ
В обзоре изменений за август 2022 года рассмотрим: результаты работы технического комитета по стандартизации «Защита информации» (ТК 362), импортозамещение в критической информационной инфраструктуре, новый порядок информирования об инцидентах и измененные правила категорирования, новые формы уведомления Роскомнадзора и требования к оценке вреда субъектам персональных данных, возвращение платы за единую биометрическую систему и аккредитация на право владения государственными информационными системами для идентификации и аутентификации.
Храним отметки высот в XYZ tiles
Цифровые модели поверхности и рельефа (ЦМП/ЦМР) – являются важной и неотъемлемой составляющей геоинформационных систем (ГИС). Они являются источником высотной информации и решают задачу определения высоты Z в указанной точке с координатами XY на местности. ЦМП и ЦМР могут быть как регулярными, так и нерегулярными (чаще всего их делят по формату хранения высотных отметок (растровые и векторные). Растровые ЦМП/ЦМР чаще всего поставляются в виде геопривязанного растра с типом пиксельных значений позволяющих хранить дробные отрицательные числа (32-bit float). Повсеместная реализация и внедрение информационных сервисов (прежде всего онлайн), делает необходимым отображение пользователям высотной информации в интерактивном режиме (определение Z при перемещении курсора XY) и ставит перед разработчиком задачу донесения этой информации. Если в случае с векторными данными, мы можем отобразить высотный пикет в координатах XY и показать записанный ему атрибут Z, то с растровыми (регулярными) моделями высот такое не выйдет, иначе мы должны хранить атрибут на каждый пиксель нашего растра (так никто не делает) или быть готовыми его рассчитать и вернуть пользователю с сервера. В принципе, эта задача решена показом на растровых тайлах высотных отметок или горизонталей в виде рисунка, но такой способ отображения высот не интерактивен и несет лишнюю нагрузку на картографическую составляющую тайлов.
PowerShell, HTML Agility Pack: получение значения атрибута HTML-элемента
Рассмотрено два способа получения значения атрибута HTML-элемента на HTML-странице в скрипте на языке PowerShell с помощью методов объектов из библиотеки HTML Agility Pack.
Показан прямой доступ к значениям атрибутов с помощью выражения вида $node.Attributes
. Далее большая часть статьи посвящена методам GetAttributeValue
из библиотеки HTML Agility Pack. Освежаю в памяти, что такое «полиморфизм» и как он реализован в библиотеке для данного метода. Также будет немного затронуто понятие «обобщенного метода» («generic method») в языке C#.
Миграция монолитов в микросервисы на практике
На тему миграции с монолита на микросервисную архитектуру были написаны замечательные статьи, например, эта, возможно, относится к лучшим примерам. Преимущества и недостатки этих архитектур должны быть достаточно очевидны. Однако я хочу поговорить о другом: о стратегии. Мы создаем монолиты, потому что с ними легче начинать работу. Микросервисы обычно возникают в силу необходимости, когда наша система уже находится в продакшне.
Однако при принятии решения о необходимости миграции возникает множество вопросов: как вы определяете границы услуги? Как вы проверяете свойства самовосстановления архитектуры микросервиса?
Это особенно сложно с учетом распределенности сервисной сетки. Нам нужно иметь представление обо всем приложении, поскольку его фрагменты разделены. Наша цель — сохранить преимущества, которые мы имели в унаследованном монолите, избежав при этом сильной связанности, которая является его неотъемлемой частью. В данной статье я расскажу о некоторых практических подходах, которые вы можете использовать при выполнении этой миграции.
Пилим-режем: как создать новый интерфейс без гвоздей и бревен
Привет! Меня зовут Женя, я UX-дизайнер в компании ISPsystem, создаю UI/UX-платформы BILLmanager. Работаю в этом направлении 4 года, а начинала свой путь с game-ux в Starfall Online. Затем сменила направление геймдева на финтех и работала в биллинговом стартапе. Именно в тот период карьеры я услышала о BILLmanager, а в ноябре 2021 года попала в его команду — как раз в тот момент, когда продукт готовили к переходу на новую тему интерфейса.
BILLmanager — зрелый продукт с большой историей. За годы своего существования он претерпел несколько изменений дизайна. Мы совершенствуем наши продукты, чтобы ими было удобно и приятно пользоваться, а также развиваем UX, учитывая фидбек от пользователей. Я участвовала в создании новой версии BILLmanager 6, о возможностях которой мы уже рассказывали.
В этой статье я хочу поделиться трудностями и вызовами, преодоленными командой UX/UI при обновлении BILLmanager 6.
Фича-команды — профит или балласт?
В этот раз я расскажу о фича-командах, что это такое, почему мы решили перестать быть сервисными командами и стали продуктовыми и что у нас из этого вышло.
Так как мы являемся mobile first-компанией, то примерно в сентябре-октябре 2021г. мы приняли решение изменить структуру и разделить две наши сервисные команды на продуктовые, в каждой из которых были бы свои разработчики, менеджеры и QA. Но где же взять людей для тестирования отдельных участков приложения...
Подтесты в Python
Недавно я сделал опрометчивый твит, в котором намекнул на то, что у меня имеется глубоко продуманное мнение по одному важному вопросу. Я написал, что пакет pytest-subtests достоин того, чтобы им пользовалось бы больше программистов. Я даже дошёл до того, что, говоря о подтестах (subtests), сказал, что они были единственным, что мне по-настоящему нравилось в unittest
до появления их поддержки в pytest
. И, как на грех, Брайан Оккен предложил мне поучаствовать в подкасте Test and Code, чтобы подробнее обсудить подтесты. Я могу лишь догадываться о том, что он это сделал, дабы преподнести мне урок, показать мне, что я не должен, накачавшись продуктами Splenda и травяным чаем, выдавать скороспелые мнения о тестировании кода.Но, тем не менее, когда Брайан взглянет на меня со своей хитрой улыбкой и скажет: «Итак, ты готов поговорить о подтестах?», я планировал ответить: «Да, я готов — сделал обширные заметки и набрал справочных материалов». А когда мы вместе будем стоять на сцене, получая Дневную премию «Эмми» за лучший подкаст о тестировании, я шепну ему: «Я раскрыл твою хитрость, и хотя я тебя обыграл, ты реально показал мне — что такое скромность», а по его щеке скатится одинокая слеза.
Или, что скорее всего так и есть, ему просто хотелось пригласить кого-то, с кем можно поговорить об этом конкретном аспекте Python-тестирования, а я оказался одним из тех немногих, встретившихся ему, кто высказывал по этому поводу своё мнение. В любом случае, этот пост будет играть роль моих заметок по механизму подтестов из unittest, который появился в Python 3.4. Здесь же пойдёт речь о сильных и слабых сторонах подтестов, о сценариях их использования. Этот материал можно считать дополнением к подкасту Test and Code Episode 111.
Как снимать логи с устройств на Android и iOS: разбираемся с инструментами
Краткая инструкция по чтению и разбору логов мобильных устройств на Android и iOS, а также необходимые инструменты для Windows и MacOS.
Статья подготовлена red_mad_robot и «Альфа-Банком» на основе доклада Senior QA red_mad_robot Ольги Никитиной «Инструменты для снятия логов с Android / iOS устройств. Чтение и разбор» на митапе «QАчественное общение» при поддержке red_mad_robot.
Макетная плата SPI NOR Flash
Большинство современных CPU позволяют производить начальную загрузку с разных источников (media booting), одним из которых может быть SPI NOR Flash. Микросхемы энергонезависимой памяти NOR Flash с последовательным интерфейсом SPI используются на материнских платах для хранения образов BIOS, BMC, а так же данных различного назначения. Если же речь идет о популярных платах, постороенных на различных SoCs, таких как Raspberry Pi, Orange Pi и так далее, то на них SPI-интерфейс может быть выведен на контактые площадки для того, чтобы пользователь мог самостоятельно подключить ту или иную микросхему в качестве внешнего носителя.
Обзор электронной книги Onyx Boox Darwin 9
Не прошло и года после того, как Onyx Boox презентовала электронную книгу Darwin 8, и вот компания представила новую модель в той же линейке – Darwin 9. Новинка во многом продолжает традиции своих предшественников, но не обошлось без обновлений.
Клонируем сами, своими руками
Задача: Вася летел на самолёте. Из-за неисправности двигателя самолёт упал на необитаемом острове. Вася был единственным выжившим. После осмотра уцелевшего багажа Вася понял, что в его распоряжении есть несколько лаптопов и Wi-Fi роутер. Теперь для того, чтобы выжить, Вася решил поднять ЦОД. Для нормальной работы ЦОДа Васе нужно уметь клонировать Debian Linux. Но под рукой нет никаких средств клонирования. Даже старый диск Clone Zilla куда-то запропастился. Что делать Васе?
Итак, для начала посмотрим на кое-какие условия ТЗ, не описанные в первом абзаце.
Синтаксический сахар в Redux: Type to reducer и Redux toolkit для самых маленьких
Сегодня рассказ пойдет о двух удобных способах сократить рутину в Redux, которые мы используем в разных частях собственного проекта. Речь пойдет о малоизвестной библиотеке Type to reducer и довольно функциональном Redux toolkit. Почему нам было трудно жить с чистым Redux, зачем нужны вспомогательные инструменты и как они облегчают жизнь, читайте под катом.
Статья написана по итогам внутреннего митапа для нефронтендеров, проходившего пару месяцев назад, и рассчитана не только на тех, кто в теме.
Тестирование Wi-Fi и ананасы из Китая
Если ваш заказчик решил сделать тестирование на проникновение в своём офисе впервые, то в 9 из 10 случаев ваше общение начнется с: «А протестируйте наш Wi-Fi!». Трудно сказать, почему эта тема до сих пор волнует людей в такой степени. Сегодня мы поговорим о том, что в реальности можно протестировать, и какие инструменты для этого есть.