iOS Makes Me Hate
4.25K subscribers
1.61K photos
250 videos
24 files
1.63K links
Авторский канал про разработку. Путь продуктовых самураев в MAANG.

Автор: @lvbond Senior iOS Yandex, ex-Avito, VK

лектор ВШЭ и тп

Самое большое сообщество практиков: https://boosty.to/lionbond

Сайт iosmakesmehate.tech
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Ставь лайк если настоящий программист и не пользуешься этой вонючей продукцией от Apple
13520
🫣 Способы решения работы с большими данными: Оценка пропускной способности

Продолжаю серию постов про управление нетворк трафиком. В первом посте мы поговорили про проблему наивной предзагрузки. В этом поговорим про оценку пропускной способности.

Пропускная способность (throughput) — сколько данных система способна обработать за единицу времени.


В мобилке ПС можно найти в таких местах:
🟣Загрузка данных по сети
🟣обработка большого JSON'а
🟣запись в локальную базу
🟣рендеринг большого кол-ва элементов

В больших система многое решается на уровне контента. Уменьшаем размер ответа. Кол-во байтов. Строк. Но есть еще супер базовые советы: Пагинация и lazy loading. Кэширование. Чанканизация.

Но хочется поговорить про необычные и непопулярные решения.

1️⃣ Codable + Chunk Parsing

Проблема: если сразу отдавать огромный массив JSONDecoder.decode(...), то он занимает много памяти и времени. Можно разделять JSON на части и парсить кусками

2️⃣ Сжатие данных (gzip vs Brotli)

Похожее делали в авито и других крупных компаний. Такое сжатие может дать до 65% уменьшения ответа.

3️⃣ Прерасчет лайаута и частичный рендеринг

Проблема: бэк отдает очень большой список компонентов. Мы не хотим рисовать сразу все. А остальные компоненты подготавливать в фоне вместо с отрисовкой.

У таблиц есть UITableViewDataSourcePrefetching еще известный в этой статье. Это помогает подготовить данные до появления ячейки и еще отменить загрузку при быстром скролле.

А у SwiftUI я нашел только какой-то костыль. Если найдете норм решение — кидайте
Please open Telegram to view this post
VIEW IN TELEGRAM
62
Нужны ли iOS разработчики?

Сейчас читаю книгу Accelerate: The Science of Lean Software. В нем было исследовано более 23 000 команд. Где главный вывод: высокая производительность связана не с языком или стеком, а с культурой, архитектурой и инженерными практиками.

“We found no evidence that any one technology stack is superior. Instead, what predicts high performance are capabilities.”


В беседе с Яндекс.Картами я задал один из острых вопросов не все разрешили: Нужны ли iOS-разрабы в проекте с KMP?

Ещё пару лет назад на конференциях звучало: будущее за Kotlin Multiplatform. Не учишь Kotlin и пойдешь на мороз. Я понимал это байт.

Меня никогда не пугали другие языки, но такая недружелюбная риторика от евангелистов технологий — отталкивала. Я никогда не был против кроссплатформы для подходящих задач. Но хотелось дать ассиметрию радикальным мнениям. Нельзя заменить одних на других.

Сегодня риторика изменилась. Теперь пугают не кроссплатформой. Пугают ИИ.

Но вопрос до сих пор в воздухе. Что же происходит с командой мобильных инженеров, если есть КМП или другая платформа? Если ли перевес что на 1 иосера теперь 5 андроидеров? Заменили ли кого-то?

И тут команда Карты показала крутой подход, которому нужно поучиться. Выигрывают не технологии — выигрывает инженерность. Неважно иос ты разраб или андроид. Их команды разделены поровну.

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

А если ваша компания выберет курс "замены одних на других чтобы избавиться от зависимости", то потеряет приближенных к самой платежеспособной аудитории. Ну или к остальным менее важным платформам 😂

Во многих книгах с хорошей базой по построению инженерной культуры пишут — это лучшая инвестиция в быстро меняющийся мир. А не изучение отдельных языков или стэков.
Please open Telegram to view this post
VIEW IN TELEGRAM
2032
Рубрика «офисная среда»

Вы просили больше лайф контента.
135
На фоне апрельских блокировок телеги. Я так и не решил. Нужно ли вести канал в MAX?

Дорогая аудитория. Помоги мне. Ставь 🔥если вести Макс. Или 💀если нет
Please open Telegram to view this post
VIEW IN TELEGRAM
299344
37
🚖 Интервью с iOS разработчиком из UBER

