Я уже выкладывал новый инструмент для построения связей между модулями от Миши Рубанова из Додо. И тем, кто попробовал, и тем, кто не стал, рекомендую прочитать его новую статью про то, с какими проблемами он столкнулся при разработке. Супер вдохновляющая история для всех, кто подумывает сделать свой пет-проект.
Хабр
Как я визуализировал граф билда. Build Graph for Xcode
Каждый год я стараюсь запускать по одному пет-проекту. Самый первый начинался ещё до того, как я умел пользоваться Git, а последний вообще был не программой, а книгой про доступность . Каждый проект...
Тикеты с багами в Swift переезжают из Jira на GitHub! Если вы когда-нибудь репортили проблемы в bugs.swift.org, то вам надо донастроить свой профиль, чтобы автомиграция на GitHub сработала нормально:
1️⃣До 7 апреля в своем профиле в Jira указать имя пользователя на GitHub
2️⃣До 18 апреля принять приглашение во временную организацию на GitHub swift-issues-migration.
1️⃣До 7 апреля в своем профиле в Jira указать имя пользователя на GitHub
2️⃣До 18 апреля принять приглашение во временную организацию на GitHub swift-issues-migration.
Swift Forums
Swift bugs are moving to GitHub Issues and we need your help!
Swift bugs are moving to GitHub Issues and we need your help! Swift's open source project issues are currently in JIRA, making it difficult for developers to discover and integrate them into our workflows on GitHub, such as pull requests. To provide a better…
Хороший структурированный обзор того, как реализовывать OAuth в iOS и Android приложениях с общими принципами работы и потенциальными проблемами.
Хабр
OAuth в мобильных приложениях
Привет! Меня зовут Мялкин Максим, я занимаюсь мобильной разработкой в KTS . Ни один сервис не обходится без логина. Часто в мобильных приложениях требуется интегрировать вход через сторонние соцсети —...
Появилась новая ежемесячная email-рассылка, в которой будет подбиваться текущий статус разработки Swift: ключевые пропозалы, обсуждения и анонсы. Помимо ссылок, автор пытается простым языком объяснить смысл всех изменений и примерно предсказать, когда они докатятся до пользователя.
Меня попросили пошарить опрос про то, планируют ли мобильные разработчики уезжать из России, и по каким параметрам они выбирают работу. Результаты выложу отдельно.
И да, я помню про свое ежегодное исследование мобильщиков. Оно будет, но позже.
И да, я помню про свое ежегодное исследование мобильщиков. Оно будет, но позже.
Google Docs
Опрос 2022
Привет! Спасибо, что согласились присоединиться к исследованию и пройти опрос.
Расскажите, какие условия работы для вас важны сегодня. Это поможет вам определить свои приоритеты, а компании смогут адаптировать свои условия и сделать их максимально комфортными…
Расскажите, какие условия работы для вас важны сегодня. Это поможет вам определить свои приоритеты, а компании смогут адаптировать свои условия и сделать их максимально комфортными…
Вечерний холивар объявляется открытым! Каждый экран в приложении должен быть завернут в ScrollView, вне зависимости от выполняемой им функции. Вот почему:
⌨️Проще обрабатывать событие появления клавиатуры
📏Вы готовы к любому размеру экрана новых девайсов Apple
🔎Сможете легко поддерживать Dynamic Type
⌨️Проще обрабатывать событие появления клавиатуры
📏Вы готовы к любому размеру экрана новых девайсов Apple
🔎Сможете легко поддерживать Dynamic Type
Lickability
Every Screen in Your App Should Be a Scrolling View
In this blog post, I’m going to tell you why every major screen in your application should be embedded in a scrolling view.
Вышел Tuist 3.0 – инструмент, заменяющий сложные проектные файлы Xcode на простой конфиг на Swift. Из важных новых штук:
📌Плагины с поддержкой сторонних зависимостей (например, в плагин для линтинга можно легко подключить SwiftLint)
📌Возможность декларировать SPM зависимости проекта в отдельном файле Dependencies.swift, и работать с ними без использования Xcode
📌Распределенный билд кэш Tuist Cloud, который будет подтягивать ранее скомпилированные модули на компьютеры ваших коллег
📌Плагины с поддержкой сторонних зависимостей (например, в плагин для линтинга можно легко подключить SwiftLint)
📌Возможность декларировать SPM зависимости проекта в отдельном файле Dependencies.swift, и работать с ними без использования Xcode
📌Распределенный билд кэш Tuist Cloud, который будет подтягивать ранее скомпилированные модули на компьютеры ваших коллег
@MainActor
– это аннотация, которая подсказывает компилятору, что определенный код будет всегда выполняться на мейн треде. Но в итоге это не всегда так, и иногда этот код в итоге исполняется в бэкграунде. В статье рассказывается, почему это так, и как можно обойти такое поведение.Mobile.blog
Swift: Why is my @MainActor code running in the background?
@MainActor was introduced introduced in Swift 5.5 by SE-0316 as a way to tell the compiler that certain code should always be run on the main thread. However, we have seen some cases where function…
Если вы планируете каким-то образом автоматизировать работу с App Store Connect, держите классную библиотеку. Самое классное в ней то, что она перегенерируется автоматически каждый раз, когда спецификация Connect API изменяется.
The Swift Package Index
Bagbutik – Swift Package Index
Bagbutik by Morten Bjerg Gregersen on the Swift Package Index – Generated Swift code for the App Store Connect API based on the official OpenAPI spec.
Telegram регулярно проводит конкурсы среди мобильных разработчиков и нанимает к себе их победителей. На одном из последних нужно было написать кроссплатформенный модуль на С++ для корректировки внешности. Разработчик, занявший третье место, рассказывает про свой код и результаты.
Хабр
Как я занял третье место в конкурсе Telegram и выиграл $ 2 000
Краткая предыстория. Телеграм анонсировал конкурс для разработчиков на создание библиотеки, с помощью которой можно было бы преобразовывать лица в режиме реального времени. Задача: Создать...
Пример GitHub Action, который автоматически подливает изменения из release-ветки в main.
Jesse Squires
Automate merging release branches into your main branch with GitHub Actions
A typical release process for Git workflows involves creating a release branch, performing various tests on that branch, and applying any necessary fixes or ...
Топовый обзор того, как weak references реализованы в разных языках: Objective-C, Swift, Rust и C++, и чем отличаются алгоритмы у них под капотом.
Несколько недель назад я выкладывал видео про то, как знание Computer Science и математики помогает реализовать более качественный блюр. Держите продолжение серии роликов, в этот раз про использование матриц преобразований в реальной жизни.
YouTube
Computer Science In the Real World: The Transform Matrix
Let's talk about a powerful tool you'll find everywhere, from UI programming to data science: a transformation matrix. Relevant links…
Halide: http://halide.cam/download
@3blue1brown's "Essence of Linear Algebra." https://www.youtube.com/watch?v=fNk_zzaMoSs…
Halide: http://halide.cam/download
@3blue1brown's "Essence of Linear Algebra." https://www.youtube.com/watch?v=fNk_zzaMoSs…
И в продолжение темы – смотрите, какой классный визуальный эффект с выделением граней у объектов, реализованный с помощью Metal.
Reddit
From the iOSProgramming community on Reddit: Realtime edge detection kernel running on metal shader
Explore this post and more from the iOSProgramming community
Насколько хорошо вы умеете пользоваться View Debugger в Xcode? Пролистайте статью и, может быть, утащите несколько новых приемов в свой арсенал. Я точно не знал про «Show Clipped Content».
Holy Swift
Introduction to Xcode Frame Debug - Holy Swift
Introduction to Xcode Frame Debug, come and learn how to debug your views that are frame created. Hidden debug Xcode feature explained!
Если вы присматриваете себе внешний монитор, то посмотрите на эту статью. В ней разбирается, какие технические характеристики должны быть у нормального Retina дисплея: pixel density, colour space, bit depth, brightness, HDR и прочие.
Bjango
Mac external displays for designers and developers, part 2
Since writing about Mac external displays in 2016, not much has changed. LG, Dell, Samsung, and other display makers have either never catered for the specs many Mac designers and developers want, or they’ve reluctantly produced products that have been short…
WWDC 2022 пройдет снова в онлайн формате, 6-10 июня. Из интересного:
📌В этом году пытаются сделать робкий шаг в оффлайн и устроить просмотр кейноута для ограниченного числа гостей в Apple Park.
📌Студенческий конкурс проводится в Swift Playgrounds App.
📌Судя по заглавной картинке, Swift все еще не депрекейтят.
📌В этом году пытаются сделать робкий шаг в оффлайн и устроить просмотр кейноута для ограниченного числа гостей в Apple Park.
📌Студенческий конкурс проводится в Swift Playgrounds App.
📌Судя по заглавной картинке, Swift все еще не депрекейтят.
Apple Newsroom
Apple’s Worldwide Developers Conference returns in its all-online format
Apple today announced it will host its annual Worldwide Developers Conference (WWDC) June 6 through 10, free for all developers in an online format.
Гайд по тому, как использовать свой собственный Mac в качестве агента для GitHub Actions. Актуально для тех, кто не хочет платить бесконечность денег за аренду облачных машин.
Tome
Self-hosted Apple Silicon GitHub Runner
by Dimitri Bouniol
Кто-то из вас уже сталкивался с необходимостью соответствовать нормам GDPR, а кому-то это еще только предстоит. Держите разбор 10 частых мифов про GDPR.
Droids On Roids
10 Myths About GDPR in Mobile Apps | Blog
You may have heard that the privacy policy is a must-have and you cannot have an app without it. Well, it is not quite accurate. A privacy policy is not