Обновить
37
0.1
Maxim Firsov@FirsofMaxim

Mobile developer, Golang backend developer

Отправить сообщение

Дефицита нет, менеджмент эффективен

Время на прочтение10 мин
Охват и читатели16K

Продавец предлагает дефицитный товар, безбожно накручивая цену, торгует из-под полы - сделка происходит на «сером рынке». И покупатель соглашается купить!

Эта статья является продолжением материала "Дефицита нет, платить не нужно".

Читать далее

Почему вообще ломаются импланты (и почему именно они такие дорогие)

Время на прочтение9 мин
Охват и читатели25K

Так выглядит подготовка к имплантации, проектируем поверх модели конкретного пациента.

Имплант сам по себе очень и очень дешёвый. Это просто металлическая трубка, снаружи у неё — резьба для крепления внутри кости, а внутри — резьба для крепления коронки. По сути, это слот для искусственного зуба или другой конструкции. В целом крепить можно и на правильно забитый кусок канцелярской скрепки, но тогда риски неоправданно увеличатся. Дорогим имплант делают технология изготовления этой самой трубки, которая становится прочнее, инструментарий для установки в комплекте и набор запчастей. Потому что импланты надо поддерживать 30–40 лет, потому что обычно даётся пожизненная гарантия. Попробуйте представить проект с такой гарантией и поддержкой, и вы примерно поймёте, как формируется цена на железку. Остальное — операция, то есть примерно квадратичное увеличение цены за каждый уменьшенный процент серьёзных осложнений за счёт квалификации хирурга и используемого оборудования.

Мы принципиально не используем импланты noname включая всех российских производителей. До наработки ими имени осталось лет так 5–10 по разным оценкам. Сломаться, конечно, может любой, но у производителей с репутацией это случается сильно реже. Но всё равно есть шансы через пять, семь или даже 30 лет после остеоинтеграции получить поломку, особенно если вам под видом обычного хорошего импланта поставили «пиратский».
Читать дальше →

Карманный справочник: сравнение синтаксиса MS SQL Server и PostgreSQL

Время на прочтение17 мин
Охват и читатели125K

Приветствую, уважаемые хаброжители!

Так как занимаюсь переводом кода с MS SQL в Postgre SQL с начала 2019 года, то решил продолжить сравнение этих двух СУБД.

В прошлой публикации мы рассматривали отличия в быстродействии MS SQL и PostgreSQL для 1C.

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

Начнем рассмотрение с сопоставления типов.

Читать далее

LJV: Чему нас может научить визуализация структур данных в Java

Время на прочтение26 мин
Охват и читатели31K

Эта статья является пересказом моего доклада на Java-конференции SnowOne 2021 года. LJV — проект, созданный в 2004 году как инструмент для преподавания языка Java студентам. Он позволяет визуализировать внутреннее устройство структур данных. В этом докладе я запускаю LJV на разных структурах (от String до ConcurrentSkipListMap) в разных версиях Java и разбираю, что там внутри, как оно менялось от версии к версии, и как это всё работает.


image

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

[Пятничное] Теория Жоп

Время на прочтение5 мин
Охват и читатели277K

Эту полу-шуточную теорию о проектном управлении я излагал коллегам по ИТ цеху лет 15 назад, и тогда же неоднократно слышал советы загрузить этот текст на Хабр, но руки не дошли. На днях, разгребая старые файлы наткнулся на свои записи и решил все таки поделиться ими с Вами. Частое употребление ключевого слова к сожалению, неизбежно и не отделимо для целостности этого текста, прошу принимать или нет 'as is'. Итак...

Каждая карьера развивается от Жопы к Жопе, и никак иначе. Хочешь повышения - ищи Жопу и принимай, как говорят в Америке, "challenge". Если Вам предлагают возглавить новый проект, либо занять какую то должность, да что угодно - знайте, там Вас ждет Жопа. Иначе не предложили бы, а сами бы справились. Равно как и если Вы ожидаете избавиться от надоевшей Вам сейчас деятельности, надеясь вырваться из "этого ада" и заняться "чем то новеньким" - будьте готовы встретиться с Большой Жопой.

Читать далее

