iOS Makes Me Hate
3.94K subscribers
1.16K photos
167 videos
15 files
1.33K links
Авторский канал про iOS разработку. Путь продуктовых самураев в MAANG.

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

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

Если проводить опрос у iOS разработчиков "какой ютуб канал они считают лучшим для технического роста", то большинство ответит про Essential Developer. Пару человек из нашего чата даже купили на их курсы годовую подписку за 2.5к$.

О чем их тема и откуда такой успех? Ребята правда делают крутые разборы с настоящими практиками. Их контент не очередной курс для вката от менторов с 0.1 годами опыта в стартапах, а мощный в бигтехах. Где они разбирают настоящие проблемы, с которыми сталкиваются рядовые инженеры.

Собрал подборку лучших открытых роликов:
1. Рефакторинг большого проекта. Очень похожая секция, которую дают сейчас на рынке.

2. Clean iOS Architecture: UI Design Patterns. Серия роликов с разбором архитектурных паттернов.

3. Топ вопросов на собеседованиях про архитектуры. Тут все по классике. Возможно, некоторые вопросы устарели, но большинство остаются актуальными.

Тема вката всех заебала. Для своего контента я точно много идей заберу себе.
221
квиз
Будет ли тут утечка памяти? Если вызовем в методе функцию loadView
Anonymous Poll
28%
Да
46%
Нет
3%
50/50
3%
По ситуации
20%
Посмотреть ответ
Тестирование и понимание условий при решении алгозадач

Чаще самая сложная работа, чтобы решить задачу, — это понять условие. А написание кода всегда вторичное.

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

Она не будет учитывать знание ОСОБЫХ АЛГОРИТМОВ (красно-черные деревью, динамическое программирование и тп). Но оставит многое из дисциплины problem solving. В ней будут оценки очень важных скиллов для программиста: умение рассуждать, понимать условия, тестировать и находить пограничные кейсы.

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

Решать задачи в тепличных условиях дома и под ограниченное время перед интервьюером — два разных уровня сложности.

На интервью все в разы сложнее. Поэтому мы в чате рекомендуем такой шаблон:
🟣Ставить таймер на каждую задачу в 20-30 минут
🟣Проговаривать решение вслух. Стараться это делать последовательно
🟣Сдавать максимально проработанное решение. На интервью — как на экзамене. Каждая пересдача неправильного решения это минус балл.
🟣Учитывать все корнер кейсы.

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

Разберем задачу Simplify Path на скриншотах. Она попадалась в некоторые команды яндекса.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
8
ну че, новая тема для контента.
13
Вы думаете что знаете Swift?

Swift становится очень мощным языком и выходит за границы мира iOS. Все больше пишется кроссплатформ и серверов на нем.

Знание языка и владение им на продвинутом уровне — признак скилла разработчика. Я не думаю, что ИИ заменит разработчиков во всем. Люди все равно знают лучше редкие фичи языка, которые будут считаться более качественным кодом.

Вот и в этом видео разбираются интересные и редкие особенности языка:

🟣 работа с опционалам в цикле for
🟣 выход из всех вложенных циклов с помощью outer
🟣closure это не reference type
🟣inout не выделеяет структуру в куче
🟣другие особенности языка

Дьявол, как говорится, в деталях
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1842
Андрей Карпаты — известный разработчик, бывший директор по машинному обучения Tesla, а также сооснователь и бывший сотрудник OpenAI — написал тут твит (на скриншоте), из-за которого уже третий день бурлят сообщества.

Очень рекомендую прочитать оригинал.

Cуть примерно в следующем: появился новый способ программировать — Андрей назвал этот способ «вайб-кодингом». Это когда ты просто говоришь LLM, что хочешь сделать, и она пишет код. (Голосом, кстати, говоришь, через superwhisper.com или wisprflow.ai.) Модель отдаёт код, ты его даже не читаешь. Если возникают ошибки, копируешь их, и LLM обычно их исправляет. «Это уже не совсем кодинг — я просто что-то вижу, что-то говорю, что-то запускаю и что-то копипащу, и оно в основном работает.»

Я может и не обратил бы такого внимания на этот твит, если бы не бурление сообществ. И не тот факт, что наш СТО Слава (будучи очень опытным разработчиком, вообще одним из самых сильных, с кем мне доводилось работать), уже какое-то время рассказывает про похожий стиль программирования, и в целом как будто идёт тем же путём. Ему даже cursor.com уже мало, потому что Курсор не учитывает контекст всей кодовой базы одновременно.

