Все публикации подряд на Хабре


[Перевод] Фреймворк для автоматизации – покупать или создавать?

Дата: 17 Сентября 2021 09:30:50

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

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

Преимущества использования фреймворка для автоматизации

У фреймворка для автоматизации тестирования есть множества плюсов. Он позволяет добиваться результатов экономя время и силы. Код становится понятнее и его легко переиспользовать.

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

Покупать или создавать фреймворк для автоматизации?

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

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

Читать далее


Тестовое задание — крышка гроба или ступенька вверх по карьерной лестнице?

Дата: 17 Сентября 2021 09:30:10

Привет! Меня зовут Евгений Судак, и я два с половиной года руководил отделом геймдизайна в Pixonic. Сегодня я хотел бы поговорить о тестовых заданиях.

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

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

Начнем?


Какой софт использует ЦРУ и АНБ для дата-майнинга

Дата: 17 Сентября 2021 09:17:02



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

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

Разумеется, для быстрого поиска в таком огромном массиве данных требуется специальный софт.
Читать дальше →


Работа с СОМ-портом на Си в linux

Дата: 17 Сентября 2021 09:00:02

Телетайп, на который БЭВМ могли выводить и получать данные. Фото взято здесь.

Каждый, кто постоянно занимается электроникой и программирует встраиваемые устройства, неизбежно сталкивается с необходимостью работы с СОМ-портом под линуксом. Недаром, моя статья "UART и с чем его едят" спустя 11 лет после выпуска набирает просмотры и комментарии.

Для разработчиков чаще всего появляется задача сопрячь какой-то датчик, либо удалённое устройство с одноплатником. Да что греха таить, сейчас в 2021 году UART, наверное, самый распространённый интерфейс для обмена данными, несмотря на всю его архаичность. Далеко за примером ходить не надо, внутри смартфона, лежащего у вас в кармане, будет с десяток UART интерфейсов, самый известный из которых — это подключение SIM-карты.

Поэтому умение работать с СОМ-портами в linux особенно важно. И вот, казалось бы, UART, древнейший интерфейс, всё должно быть известно и понятно, и даже опытные программисты ломают зубы, работая с ним в линуксе. Особенный цирк с конями начинается при работе с передачей сырых данных по RS-485. Не знаю ни одного программиста, который бы не хватил горя при разработке ПО для таких решений. Самое забавное, что с более новомодным i2c работать в линуксе куда проще и понятнее, чем с ортодоксальным UART. Чтобы не было путаницы дальше, всё семейство UART (RS-232, RS-485, UART 5V, UART 3,3 и т.д.) по тексту я буду называть COM-порт или UART. Мы говорим в статье не о физическом интерфейсе, а о программной стороне вопроса.

В этой статье я хочу показать, как писать свои программы, работающие с UART в ОС Linux. И неважно на каком языке вы пишете программу для работы с UART (python, c, c++, bash, php, perl и т.д.), принцип работы и грабли будут одни и те же, так как всё равно всё упирается в системные вызовы к ядру. А не понимание того, что там происходит и приводит к различным трудноуловимым багам. Читать дальше →


Docs-as-code: DevOps-технологии в документировании, или Как подружить технического писателя и разработчика

Дата: 17 Сентября 2021 08:55:10

Привет, Хабр! Меня зовут Роман Блинов, я ведущий технический писатель в «Цифре» — в команде по развитию платформы ZIIoT. Этот пост будет о подходе Docs-as-code для документирования разработки ПО. Пишу с прицелом на тех читателей (то есть писателей), кто этот подход пока не пробовал и по факту имеет набор файлов в Confluence, файлы формата .docx и .pdf, на поддержку, обновление и оформление которых тратится порядка 70 % времени (а хотелось бы меньше), и 101 отговорку разработчиков, чтобы не участвовать в документировании.

Сначала расскажу, с какими проблемами сталкиваются писатели до перехода на Docs-as-code, затем опишу подход в общих чертах и в конце упомяну об основной трудности его внедрения по собственному опыту и опыту коллег.

Читать далее


Как вырастить спикера на удалёнке

Дата: 17 Сентября 2021 08:52:12

Привет! Я Аня, бизнес-тренер ЮMoney. Наши разработчики часто выступают внутри компании и говорят на профессиональные темы для внешней аудитории. Во время пандемии мы освоили новую HR-практику — растим спикеров онлайн.

Подготовка поэтапная и комфортная:

— любительский спикерский клуб в Zoom;

— наши митапы, к которым я помогаю готовить сотрудников удаленно;