Модульность и DI в современном Android-приложении. Большой туториал от Яндекса

Время на прочтение21 мин
Охват и читатели46K

Всем привет! Я Денис Загаевский из Android-разработки Яндекс.Карт. Если вы развиваете многомодульное приложение или хотите разбить на части пока ещё одномодульное, этот туториал для вас.


Под катом расскажу, как удобно разбить приложение на модули, зачем это нужно и как потом приготовить в нём DI (dependency injection). Кто-то мог слышать мой доклад на Mobius 2021 Piter или в Школе мобильной разработки, а для всех остальных я написал эту статью.


Смотреть доклады

На Mobius:



В ШРИ:



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


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

Пишем сервис на GO. Runtime контроллер и Graceful Shutdown

Время на прочтение20 мин
Охват и читатели33K


Напишем вместе HTTP-сервис на golang с нуля? Я уверен, что это довольно несложно. Для тех, кто каждую неделю этим занимается, моя статья не будет особенно интересна, но я все равно рекомендую взглянуть и оценить, возможно, ваши комментарии спасут кому-то жизнь. А может кое-какие из моих рассуждений спасут вашу.


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


Это первая часть. Первые шаги в нашем нелегком пути. И в этой статье мы попробуем достичь следующих целей:


  • Выработаем понимание структуры и жизненного цикла приложения.
  • Формализуем наше представление жизненного цикла на языке go.
Читать дальше →

Гидропоника. Персидская принцесса Сорая, или как из семян вырастить премиальную клубнику

Время на прочтение7 мин
Охват и читатели43K

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

Почему из семян? Проще не заморачиваться, а купить рассаду! - скажут некоторые. Но увы, с покупной рассадой не всё так просто, как может показаться с первого взгляда. Главная проблема покупной рассады - грибковые болезни и наличие яиц или личинок вредителей. Даже приобретая рассаду с известных европейских питомников Вы рискуете получить заражённые растения, и занести к себе на садовый участок нежеланных гостей в виде трипсов, паутинного клеща, цикадок, белокрылки и иже с ними.

Читать далее

Шарим (в) консоль

Время на прочтение5 мин
Охват и читатели20K
Мы уже все привыкли, что конференции проводятся виртуально. Мы все работаем через зумы, скайпы, миты и тимзы. Удобно, конечно, но у нас есть одна занудная проблема. Когда нам, программистам надо расшарить экран, мы тяжело вздыхаем и нажимаем кнопку Share Screen. Всё это не без проблем.


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

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

Самый полный чек-лист для защиты от мошенников

Время на прочтение17 мин
Охват и читатели176K

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

Читать далее

Построение отказоустойчивой (fault tolerant) системы

Время на прочтение8 мин
Охват и читатели50K
В разработке банковского ПО данному аспекту системы уделяется наибольшее внимание. Часто, описывая отказоустойчивую систему, используют слова: Fault Tolerance, Resilience, Reliability, Stability, DR (disaster recovery). Данная характеристика — суть способность системы продолжать корректно работать при падении одной или нескольких подсистем, от которых она зависит. Я кратко опишу какие подходы могут применяться в данной области и приведу пару примеров.
Читать дальше →

Перешли всем отделом геймдизайна на Notion. Полёт нормальный

Время на прочтение10 мин
Охват и читатели23K

Недавно наш отдел геймдизайна поменял основной инструмент и переехал с Google Документов на Notion — хотели решить проблемы хранения и организации документов. В общем, ни разу не пожалели. 

Notion — это такой мегакомбайн, совмещающий в себе Jira, Confluence и Google Docs. В нем бок о бок уживаются огромная база данных, совместная работа над документами, календари, напоминания, списки задач, канбан-доски, интеграции сторонних инструментов и много-много другого.

Для себя мы организовали удобное хранилище всех геймдизайнерских материалов (ГДД, концепт-доки, фоллоу-апы, планы по контенту и так далее), сделали систему тегов, которая быстро позволяет найти любой документ, и создали готовые шаблоны для создания ТЗ в пару кликов.

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

Читать далее

Локализация Android-приложений: о чем умалчивает документация

Время на прочтение8 мин
Охват и читатели16K