Мне кажется, это всё — самый настоящий проблеск будущего работы.

Разработчик — это теперь скорее такой тимлид AI-агентов. Код можно самому не писать, надо только хорошо ставить задачи и уметь оценивать результат работы. Для этого всё ещё желательно уметь писать код, но может скоро и это требование отпадёт.

У разработчиков будущее наступает уже в 2025, у дизайнеров наступит может в 2026 или 2027.

И у всех нас наступит в какой-то момент.
🧬 100 задач по управлению памятью (с 10 по 20 задачи)

Продолжаю дополнять сборник задачами. Добавил в сборник еще 10 задач на управление памятью, очень похожих на эту.

В нем вы узнаете:
🟣Как захватываются ссылки
🟣как работает lazy var с weak self
🟣когда происходит утечка и др

Самое то для марафона на месяц. Впереди детальный разбор ownership и учимся считать в голове RefCount 🥲

💰 Поддержать или получить доступ к материалам можно в бусти
⭐️ Или в боте трибьюта если вы не из СНГ (рекомендовано, так дешевле)
Please open Telegram to view this post
VIEW IN TELEGRAM
31
Кодекс самурая как развитие софтов

Я напомню что у нас арка самураев.

На днях моя подруга скинула репост в одном из популярных каналов про философию самураев в контексте развития софт скиллов. Я решил сделать комментарии на канале. Японская тема будет шуметь из всех углов в 2025, поэтому пишу пока до мейнстрима.

Все идеи имеют невероятную актуальность, огромную вековую базу и след в культуре. Японский маркетинг на запредельном уровне.

Хотя даже в комментариях мне писали что это «мораль для рабов». Сейчас разберем почему эта мысль крайне недалека и ошибочна.

В эстетике самураев много романтизации. Их можно критиковать. Под церемониальными доспехами есть некрасивые шрамы. Есть отличный фильм «харакири», который идеально раскрывает эту тему.

Но все же им доставалась задача высочайшего приоритета — защищать жизни. А значит в своем ремесле они должны были быть лучшими.

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

Властители поняли, что отдавать свою защиту на аутсорс крестьянам, и дарить им такую философию, слишком неэффективно. И стали брать ответственность за свою безопасность в свои руки. Разрабатывая самостоятельно самурайский продукт.

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

Но в общем, собрал свои самые интересные и актуальные цитаты из кодекса бусидо:

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

Идея тотальной отдачи своему делу пронизана в бусидо.

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

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

3.
Самое главное – самурай никогда не должен пренебрегать боевым духом, в любое время и при любых обстоятельствах

Сохранение боевого духа важно для эффективности. Все проблемы из-за страха. Он сильно дебафает и пачкает постыдными и грязными поступками.

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

Крепкий жизненный кодекс и постоянство в своих мыслях и действиях стоит выше «правильного и неправильного». Непостоянство признак неэффективности

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

Опять же важнее являться, а не казаться
122
Подборка книг от Essential Developer

Я не смог купить их курс по архитектурам и сис.дизу. Но куплю позже. Пока буду изучать открытые и слитые старые материалы.

Нашел у них интересную подборку книг для развития профессиональных навыков и в целом скиллов образования. Сохраняйте себе
15
Forwarded from Lev Bondarenko
This media is not supported in your browser
VIEW IN TELEGRAM
знали что в фигме можно так общаться?
Проводим идеальное собеседование разработчика. Советы от практика с тысячей собеседований за спиной

Статья от сооснователя Хэкслета, где он дает свои рекомендации по проведению интервью:
- минимальное кол-во попыток и подсказок кандидату
- алгоритмы, база, глубина просто потому что
- занижение озвученной зп кандидата
- молчание неделями

Мягко скажем спорные советы, но для знакомства с разными спорными методами полезно почитать статью

Идеальная статья как узнать, что твой будущий работадатель арбузер

UPD: пост вроде как рофл. Заскамили
8
короче, холиварный вопрос.

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

В последних собесах мне давали такой фидбэк "отлично отвечает на то, что знает. Но начинает выдумывать и домысливать ответы, вместо того чтобы сказать что не знает".

помогите разгадать эту загадку. Что от меня хотят?

upd: вообще забавных приколов очень много. Можете поделиться также своими
This media is not supported in your browser
VIEW IN TELEGRAM
Единственный, кто должен вас понимать — это AI-ассистент

Ждем компании-единороги с одним человеком
1154