fupio

Fupio はオンラインで共有する最も簡単な方法です 詳しく見る »

Fupio に参加
Hacking with Swift

Hacking with Swift

News, tips, and tutorials from Hacking with Swift

Hacking with Swift
Hacking with Swift
Most developers already know how to build apps, but the hard part is everything else: screenshots, reviews, App Store Optimization, launch planning, analytics, competitor research, pricing, marketing, press outreach, social posts, TestFlight management, and so much more.
But that’s all the other work that determines whether anyone actually discovers your app, and that’s also the problem my new Mac app is designed to solve.
It’s called Kickstart

Hacking with Swift
Hacking with Swift
Recently I released my SwiftUI agent skill – a hands-on set of rules to help AI coding tools such as Claude Code and Codex write better SwiftUI.
But some of you have asked me to go further, so today I’m releasing a powerful new AGENTS.md file that takes AI coding to the next level: it fully encapsulates the very essence of Paul Hudson and Hacking with Swift right in your LLM, as if I were inside your computer writing the code personally.

Hacking with Swift
Hacking with Swift
If you’re building apps with agents such as Codex or Claude, this article is for you – I’m going to show you to use agent skills to make them smarter, so they write better code, faster.
We’ll look at how to install and use these agent skills in Xcode, Claude Code, Codex, Gemini, and more. We’ll to look at where to find great agent skills for app development using my new Swift Agent Skills GitHub repository, and how to evaluate which agents

Hacking with Swift
Hacking with Swift
If you’re writing SwiftUI with AI coding agents like Claude Code, Codex, or Gemini, I’ve written an open-source SwiftUI agent skill that helps identify and fix common mistakes they make when writing SwiftUI – things like modern API usage, performance, accessibility, and more.
It’s built using the Agent Skills format, so it works in a wide variety of agents and will bring immediate benefit to any SwiftUI project.

Hacking with Swift
Hacking with Swift
Building apps in Swift and SwiftUI isn’t quite as easy for AI tools as other platforms, partly because our language and frameworks evolve rapidly, partly because languages such as Python and JavaScript have a larger codebase to learn from, and partly also because AI tools struggle with Swift concurrency as much as everyone else.
As a result, tools like Claude, Codex, and Gemini often make unhelpful choices you should watch out for. Sometimes you’ll come across deprecated API, sometimes it’s

Hacking with Swift
Hacking with Swift
There’s a Swift mistake I see time and time again, it can cause serious problems, and it’s trivial to fix. I’ve talked about it before, other people have talked about it before, and I even made a long Hacking with Swift+ video about it.
I don’t believe in making folks wait, so here’s the simple answer: if you’re using the String method replacingOccurrences(of:with)

Hacking with Swift
Hacking with Swift
On October 11th I’m running an interactive online workshop to help you write better SwiftUI code, and I hope you can join!
It's something I’ve run at several conferences worldwide, and the feedback is always very positive: it's clear, practical, and packed with takeaways you can use immediately.
We focus on issues such as:
  • Smarter code architecture
  • Clearer Swift and SwiftUI
  • Updating deprecated code
  • Internationalizing layouts
  • Creating consistent designs
  • Better UI and UX
*

Hacking with Swift
Hacking with Swift
Although the SwiftUI changes this year are a little smaller than we're used to, this year's SwiftUI update resolves a handful of common complaints folks hit when building – things that would pretty much always require us to drop down to UIKit can now be done natively, which is great.
This year the two biggest changes are:*

Hacking with Swift
Hacking with Swift
Brace yourselves, folks: Swift 6.2 contains another gigantic collection of additions and improvements to the language, while also adding some important refinements to Swift concurrency that ought to make it much easier to adopt everywhere.
Many changes are small, such as the addition of raw identifiers, default values in string interpolation, or enumerated() conforming to Collection, but these are all likely to spread quickly across projects because they are just so darned useful.
It's

