Pavel Korolev. Потяжелее
345 subscribers
158 photos
88 videos
207 links
14 лет как Android разработчик. Рефлексия про технологии в работе и в жизни.

https://pavelkorolev.xyz

@pavelkorolevxyz_live_channel - канал полегче, обо всём кроме технологий.
Download Telegram
27 апреля. beetech conf 2024

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

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

Очень много впечатлений. От самой атмосферы до афтерпати всё кайф. Были конечно и очевидные недочёты, но я в этом вопросе предвзят из-за кучи знакомых в организаторах. Мне кажется всё круто прошло.

Видео обещают где-то через неделю. Как только, так сразу поделюсь.

Большая часть фото от приглашённых фотографов, вроде как тоже обещают опубликовать в ближайшие дни.

🔗 Презентация
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8
Forwarded from QazCode
Всем привет!

Делимся фотографиями с конференции. Посмотреть можно по этой ссылке и этой.

Ставьте 🔥, если нашли себя :)
1🔥1
Improving Legibility with the .not() Function

Классический просмотр AndroidWeekly в начале недели почти всегда кайф. Что может быть лучше, чем почитать какие-нибудь вредные советы. Особенно по кодстайлу. Это я люблю.

На сегодня у нас три интересных тейка про то, что мы с вами не умеем писать читаемый код в смысле использования отрицаний. 🎲

Первый – самый экстравагантный, про то, что можно переопределить оператор not() у любого класса. И для примера, говорит, можно писать user = !user вместо user.copy(isActive = false). Очень читаемо получилось, ага, очень понятно (нет). Впрочем, автор там оставил дисклеймер, что пример больше для демонстрации реализации, а не о том, где использовать. Но если не получается даже нормальный пример придумать, то может и фигня идея, нет?

Второй про то, что восклицательный знак слишком маленький и незаметный, его никто не видит. Поэтому нужно вместо !limitRequests писать limitRequests.not(). Этого я вообще не понимаю. Да, я согласен, что not больше бросается в глаза, чем восклицание, но это потому что обычно люди код так не пишут, вот взгляд и спотыкается. Об этом, кстати, не так давно Осип писал у себя в канале. И я тоже вообще не понимаю откуда это мода взялась, в какой-то момент этого стало прям много.

Я даже аргумент про нулабельные переменные не особо понимаю, который часто в таких обсуждениях приводят. Ну проверь ты на нулл просто раньше, зачем тебе в условии монстра типа limitRequests?.not() ?: false собирать.

Третий тейк про то, что можно поменять суть самой проверяемой переменной. То есть вместо !limitRequests использовать, например, allowRequests. Что в общем смысле то совет неплохой, но применим в гораздо меньшем количестве кейсов, чем кажется в таком синтетическом примере. Не будешь же ты какую-то очевидную переменную типа isLoading переименовывать, если она так у тебя по всему проекту называется. Тем более что ты в одном месте на true лоадер рисуешь, а в другом контент на false, например.

Короче, если можно код без отрицаний написать, то почему бы нет. Но чем восклицательный знак не угодил, если таки надо, не совсем понятно. А перед тем как операторы переопределять лучше бы всё таки десять раз подумать.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🌚2🤝2
10 мая. Louna

Шестой раз на них, впрочем абсолютное большинство сконцентрировано где-то до 2014 года. Моя проблема с группой Louna состоит в том, что за 10 лет после последнего сольного концерта я вырос, а они не очень. Поэтому новое фактически не слушаю, а старое почти перестал. Но тут нам подвернулись бесплатные билеты, которые выиграли на паб квизе и пришлось идти (ящик пива с другого квиза как подарок смотрится поинтереснее).

Когда видели их прошлым летом на фесте у них был самый жирный и прокачивающий звук из всего лайнапа. Я тогда прям удивился что это за нюметал вдруг, это скорее Tracktor Bowling был какой-то, а не Louna. Но на сольнике, в таком среднестатистически всратом клубе как Жесть звук соответствовал названию. Ну а кроме звука остаётся только солидарность и чувство ностальгии, которое у меня ещё настолько не настоялось.

Поэтому как бесплатный концерт на вечер получилось окей, но сам бы, конечно, не пошёл. Это был эталонный пример того, почему я ценю концерты групп типа Bicycles for Afghanistan или Green Apelsin на несколько голов выше. И публика круче, и атмосфера приятнее, и впечатления новые.
🔥3
Гугл и KMP

Итак, гугл теперь официально рекомендует KMP. Впрочем, мы давно догадывались, мы видели как они в некоторые джетпаковские либы добавили его поддержку. Звучит в целом хайпово, но нафига это гуглу, как думаете?

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

Они ведь вообще наоборот скорее должны быть заинтересованы в том, чтобы разработчики сидели в их экосистеме и в другие не ходили. Или это коварный план сначала дать людям свои удобные инструменты для всех платформ, а потом завендорить куски без которых жить нельзя, по аналогии с какими-нибудь гугл сервисами? 😈

Очень сомневаюсь, что они это делают только потому, что несколько команд внутри хотят на нём написать свои приложения, как сказано в посте. Это не тот уровень, чтобы о такой поддержке на IO заявлять.

Честно говоря, в быстрый успех KMP за пределами андроида я вообще не очень верю. Хотя идеологически, конечно, с точки зрения андроид разработчика это самое красивое решение, которое было за всё это время на рынке кроссплатформы. Но волнует ли вообще мир точка зрения андроид разработчика – это ещё вопрос открытый.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5