Выкладываю в публичный доступ сабвэй серфера интервью в ютуб.

В этом выпуске мы обсудили всё:
🟣собесы на СНГ рынке и западе
🟣инженерную культуру, систем дизайн, алгосы
🟣подготовку для всех рынков
🟣релокацию и сложность
🟣карьерные советы для разных уровней
🟣разница культуры Европы vs СНГ
🟣ИИ и его влияние
🟣Как развиваться разрабу в 2026
🟣Как искать работу в 2026

Ретроспективно переслушивая на фоне могу сказать, что самая интересная тема для меня — это саморазвитие через обучение и педагогику.

Ну а если вы работаете в фаанг или около того, то пишите. Я еще собрал не всю коллекцию.
Please open Telegram to view this post
VIEW IN TELEGRAM
1454
OpenAI: Как ИИ меняет подход к разработке программного обеспечения

ИИ истерия выходит в пик. И бреда становится все больше.

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

На днях я пытался работать с местным BDUI и агенты тупо не смогли работать с корпоративным велосипедом. Курсор нес дичь, а claude code отвечал 20 минут на простые вопросы. Пришлось все также по старинке решать задачи. Без ИИ.

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

Да и пока из огромного слопа и мусора ничего путного нет. Чаще про революцию кричат те, кто хочет на общей истерии и FOMO продать очередную непонятную хрень.

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

Даже наш опрос показал, что код все также нужно уметь писать в ручную. Как бы далекие инфлюенсеры и люди от практики не говорили обратное.

Делюсь видео от моего любимого блогера и супер мощного чувака. Конечно, доверия от менеджеров продающих свои проекты, меньше. Но интересно послушать

Ставь 💀 если считаешь что случилась революция, и 🖤 если ничего толком не поменялось.
Please open Telegram to view this post
VIEW IN TELEGRAM
3819
Мобильная разработка усложнилась?

Говорят, код не нужен, но тренд будто показывает обратное. Во многих компаниях iOS разрабы уже не пишут на одном языке. Разраб на Swift и iOS это лишь 30% реальных задач.

В яндекс картах иос-разрабы пишут на Kotlin, Swift и иногда С++. В Авито ребята почти уже не пишут на Swift и два моих бывших коллеги ротировались из андроида и iOS в бэк. В еком примерно также из-за их BDUI приколов.

Поделитесь опытом на чем вы пишите? Какие технологии используете?

Стоит ли поднимать темы не только про нативный Swift, но и вообще про мобильную разработку для iOS (на разных технологиях) и около?
205
Leetcode умер?

В догонку темы как меняется разработка.

Конечно, вокруг алгосов в эпоху ии много дисскусий. Раньше они были заменой IQ теста, но что сейчас?

1️⃣ Does LeetCode still make sense in the age of AI?

Тред в реддите. Много разных мнений, но до сих пор самые залайканые комменты в стиле "если даже в эпоху ии кандидат не может освоить алгоритмы, то как он будет работать работу?"

2️⃣ Using AI in Meta’s AI-assisted coding interview

Секция программирования тоже эволюционирует. Мета* (запрещено в РФ) теперь дает те же алгосы, но не запрещает использовать ИИ.

3️⃣ Is the era of the "LeetCode Grind" officially over, or are we just coping?

Сторонники литкода все также считают что это лучший вариант фундаментального развития. Которое менее подвержено инфляции особенно в эпоху ИИ.

LeetCode was never about the job, it’s a IQ test mixed with how much grinding you are ready to do in your free time, which is also a proxy that these big tech companies use to anticipate how much overtime you’ll put in.
153
🤢 Как один хитрожопый жук обманывал b2b на копейки

Тема чисел с плавающими точками — любимая в финтехах. Многим ее задают. Почему это важно?

Например вы делаете банк и вам важно:
🟣точно показывать баланс
🟣считать проценты
🟣показывать статистику

В нашем закрытом чате @se_development рассказал, как один чел использовал эти специфики и клал себе в карман бабки. Выходили миллионы.

Кидайте свои кейсы когда вам это пригождалось.

🧍‍♀️ Полезные статьи:
- Why a double is preferred over float?
- Demystifying Floating-Point Numbers in Swift
- Числовой тип данных Decimal и точность вычислений в Swift
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1233