Search
Write a publication
Pull to refresh
126
0
Алексей @Sterhel

User

Send message

Как работать с качеством в командах, где нет тестировщиков?

Reading time11 min
Views9K

Привет! Меня зовут Сергей, я в тестировании уже 11 лет и сейчас развиваю качество в компании QIWI. В этом посте я хочу рассказать вам, как сейчас выглядят наши продуктовые команды, куда подевалась роль тестировщика и поделиться некоторыми выводами.

Проблематика прошлого

Когда‑то у QIWI была довольно популярная структура. У нас были отделы разработки, аналитики, тестирования и прочее. Ребята из этих отделов объединялись в проектные команды и занимались проектом.

При этом одной из целей нашей компании — «Поставлять всё возрастающее количество качественных инкрементов, способствующих развитию приоритетных продуктов, не забывая при этом о людях в командах«.

И в рамках этой цели у нас в фокусе всегда было две вещи:

Читать далее

Заря квазаров

Reading time8 min
Views8.5K

Весной 2019 года мне довелось прочитать на Хабре о том, что впервые получен снимок чёрной дыры. Парой лет ранее я перевёл книгу «Большое космическое путешествие» Нила Деграсса Тайсона, Майкла Стросса и Ричарда Готта, и именно тогда заинтересовался классификацией и эволюцией чёрных дыр. Как известно, долгое время чёрная дыра считалась чисто теоретическим конструктом, существование которого прямо проистекает из общей теории относительности. При этом чёрная дыра (физическое тело или участок пространства, окружённые горизонтом событий), может возникать либо в результате коллапса звезды-гиганта, либо в результате скопления вещества в активном ядре галактики (AGN). Теоретически могут существовать и первичные чёрные дыры (PBH), которые пока описаны только на кончике пера, но есть нюансы. Сегодня поговорим о том, как именно может быть связана эволюция сверхмассивных чёрных дыр, сейфертовских галактик и, конечно же, квазаров.

Читать далее

Как создать сообщество продактов в ИТ-компании. Опыт МойОфис

Reading time10 min
Views1.9K

C 2013 года МойОфис занимается разработкой технологически сложных продуктов. В связи с этим у нас изначально сложилась сильная культура разработки (research and development) — по сути, фундамент компании. А поскольку линейка наших продуктов — от офисных редакторов до почтовых систем — систематически обновляется и расширяется, сотрудникам из разных отделов нужно постоянно держать руку на пульсе. Понимать не только специфику приложений (как минимум в области стека, функциональности, возможностей интеграции), но и принципы внутреннего взаимодействия в решении продуктовых задач.

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

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

Читать далее

Астрономический словарик: транснептуновый объект, пояс Койпера, хромосфера

Reading time7 min
Views4.7K

Транснептуновый объект




Все планеты Солнечной системы, двигаясь по своим орбитам, подвергаются гравитационному влиянию не только Солнца, но и всех остальных планет и других объектов системы. В начале XX века качество телескопов уже достаточно выросло для того, чтобы начать замечать разницу между расчётными орбитами Урана и Нептуна и реальными наблюдениями. Из этого можно было сделать вывод, что за орбитой Нептуна находятся ещё одна или несколько планет. Естественно, начались их поиски, и в феврале 1930 года астрономы нашли Плутон.

Правда, учёные им не удовлетворились: он был слишком мелким для того, чтобы объяснить все эти отклонения. Следующее открытие произошло в 1989 году: пролетев мимо Нептуна, Вояджер-2 помог уточнить массу этой планеты, и оказалось, что она меньше, чем считалось ранее. В результате расчёты совпали с наблюдениями, и дальнейших планет, находящихся за пределами Нептуна, находить уже было не нужно.
Читать дальше →

Что такое GitOps и почему он (почти) бесполезен

Level of difficultyHard
Reading time9 min
Views19K

