iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT
12.4K subscribers
585 photos
58 videos
3.77K links
Самые интересные статьи, видео и новости, связанные с iOS разработкой. Не больше трёх материалов в день.

Лучшее iOS сообщество в Телеге: @iosgt

Размещение рекламы: @tanyasanovna
Download Telegram
Инженерная культура в БигТехе

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

Записали выпуск Подлодки с Алексеем Козятинским (ex. Google, а сейчас senior staff SWE в Netflix), который откровенно поделился с нами своим сложным жизненным опытом в биг техе, и вместе мы поразмышляли о том, как инженерная культура помогает бизнесу достигать своих целей, какое влияние она оказывает на конечных сотрудников и как выбрать "ту самую" компанию мечты, где вы будете чувствовать себя по-настоящему на своем месте.

🔗Смотреть на Youtube
KeyPath в Swift

Отличный разбор того, как работают KeyPath в Swift, для чего они нужны, и какие неочевидные возможности у них есть.

👉KeyPath литерал можно сконвертировать в функцию вида (Root) -> Value
👉KeyPath'ы можно комбинировать друг с другом через функцию .appending
👉В KeyPath можно зашить доступ по индексу к любому из параметров
👉Можно определять свои атрибуты через @dynamicMemberLookup
👉С KeyPath работает вывод типов
Forwarded from Код Воробья для iOS разработчиков
Apple выкатила много новых дизайн-шаблонов в своем профиле для 🎨 Figma

Для 💎 пока нету
Please open Telegram to view this post
VIEW IN TELEGRAM
Зачем в приложение добавлять озвучку

Озвучка действий в приложении может быть как самым раздражающим элементом UX, так и одним из самых цепляющих. При этом, у многих пользователей звук вообще выключен по умолчанию. В статье разбирается, зачем затаскивать озвучку в свое приложение, как сделать ее запоминающейся и не надоедливой, и откуда вообще брать материалы для звуков. И все это – на живых примерах!
Xamarin всё

Конец эпохи. Начиная с 1 мая, Microsoft официально остановил поддержку всех SDK Xamarin, включая Xamarin.Forms. Всех, кто еще не успел переехать, отправляют мигрировать на MAUI.
Size Analysis от Emerge Tools доступен бесплатно для некоммерческих проектов

Size Analysis – сервис ддя анализа размера вашего приложения, его основных драйверов, трендов его изменения и сравнения с конкурентами.

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

🔗Демо сервиса
🔗Заявка на доступ
Разработка библиотеки с учетом strict concurrency

Подробный гайд по тому, как дизайнить Swift библиотеку, которая будет компилироваться без варнингов в strict-concurrency режиме. Автор разбирает кучу проблем и трейд-оффов, с которыми придется столкнуться и вам.
Еще один генератор privacy manifest'ов

Недавно я уже выкладывал генератор для privacy манифестов. Держите еще один, чтобы был выбор!
Podlodka Crew про софт-скиллы

Через неделю стартует новый сезон конференции Podlodka Soft Skills Crew про то, как правильно применять софты на собеседованиях. Вот несколько топовых сессий:

👉Воркшоп про то, как сделать свой LinkedIn таким, чтобы им заинтересовались зарубежные работодатели
👉Воркшоп по самопрезентации, на котором научат правильно рассказывать про кейсы из своего опыта
👉Публичное собеседование в обратную сторону, после которого вы научитесь выяснять действительно важные детали про вашего будущего работодателя
👉Воркшоп по переговорам об оффере, с тактиками повышения итоговой компенсации

Среди спикеров такие классные ребята как Женя Антонов, Алексей Шаграев, Вероника Ильина и Валерий Бабушкин.

📆Дата: 13-17 мая, две сессии в день
👉Регистрация
This media is not supported in your browser
VIEW IN TELEGRAM
Ставим ViewController в хедер алерта

Приватный API метод _setHeaderContentViewController(_:) у UIAlertController позволяет установить любой контроллер в качестве заголовка алерта. Этот метод использует Apple в Journal App для того, чтобы показывать date picker в action sheet.
Подкаст с менеджером команды компилятора Swift

Выпуск подкаста Swift Package Indexing с Holly Borla, менеджером Swift Compiler Team. Весь выпуск фокусируется на изменениях в Swift 6.

Если вы не хотите слушать выпуск, то можете открыть его автосгенерированный транскрипт в Apple Podcasts – фича появилась вот совсем недавно.
This media is not supported in your browser
VIEW IN TELEGRAM
Анимация паспорта в Airbnb

Инженеры из Airbnb пошагово рассказывают, как они сделали сложную анимацию открывающегося паспорта. А если вы хотите побольше узнать об их системе работы с анимациями в целом, почитайте одну из предыдущих статей.
Шаблоны новых айпадов уже в Sketch

После анонса новых айпадов (и скандала с рекламой, но о нем мы в канале говорить не будем), Apple добавили шаблоны с их рамками в официальную библиотеку в Sketch. Можете уже использовать для своих скриншотов!
WWDC Index

Новый коммьюнити-проект вокруг WWDC – список всех сессий и их описаний на одной странице. Cmd+F, пишете нужный вам кейворд, получаете список всех сессий!
Какое будущее ждёт мобильную разработку на iOS?

К чему готовиться разработчикам? Какая будет ситуация на рынке? Обсудим на открытом круглом столе от OTUS.

🔥 Круглый стол проведут одни из лучших экспертов ниши:

Сергей Балалаев — руководитель отдела мобильной разработки ПВЗ Озон
Анна Жаркова — руководитель группы разработки в Usetech
Антон Марунько — iOS Team Lead в Звуке
Маргарита Жерихова — iOS-разработчик в Alpina Digital
А также опытный iOS-разработчик из крупной компании в банковской сфере

🗓 Встречаемся 20 мая в 20:00 мск в преддверии старта курса «iOS Developer. Professional». Все участники вебинара получат специальную цену на обучение и смогут задать экспертам вопросы в режиме реального времени! Участие бесплатное.

➡️ Ссылка для регистрации

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Clock в Swift неэффективны

Автор статьи уткнулся в плохую производительность работы с ContinuousClock и SuspendingClock, побенчмаркал их работу, и оказалось, что они работают намного медленнее обычного Date. Вместо них он предлагает переходить на функцию mach_absolute_time.
Тренируем и запускаем ML модель на девайсе

Хороший туториал по тому, как с нуля обучить свою ML модель для того, чтобы предсказывать вероятность закрытия диалогового окна в зависимости от уровня заряда батареи.
SwiftSecurity – обертка над Keychain API

Подписчик канала поделился своей новой библиотекой SwiftSecurity. Вот основные фичи:

👉Поддерживает все сущности Keychain API.
👉Дает компайл-тайм проверки для kSetAttr.
👉Совместима со SwiftUI и CryptoKit.
I'm game

Английский язык — как игра: чем выше уровень, тем интереснее. Каждый этап открывает новые возможности, каждый навык помогает получить новые достижения. Как перейти от просмотра сериала с субтитрами к диалогу с иностранцем? Начните учить язык вместе с английским от Яндекс Практикума, чтобы поднять свой уровень и заговорить увереннее.

Слагаемые успеха:
✺ Курсы по международным стандартам CEFR: продуманный план обучения, а не отдельные занятия время от времени — так проще достичь результата.

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

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

✺ Разговорная практика: 70% программы — это общение, в том числе с иностранцами.

Чтобы больше узнать о форматах обучения и начать путь к новому уровню, приходите на бесплатную консультацию. Куратор оценит ваш английский и подскажет, какой курс подойдёт для ваших целей. Всего 30 минут — и вы в игре!