Pull to refresh
4
0
Алексей Старчиков @alexeystarchikov

User

Send message

TMS на замену TestRail: писали для себя, а выложили в open source

Level of difficultyEasy
Reading time9 min
Views8.8K

В прошлом году TestRail прекратил предоставлять и продлевать лицензии компаниям из России, поэтому мы в YADRO решили разработать собственную тест-менеджмент систему TestY. Опирались на опыт работы с другими сервисами, чтобы добавить тот функционал, которого не хватало нашим командам тестирования. За несколько месяцев написали core-часть системы и выложили ее в open source, чтобы другие компании и разработчики, для которых актуален вопрос лицензионной чистоты используемого софтай, пользовались решением и развивали его.

В этой статье рассказываем об отличиях TestY от других TMS и преимуществах нашей системы для команд любого размера. Спойлер: в TestY могут одновременно работать 300 тестировщиков — система справляется. Для тех, кто хочет опробовать TestY в своей команде, в конце статьи есть короткая инструкция, как ее развернуть.

Читать далее
Total votes 16: ↑16 and ↓0+16
Comments8

Как оценивать работу тестировщиков по науке

Level of difficultyMedium
Reading time8 min
Views1.9K

Тестировщик с 50-летним стажем Александр Александров рассказывает про количественное управление процессом тестирования: какие метрики в ИТ-проектах бывают, как можно спрогнозировать количество дефектов в коде и зачем вообще оценивать результаты тестирования по численным KPI.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments2

Ликбез по вложенной прокрутке в Jetpack Compose

Reading time11 min
Views1.9K

В основе большинства приложений для Android лежат списки. За многие годы появилось множество различных решений, реализующих взаимодействие других компонентов пользовательского интерфейса со списками — например, как панель приложения реагирует на прокрутку списка или как вложенные списки взаимодействуют друг с другом. Вы когда-нибудь сталкивались с ситуацией, когда один список находится внутри другого, и, прокручивая внутренний список до конца, вы хотите, чтобы внешний список продолжил движение? Это классический пример вложенной прокрутки!

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments1

Drag and Drop в Jetpack Compose

Level of difficultyEasy
Reading time5 min
Views1.3K

В январе 2024, крупное обновление Jetpack Compose добавило два новых модификатора: dragAndDropSource и dragAndDropTarget. В этой статье я расскажу как реализовать эффект Drag and Drop в Jetpack Compose.

Читать далее
Total votes 2: ↑2 and ↓0+2
Comments0

Чистая архитектура на примере

Level of difficultyEasy
Reading time27 min
Views37K

Познакомил друга с понятием "Чистая архитектура" и он стал часто спрашивать меня как лучше сделать то или другое. Хотел дать ему к какому-нибудь туториал, но, к удивлению (плохому), не нашел подходящего.

Поэтому выкладываю небольшой обзор:

1.. Что такое чистая архитектура;
2.. Как можно реализовать;
3.. Мои мысли.

Читать далее
Total votes 15: ↑13 and ↓2+11
Comments23

Простая архитектура с использованием MVVM и делегатов в Android. Оптимальное решение для малых проектов

Level of difficultyEasy
Reading time17 min
Views5.5K

В этой статье мы рассмотрим, как создать простую архитектуру Android, используя паттерн MVVM (Model-View-ViewModel) и делегаты для эффективного управления состоянием.

Читать далее
Total votes 8: ↑6 and ↓2+4
Comments0

Автоматизация публикации Android приложений в Google Play и Huawei AppGallery — инструкция от А до Я

Level of difficultyHard
Reading time19 min
Views15K

Всё еще публикуете релизы Android приложений вручную? Почитайте наше подробное руководство как полностью автоматизировать публикацию Android приложений в Google Play и Huawei AppStore через Gradle и CI/CD. Подробно от А до Я.

Почитать инструкцию
Total votes 8: ↑8 and ↓0+8
Comments12

Хороший ретрай, плохой ретрай, или История одного падения

Level of difficultyMedium
Reading time17 min
Views37K

Порой простое и очевидное решение может потянуть за собой хвост проблем в будущем. Например, добавление ретраев.

Меня зовут Денис Исаев, и я работаю в Яндекс Go. Сегодня я поделюсь опытом решения проблем с отказоустойчивостью из-за ретраев. Основано на реальных инцидентах в системе из 800 микросервисов.

Этот пост — продолжение вымышленных историй о разработчике Васе, который несколько лет назад разбирался с идемпотентностью в распределённых системах. Теперь перед ним новые задачи — получится ли справиться с ними в этот раз? Давайте узнаем.

Читать далее
Total votes 152: ↑152 and ↓0+152
Comments32

Мой подход к ведению семейного бюджета

Reading time3 min
Views5.7K

Всем привет! Я, как и многие на этом сайте, задумывался над ведением семейного бюджета.

