Очень приятная новость: JetBrains показали kotlin interactive shell (назвали почему-то ki, а не kish. А как здорово бы могло быть, ребята! Пишешь себе в терминальчике КиШ, "И ты попала! К настоящему колдуну, Он загубил таких как ты, не одну!")
Но штука прикольная, и в автокомплит умеет, и в раскраску синтаксиса, и в импорт сторонних зависимостей. У меня иногда возникает необходимость проверить что-то на простом примере, когда дока не пишет явно про какой-то корнер-кейс. Раньше ходил в браузере к ним в песочницу, теперь буду ходить в терминальчик.
#kotlin #shell #terminal
Но штука прикольная, и в автокомплит умеет, и в раскраску синтаксиса, и в импорт сторонних зависимостей. У меня иногда возникает необходимость проверить что-то на простом примере, когда дока не пишет явно про какой-то корнер-кейс. Раньше ходил в браузере к ним в песочницу, теперь буду ходить в терминальчик.
#kotlin #shell #terminal
The JetBrains Blog
ki: The Next Interactive Shell for Kotlin | The Kotlin Blog
There are several options to run Kotlin interactively: kotlinc and Kotlin REPL (read-evaluate-print loop) in IntelliJ IDEA. Neither is ideal. kotlinc does not have autocomplete or syntax highlighting.
Вот тут чувак собрал ссылочки на разные интересные места в API Android 12. У меня взгляд зацепился за обновления виджетов, API для сплэш скринов, некоторые обновления для night mode и ещё всякие юайные штуки. Но на самом деле там много всего, что-нибудь интересное найдётся для всех.
#android #os #update
#android #os #update
CommonsWare: Android App Development Books
Random Musings on the Android 12 Developer Preview 2
Android 12 is upon us! I always take a deep dive through each developer preview and beta release, to see what we should know about that Google is not promoting much. So, here is what I have found for Android 12 Developer Preview 2!
Ну шо, мальчишки и девчонки, скоро начнутся очередные две недели Podlodka Android Crew.
Вторая неделя там ожидается про Jetpack. Это мне, если честно, совсем не интересно.
Но вот первая неделя будет про многопоточность, а это уже возбуждает воображение. И вот несколько заголовков докладов, которые прямо-таки приводят моё воображение в совсем-совсем эрегированное положение:
- "Чистые" потоки - почему мы не переходим на RxJava или Coroutines - спикер пока не известен
- RxJava: способы асинхронной работы - от Саши нашего Ефременкова. Исключительно из-за докладчика захотелось послушать на самом деле
- Публичное собеседование по многопоточности - вот это потенциально огненным может получиться
#event
Вторая неделя там ожидается про Jetpack. Это мне, если честно, совсем не интересно.
Но вот первая неделя будет про многопоточность, а это уже возбуждает воображение. И вот несколько заголовков докладов, которые прямо-таки приводят моё воображение в совсем-совсем эрегированное положение:
- "Чистые" потоки - почему мы не переходим на RxJava или Coroutines - спикер пока не известен
- RxJava: способы асинхронной работы - от Саши нашего Ефременкова. Исключительно из-за докладчика захотелось послушать на самом деле
- Публичное собеседование по многопоточности - вот это потенциально огненным может получиться
#event
podlodka.io
Онлайн-конференция Podlodka Android Crew, сезон #15
Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным проблемам Android-разработки, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
Очередной чудесный пост от Никиты Прокопова (да, опять!) про то, почему размер шрифта в наших уютных редакторах, вообще говоря, не очень-то и работает, и всё приходится подбирать заново, когда меняем один модный шрифт с лигатурами на другой.
Напомнило тот анекдот про связь ширины двигателя Space Shuttle с шириной двух древнеримских лошадиных задниц.
#font #ui #text
Напомнило тот анекдот про связь ширины двигателя Space Shuttle с шириной двух древнеримских лошадиных задниц.
#font #ui #text
tonsky.me
Font size is useless; let’s fix it
What happens when you set fontSize: 32 in your favorite editor
Очень давно в Kotlin напрашивались непустые коллекции. Вот в этом посте как раз описывается, как к их написанию можно подойти.
Мне правда не нравится идея с unsafe area. По-моему оператор, который может уменьшить кол-во элементов в коллекции, при любом раскладе должен возвращать обычную, а не непустую коллекцию, потому что именно этот тип верно описывает ситуацию.
#kotlin #collections
Мне правда не нравится идея с unsafe area. По-моему оператор, который может уменьшить кол-во элементов в коллекции, при любом раскладе должен возвращать обычную, а не непустую коллекцию, потому что именно этот тип верно описывает ситуацию.
#kotlin #collections
QuickBird Studios
Non-Empty Lists in Kotlin
No-one likes to open an empty box! We use non-empty lists and collections in Kotlin to avoid such unpleasant surprises by design.
Эзотерические ЯП бывают разными: пугающими, как Madness, забавными, как FiM++, но я ещё не встречал ничего более отвратительного, чем Folders. В Folders нет файлов с кодом, есть только иерархия папок в Windows. И только эта иерархия и определяет программу.
#humor #esoteric #language
#humor #esoteric #language
danieltemkin.com
Daniel Temkin | Folders Language
Очень странный и одновременно забавный пост: чувак показывает, что Vim keystrokes - Turing-complete.
#vim #cs
#vim #cs
buttondown.email
Vim is Turing-Complete
No, not VIMSCRIPT. Vim KEYSTROKES are Turing-complete.
Показывать явно в возвращаемом типе, что функция может завершиться ошибкой, - идея не новая, хоть и всё ещё не заезженная. В этом посте чувак показывает, как такую Result monad можно на Kotlin написать. Реализация там, на мой взгляд, не во всём удачна (ну в какой, скажите, вселенной,
#fp #monad #kotlin
val reason: String достаточно для описания ошибки?), но достаточно хороша. #fp #monad #kotlin
Medium
And the Result is a monad
Adding superpowers to a custom type
Вот тут ребята из Авито рассказывают, как у них выстроена работа с дизайн системой. С одной стороны, не супер детально всё расписали, но вроде бы всё понятно, а с другой - пост и дизайнерам, и разработчикам может быть интересен.
#design
#design
Хабр
Как устроена библиотека дизайн-системы Авито в Фигме
В Авито колоссальное количество интерфейсов и экранов — около 1000 на десктопе и в мобильных приложениях. Чтобы интерфейсы были консистентными и корректно работа...
Разработка ждёт балета
Тут ребята в пятый раз запускают ежегодный опрос мобильщиков, можно сходить пройти. Результаты будут опубликованы через месяц. А пока можно посмотреть отчёты за прошлые годы: 2020, 2019, 2018, 2017. #survey
Относительно недавно скидывал сюда ссылку на ежегодный опрос мобильщиков, вот уже и результаты подоспели, сходите посмотрите.
TL;DR: очень многие боятся Большого У. и хотят покинуть православную, но не спешат что-то для этого делать. Роисся, 21-й век.
#survey #results
TL;DR: очень многие боятся Большого У. и хотят покинуть православную, но не спешат что-то для этого делать. Роисся, 21-й век.
#survey #results
Etolstoy
Известность команд мобильной разработки в 2021
Результаты большого опроса мобильщиков на 2021 год: в каких компаниях хотят работать, как их выбирают, на какие конференции ходят.
Виски убивает печень, курево убивает лёгкие, а попытка динамически подтягивать обновлённые строки, продолжая работать с ними стандартными средствами, напрочь убивает мозг. Оцените, через сколько кругов ада пришлось пройти автору поста, чтобы худо-бедно заставить это работать. Android как бы всё время пытается вставить тебе палки в колёса. Подменил
#strings #resources
Resources мне? Ну, ничего, LayoutInflater другим способом строки достаёт, подмени-ка теперь его. Что? И его подменил? Хе-хе, ну ладно, давай-ка теперь с MenuInflater развлекись.#strings #resources
Medium
Auto fetching string resources
How to make PM’s dream come true
Со всякими
Всегда интересно на такого рода вещи смотреть, но очень часто после этого хочется помыть руки. Просто посмотрите на финальный сниппет в посте. Коротко? Да. Но прочитать это человеку со стороны будет тяжеловато.
#fp
.flatMap, .filter и .reduce все уже давно знакомы. В этом посте рассказывают про .traverse. Всегда интересно на такого рода вещи смотреть, но очень часто после этого хочется помыть руки. Просто посмотрите на финальный сниппет в посте. Коротко? Да. Но прочитать это человеку со стороны будет тяжеловато.
#fp
Medium
Advanced FP for the Enterprise Bee: Traverse
Introduction
Лицензий много, и все они разные. Думать про них по-хорошему надо и при паблишинге чего-то в open source, и когда нужно заиспользовать что-то в своём проекте. Прохавать, что там как, не так просто. Вот этот ресурс может с этим сильно помочь. Чувак разобрал несколько популярных лицензий строчка-за-строчкой, чтобы даже нормальные люди всё поняли.
#oss #license #law
#oss #license #law
Kemitchell
/dev/lawyer
law, technology, and the space between
В этот раз ссылка немного странная: тут нашёлся репо с пачкой ссылок, которые, в теории, помогут углубиться в то, как работает этот наш Kotlin компилятор. Может быть однажды и пригодится, как знать.
#kotlin #compiler
#kotlin #compiler
GitHub
GitHub - ahinchman1/Kotlin-Compiler-Crash-Course: A repository of helpful sources to figure out what the Kotlin compiler really…
A repository of helpful sources to figure out what the Kotlin compiler really is - ahinchman1/Kotlin-Compiler-Crash-Course
Старая (если не сказать древняя, аж 2003! Ух!) статья, название которой в общем-то говорит само за себя: The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets. И всё.
#text #unicode #encoding
#text #unicode #encoding
Joel on Software
The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)
Ever wonder about that mysterious Content-Type tag? You know, the one you’re supposed to put in HTML and you never quite know what it should be? Did you ever get an email from your friends in…
У меня такой необходимости как-то не возникало, я в таком ключе даже не думал, но да, можно заставить Glide грузить картинки и для WebView. Автор говорит, что работать начинает всё сильно лучше. Хрен его знает, может и начинает. Но я бы всё-таки попробовал замерить.
#webview #glide #image
#webview #glide #image
Medium
Enhance Android WebView Performance using Glide.
Using WebViews in your native application is very common these days but when it comes to performance, rendering of a WebView is quite slow…
Кто-то из вас знает, что я работаю над App in the Air. И работаю долго (неприлично долго по сегодняшним меркам) - без месяца 6 лет. Когда я пришёл, нас было ~10. Не так давно цифра перевалила за 80. И всё, что получилось за эти годы, мы строили вместе. Бесчисленное количество раз облажались, отдышались и пошли работать дальше. И многого добились. Но нужно больше! Нужно круче! Впереди назойливо маячит Фудзи, которую, вообще говоря, неплохо было бы и свернуть...
Это я всё к чему? Мы очень хотим усилить Android-команду, приходите строить с нами! Сейчас ищем людей middle+ уровня, а вот тут можно найти детальное описание того, кто мы, что мы, и зачем. Ну и можно напрямую дёргать нашего тим-лида @istima. Пишите!
#job
Это я всё к чему? Мы очень хотим усилить Android-команду, приходите строить с нами! Сейчас ищем людей middle+ уровня, а вот тут можно найти детальное описание того, кто мы, что мы, и зачем. Ну и можно напрямую дёргать нашего тим-лида @istima. Пишите!
#job
Люблю такие посты. В своей местной газете автор встретил задачку про разгадывание слов, после чего бессмысленно и беспощадно написал для неё решалку на трёх языках.
#algorithm #just4fun
#algorithm #just4fun
Stuff I've learned recently...
Solving the Daily Jumble
Solving a puzzle in Java, Groovy, and Kotlin. Also includes GraalVM and its native image tool.