Swift Talk 499
Split Pane Animations (Part 2)
We profile the smoothness of our animations, using the Animations Hitches instrument with signposts to help us identify the right sections.
https://t.co/SsDuJWiMzo
Swift Talk 498
Split Pane Animations (Part 1)
We build a split-pane view that can divide panes dynamically, either horizontally or vertically, with smooth animations for adding or resizing.
This episode is free to watch, enjoy! 😊
https://t.co/z3jU4cwg7D
Swift Talk 497
Building a Language Model: MLX
We use Apple's MLX framework to make our neural network much faster, with shorter, cleaner code using built-in convenience functions.
https://t.co/GlXB8dgTGP
Swift Talk 496
Building a Language Model: Fixing Backpropagation
We fix two mistakes with our reimplementation of @karpathy’s micrograd, switching from a recursive to an iterative, topologically sorted approach to backpropagation.
https://t.co/lt0z4kn4L8
Swift Talk 495
Building a Language Model: Gradient Descent
We make the forward pass differentiable, building a graph that backprop walks in reverse to compute gradients. Gradient descent uses those to train the network, updating weights to reduce loss.
https://t.co/7DJwFKihTi
Swift Talk 494
Computing the Loss Function
We finish the neural network’s forward computation, turning raw inputs into probability distributions. Comparing those with the targets gives us a loss value: a measure of how good the predictions are.
https://t.co/2xUe4a7Lxr
Swift Talk 493
Digrams with Neural Nets
We start building a simple neural net to recognise digrams. Swift doesn’t have built-in types for things like matrices, so we create our own.
https://t.co/3rRExubWNs
Swift Talk 492
Building a Language Model: Neural Nets
We explore neural nets, the foundation for modern machine learning. Our first small step is backpropagating through a computation graph, inspired by @karpathy’s Micrograd.
https://t.co/HyxsjvzWCr
Swift Talk 491
Building a Language Model: Tokenization
We tokenize our text with byte-pair encoding, merging frequent character pairs to build a new vocabulary of tokens.
https://t.co/gqBitnuzLB
Swift Talk 490
Building a Language Model: N-grams
We build a simple n-gram implementation to better understand language models, training a complete—if slightly useless—model on a single book.
This episode is free to watch, enjoy! 😊
https://t.co/HYaaRdbnKk
Swift Talk 489
Rewriting Recursive Expressions
We try a different approach to syntax trees. By separating recursion into a generic map function, we can write operations in a simple way—with some complexity elsewhere.
This is a public episode, enjoy! 😊
https://t.co/VLMY0pMGEV
Swift Talk 488
The FormatStyle API
We look at the FormatStyle API’s more interesting options, and how they interact with SwiftUI.
This episode is free to watch, enjoy! 😊
https://t.co/8Xyjhml6Pu
Swift Talk 487
The Layout Protocol (Part 4)
We add two finishing touches to our custom bar layout: layout values for relative widths, and support for system spacing.
https://t.co/XJtZjqlsZN
Swift Talk 486
The Layout Protocol (Part 3)
We add alignment support to our custom layout. It only takes a few lines of code, but aligning without pushing views out of bounds is a little tricky.
https://t.co/0IltcHP7UT
Swift Talk 485
The Layout Protocol (Part 2)
We make sure that our custom layout distributes space evenly, respecting minimum widths and layout priorities.
https://t.co/pSXbmmgXLg
Swift Talk 484
The Layout Protocol (Part 1)
We revisit an old layout challenge, and solve it with a custom layout.
This episode is free to watch, enjoy! 😊
https://t.co/tQbLjAhTsb
Swift Talk 483
Matched Geometry and Corner Radius
We try to animate a view’s corner radius with matched geometry effect, and uncover some surprising quirks with SwiftUI transitions.
https://t.co/rzWkUjezCd
Swift Talk 482
Interpolating Matched Geometry Effect
We reimplement matched geometry effect using a progress value, which lets us control interpolation from the outside, and use keyframes.
https://t.co/xwSI3ad1Rj
Swift Talk 481
Matched Geometry Effect for Positioning Badges
We try a new technique for badge positioning, first building it by hand, then seeing if a LLM can generate the same solution.
This episode is free to watch, enjoy! 😊
https://t.co/7EtxiIImS7
Swift Talk 480
Building a Coding Agent (Part 2)
We give our little agent read, write and bash tools. Now it can write a simple Swift program, and execute it.
https://t.co/GZxSKo77mL