Латтнер считает Swift слишком сложным
Крис Латтнер недавно дал интервью, в рамках которого прошелся по Swift:
👉Swift, the original idea was factor complexity (…) massively failed, in my opinion (…) Swift has turned into a gigantic, super complicated bag of special cases, special syntax, special stuff.
👉instead of fixing the core, what the team did, both when I was there, so partially my fault, but also subsequently, is they started adding all these special cases (…) a lot of this stuff got added under extreme time pressure to enable a feature like #SwiftUI. And there's a bunch of stuff that feeds into that, as well as just the language gets more and more and more and more complicated.
Крис Латтнер недавно дал интервью, в рамках которого прошелся по Swift:
👉Swift, the original idea was factor complexity (…) massively failed, in my opinion (…) Swift has turned into a gigantic, super complicated bag of special cases, special syntax, special stuff.
👉instead of fixing the core, what the team did, both when I was there, so partially my fault, but also subsequently, is they started adding all these special cases (…) a lot of this stuff got added under extreme time pressure to enable a feature like #SwiftUI. And there's a bunch of stuff that feeds into that, as well as just the language gets more and more and more and more complicated.
YouTube
I Interviewed The Creator Of LLVM, Clang, Swift, and Mojo
Recorded live on twitch, GET IN
### Guests
Chris Lattner
https://x.com/clattner_llvm?s=21&t=-sv4MdpmLrRuMIhARbLk-g
https://www.modular.com
TJ DeVries
https://youtube.com/@teej_dv?si=AIrpF3SWJYZqlboU
### My Stream
https://twitch.tv/ThePrimeagen
###…
### Guests
Chris Lattner
https://x.com/clattner_llvm?s=21&t=-sv4MdpmLrRuMIhARbLk-g
https://www.modular.com
TJ DeVries
https://youtube.com/@teej_dv?si=AIrpF3SWJYZqlboU
### My Stream
https://twitch.tv/ThePrimeagen
###…
Критика data race safety
Критику сложности Swift, поднятую Латтнером, продолжает Алекс Гребенюк, автор Nuke и Pulse. Swift 6 с data race safety и компиляторными ошибками, которые только мешают в простых приложениях и перекладывает на плечи программиста кучу работы, и делает опыт работы с языком только хуже. Это идет вразрез с изначальными планами Apple по созданию языка, дружелюбного к разработчикам, быстрого и простого.
Критику сложности Swift, поднятую Латтнером, продолжает Алекс Гребенюк, автор Nuke и Pulse. Swift 6 с data race safety и компиляторными ошибками, которые только мешают в простых приложениях и перекладывает на плечи программиста кучу работы, и делает опыт работы с языком только хуже. Это идет вразрез с изначальными планами Apple по созданию языка, дружелюбного к разработчикам, быстрого и простого.
Как создать альтстор
Q&A с авторами AltStore, первого официального стороннего стора, появившегося в EU.
👉Как магазин заводится с технической стороны
👉Особенности распространения приложений через такие магазины
👉Отличие процессов нотаризации заливки приложений от обычного
👉Платежные опции для приложений
👉Adult контент
Q&A с авторами AltStore, первого официального стороннего стора, появившегося в EU.
👉Как магазин заводится с технической стороны
👉Особенности распространения приложений через такие магазины
👉Отличие процессов нотаризации заливки приложений от обычного
👉Платежные опции для приложений
👉Adult контент
Revenuecat
AltStore: Q&A with Riley Testut
Explore the pioneering AltStore with founder Riley Testut, discussing the rise of third-party iOS app stores.
Используем SwiftUI из CLI
Пример того, как с помощью класса ImageRenderer из SwiftUI можно сделать консольную тулу, которая будет добавлять бейджи на иконку приложения.
Пример того, как с помощью класса ImageRenderer из SwiftUI можно сделать консольную тулу, которая будет добавлять бейджи на иконку приложения.
swifttoolkit.dev
Using SwiftUI in Command Line Tools
You can take advantage of SwiftUI even in your command line tools
Live Activity в Uber
Uber рассказали про свой опыт разработки Live Activity. С технической стороны все довольно тривиально, а вот продуктовые результаты интересные:
👉На 2.3% меньше отмен заказов водителем
👉На 2.1% меньше отмен заказов пассажиром
Получается, что благодаря более прозрачному статусу заказа уменьшаются шансы того, что пассажир забудет про такси.
Uber рассказали про свой опыт разработки Live Activity. С технической стороны все довольно тривиально, а вот продуктовые результаты интересные:
👉На 2.3% меньше отмен заказов водителем
👉На 2.1% меньше отмен заказов пассажиром
Получается, что благодаря более прозрачному статусу заказа уменьшаются шансы того, что пассажир забудет про такси.
Swift Homomorphic Encryption
Apple выпустили новую официальную библиотеку для гомоморфного шифрования. Если не вдаваться в детали, то это такой метод шифрования, который позволяет выполнять операции над секретными данными без знания ключа шифрования. Например, это помогает вынести тяжелые вычислительные операции на сервер, не нарушая при этом приватности для пользователя.
Apple выпустили новую официальную библиотеку для гомоморфного шифрования. Если не вдаваться в детали, то это такой метод шифрования, который позволяет выполнять операции над секретными данными без знания ключа шифрования. Например, это помогает вынести тяжелые вычислительные операции на сервер, не нарушая при этом приватности для пользователя.
Swift.org
Announcing Swift Homomorphic Encryption
We’re excited to announce a new open source Swift package for homomorphic
encryption in Swift:
swift-homomorphic-encryption.
encryption in Swift:
swift-homomorphic-encryption.
Обнаружение flaky тестов в Tuist
Tuist теперь умеет определять тесты, которые выдают неконсистентные результаты, хотя ни сам тест, ни тестируемый код не изменялись.
Tuist теперь умеет определять тесты, которые выдают неконсистентные результаты, хотя ни сам тест, ни тестируемый код не изменялись.
Issue Reporting – библиотека для отображения ворнингов в Xcode
Issue Reporting – новая библиотека от Pointfree, которая помогает быстро показывать ворнинги и ассерты прямо из кода. Помимо отображения тултипа, можно еще и автоматически активировать брейкпойнт в момент показа уведомления.
Issue Reporting – новая библиотека от Pointfree, которая помогает быстро показывать ворнинги и ассерты прямо из кода. Помимо отображения тултипа, можно еще и автоматически активировать брейкпойнт в момент показа уведомления.
Swift Foundation доступен в Swift 6 Nightly
Помните план Apple переписать Foundation на Swift? Так вот, частично переписанный Swift Foundation уже доступен в ночных сборках Swift 6, причем поддерживает даже Linux и Windows.
Помните план Apple переписать Foundation на Swift? Так вот, частично переписанный Swift Foundation уже доступен в ночных сборках Swift 6, причем поддерживает даже Linux и Windows.
Конвертация XCTest в swift-testing
swift-testing-revolutionary – инструмент, который автоматически конвертирует все ваши XCTest в новый формат swift-testing. Работает и как Xcode плагин, и как самостоятельный CLI тул. Пока что не поддерживается ряд аннотаций, но большинство тестов уже могут быть сконвертированы.
swift-testing-revolutionary – инструмент, который автоматически конвертирует все ваши XCTest в новый формат swift-testing. Работает и как Xcode плагин, и как самостоятельный CLI тул. Пока что не поддерживается ряд аннотаций, но большинство тестов уже могут быть сконвертированы.
This media is not supported in your browser
VIEW IN TELEGRAM
Scrolling picker на SwiftUI
Гайд по тому, как сделать компонент-рулетку на SwiftUI, которая будет скроллиться всегда строго по сетке.
Гайд по тому, как сделать компонент-рулетку на SwiftUI, которая будет скроллиться всегда строго по сетке.
Онбординг пользователя в новые фичи
Простой подход к обучению пользователя новым фичам. Весь экран затемняется, подсвечивается только ключевой элемент, а снизу появляется шторка с объяснением, зачем он нужен.
Простой подход к обучению пользователя новым фичам. Весь экран затемняется, подсвечивается только ключевой элемент, а снизу появляется шторка с объяснением, зачем он нужен.
This media is not supported in your browser
VIEW IN TELEGRAM
Новая фича в Xcode 16
В Xcode 16 можно скопировать какой-то код в открытом файле, перетащить его в Project Navigator, и как результат автоматически создастся новый файл с корректным именем. Будущее!
В Xcode 16 можно скопировать какой-то код в открытом файле, перетащить его в Project Navigator, и как результат автоматически создастся новый файл с корректным именем. Будущее!
Ask WWDC – AI поиск по всем сессиям WWDC
Смотрите, какой классный сервис. Задаешь вопрос про любой API, получаешь в ответ выжимку того, что о нем рассказывали на WWDC, и ссылки на все релевантные сессии.
Смотрите, какой классный сервис. Задаешь вопрос про любой API, получаешь в ответ выжимку того, что о нем рассказывали на WWDC, и ссылки на все релевантные сессии.
Ask WWDC
Catching up on WWDC? Ask a question and we'll give you a concise summary and recommend the most relevant sessions to watch!
Tuist Previews – быстрый способ пошарить билд
Tuist релизнули классную фичу. В консоли вызываете команду
Tuist релизнули классную фичу. В консоли вызываете команду
tuist share MyApp
, она заливает ваш билд в облако и выдает url. Этот url можно пошарить с кем угодно в команде, вставить в консоль, и приложение сразу же запустится на вашем симуляторе. Выглядит супер-удобно!tuist.dev
Introducing Tuist Previews. A URL-centric approach to collaboration
Tuist Previews make it easy to share apps with anyone. Learn more about this new feature and what's coming next.
CocoaPods переходит в maintenance режим
Команда CocoaPods официально перевела проект из режима активной разработки в режим поддержки.
Что с проектом будет происходить:
👉Будут закрывать все уязвимости
👉Два раза в год будут выходить релизы для совместимости с Xcode
👉Инфра сайта будет поддерживаться в относительно рабочем состоянии
👉Могут приниматься сторонние PR
Чего не будет:
👉Не будут решаться проблемы отдельных людей
👉Команда проекта не будет добавлять новые фичи
👉Никаких гарантий по сторонним PR и их рассмотрению не дается
Ну и в целом команда рекомендует всем мигрировать на SwiftPM, и со временем будет еще больше отходить от проекта.
Команда CocoaPods официально перевела проект из режима активной разработки в режим поддержки.
Что с проектом будет происходить:
👉Будут закрывать все уязвимости
👉Два раза в год будут выходить релизы для совместимости с Xcode
👉Инфра сайта будет поддерживаться в относительно рабочем состоянии
👉Могут приниматься сторонние PR
Чего не будет:
👉Не будут решаться проблемы отдельных людей
👉Команда проекта не будет добавлять новые фичи
👉Никаких гарантий по сторонним PR и их рассмотрению не дается
Ну и в целом команда рекомендует всем мигрировать на SwiftPM, и со временем будет еще больше отходить от проекта.
Новая функция count(where:) в Swift 6
В Swift 6 завезли не только strict concurrency, но и другие фичи. Среди них – новая функция
В Swift 6 завезли не только strict concurrency, но и другие фичи. Среди них – новая функция
count(where:)
, которая позволяет посчитать, сколько элементов в коллекции удовлетворяют какому-то условию.Nil Coalescing
Count the number of objects that pass a test in Swift using count(where:)
Efficiently count the number of elements in a sequence that satisfy the given condition with the new count(where:) method introduced in Swift 6.
Как тестируется компилятор
Про Swift я ничего в этом плане не знаю, но зато можно почитать про то, как обеспечивается качество Kotlin/Native, в том числе тестируется интероп с Objective-C.
Про Swift я ничего в этом плане не знаю, но зато можно почитать про то, как обеспечивается качество Kotlin/Native, в том числе тестируется интероп с Objective-C.
foojay
How does it feel to test a compiler?
My experience testing compilers, focusing on the Kotlin/Native compiler and how I got into compiler testing, the tasks involved, the tools I use, and the knowledge required for this work.
Браузер Ladybird перепишут на Swift
Swift начинают выбирать на замену С++ как альтернативу Rust на реальных проектах. В этот раз про свой выбор рассказывают разработчики независимого браузера Ladybird, ядро которого они планируют постепенно переписать с С++ на Swift.
Swift начинают выбирать на замену С++ как альтернативу Rust на реальных проектах. В этот раз про свой выбор рассказывают разработчики независимого браузера Ladybird, ядро которого они планируют постепенно переписать с С++ на Swift.
Как записывать крутые демо видео
Подборка рекомендаций по тому, как записывать топовые видео с демками новых фичей. Мне нравится сама идея того, что они получаются гораздо более живыми, когда вы захваьываете руку с устройством.
Подборка рекомендаций по тому, как записывать топовые видео с демками новых фичей. Мне нравится сама идея того, что они получаются гораздо более живыми, когда вы захваьываете руку с устройством.
Medium
How to film an aesthetic demo of your prototype
Lately, I started sharing my prototypes on Twitter(x, whatever) and have enjoyed the process. The positive feedback I received from viewers…