— сторонние подкасты и конференции, которые массово перешли в онлайн.

Читать о спикер-клубе IT-компании


История успеха: из джуна в сеньора за 2 года

Дата: 17 Сентября 2021 08:36:28

Мы знаем, как много вокруг курсов, мастер-классов и книжек о том, как построить карьеру в IT. И как мало реальных кейсов из жизни. 

В нашей новой рубрике "История успеха" мы расскажем об интересных примерах карьерного пути (вверх, вниз, в сторону) в e-Legion. Первым героем стал наш тимлид iOS-разработки на проекте — Виктор Волков. Виктор пришёл в e-Legion джуном два года назад после магистратуры университета и месяц назад получил апгрейд сеньора. В этой статье вы узнаете, как войти в профессию без опыта, и чем обусловлен такой впечатляющий карьерный рост Виктора. Просто на ночь нужно втирать порошок из…

Читать далее


Как снизить стоимость владения электронным архивом в связке с SAP?

Дата: 17 Сентября 2021 08:27:05

Как снизить стоимость владения электронным архивом в связке с SAP?

В этой статье мы поговорим о том, почему не стоит создавать архив документов на базе ERP-системы, в частности, в SAP. Однако рассматриваемые проблемы и подходы к минимизации рисков касаются и других учётных систем.

Читать далее


Интеграция устройства в экосистему Samsung SmartThings на примере «Умного чайника» Часть 2: переход с ESP8266 на ESP32

Дата: 17 Сентября 2021 08:04:32

В первой части статьи на примере “Умного чайника” я описал процесс разработки приложения, интегрированного в экосистему SmartThings. В этой части я усложняю пример: добавляю датчик температуры и делаю плавную индикацию RGB-светодиода. Я опишу, чем отличаются ESP8266 и ESP32, и почему в этом примере нам больше подходит именно ESP32. Также будет описана передача сообщений между потоками/тасками на примере очередей в FreeRTOS. Таким образом, данная статья предназначена для всех, кто хочет перейти от самых простых умных устройств с минимумом функционала, к устройствам чуть более сложным как с программной, так и с железной точки зрения.

Читать далее


Закорпоративь удаленщика. Вредные советы

Дата: 17 Сентября 2021 07:52:30

Ничто не предвещало беды, но тут в вашей удаленной компании пошел слух об очном корпоративе… Мы прошли через это. Было здорово. Но проанализировав на этапе подготовки стереотипы площадок и подрядчиков, а заодно отзывы самих ИТ-шников о том, что происходит “в среднем по рынку”, мы ужаснулись. С этим багажом знаний мы теперь можем раздавать “вредные советы” относительно того, как все сделать “правильно”. Поверьте, перетягивание каната и пьяные коллеги - далеко не самое страшное, что может быть у тех, кто не продумывает каждую мелочь!

Читать далее


[Перевод] TA505 нацелилась на розничную торговлю в США с помощью персонализированных вложений

Дата: 17 Сентября 2021 07:47:17

Обзор

С 15 ноября 2018 года компания Proofpoint начала наблюдать за рассылками электронных писем от определенного агента, направленных на крупные розничные сети, сети ресторанов и продуктовых магазинов, а также другие организации, работающие в сфере производства продуктов питания и напитков. Эти почтовые сообщения пытались доставлять различные виды вредоносных программ, включая Remote Manipulator System (RMS), FlawedAmmyy и другие.

Читать далее


Как прикрутить SQL к чему угодно при помощи Apache Calcite

Дата: 17 Сентября 2021 07:17:26

Сделать свою собственную SQL-базу данных или запускать SQL-запросы в NoSQL-базе данных — кажется, это очень непростая задача.  А если мы говорим о распределенной БД, то сложность возрастает многократно. Но, к счастью, Apache Calcite — фреймворк с открытым кодом — поможет сделать это довольно легко.

Роман Кондаков, Software Engineer в Querify Labs, на конференции HighLoad++ Весна 2021 рассказал об опыте интеграции Apache Calcite в распределенную in-memory-платформу Apache Ignite. Если ваша система распределена, и вы хотите завести в ней SQL, читайте про то, как устроен Apache Calcite и какие есть нюансы его использования для распределенных систем.  Видео его выступления можно посмотреть здесь.

Читать далее


Проверь себя в Go

Дата: 17 Сентября 2021 06:54:42

Golang (Go), известный чуть менее 15 лет, входит в пятерку популярных языков на Stack Overflow. Порог входа относительно невысок, при этом язык хорошо показывает себя при реализации высоконагруженных проектов, хотя и имеет свои подводные камни. 