Новый авиалайнер. Входит стюардесса в пассажирский салон: «Вы находитесь на нашем новом авиалайнере, в носовой части самолёта у нас находится кинозал, в хвостовой — зал игровых автоматов, на нижней палубе — бассейн, на верхней — сауна. А теперь, уважаемые господа, пристегните ремни, и со всей этой хреновиной мы попробуем взлететь».

Привет, меня зовут Олег! В ИТ-индустрии я работаю большую часть своей жизни. Мне очень интересно развитие инженерной мысли в области управления конфигурацией инфраструктуры, и последние шесть лет я занимаюсь тем, что называется DevOps.

Одна из свежих популярных тенденций — это концепция GitOps, которая была представлена в 2017 году на ставшем уже легендарным «Кубконе» Алексисом Ричардсоном — СЕО компании Weaveworks.

Weaveworks — это большая взрослая компания, которая в 2020 году привлекла больше 36 миллионов инвестиций под развитие своего GitOps.

Сейчас я попробую рассказать о тех неочевидных проблемах, которые могут вас ждать при принятии этой концепции. Если коротко, то GitOps не является «Серебряной пулей». Вполне вероятно, что спустя какое-то время вы закончите реорганизацию с ворохом велосипедов и костылей, которыми очень сложно управлять. Мы сами изрядно походили по этим граблям и хотим показать наиболее неприятные проблемы, которые не видны при чтении красивых статей.
Читать дальше →

Анализ производительности с помощью Chrome DevTools

Level of difficultyMedium
Reading time5 min
Views24K

Когда речь идет о производительности, разработчики часто используют Lighthouse, Perfbuddy или аналогичные инструменты анализа производительности. Но когда целевой сайт имеет защиту от ботов, получить информацию не так просто. В этой статье блога мы сосредоточимся на том, где искать признаки узких мест в производительности с помощью Chrome Devtools.

Читать далее

Баг Safari, которого никогда не было

Reading time5 min
Views3K
В октябре 2021 года мой коллега-разработчик Иэн опубликовал сообщение в канале поддержки GOV.UK Design System в Slack:

«Интересно, а кто-нибудь заметил, что Safari Technology Preview как-то странно влияет на заголовок, баннер бета-версии и кнопки сайта?»

Safari Technology Preview — это версия браузера Safari для «предварительного ознакомления с будущими веб-технологиями в macOS и iOS». Большинство создателей браузеров предоставляет подобные версии своих браузеров, чтобы разработчики могли тестировать новые функции.

После сообщения Иэна мы посмотрели на Design System в Safari Technology Preview.


Мы действительно увидели странное поведение заголовка, баннера бета-версии и кнопок, о которых говорил Иэн. Последнее слово в каждом из этих элементов переносилось на новую строку, хотя это и не было необходимо.
Читать дальше →

Не создавайте отдельные пути для sign-in

Reading time5 min
Views5.6K
В веб-приложении есть два варианта защиты экрана аутентификации:

  1. Если пользователь не аутентифицирован, перенаправить его по пути /sign-in:

  2. Если пользователь не аутентифицирован, показать ему форму входа по URL страницы, которую он пытался открыть, без перенаправления и отдельного пути:


Первый подход использовался на ранних этапах веба, потому что тогда страницы были неизменяемыми, и казалось логичным иметь отдельный URL просто потому, что в нём была форма и больше никакого другого контента.

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

Гравитационные батареи в заброшенных шахтах cмогут питать всю планету

Reading time6 min
Views66K


Гравитационные батареи — новый кандидат №1 на хранение избыточной энергии, неизбежно возникающей в наших системах. Есть несколько стартапов, работающих над развитием таких аккумуляторов. Все они говорят о том, что гравитация — надежный друг, который никогда не испарится и всегда будет работать. Но найти место для установки таких батарей — непростая задача. На днях исследователи посчитали, что заброшенные шахты по всему миру являются экономически эффективным решением, которое также может обеспечить рабочие места. А количество таких шахт позволяет хранить всю энергию мира.


Так что да, у загнивающих шахтерских поселков может появиться еще один шанс.

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

