Latest blog post
Creating custom SF Symbols using the SF Symbols app
I recently needed a custom SF Symbol to indicate the read / unread state of a document. Now, you should be forgiven for thinking "surely, there is a symbol for that!" - there is not.
There is no shortage of articles that explain how to create custom SF Symbols using vector graphics tools like Figma or Sketch, and I already saw myself fiddling around with layers and SVG files.
But then I came across a feature in the SF Symbols app that allows you to create simple adornments like badges or crossing out the entire symbol without even having to leave the app...
Coming up
Livestream: Using Genkit to build a Q&A feature for my Second Brain app
In season 2 of Building a Second Brain App, we will look at using Genkit to build an AI powered Q&A feature.
Learn how to use Gemini, Genkit, vector embeddings, RAG, and bunch of other hot AI stuff.
From the community
What does @main do in Swift 5.3?
An article about the main entry point - doesn't sound like something that's overly exciting, right? After all, Xcode sets up the correct code for us anyway.
You might still want to read Keith's article, though - specifically if you'd like to understand how you can use the @main
annotation to provide an entry point in a library,
Codable conformance for Swift enums
Swift's Codable
protocol makes working with (remote) APIs - or more generally, exchanging information between systems - a lot easier than it used to be (I dare you to check out the number of JSON parsers for Swift).
Natalia's article not only provides a concise overview of how Codable
works, but it explains how enums are handled, and how you can fine-tune the mapping between Swift data structures and JSON. For example, did you know you can adjust associated value keys?
How to use Cursor for iOS development
In this article, Thomas walks us through how to set up Cursor (the AI Code Editor) for coding iOS apps. He's been using this setup for working on his own apps, so it's tried and tested.
If you're put off by the fact you have to use a fork or VS Code for editing your code, you might want to take a look at Alex Sidebar instead, which has the added benefit of being free during the beta phase.
Exploring AI: Cosine Similarity for RAG using Accelerate and Swift
Vector embeddings, cosine similarity, and Retrieval Augmented Generation are terms you will come across a lot in the AI world. If you ever wondered what they mean, or how to implement semantic search for documents, check out Rudrank's article - he provides a gentle introduction with lots of code samples using Apple's Accelerate framework.
Things we learned about LLMs in 2024
Simon has covered LLMs like no other person in the past couple of years, and this is a really good overview of what has happened in the world of LLMs in 2024.
Conferences
iOS / Swift Conferences 2025
The year has barely started, and the list of Swift / iOS conferences is already looking pretty impressive:
- iOSConfSG, January 15th-17th, Singapore 🇸🇬
- Unwrap Live, March 8th, Online 🌐
- ARCTic Conference, March 11th-13th, Oulu, Finland 🇫🇮
- AppDevCon, March 18th-21st, Amsterdam, The Netherlands 🇳🇱
- SwiftHeroes, April 8th-9th, Turin, Italy 🇮🇹
- try!Swift Tokyo, April 9th-11th, Tokyo, Japan 🇯🇵
- Deep Dish Swift, April 27th-29th, Chicago, Illinois, USA 🇺🇸
- iOSKonf25, May 13th-14th, Skopje, North Macedonia 🇲🇰
- SwiftCraft, May 19th-21st, Folkestone, UK 🇬🇧
- Macoun, September 27th-28th, Frankfurt, Germany
- Do iOS, November 11th-13th, Amsterdam, The Netherlands 🇳🇱
This doesn't even include the ones that haven't announced a (firm) date yet:
- PragmaConf, Bologna, Italy 🇮🇹
- NSSpain, Spain 🇪🇸
- One More Thing, Cupertino, USA 🇺🇸
- ServerSide.swift, UK 🇬🇧
- SwiftConf, Cologne, Germany 🇩🇪
- SwiftConnection, Paris, France 🇫🇷
- SwiftLeeds, Leeds, UK 🇬🇧
If you run a conference that's not on this list, but should be - reply to this email to let me know!
Comment
Happy New Year, everyone!
(I wasn't quite sure for how long it's appropriate to wish people all the best for the new year, so I referred to my coffee machine, which still bid me all the best just now. What a time to be alive...)
I hope you were able to relax and recharge over the break. I had a wonderful time with my family, sharing laughter and delicious meals.
The beginning of the year always feels like a fresh start to me, and there are a bunch of exciting things I am working on that I am looking forward to sharing with you all.
For starters, there will be a new season of livestreams on my YouTube channel, in which we will continue building an AI powered second brain app.
We will also continue doing livestreams on the Firebase channel. When we chose a name for the show, we decided that "Firebase After Hours" had a nice ring to it, as we wanted to convey that Nohe and I are getting together after a long day at work to just chill out and have fun hacking on stuff that we're personally excited about, and we will continue doing this. We will also have more guests on the show, to give the community the opportunity to ask live questions to our product managers and software engineers working on the Firebase SDKs.
Peter