Как фиксить AI-генерейтед Swift код
Эту статью уже обсудили и на линкедине, и в тг, и в тв.
Генерация кода с АИ стала новым скиллом. Когда ты раньше точечно и аккуратно писал в ручную небольшой, но выверенный код, то сейчас игра поменялась.
В день ты можешь увидеть десятки вариантов кода и тут из-за объемов — качество может сильно страдать. Нужно переучиваться и адаптироваться. Этот этап говнокодерства должны пройти все, как прошли когда-то с ручным. И возможно, не всем далеко твой код будет нравиться. Даже обученный по текущей кодовой базе проекта.
Еще больше усложняет то, что Swift код от ИИ в разы хуже того же Kotlin'а, Go, Python'а из-за их популярности. В этой статье автор дает лайфхаки как фиксить код от аишек:
- Если проект неправильно настроен на rules, то АИ могут игнорировать общий стиль и правила.
- Проблемы с асинхронностью и управлением потоками. Часто он генерит GCD, чем Swift Councurrency
- АИшки редко думают о корнеркейсах. Здесь их нужно поправлять и давать доп условия.
- Пиши тесты и не стесняйся их использовать
Ну и главное правило — использовать аи как помощника, а не как источник истины.
Эту статью уже обсудили и на линкедине, и в тг, и в тв.
Генерация кода с АИ стала новым скиллом. Когда ты раньше точечно и аккуратно писал в ручную небольшой, но выверенный код, то сейчас игра поменялась.
В день ты можешь увидеть десятки вариантов кода и тут из-за объемов — качество может сильно страдать. Нужно переучиваться и адаптироваться. Этот этап говнокодерства должны пройти все, как прошли когда-то с ручным. И возможно, не всем далеко твой код будет нравиться. Даже обученный по текущей кодовой базе проекта.
Еще больше усложняет то, что Swift код от ИИ в разы хуже того же Kotlin'а, Go, Python'а из-за их популярности. В этой статье автор дает лайфхаки как фиксить код от аишек:
- Если проект неправильно настроен на rules, то АИ могут игнорировать общий стиль и правила.
- Проблемы с асинхронностью и управлением потоками. Часто он генерит GCD, чем Swift Councurrency
- АИшки редко думают о корнеркейсах. Здесь их нужно поправлять и давать доп условия.
- Пиши тесты и не стесняйся их использовать
Ну и главное правило — использовать аи как помощника, а не как источник истины.
Hacking with Swift
What to fix in AI-generated Swift code
As AI-assisted coding increases in popularity, here are a handful of things I would suggest you look out for – and what to replace them with instead.
Кстати, делюсь главной книгой года по продажам в Amazon.
За которую я отдал 60$. А вам, дорогие зрители, дарю ее!
https://news.1rj.ru/str/iosmmcresources/129
За которую я отдал 60$. А вам, дорогие зрители, дарю ее!
https://news.1rj.ru/str/iosmmcresources/129
Использование AI-тулкитов в кровавом бигтехе
Обещал вам давно максимально практичный выпуск про ваши там Cursor'ы, Claude Code и тп и тд. Долго к нему шли. Но здесь уникальность в том, что показываем РЕАЛЬНУЮ КОДОВУЮ БАЗУ ПРОЕКТА.
Позвал своего коллегу @BigAppleMax обсудить вопросы:
🟣 Может ли АИ заменить разрабов
🟣 Как компании помогают/стимулируют изучать этот набор инструментов
🟣 Какие скиллы деформируются, а какие придется качать
🟣 Разберем UI, Network, MCP и многое другое
Ставьте лайки, мои любимые друзья
Обещал вам давно максимально практичный выпуск про ваши там Cursor'ы, Claude Code и тп и тд. Долго к нему шли. Но здесь уникальность в том, что показываем РЕАЛЬНУЮ КОДОВУЮ БАЗУ ПРОЕКТА.
Позвал своего коллегу @BigAppleMax обсудить вопросы:
Ставьте лайки, мои любимые друзья
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Заменит ли AI разработчика / Лев Бондаренко, Максим Абакумов
iOS-разработчики из Яндекс Еды Лев Бондаренко и Максим Абакумов записали детальный воркшоп по Cursor AI.
В качестве примера используется реальный код продакшен-проекта Яндекс Еды. Миллионы строк, десятки модулей, сложные зависимости — никакого Hello, world…
В качестве примера используется реальный код продакшен-проекта Яндекс Еды. Миллионы строк, десятки модулей, сложные зависимости — никакого Hello, world…
AI Engineering: Основные навыки AI-разработчика
Давайте немного о книге выше.
Chip Huyen пишет:
Если вкратце, она определяет такие критерии:
1️⃣ Prompting
Нужно формулировать инструкции так, чтобы модель действовала предсказуемо. Это как писать ТЗ для гениального, но капризного подрядчика. Если инструкция двусмысленна, результат непредсказуем.
2️⃣ Контекст-инженерия
Умей превращать хаотичные документы в осмысленный контекст, который улучшает ответы. Она пишет, что модель умный собеседник, но половина ее интеллекта зависит от того, что вы ей расскажете перед вопросом.
3️⃣ Адаптация моделей: finetuning, выбор моделей, компромиссы
Нужно понимать, когда достаточно промпта, когда нужен RAG, а когда — дообучение. Как в готовке блюд. Иногда достаточно соли, иногда нужна новая специя, а иногда целый новый рецепт.
4️⃣ Оценка качества (evaluation): метрики, AI-судьи, тесты
Умей системно измерять качество, а не на глаз. Тут уже сравнение про медицину, где без диагностики улучшения невозможны.
Если применять кейсы к мобильной разработке, то знания устройства работы облачных LLMок поможет лучше делать приложения. Например, моя задача сверстать кнопку. Как помогут мне знания?
В идеале, нужно делать так:
1. Вместо обычного запроса "сверстай мне кнопку" дай АИ максимальное описание с API JSON'ом, стили, состояния
2. Опиши какие действия она выполняет.
3. Какие условия и ограничения есть.
4. Отдельно автор подчеркивает важность guardrails. Для UI это означает: проверка, что данные валидны. Убедись что AI не прислал недопустимый код. Убедись что поведение безопасно.
5. Огромный акцент на feedback loop: не забывайте писать аишки правильный ли результат она сделала. Даже ваши лайки влияют на ее следующие генерации.
Давайте немного о книге выше.
Chip Huyen пишет:
AI-разработчик — это не тот, кто общается с ChatGPT. Это тот, кто умеет превращать модель в рабочую систему. Если классический разработчик пишет правила, то AI-разработчик пишет условия, в которых модель думает правильно.
Если вкратце, она определяет такие критерии:
1️⃣ Prompting
Нужно формулировать инструкции так, чтобы модель действовала предсказуемо. Это как писать ТЗ для гениального, но капризного подрядчика. Если инструкция двусмысленна, результат непредсказуем.
2️⃣ Контекст-инженерия
Умей превращать хаотичные документы в осмысленный контекст, который улучшает ответы. Она пишет, что модель умный собеседник, но половина ее интеллекта зависит от того, что вы ей расскажете перед вопросом.
3️⃣ Адаптация моделей: finetuning, выбор моделей, компромиссы
Нужно понимать, когда достаточно промпта, когда нужен RAG, а когда — дообучение. Как в готовке блюд. Иногда достаточно соли, иногда нужна новая специя, а иногда целый новый рецепт.
4️⃣ Оценка качества (evaluation): метрики, AI-судьи, тесты
Умей системно измерять качество, а не на глаз. Тут уже сравнение про медицину, где без диагностики улучшения невозможны.
Если применять кейсы к мобильной разработке, то знания устройства работы облачных LLMок поможет лучше делать приложения. Например, моя задача сверстать кнопку. Как помогут мне знания?
В идеале, нужно делать так:
1. Вместо обычного запроса "сверстай мне кнопку" дай АИ максимальное описание с API JSON'ом, стили, состояния
2. Опиши какие действия она выполняет.
3. Какие условия и ограничения есть.
4. Отдельно автор подчеркивает важность guardrails. Для UI это означает: проверка, что данные валидны. Убедись что AI не прислал недопустимый код. Убедись что поведение безопасно.
5. Огромный акцент на feedback loop: не забывайте писать аишки правильный ли результат она сделала. Даже ваши лайки влияют на ее следующие генерации.
Какие ощущения по рынку?
Anonymous Poll
18%
Ищу работу. Вакансий мало. Нет собесов и офферов
6%
Ищу работу. Вакансий мало, но есть офферы
1%
Ищу работу. На руках > 5 офферов
9%
Не ищу работу. Боюсь начать.
50%
Не ищу работу, но думаю рынку плохо.
16%
Не ищу работу, но задумываюсь. Смотрю оптимистично
Проектирование реальных фич: Feed App ч 1
Продолжаю тему книг.
Среди книг про моб систем дизайн самая практичная — это "Mobile System Design Interview" от ByteByte. Здесь нет философии в пусть и хорошей, но очень большой Mobile System Design.
В книге от ByteByte все главы направлены практику. Только хардкодному проектированию. В первой общедоступной главе разбирают одну из самых частых фичей — ленту новостей.
Вопреки заблуждениям, новостная лента — это не просто список постов.
Я разобью инфу на несколько постов. Первый про общие требования и ожидания.
Лента — это система, которая должна:
- быстро отдавать релевантные посты
- работать для миллионов пользователей
- обновляться почти в реальном времени
- быть стабильной при высокой нагрузке
Ключевая сложность — это как собрать правильные посты и отдать их быстро. Так как обычно ленты делаются для миллионой аудитории.
При проектировании фичи обычно выделяют:
- пагинация
- Низкая задержка. Лента должна открываться быстро
- Масштабируемость.
- Оптимизации для плохого интернета
Есть несколько основных подхода для формирования ленты
1️⃣ Pull model (on-the-fly)
Когда пользователь открывает ленту:
- сервер собирает посты прямо сейчас
- сортирует публикации
- отдает результат
Плюсы
- простая логика
- всегда актуальные данные
Минусы
- медленно при большом числе подписок
- тяжелая нагрузка на сервер
2️⃣ Push model (precomputed feed)
Когда кто-то публикует пост:
- он заранее раскладывается в ленты подписчиков
- при открытии ленты данные уже готовы
Плюсы
- очень быстрая загрузка ленты
- меньше вычислений при чтении
Минусы
- дорого по памяти
- сложнее поддерживать
Автор говорит, что на практике используют гибридный подход.
По мнению автора что хотят услышать интервьюеры:
- ты понимаешь trade-offs (push vs pull)
- ты думаешь про кэш
- ты учитываешь мобильные ограничения
- ты умеешь объяснять архитектуру шаг за шагом
1/3
Продолжаю тему книг.
Среди книг про моб систем дизайн самая практичная — это "Mobile System Design Interview" от ByteByte. Здесь нет философии в пусть и хорошей, но очень большой Mobile System Design.
В книге от ByteByte все главы направлены практику. Только хардкодному проектированию. В первой общедоступной главе разбирают одну из самых частых фичей — ленту новостей.
Вопреки заблуждениям, новостная лента — это не просто список постов.
Я разобью инфу на несколько постов. Первый про общие требования и ожидания.
Лента — это система, которая должна:
- быстро отдавать релевантные посты
- работать для миллионов пользователей
- обновляться почти в реальном времени
- быть стабильной при высокой нагрузке
Ключевая сложность — это как собрать правильные посты и отдать их быстро. Так как обычно ленты делаются для миллионой аудитории.
При проектировании фичи обычно выделяют:
- пагинация
- Низкая задержка. Лента должна открываться быстро
- Масштабируемость.
- Оптимизации для плохого интернета
Есть несколько основных подхода для формирования ленты
1️⃣ Pull model (on-the-fly)
Когда пользователь открывает ленту:
- сервер собирает посты прямо сейчас
- сортирует публикации
- отдает результат
Плюсы
- простая логика
- всегда актуальные данные
Минусы
- медленно при большом числе подписок
- тяжелая нагрузка на сервер
2️⃣ Push model (precomputed feed)
Когда кто-то публикует пост:
- он заранее раскладывается в ленты подписчиков
- при открытии ленты данные уже готовы
Плюсы
- очень быстрая загрузка ленты
- меньше вычислений при чтении
Минусы
- дорого по памяти
- сложнее поддерживать
Автор говорит, что на практике используют гибридный подход.
По мнению автора что хотят услышать интервьюеры:
- ты понимаешь trade-offs (push vs pull)
- ты думаешь про кэш
- ты учитываешь мобильные ограничения
- ты умеешь объяснять архитектуру шаг за шагом
1/3
Почему не надо идти в iOS сейчас
Очередное обсуждение что лучше iOS vs Backend для начала карьеры.
Я, как и многие у нас в чате, уже давно советуют идти в иос не ради денег, а по любви.
Тот же бэкенд уже давно обогнал по вилкам мобилки. А ML улетели в космос.
Комментаторы подсвечивают, что эпоха, когда всем нужны были приложения - уже закончилась. Сейчас безопасная зона только в бигтехах и фаангах. На долгосрочной поддержке.
Очередное обсуждение что лучше iOS vs Backend для начала карьеры.
Я, как и многие у нас в чате, уже давно советуют идти в иос не ради денег, а по любви.
Тот же бэкенд уже давно обогнал по вилкам мобилки. А ML улетели в космос.
Комментаторы подсвечивают, что эпоха, когда всем нужны были приложения - уже закончилась. Сейчас безопасная зона только в бигтехах и фаангах. На долгосрочной поддержке.
Reddit
PatientIll4890's comment on "iOS vs Backend Career"
Explore this conversation and more from the iOSProgramming community
Forwarded from XOR
Android-версию Sora создали 4 инженера за 28 дней — причем 85% кода написал ИИ 😱
OpenAI рассказали, как команда запустила полноценное Android-приложение Sora, активно используя Codex. Итоги вайбкодинга такие:
Один вопрос: как думаете, без ИИ разрабы справились бы быстрее?
😁 — определенно, да
🔥 — нет, вайбкодинг рулит
@xor_journal
OpenAI рассказали, как команда запустила полноценное Android-приложение Sora, активно используя Codex. Итоги вайбкодинга такие:
🟢 Codex (конкретно модель GPT‑5.1-Codex) сгенерировал большую часть фич, переносил логику с iOS, дописывал недостающий код и чинил ошибки сборки. Для скорости разработчики использовали параллельные сессии.🟢 Сами же инженеры больше работали над чётким планом и ТЗ, так как это и ревью всё еще считаются узким местом. Плюс они долго думали, как сделать так, чтобы модель работала автономно круглые сутки.🟢 Кстати, в статье они делятся лайфхаками и интересными замечаниями по вайбкодингу, так что советуем прочитать.
Один вопрос: как думаете, без ИИ разрабы справились бы быстрее?
😁 — определенно, да
🔥 — нет, вайбкодинг рулит
@xor_journal
Please open Telegram to view this post
VIEW IN TELEGRAM
Кстати, кто не помнит, то напоминаю. Сейчас заканчиваю последний курс очно-заочного обучения. Учился 4 года на бизнес-информатика. Пришло время выбирать выпускную квалификационную работу.
Сразу побежал смотреть список тем от универа и нашел самую подходящую для меня: "Применение генеративного ИИ для создания персонализированных образовательных программ"
Будем делать ее с научным руководителем. Интересно как эта работа пробустит меня и чему обучают современные программы универов
Покидаю самые интересные инсайты
А вы поделитесь пожалуйста где подобное по теме уже встречали? В курсах, работе, универе?
Сразу побежал смотреть список тем от универа и нашел самую подходящую для меня: "Применение генеративного ИИ для создания персонализированных образовательных программ"
Будем делать ее с научным руководителем. Интересно как эта работа пробустит меня и чему обучают современные программы универов
Покидаю самые интересные инсайты
А вы поделитесь пожалуйста где подобное по теме уже встречали? В курсах, работе, универе?
Media is too big
VIEW IN TELEGRAM
Ставь 💀 если спортсмен
Ставь🔥 если музыкант
Ставь
Please open Telegram to view this post
VIEW IN TELEGRAM
1 42 31 2
This media is not supported in your browser
VIEW IN TELEGRAM
Записываем нормальный подкаст в нормальном офисе с нормальным светом.