Рубрика «Блог компании FunCorp» - 3

Использовать финальные классы или не использовать финальные классы? Вот в чём вопрос. А ещё в том, когда и как это делать правильно.

Финальные классы в PHP, Java и других языках - 1

Читать полностью »

Корутины и синхронизация. Лучше не смешивать - 1

Предположим, у вас в коде есть критическая секция, которая не должна выполняться более, чем одним потоком одновременно.

В мире Java одним из стандартных решений является добавление ключевого слова synchronized к сигнатуре метода. В Kotlin для получения того же эффекта используется аннотация @Synchronized

Читать полностью »

Дополняем чек-лист тестирования при обновлении иконки и сплеша в мобильных приложениях - 1

Алоха! Меня зовут Даша, я тестирую мобильные приложения. Скоро Хэллоуин, а FunCorp традиционно обновляет к некоторым праздникам иконку и сплеш. Сейчас именно такой случай, потому что большинство наших пользователей находятся в США. Задача показалась тривиальной, я быстро составила базовый чек-лист на 8 пунктов, но в процессе нашла ещё несколько кейсов, и он вырос до 13-ти (прилагается).

Здесь нет rocket science, я лишь расскажу, на что стоит обращать внимание в таких тасках, чтобы не пропустить лишних багов в прод — и на Android, и на iOS.
Читать полностью »

Привет! Уже завтра День программиста (12.09.2020), и специально к нашему профессиональному празднику я написал не хардкорно-технический пост, а лайтовую статью о маленьких, не всегда очевидных фичах, которые хоть и не часто, но встречаются в мобильных приложениях и не только. Как вы уже догадались — это пасхалки. И не просто пасхалки, а отечественного производства. Если хотите ненадолго погрузиться в детали, которые мы обычно не замечаем, либо которые сложно найти, — добро пожаловать под кат.

Российские пасхалки в мобильных приложениях. Какие они? - 1
Читать полностью »

Распознавание текста на картинке с помощью tesseract на Kotlin - 1

Ни для кого не секрет, что Python прочно занял первенство в ML и Data Science. А что если посмотреть на другие языки и платформы? Насколько в них удобно делать аналогичные решения?

К примеру, распознавание текста на картинке.

Читать полностью »

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

Как Иван ошибку в бэкенде локализовывал - 1
Читать полностью »

Передовой опыт тестирования в Java - 1

Чтобы покрытие кода было достаточным, а создание нового функционала и рефакторинг старого проходили без страха что-то сломать, тесты должны быть поддерживаемыми и легко читаемыми. В этой статье я расскажу о множестве приёмов написания юнит- и интеграционных тестов на Java, собранных мной за несколько лет. Я буду опираться на современные технологии: JUnit5, AssertJ, Testcontainers, а также не обойду вниманием Kotlin. Некоторые советы покажутся вам очевидными, другие могут идти вразрез с тем, что вы читали в книгах о разработке ПО и тестировании.Читать полностью »

Как мы научили робота чувству юмора - 1

В IT-кругах ходит такая шутка, что машинное обучение (machine learning, ML) — это как секс в среде подростков: все об этом говорят, все делают вид, что этим занимаются, но, на самом деле, мало у кого это получается. У FunCorp получилось внедрить ML в главную механику своего продукта и добиться радикального (почти на 40%!) улучшения ключевых метрик. Интересно? Добро пожаловать под кат.Читать полностью »

Как будет выглядеть программирование в 2025 году? - 1

Мы часто читаем о бэст практикс в программировании, о новых функциях фреймворков или о том, что нового в очередной версии PHP. Читаем, как поменять «то на это», почему какая-то техника хороша или плоха, или какой новый пакет вы можете использовать в своём проекте. Но всё это рассуждения только о прошлом или настоящем.

Сейчас я заканчиваю чтение книги «The Inevitable», написанной основателем журнала Wired, речь в которой исключительно про будущее. Вдохновившись этой книгой, предлагаю посмотреть на будущее программирования.
Читать полностью »

Новости о машинном обучении Apple в 2020 году - 1
В 2020 году машинное обучение на мобильных платформах перестало быть революционным новшеством. Интеграция интеллектуальных функций в приложения стала стандартной практикой.

К счастью, это вовсе не означает, что Apple прекратила разрабатывать инновационные технологии.

В этой публикации я кратко расскажу о новостях в отношении платформы Core ML и других технологий искусственного интеллекта и машинного обучения в экосистеме Apple.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js