Hacking with Swift
Hacking with Swift
This year's spring release of Swift brings with it a number of welcome additions and refinements that will make small but important improvements to many projects.
Things like support for trailing commas in lists have been on many people's wish lists for some time, and the extended use of nonisolated helps work around one of the pain points folks encounter with Swift concurrency, but ultimately these changes are mostly minor and provide a neat run up to larger changes that will come in Swift

Hacking with Swift
Hacking with Swift
Last year Apple began moving Swift and its associated projects from GitHub.com/apple over to GitHub.com/swiftlang, and the reason is becoming clear: you can now use GitHub Sponsors to support the project with a regular monthly donation, getting various rewards in return.
There are a number of tiers on offer right now, but this might change over time – keep an eye on the project for updates.
The launch

Hacking with Swift
Hacking with Swift
Unwrap Live is back for its third year, this time focusing on building great apps using Apple Intelligence.
Once again, it's a full-day, online-only workshop event aimed at intermediate to advanced developers, and everyone who attends will have ample chance to learn new approaches, tackle coding challenges, and of course ask lots of questions.
This year we'll be focusing on three key areas of AI:
  • Getting deep integration with AppIntents

Hacking with Swift
Hacking with Swift
My Black Friday sale starts today, which means you can save 50% on all my books and bundles! I have a huge range of books for all skill levels, including:
  • Pro Swift helps you develop a deeper knowledge of the Swift language, and is packed with videos demonstrating all the techniques.
  • Pro SwiftUI explores advanced techniques in SwiftUI, including optimization, debugging, complex layouts and animations, and more.
  • Swift Design Patterns

Hacking with Swift
Hacking with Swift
Unleash your full potential as a Swift developer with the all-new Swift Career Accelerator: the most comprehensive, career-transforming learning resource ever created for iOS development.
Whether you’re just starting out, looking to land your first job, or aiming to become a lead developer, this program offers everything you need to level up – from mastering Swift’s latest features to conquering interview questions and building robust portfolios.
So, if you're ready for a guided journey

Hacking with Swift
Hacking with Swift
I run a monthly newsletter about Swift, and each month I try to finish with a few thoughts based on work I'm doing, people I've met, or advice based on past experiences. In the July 2024 edition I wrote about mistakes, and I had so many folks reach out to me to thank me for tackling a difficult topic so honestly that I decided to publish it here too.
A few weeks ago I received an email, which I'm sharing below with permission.

Hacking with Swift
Hacking with Swift
This is another good year for SwiftUI, with another batch of scrollview improvements, some welcome macOS features, remarkable control over text rendering, and more – the team at Apple have a lot to be proud of, and many developers will breathe a sigh of relief as API such as fine-grained subview control is now public for all of us to use.
But there's also one major architectural change you need to be aware of, so let's start with that…

View is now on the main actor

For a long time, the

Hacking with Swift
Hacking with Swift
2024 is Swift's 10th anniversary, and for the last five of those years we've had no major-version Swift updates – literally half of Swift's life has been 5.0 through to 5.10.
This is more common than you might think. In fact, several major programming languages have some kind of release that takes significantly longer than all others: Python 3 took years to arrive, PHP 6 took so long the team bailed out and jumped straight to PHP 7, and Perl 6 dragged on so much that it ended up evolving into

Hacking with Swift
Hacking with Swift

Hacking with Swift
Hacking with Swift
A huge swathe of features, changes, and adjustments are planned Swift 6, but before then we have Swift 5.10: an interim release mostly focused on fixing up data race checking at compile time, hopefully clearing the decks for Swift 6.
Let's take a look at what's changing…

Data races are now clearly diagnosed

Swift concurrency was

Hacking with Swift
Hacking with Swift
Swift's result builders are a powerful language feature that let us create domain-specific languages right inside our Swift code. With a little thinking, this means we can actually create whole websites in Swift, with our code automatically being converted to valid, accessible Swift, and we can even sprinkle in a little SwiftUI magic to complete the effect.
Let's get to it…

Starting from scratch

For over 30 years, HTML has been a great language for describing the structure of web pages.