Локализация Android-приложений — намного более сложная задача, чем должна была бы быть. Описание в документации недостаточное: чтобы разобраться в происходящем «под капотом», нужно искать информацию во внешних источниках (на StackOverflow и в блогах) и тренироваться на базовых приложениях типа «Hello World».

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

Читать далее

Битва снифферов: Charles vs Proxyman

Время на прочтение7 мин
Охват и читатели41K

Привет, меня зовут Даша, я работаю тестировщицей клиентского мобильного приложения в компании Ozon.

Сегодня поговорим о снифферах в тестировании мобильных приложений –– программах для перехвата, анализа и модификации трафика. Пожалуй, самый популярный сниффер из тех, о которых мне доводилось слышать — Charles. Про него уже не раз писали на Хабре, есть довольно детальные разборы. Но не Charles-ом единым! 

Читать далее

Насколько быстры компьютеры

Время на прочтение3 мин
Охват и читатели43K

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

Читать далее

Оптимизация ресурсов в Android. Ускорение сборки и уменьшение размера APK

Время на прочтение4 мин
Охват и читатели14K

Один из эффективных способ ускорения проектов - разделить генерацию R классов по отдельным модулям. Хоть эта возможность уде добавлена давно в Android Gradle Plugin, но её до сих пор не включили по умолчанию. Из статьи вы узнаете как выключить эту фичу и какие результаты по скорости сборки проекта удаётся достичь

Читать

Автоматизация повышения качества кода в Android

Время на прочтение8 мин
Охват и читатели12K

Современные мобильные приложения уже вполне серьезные Enterprise проекты, которые разрабатываются десятками, а то и сотнями разработчиков, содержат в себе множество тысяч строк кода и постоянно меняются и развиваются. Уследить за такой огромной кодовой базой помогает процесс автоматизации проверок кода и работы приложения. Сегодня расскажу о том какие инструменты вы можете использовать, чтобы улучшить стабильность вашего кода и не допускать ошибок, а также сэкономить время коллегам во время pull request.

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

Читать

Zettelkasten: как один немецкий учёный стал невероятно продуктивным

Время на прочтение18 мин
Охват и читатели520K
Изображение предоставлено автором. Основано на фотографии Патрика Томаса с Ансплэша

Это перевод статьи Дэвида Клира о методе ведения заметок Zettelkasten, благодаря которому немецкий социолог Никлас Луман написал более 70 книг и 400 научных статей. Стоит читать, если вы хотите создать собственную базу знаний, систематизировать идеи и перестать забывать важные мысли.

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

Защита данных пользователя: как добавить поддержку правил CCPA и GDPR в мобильное приложение

Время на прочтение16 мин
Охват и читатели5.5K

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

Поэтому приватность и безопасность данных сейчас сложно переоценить. В большинстве IT-компаний это понимают и работают над собственными инструментами защиты (Apple, например, на каждой презентации делает особый акцент). Страны, в свою очередь, регулируют всё это специальными законами.

Основными из них являются Европейский General Data Protection Regulation (GDPR) и, принятый в Калифорнии, California Consumer Privacy Act (CCPA). Сегодня подробно разберёмся, что это за законы, чего требуют и как внедрить их поддержку в свой сервис, сайт или мобильное приложение.

Это первая статья из цикла про приватность на iOS, где поговорим не только про законы, но и про изменения в политике App Store, AppTracking Transparency и IDFA.

Читать далее

Почему тысячу лет назад вам было бы легче учить английский

Время на прочтение8 мин
Охват и читатели40K

Автор: Виолетта Хайдарова

Те из нас, кому в детстве читали народные сказки, могли встретить там много странного. На фоне медведей-зомби, девочек со светящимися черепами и прочих милых эпизодов как-то терялись фразы, звучащие ну… немного странно. Например, «единым махом семерых побивахом». Что ещё за «побивахом» такое? Взяли и просто извратили слово ради рифмы? Оказывается, нет.

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

Читать далее

Информация

В рейтинге
4 271-й
Откуда
Снежинск (Челябинская обл.), Челябинская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Разработчик мобильных приложений
Старший
Android SDK
Kotlin
Java
Golang
PostgreSQL
Swift
Разработка под iOS
Разработка под Android