Какой бы совет вы дали начинающему iOS-разработчику?
Сформулируйте вашу мысль одним предложением (можно картинкой).
За самый популярный (он может быть как актуальным и полезным, так смешным или вредным) будет символический подарок.
Например:
Забудь про кейчейн, храни всё что можно в UserDefaults.
😃 iOS Dev
Сформулируйте вашу мысль одним предложением (можно картинкой).
За самый популярный (он может быть как актуальным и полезным, так смешным или вредным) будет символический подарок.
Например:
Забудь про кейчейн, храни всё что можно в UserDefaults.
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥14 13✍7👍2❤🔥1👌1🏆1🍓1 1
iOS Dev
Какой бы совет вы дали начинающему iOS-разработчику? Сформулируйте вашу мысль одним предложением (можно картинкой). За самый популярный (он может быть как актуальным и полезным, так смешным или вредным) будет символический подарок. Например: Забудь про…
А вообще - посмотрите тред, там очень много хороших советов и размышлений о возможном пути начинающего разработчика на iOS (или не только на iOS)
Please open Telegram to view this post
VIEW IN TELEGRAM
8🤣61💯16😁13 4👍2🔥2👏2 2❤🔥1
Секретный способ для скругления и тени одновременно в UIKit
Все знают о сложности (и совсем не таком легком пути, как кажется) подобной задачи в UIKit.
Оказывается, среди недокументированного API (а значит, с шансом попадания под определённые риски) есть способ для реализации такого комбо.
Можно настраивать ширину, цвет (обратите внимание, нужен именно cgColor) и прозрачность.
Большая разница по сравнению с border, которая рисуется внутрь, этот ободок позволяет расширять наше вью и добавлять эффект снаружи.
😃 iOS Dev
Все знают о сложности (и совсем не таком легком пути, как кажется) подобной задачи в UIKit.
Оказывается, среди недокументированного API (а значит, с шансом попадания под определённые риски) есть способ для реализации такого комбо.
CALayer
позволяет юзать свойства для изменения rim, если назвать его попроще - ободка, но не границы (которого вы не найдёте в доках и даже AI вам в этом не поможет).Можно настраивать ширину, цвет (обратите внимание, нужен именно cgColor) и прозрачность.
view.layer.setValue(true, forKey: "softRim")
view.layer.setValue(20, forKey: "rimWidth")
view.layer.setValue(UIColor.yellow.cgColor, forKey: "rimColor")
view.layer.setValue(1.0, forKey: "rimOpacity")
Большая разница по сравнению с border, которая рисуется внутрь, этот ободок позволяет расширять наше вью и добавлять эффект снаружи.
Please open Telegram to view this post
VIEW IN TELEGRAM
13🔥39🤩9🏆9 6👍2👏2 1
Насколько часто вам повышают зарплату? В опросе можно выбрать несколько вариантов
Anonymous Poll
7%
Автоматически два раза в год
21%
Автоматически раз в год
26%
Пересмотр бывает после регулярного перфоманс-ревью
36%
После собственного запроса (вы должны проявить инициативу)
2%
После выкатки каких-то фич или важных релизов
17%
Не повышают вообще (такая политика или у вас контракт)
8%
Катализатор - другая причина (напишите в комментариях)
6❤🔥9👏7✍5🔥3👍2 2 1
This media is not supported in your browser
VIEW IN TELEGRAM
😳 Макбук как весы — приложение для macOS на Github
Я не мог пройти мимо этого репозитория!
TrackWeight – это приложение, которое превращает MacBook в весы с помощью датчиков давления Force Touch.
Под капотом либа Open Multi-Touch Support (от Такуто Накамуры) для получения приватного доступа ко всем событиям мыши и трекпада в macOS.
Среди объяснений, почему это вообще работает: трекпад MacBook не совсем обычный, по факту это датчик силы нажатия с тактильными эффектами (поэтому мы чувствуем ощущение щелчка).
🛠 Репозиторий на GitHub (уже 2 000 звёзд).
За такие штуки мы и любим разработку, разве нет?
📊 Кстати, напомню, что с помощью Swift Charts можно играть в Pong.
😃 iOS Dev
Я не мог пройти мимо этого репозитория!
TrackWeight – это приложение, которое превращает MacBook в весы с помощью датчиков давления Force Touch.
Под капотом либа Open Multi-Touch Support (от Такуто Накамуры) для получения приватного доступа ко всем событиям мыши и трекпада в macOS.
Среди объяснений, почему это вообще работает: трекпад MacBook не совсем обычный, по факту это датчик силы нажатия с тактильными эффектами (поэтому мы чувствуем ощущение щелчка).
🛠 Репозиторий на GitHub (уже 2 000 звёзд).
За такие штуки мы и любим разработку, разве нет?
📊 Кстати, напомню, что с помощью Swift Charts можно играть в Pong.
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥62🤩14 13 5👍4❤🔥1🏆1🍓1
Apple только что представили Retention Messaging API
Будет полезно не только инди-разработчикам, но и компаниям, чей бизнес целиком завязан на подписках.
С помощью нового API можно выбрать, какое сообщение показывать пользователям, когда они просматривают инфу о подписке и могут отменить ее.
Нам теперь доступна возможность разработки и настройки таких экранов разных для продуктов и локалей.
Всего 4 опции: текст, текст+картинка, сообщение о переходе на новый план с текстом и другой подпиской, а также рекламный оффер с текстом и скидкой (или другим уровнем).
📖 Вся документация уже доступна здесь.
😃 iOS Dev
Будет полезно не только инди-разработчикам, но и компаниям, чей бизнес целиком завязан на подписках.
С помощью нового API можно выбрать, какое сообщение показывать пользователям, когда они просматривают инфу о подписке и могут отменить ее.
Нам теперь доступна возможность разработки и настройки таких экранов разных для продуктов и локалей.
Всего 4 опции: текст, текст+картинка, сообщение о переходе на новый план с текстом и другой подпиской, а также рекламный оффер с текстом и скидкой (или другим уровнем).
📖 Вся документация уже доступна здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥29 14👏8👍2 2❤🔥1💯1
LLM Leaderboard - Сравнительный анализ 100 AI-моделей от OpenAI, Google, DeepSeek и других
Делюсь полезным ресурсом, на котором можно чекнуть более 100 LLM по ключевым метрикам: цене, производительности и скорости (скорость вывода - токены в секунду и задержка - TTFT), размеру окна контекста и другим.
📖 Посмотреть можно тут.
😃 iOS Dev
Делюсь полезным ресурсом, на котором можно чекнуть более 100 LLM по ключевым метрикам: цене, производительности и скорости (скорость вывода - токены в секунду и задержка - TTFT), размеру окна контекста и другим.
📖 Посмотреть можно тут.
Please open Telegram to view this post
VIEW IN TELEGRAM
5 12✍9🔥6💯3❤🔥1👍1🤩1🏆1
Переключение контекста
В погоне за изучением новых технологий, фреймворков или даже просто адаптации к существующим реалиям иногда кажется, что ни на что не хватает времени. Реклама рассказывает, как быстро можно освоить технологию за месяц (а некоторые, что за неделю).
Более того, даже в мифе о правиле 10 000 часов акцент сводится к тому, что потратив огромное количество времени, можно стать профессионалом. Но это совсем не так. Лёгкий пример: когда вы получили права и проездили с 5-10 лет за рулём, вряд ли можно получить суперлицензию и отправиться в Абу Даби соревноваться со всем пелотоном F1.
Важно не количество затраченного времени на ту или иную сферу деятельности, а качество этих задач.
И даже при переключении контекста есть занятные факты. Netflix не ставит целью рассказать нам законченную историю, задача как можно дольше удержать зрителя у экрана. Как там говорится, ещё одна серия и всё?
Или, например, в видеоиграх, завязанных на онлайне — когда нам кажется, что повышение скилла позволит резко закончить с режимом мультиплеера, это совсем не так.
В той же EA и её продуктах (FIFA, NFS и прочие) - давно используется Dynamic Difficulty Adjustment, от которого компания пыталась откреститься, но с переменным успехом. Вкратце, игрокам всегда будет казаться, что они балансируют на грани - своеобразный крючок, который позволит ещё немного задержать внимание. В остальных же компаниях, хоть Valve или кто угодно другой - матчмейкинг реализован со схожей целью.
При этом я постарался не упоминать и совершенно привычные нам вещи вроде бесконечного скролла.
И несмотря на все вышесказанное, мы всё-таки живём в замечательный век. У нас множество путей и опций для использования тех самых свободных поинтов времени.
Умение переключаться между контекстом, балансировать между работой и отдыхом, а также находить время, чтобы просто остановиться и посмотреть, где мы сейчас и что вообще происходит - возможно, один из самых непростых навыков.
Но он невероятно важен.
😃 iOS Dev
В погоне за изучением новых технологий, фреймворков или даже просто адаптации к существующим реалиям иногда кажется, что ни на что не хватает времени. Реклама рассказывает, как быстро можно освоить технологию за месяц (а некоторые, что за неделю).
Более того, даже в мифе о правиле 10 000 часов акцент сводится к тому, что потратив огромное количество времени, можно стать профессионалом. Но это совсем не так. Лёгкий пример: когда вы получили права и проездили с 5-10 лет за рулём, вряд ли можно получить суперлицензию и отправиться в Абу Даби соревноваться со всем пелотоном F1.
Важно не количество затраченного времени на ту или иную сферу деятельности, а качество этих задач.
И даже при переключении контекста есть занятные факты. Netflix не ставит целью рассказать нам законченную историю, задача как можно дольше удержать зрителя у экрана. Как там говорится, ещё одна серия и всё?
Или, например, в видеоиграх, завязанных на онлайне — когда нам кажется, что повышение скилла позволит резко закончить с режимом мультиплеера, это совсем не так.
В той же EA и её продуктах (FIFA, NFS и прочие) - давно используется Dynamic Difficulty Adjustment, от которого компания пыталась откреститься, но с переменным успехом. Вкратце, игрокам всегда будет казаться, что они балансируют на грани - своеобразный крючок, который позволит ещё немного задержать внимание. В остальных же компаниях, хоть Valve или кто угодно другой - матчмейкинг реализован со схожей целью.
При этом я постарался не упоминать и совершенно привычные нам вещи вроде бесконечного скролла.
И несмотря на все вышесказанное, мы всё-таки живём в замечательный век. У нас множество путей и опций для использования тех самых свободных поинтов времени.
Умение переключаться между контекстом, балансировать между работой и отдыхом, а также находить время, чтобы просто остановиться и посмотреть, где мы сейчас и что вообще происходит - возможно, один из самых непростых навыков.
Но он невероятно важен.
Please open Telegram to view this post
VIEW IN TELEGRAM
33👏23❤🔥10👍8🔥7 4💯2🤩1
Что изменилось в поиске iOS и iPadOS 26
В iOS и iPadOS 26 добавилось несколько новых API для обновления визуального стиля и размещения поисковой панели.
📖 В этом посте Наталья Панферова рассматривает, как можно использовать эти улучшения для реализации поискового интерфейса.
Рассмотрены два распространенных шаблонах поиска в приложениях: на панели инструментов и на панели вкладок.
Кроме этого, приведены примеры: как работает каждый из этих вариантов, что изменилось и как реализовать их в SwiftUI.
➡️ Кстати, в канале есть примеры, как можно несложно внедрить фичу с поисковыми подсказками.
😃 iOS Dev
В iOS и iPadOS 26 добавилось несколько новых API для обновления визуального стиля и размещения поисковой панели.
📖 В этом посте Наталья Панферова рассматривает, как можно использовать эти улучшения для реализации поискового интерфейса.
Рассмотрены два распространенных шаблонах поиска в приложениях: на панели инструментов и на панели вкладок.
Кроме этого, приведены примеры: как работает каждый из этих вариантов, что изменилось и как реализовать их в SwiftUI.
Please open Telegram to view this post
VIEW IN TELEGRAM
5 15👍8🔥7✍2👏1
Threads против Tasks в Swift Concurrency
По мнению Антуана из статьи ниже, разработчики могут задаться вопросом, чем различаются треды и таски, если ранее писали на Swift или Objective-C, используя GCD и традиционные API.
Так называемое потоковое мышление уже много лет помогает нам разрабатывать приложения, работающие с асинхронными функциями.
Но в современной разработке на помощь приходит Swift Concurrency и методология async/await.
Вместо того чтобы создавать метод и юзать замыкание, теперь нужен
Следующий вопрос, который появится: где будет выполняться созданная нами задача - в основном или фоновом потоке?
📖 В этой статье можно получить ответы не только на этот вопрос, но и разрешение многих заблуждений.
😃 iOS Dev
По мнению Антуана из статьи ниже, разработчики могут задаться вопросом, чем различаются треды и таски, если ранее писали на Swift или Objective-C, используя GCD и традиционные API.
Так называемое потоковое мышление уже много лет помогает нам разрабатывать приложения, работающие с асинхронными функциями.
Но в современной разработке на помощь приходит Swift Concurrency и методология async/await.
Вместо того чтобы создавать метод и юзать замыкание, теперь нужен
Task { ... }
для запуска асинхронного контекста. Следующий вопрос, который появится: где будет выполняться созданная нами задача - в основном или фоновом потоке?
📖 В этой статье можно получить ответы не только на этот вопрос, но и разрешение многих заблуждений.
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥13 10👍8✍4❤🔥1🏆1
Какая средняя зарплата мобильного разработчика в мире?
На StackOverflow вышел большой отчёт опроса разработчиков, с которым можно ознакомиться здесь.
К слову, кроме традиционных составляющих, разработчики ответили и на вопросы об AI: пользуются около трети, а вот готовы максимально доверять результатам помощников - только 3.1%.
А вот и результаты опроса по зарплатам для мобильных разработчиков (внимание, результаты до налогов):
🇺🇸 $ 170 000 в год.
🇩🇪 $ 93 972 в год.
🇬🇧 $ 99 383 в год.
🇫🇷 $ 63 228 в год.
...
🇮🇳 $ 10 462 в год.
Увеличение по сравнению с 2024 годом - на 20%.
💸 А вот результаты аналогичного опроса в России: в первой половине 2024 года, во второй половине.
😃 iOS Dev
На StackOverflow вышел большой отчёт опроса разработчиков, с которым можно ознакомиться здесь.
К слову, кроме традиционных составляющих, разработчики ответили и на вопросы об AI: пользуются около трети, а вот готовы максимально доверять результатам помощников - только 3.1%.
А вот и результаты опроса по зарплатам для мобильных разработчиков (внимание, результаты до налогов):
🇺🇸 $ 170 000 в год.
🇩🇪 $ 93 972 в год.
🇬🇧 $ 99 383 в год.
🇫🇷 $ 63 228 в год.
...
🇮🇳 $ 10 462 в год.
Увеличение по сравнению с 2024 годом - на 20%.
💸 А вот результаты аналогичного опроса в России: в первой половине 2024 года, во второй половине.
Please open Telegram to view this post
VIEW IN TELEGRAM
11 16🔥10❤🔥6🤯3💯2👍1🤩1🆒1
This media is not supported in your browser
VIEW IN TELEGRAM
23 августа пройдет Yandex Mobile Runtime — фест Яндекса для мобильных разработчиков
Ивент для мидлов и сеньоров с упором на практику: без теории и скучных лекций.
В программе:
— AI-хакатон. Создайте работающее приложение за 5 часов с AI-помощниками. Оценивать продукт будет жюри в лице Геннадия Евстратова, руководителя проектов в Яндексе, Анны Жарковой, руководителя практики мобильной разработки Usetech, и других. Регистрация на хакатон отдельная.
— Воркшопы по MCP и ускорению приложений и не только.
— Карьерные консультации с лидами и сеньорами мобильный разработки из Яндекса и других компаний.
— Решение задач на тренировочной платформе CodeRun
— Квиз для iOS-, Android- и Flutter-разработчиков по мобильной разработке с задачами, шутками и отсылками.
А еще — вместе с Городскими сервисами Яндекса обсудим метрики приложений и BDUI, поиграем в настолки в зоне от экспертов Поиска и рекламных технологий и отдохнем с ребятами из Почты, Диска и Календаря в кастомном баре от Яндекс 360.
Только офлайн.
➡️ Регистрируйся тут.
Ивент для мидлов и сеньоров с упором на практику: без теории и скучных лекций.
В программе:
— AI-хакатон. Создайте работающее приложение за 5 часов с AI-помощниками. Оценивать продукт будет жюри в лице Геннадия Евстратова, руководителя проектов в Яндексе, Анны Жарковой, руководителя практики мобильной разработки Usetech, и других. Регистрация на хакатон отдельная.
— Воркшопы по MCP и ускорению приложений и не только.
— Карьерные консультации с лидами и сеньорами мобильный разработки из Яндекса и других компаний.
— Решение задач на тренировочной платформе CodeRun
— Квиз для iOS-, Android- и Flutter-разработчиков по мобильной разработке с задачами, шутками и отсылками.
А еще — вместе с Городскими сервисами Яндекса обсудим метрики приложений и BDUI, поиграем в настолки в зоне от экспертов Поиска и рекламных технологий и отдохнем с ребятами из Почты, Диска и Календаря в кастомном баре от Яндекс 360.
Только офлайн.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🎉10🔥8❤🔥3🫡3🤯2👌2💯2 2
This media is not supported in your browser
VIEW IN TELEGRAM
🎉 Шаг вперёд - бонус для всех подписчиков iOSDev
Уже несколько лет я делюсь своими знаниями, полезными советами и кайфовыми вещами из мира разработки здесь, в телеграме.
Моя основная работа отнимает много времени, с некоторыми багами, особенно трудновоспроизводимыми, приходится разбираться по несколько дней (ну, вы понимаете).
Несмотря на это, я стараюсь равномерно развивать не только канал, но и бусти, и весь арсенал приложений, двигаясь в ногу со временем.
Вы знаете, как тяжело находить мотивацию на некоторые вещи, но благодаря обратной связи (не только в тестфлайте, но и личных сообщениях, и в канале - я понимаю, что всё не зря).
Сегодня я анонсирую первый релиз продукта, над которым я трудился продолжительное время.
🤩 Сайт iOS IQ — первый и самый надёжный связующий элемент между каналом, блогом и приложением.
Я не слишком хорошо знаю модные фреймворки, поэтому реализация на чистом html+css+script (ну и пара открытых источников для подсветки кода). А, ну ещё потому - что тащить зависимости не всегда полезно.
Синк изменений запилил с помощью github actions, когда-то давно для этого приходилось бы пилить кастомные скрипты, сейчас конечно это очень удобно.
Безусловно, перенести всё пока было невозможно - поэтому там уже сейчас около 50 полезных лайфхаков и примеров (но возможности для развития шикарные).
📖 Сохраняйте в закладки.
Я уже привык, что у меня крадут оформление, стиль, пытаются копировать посты или даже искать несуществующие проблемы, но то, что украсть нельзя - энтузиазм, опыт и знания.
Подпишитесь💰 на бусти и ⭐️ прямо здесь — получите доступ к огромному количеству материалов, а ещё это лучший мотиватор для того, чтобы в индустрии были не только промпт-инженеры, но и те, кому не всё равно.
Дальше - будет интереснее.
😃 iOS Dev
Уже несколько лет я делюсь своими знаниями, полезными советами и кайфовыми вещами из мира разработки здесь, в телеграме.
Моя основная работа отнимает много времени, с некоторыми багами, особенно трудновоспроизводимыми, приходится разбираться по несколько дней (ну, вы понимаете).
Несмотря на это, я стараюсь равномерно развивать не только канал, но и бусти, и весь арсенал приложений, двигаясь в ногу со временем.
Вы знаете, как тяжело находить мотивацию на некоторые вещи, но благодаря обратной связи (не только в тестфлайте, но и личных сообщениях, и в канале - я понимаю, что всё не зря).
Сегодня я анонсирую первый релиз продукта, над которым я трудился продолжительное время.
🤩 Сайт iOS IQ — первый и самый надёжный связующий элемент между каналом, блогом и приложением.
Я не слишком хорошо знаю модные фреймворки, поэтому реализация на чистом html+css+script (ну и пара открытых источников для подсветки кода). А, ну ещё потому - что тащить зависимости не всегда полезно.
Синк изменений запилил с помощью github actions, когда-то давно для этого приходилось бы пилить кастомные скрипты, сейчас конечно это очень удобно.
Безусловно, перенести всё пока было невозможно - поэтому там уже сейчас около 50 полезных лайфхаков и примеров (но возможности для развития шикарные).
📖 Сохраняйте в закладки.
Я уже привык, что у меня крадут оформление, стиль, пытаются копировать посты или даже искать несуществующие проблемы, но то, что украсть нельзя - энтузиазм, опыт и знания.
Подпишитесь
Дальше - будет интереснее.
Please open Telegram to view this post
VIEW IN TELEGRAM
46 20❤🔥12🏆8👍5🔥3✍1⚡1🎉1💯1 1