Проблематика

Поскольку семья у меня состоит больше чем из одного человека, проблема управляемости этой истории меня очень интересует. Для хоть сколько-нибудь прогнозирования дат крупных покупок, требуется понимание скорости движения к цели накопления необходимой суммы, а по простому – сколько денег есть возможность откладывать ежемесячно таким образом, чтобы закрывать все потребности. Поскольку ежемесячный доход в нашей семье – это величина очень легко прогнозируемая(оклады), то для решения задачи нужно знать, сколько в среднем приходится расходов. Расходы обычно производятся в безналичном виде – либо платежи по картам, либо какие-то операции оплаты через мобильное приложение банка. Проблема в том, что банков несколько.

Решение

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

Читать далее
Total votes 3: ↑2 and ↓1+1
Comments24

Заблуждения Clean Architecture

Reading time15 min
Views410K
Превращаем круги в блоки

­­ 


На первый взгляд, Clean Architecture – довольно простой набор рекомендаций к построению приложений. Но и я, и многие мои коллеги, сильные разработчики, осознали эту архитектуру не сразу. А в последнее время в чатах и интернете я вижу всё больше ошибочных представлений, связанных с ней. Этой статьёй я хочу помочь сообществу лучше понять Clean Architecture и избавиться от распространенных заблуждений.

Читать дальше →
Total votes 58: ↑56 and ↓2+54
Comments203

Ускоряем сборку за счёт миграции с kapt на ksp

Reading time11 min
Views3.3K

Всем привет! Меня зовут Катя Гущина, я — Android-разработчик hh.ru. Хочу поделиться нашим опытом отказа от kapt в пользу ksp для обработки аннотаций и ускорения скорости сборки в большом проекте. В этой статье расскажу, что такое ksp, почему мы решили на него перейти, как проводили исследование и что из этого получилось.

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments0

Берём Glance Widgets под контроль

Level of difficultyMedium
Reading time10 min
Views3K

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

Читать далее
Rating0
Comments0

Миграция приложения на Jetpack Compose

Level of difficultyMedium
Reading time9 min
Views9K

Jetpack Compose — крутой набор инструментов, который упрощает работу над интерфейсами для Android. С ним не нужно писать так много кода, как в обычных XML-разметках. А ещё в нём много полезных для разработчика фич — в этой статье расскажем о них подробно. И, конечно, выясним, как перенести UI и архитектуру приложений на Jetpack Compose и забыть View на 10 000 строк, как страшный сон.

Читать далее
Total votes 12: ↑11 and ↓1+10
Comments14

Оптимизация анимации на Compose: крутим лоадеры, ищем неочевидные функции

Level of difficultyMedium
Reading time10 min
Views4.5K

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

Читать далее
Total votes 1: ↑1 and ↓0+1
Comments1

7 книг по Android-разработке, на которые стоит обратить внимание в 2023 году

Reading time4 min
Views15K

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

Читать далее
Total votes 15: ↑10 and ↓5+5
Comments4

Преобразование Хафа

Level of difficultyEasy
Reading time3 min
Views5.4K

Автор статьи: Рустем Галиев

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

Читать далее
Total votes 23: ↑15 and ↓8+7
Comments4

Подписываем Android-приложение внутренним ключом Google Play для публикации в сторонних магазинах (RuStore, Huawei..?)

Level of difficultyEasy
Reading time2 min
Views8.5K

В процессе публикации своего приложения в RuStore, я столкнулся с проблемой обновления сборки, первоначально-установленной из Google Play. Дело в том, что несколько лет назад, когда я размещал приложение в Google Play, я доверил управление ключами подписи Google App Signing. Это значит, что мой локальный ключ используется в качестве "загрузочного", а пользователи на устройства получают уже сборки, подписанные внутренним ключом Google. Прямого доступа к этому ключу нет, и, соответственно, я не могу подписать им сборку для RuStore для бесшовного обновления приложения.

Читать далее
Total votes 30: ↑30 and ↓0+30
Comments2

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

Reading time7 min
Views9.4K

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

Ещё дадим несколько советов на тот случай, если всё-таки не удаётся показать результат за отведённое время.

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments5

Инструменты анализа эффективности работы приложения. PerfView

Reading time15 min
Views12K

Иногда приходится разбираться, почему .NET приложение работает "плохо". Не так, как мы ожидали. Тупит, медленно работает, зависает, запросы «не исполняются», утекает память или потребляется слишком много CPU.

Есть множество способов, как разбираться в таких ситуациях. Сегодня мы немного обсудим, что это за способы. Когда и какой способ нужно использовать. И более детально рассмотрим один из инструментов: PerfView.

Читать далее
Total votes 23: ↑23 and ↓0+23
Comments5
1
23 ...

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Specialist
Lead