Технологии, изменившие музыку. Часть 2: создание

Reading time19 min
Views8.6K

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

Речь пойдёт об устройствах, так или иначе, связанных с электричеством: электрогитаре, синтезаторе и прочем. Погрузимся в историю и посмотрим на главные инструменты, появление которых изменило музыкальный мир 20-го века.

Читать далее

Как настроить Gitlab CI/CD для Android и Firebase App Distribution для доставки сборок

Reading time9 min
Views13K

Привет, меня зовут Антон Рябых, я технический директор компании Doubletapp, и я расскажу, как реализовать сборку Android-приложений на Gitlab CI/CD с последующей загрузкой в Firebase App Distribution для удобной доставки.

Это позволит нам:

автоматически собирать сборки на каждый пуш или Merge request;
прогонять тесты на сборках и не допускать мерджа веток, которые не прошли тесты;
доставлять сборки заинтересованным лицам (тестирование, менеджеры, клиенты, другие разработчики, и т.д.).

Данная статья будет полезна как людям с опытом в CI/CD, так и Android-разработчикам — новичкам в CI/CD и DevOps теме в целом. Поэтому, кроме непосредственного описания настройки Gitlab CI и Firebase App Distribution, мы также поговорим о том, что такое CI/CD, и о том, что такое Docker. Статья подразумевает, что ваш репозиторий находится в Gitlab. В качестве вычислительных мощностей, собирающих сборки, будет использован сам Gitlab, дающий 2000 бесплатных минут для сборок в месяц (большее количество минут можно докупать, но для небольшой команды бесплатного лимита может быть достаточно. Также можно легко настроить запуск сборок на своих мощностях).

Читать далее

Соотношение сторон и масштабирование изображений в Image компоненте

Reading time8 min
Views3.2K

Давайте попробуем посмотреть за короткий промежуток времени как работает масштабирование в Image. Для, тем, кто пришел в SwiftUI из UIKit думает что система достаточно простая и все модификаторы понятны, но иногда это работает, не так, как вы ожидаете.

Читать далее

Революционный метод сжатия изображений

Level of difficultyMedium
Reading time5 min
Views24K

Всем привет! Курс компьютерной графики в том или ином виде присутствует в образовательной программе любой ИТ-специальности. В числе прочего там обязательно проходят форматы графических файлов и затрагивают алгоритмы сжатия изображений. Сегодня я расскажу о новом, современном методе сжатия изображений, который ещё не вошёл ни в один учебник.
Читать дальше →

Как правильно проверять сложность пароля пользователя при регистрации

Reading time5 min
Views16K

За десятилетия айтишки сложилась практика ограничивать пользователей в сложности их паролей. Мы обложили пароли огромным списком требований. А справляемся ли мы сами с этими требованиями?

Читать далее

Книга «C# 10 и .NET 6. Современная кросс-платформенная разработка»

Reading time12 min
Views23K
image Привет, Хаброжители!

Шестое издание книги серьезно переработано, добавлены все новые функции, реализованные в версиях C# 10 и .NET 6.

Вы изучите принципы объектно-ориентированного программирования, научитесь писать, тестировать и отлаживать функции, реализовывать интерфейсы и наследовать классы. В издании рассматриваются API .NET, призванные решать такие задачи, как управление данными и их запросами, мониторинг и повышение производительности, а также работа с файловой системой, асинхронными потоками, сериализацией и шифрованием. В книге приведены примеры кода кросс-платформенных приложений, веб-сайтов и служб, которые вы можете создавать и развертывать на основе ASP.NET Core.
Читать дальше →

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

Reading time5 min
Views15K

Привет! Меня зовут Роман Максимов, я руководитель группы дизайна в Омни СМ. Наша группа входит в отдел цифрового дизайна и занимается диджитал- и веб-дизайном интернет-магазина «Спортмастер» и сайтов монобрендов. Если совсем коротко, то мы отвечаем за всё, что связано с визуальной и креативной составляющей — баннеры, дизайн заглавных страниц, лендингов, видео и всю графическую маркетинговую составляющую.

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

