Сегодня обещанный технический тред про Kotlin Adoption. Что это такое и какие проблемы возникают у тех, кто хочет внедрить новый язык?
Рассматриваем проблемы в IDE, системах сборки и компиляторах.
Правило такое: вы лайкаете и ретвитите - я пишу! Поехали
Alright folks, gather round and let me tell you the story of (almost) the biggest engineering disaster I’ve ever had the misfortune of being involved in. It’s a tale of politics, architecture and the sunk cost fallacy [I’m drinking an Aberlour Cask Strength Single Malt Scotch] twitter.com/StanTwinB/stat…
Долго думал как сформулировать то, чем я занимаюсь в одном твите. Я стараюсь сделать так, чтобы не происходило такого.
Очень крутая история про Swift в Uber. twitter.com/stantwinb/stat…
Если не сильно углубляться в детали, то есть ровно две причины внедрять новые языки программирования:
Уменьшить Time-to-Production, он же Delivery Velocity
Упростить Hiring
И даже эти две причины тесно связаны, что уж говорить про Reliability DevX и прочие
Обе невероятно сложно измерить. Ну то есть как, измерить то можно:
За пол года мы уменьшили время доставки фичи на 30%
Нам удалось нанять в два раза больше разработчиков по сравнению с прошлым годом.
Вот только как оценить импакт от внедрения нового языка на эти метрики?
Все цифры в этом твите вымышлены, а любое совпадения с реальными случайно.
Но допустим, мы определенным образом для себя обосновали необходимость внедрения или переезда на новый язык или тех стек.
Давайте посмотрим из каких стадий состоит разработка продукта и что может пойти не так на каждой из них. У меня даже есть для вас картиночки :)
Если брать любой проект, то пайплайн такой:
Пишем код
Билдим код
Шипим код нашим пользователям
Если речь идет про Android разработку, то люди обычно пользуются Android Studio, потом Gradle, а потом как-то заливают приложение в маркет
Если вам нравится этот тред или вы давно хотели попробовать Kotlin, то сегодня вы можете скачать его c 10% скидкой по промокоду @lightdelay
Ссылку оставил в описании.
Что может пойти не так? У Kotlin хорошая поддержка IDE, Gradle справляется со сборкой, а несколько лишних килобайт в приложении никто даже не заметит.
Да, большинство Kotlin/Android приложений даже не замечает проблем. Драма начинается, когда в приложении десятки тысяч модулей!
Сегодня разбираемся что же такое Kotlin Adoption, как мы несли добро в Alibaba Group. Тред, в котором даже упоминается мобильная разработка pic.twitter.com/9iRJPM6hSZ
Кстати, я уже немного писал про Kotlin Adoption в бэкенде и фреймворках.
Вот ссылка на тред, чтобы не повторяться!
Занимался этим в Alibaba Group, еще до того как ветка компании превратилось в Алиэкспресс Россия - как вы там, потомки?
twitter.com/mobileunderhoo…