О работе с Go мы уже рассказывали ранее. Теперь же приготовили тест – для тех, кто хочет проверить силы, взглянуть на Go новым взглядом или просто развлечься и узнать немного любопытных фактов.

Читать далее


Практического повышения продуктивности пост

Дата: 17 Сентября 2021 06:48:24

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

Итак, поехали


Сложить и расправить. Искусство оригами в робототехнике

Дата: 17 Сентября 2021 06:41:08

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

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

Читать далее


Создаём инфраструктуру для интеграционных тестов: делаем образы и подводим итоги

Дата: 17 Сентября 2021 03:23:23

Это вторая статья из короткого цикла про создание инфраструктуры для автотестов. Первая доступна здесь.

3 года назад команда Fiji решила переизобрести инфраструктуру для интеграционных тестов. Мы перенесли тестовые БД в docker-контейнеры и научились поднимать в Kubernetes контур для автотестирования.

В этот раз поговорим про то, как создавать и актуализировать образы БД для интеграционных тестов. Также я расскажу, как благодаря автотестам изменились процессы в нашей команде. Затем подведу итоги и поделюсь планами на будущее.

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


Охота на орбитальные спутники: лазеры, роботизированные охотники и другие способы утилизации аппаратов

Дата: 16 Сентября 2021 22:45:12


На Хабре уже не раз писали о том, что вокруг Земли за последние несколько десятков лет образовалась целая груда мусора. То есть не груда, а более-менее распределенные по орбитам с разной высотой космические аппараты и их элементы. Но их очень много — тысячи.

Больше всего, конечно, спутников — их количество превышает 5000, а скоро и вовсе увеличится до нескольких десятков тысяч. Аппараты запускают Starlink, OneWeb, вскоре, скорее всего, тем же займутся китайские компании и Amazon. В ближайшем обозримом будущем количество спутников будет лишь расти. Это хорошо, даже отлично, но что делать, когда спутник выходит из строя или срок его эксплуатации приближается к завершению?
Читать дальше →


[Перевод] Подробное описание операторов RxJS — Часть 1

Дата: 16 Сентября 2021 20:45:44

Первое, что нужно понять об операторах, - это почему они существуют. Они существуют, потому что observables как тип позволяют нам обрабатывать события (или значения во времени) как множества или набор вещей.

Говоря более просто, любое четко определенное множество будет иметь операции, которые могут быть выполнены с ним, которые могут преобразовать его в новое множество того же типа. Например, предположим, что у нас есть грузовик с яблоками. Мы могли бы превратить его в грузовик с нарезанными яблоками с помощью машины для нарезки яблок. Та же самая машина для нарезки яблок затем может быть использована на любом грузовике с яблоками, чтобы превратить их в грузовик, загруженный нарезанными яблоками. В этом случае машина для нарезки яблок будет считаться «оператором», который сопоставляет яблоки с ломтиками яблок. Точно так же мы могли бы иметь грузовик с сахаром, мукой, яйцами и т. д. И объединить их с грузовиком с ломтиками яблока, чтобы сделать грузовик с яблочными пирогами, используя какую-то машину для производства пирогов. Итак, в этом примере грузовик - это тип множества, машина для нарезки яблок или машина для изготовления пирогов будут «операторами», а сахар, яблоки, ломтики яблок, яйца и т. д. Будут просто значениями, переносимыми нашим типом множества.

Читать далее


[Перевод] Загружаемые изображения для Jetpack Compose с использованием Glide, Coil и Fresco

Дата: 16 Сентября 2021 20:43:53

Новый современный набор инструментов пользовательского интерфейса Jetpack Compose был анонсирован компанией Google более года назад, и, наконец, в июле была выпущена стабильная версия 1.0. Также многие компании, такие как Twitter, lyft, Square, уже адаптировали Jetpack Compose на своих производственных уровнях, потому что он очень интуитивный, мощный и упрощает всю структуру пользовательского интерфейса, если правильно его использовать. Эта новая парадигма структуры пользовательского интерфейса поменяет в дальнейшем очень многое, также нам придется приложить еще немало усилий для миграции предыдущих вещей, связанных с пользовательским интерфейсом, таких как загрузка изображений из Url. 

Читать далее


Как я снял спутники Юпитера на ТЕЛЕФОН

Дата: 16 Сентября 2021 20:35:35

Перед вами первая (в истории?) фотография Юпитера и его спутников, сделанная на ТЕЛЕФОН без использования дополнительных оптических средств, таких как телескоп или внешние объективы. Только штатив, только хардкор.

Читать далее