Итак, про нейронки. Тема уже в целом не новая, но с каждым витком развития получает неплохой импульс в плане актуальности. Крупные компании стали объединять усилия в области генеративного дизайна — Shutterstock запартнёрились с DALL-E, и в будущем можно будет не тратить кучу времени, копаясь в огромном каталоге картинок, а просто взять и написать в поисковой строке нужный запрос. Сеть его обработает и нарисует для подходящую картинку. Если не очень подходящую — просто уточни запрос. 

Читать далее

IIoT-решения для ESG — 3 сценария, в которых беспроводные датчики помогают жить и работать

Reading time3 min
Views2.7K

Привет! Меня зовут Юстина, я владелец продукта IIoT в компании СИБУР. В этом посте я расскажу про то, как LoRaWAN, беспроводные датчики, ловкость рук и слаженная работа разных подразделений может помочь и окружающей среде, и живущим неподалеку от наших объектов людям, и расчетному счету компании.

#1 — следим за чистотой воздуха

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

Проблема в том, что такие экопосты у нас долгое время обслуживались подрядчиком. А подрядчик — вещь непостоянная, так получилось на СХП: подрядчик, обслуживающий ПО и сервера, перестал существовать, и у коллег (экологов и химиков) осталась доживающая свой век система, которая требовала постоянной перезагрузки.

Оконечные измерительные устройства – есть, труднодоступное место их установки – есть. Звучит, как задача для нашего подразделения интернета вещей. Прежде всего — нужно было провести эксперимент по качеству связи. Многие предприятия СИБУР полностью покрыты беспроводной LoRaWAN-сетью, однако она всегда строится с «запасом», и кейсов с отдалением датчика на расстояние более 800 метров у нас не было. Так что 2,5 км стало для нас первым подобным случаем наладки устойчивого канала связи, с которым мы успешно справились. А что же делать с исправно работающими устройствами на экопостах? Не менять же? Конечно, нет: здесь на выручку пришли конверторы интерфейсов компании Автон, которые позволяют из почти любого интерфейса передать значения по LoRaWAN. А в качестве средства визуализации было принято решение использовать нашу IIoT-платформу.

Читать далее

Виброакустический мониторинг дорожной обстановки

Reading time13 min
Views4.8K

В России впервые в мире внедрили систему акустического мониторинга по волоконно-оптическим линиям на действующей автомобильной дороге протяженностью около 240 километров. Система позволяет в режиме реального времени отслеживать большое количество событий на дороге с точностью до 1 метра по акустическим следам от участников дорожного движения. 

Проект был реализован компанией "СМАРТС", за программную часть отвечала ИТ-компания Haulmont. Собственно далее рассказ пойдет от лица разработчиков о сложностях и нюансах этого уникального проекта.

Читать далее

Разворачиваем MySQL: установка и настройка

Reading time6 min
Views46K

MySQL на сегодняшний день является одной из наиболее распространенных в мире. Достаточно сказать, что по рейтингам 2021 года данная СУБД лишь немного уступала Oracle.

Читать далее

Чистый код: как писать код, который легко читать

Reading time11 min
Views18K
Для начала мы обсудим, зачем вам вообще может понадобиться писать более читаемый, а не краткий код. Затем мы рассмотрим стратегии, как это делать в случае:

  • Именования переменных, классов и функций
  • Вспомогательных функций
  • Комментариев к коду
  • Перечислений/словарей/запечатанных классов и так далее
  • Упорядочивания и именования пакетов

Зависит ли эффективность от меньшего количества нажатий на клавиши?


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

Моя логика была проста: если у меня это занимает меньше времени, то так я быстрее справлюсь с работой.

Эта логика имела бы смысл, если бы были истинными следующие условия:

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

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

У вас может быть другое мнение, и это абсолютно нормально! Можете взять из этой статьи только самое полезное для вас, а об остальном забыть.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Registered
Activity