objc.io
@objc.io
📤 90
📥 2
📝 50
https://www.objc.io
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.
talk.objc.io/episodes/S01...
loading . . .
7 days ago
0
2
1
Swift Talk 490 Building a Language Model: N-grams We implement a simple n-gram to better understand language models, training a complete—if slightly useless—model on a single book. This is a public episode, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
14 days ago
0
1
1
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! 😊
talk.objc.io/episodes/S01...
loading . . .
21 days ago
0
0
0
Swift Talk 488 The FormatStyle API We look at the API’s more interesting formatting options, and how they interact with SwiftUI. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
28 days ago
0
0
0
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.
talk.objc.io/episodes/S01...
loading . . .
about 1 month ago
0
2
2
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.
talk.objc.io/episodes/S01...
loading . . .
about 1 month ago
0
1
0
Swift Talk 485 The Layout Protocol (Part 2) We make sure that our custom layout distributes space evenly, respects minimum widths and layout priorities.
talk.objc.io/episodes/S01...
loading . . .
about 2 months ago
0
2
0
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! 😊
talk.objc.io/episodes/S01...
loading . . .
about 2 months ago
0
1
0
Swift Talk 483 Matched Geometry and Corner Radius We try to animate a view’s corner radius with matched geometry effect, and discover some surprising quirks with SwiftUI transitions.
talk.objc.io/episodes/S01...
loading . . .
2 months ago
0
3
0
Swift Talk 482 Interpolating Matched Geometry Effect We build a custom matched geometry effect, control its interpolation with a progress value, and drive it with keyframes.
talk.objc.io/episodes/S01...
loading . . .
2 months ago
0
0
0
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 come up with the same solution. This episode is public, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
3 months ago
0
1
0
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.
talk.objc.io/episodes/S01...
loading . . .
3 months ago
0
0
0
Swift Talk 479 Building a Coding Agent (Part 1) We learn how agents are implemented by building one, with an outer loop for user input, and an inner loop for tool use. This episode is public, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
3 months ago
1
2
0
Swift Talk 478 Solving the View Model Problem (Part 3) We clean up our property wrapper, and create a macro to save us from some boilerplate code.
talk.objc.io/episodes/S01...
loading . . .
3 months ago
0
1
0
Swift Talk 477 Solving the View Model Problem (Part 2) We create a view model protocol and property wrapper that regenerates view models when new values are passed to a view’s initializer.
talk.objc.io/episodes/S01...
loading . . .
3 months ago
0
1
0
Swift Talk 476 Solving the View Model Problem (Part 1) We investigate, and outline a potential solution to, creating and updating view models in SwiftUI. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
4 months ago
0
2
0
Swift Talk 475 Settings Form Layout (Part 2) We use SwiftUI’s Grid as a simpler way of laying out our settings form.
talk.objc.io/episodes/S01...
loading . . .
4 months ago
0
1
0
Swift Talk 474 Settings Form Layout (Part 1) We build the layout for a typical macOS settings form in SwiftUI, using sections for structure and a custom form style to lay out the elements correctly. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
4 months ago
0
3
0
Swift Talk 473 ThumbHash (Part 6) We transform the RGB image into LPQ color space, and compress chroma more than luminance to produce a good-looking thumbnail using less data.
talk.objc.io/episodes/S01...
loading . . .
5 months ago
0
1
0
Swift Talk 472 ThumbHash (Part 5) We apply our transforms to an RGB image, separating the data into three channels before transforming each individually.
talk.objc.io/episodes/S01...
loading . . .
5 months ago
0
1
0
Swift Talk 471 ThumbHash (Part 4) We apply our discrete cosine transform to an image, using Core Graphics to process the data, and see it working for the first time.
talk.objc.io/episodes/S01...
loading . . .
5 months ago
0
0
0
Swift Talk 470 ThumbHash (Part 3) We extend our discrete cosine transform to work in two dimensions, so we can apply it to image data. Sorry about the audio this week! 😬
talk.objc.io/episodes/S01...
loading . . .
6 months ago
0
1
0
Swift Talk 469 ThumbHash (Part 2) We finish our basic version of a discrete cosine transform, and use it for some compression experiments.
talk.objc.io/episodes/S01...
loading . . .
6 months ago
0
1
0
Swift Talk 468 ThumbHash (Part 1) In a new series, we reimplement the ThumbHash algorithm, starting with a simple discrete cosine transform. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
6 months ago
0
0
0
Swift Talk 467 Visual Node Editor (Part 9) We add share support, which exports diagrams as different content types, including text, JSON, image, and PDF.
talk.objc.io/episodes/S01...
loading . . .
6 months ago
0
0
0
Swift Talk 466 Visual Node Editor (Part 8) We clean up the code and transform the project to a document-based app.
talk.objc.io/episodes/S01...
loading . . .
7 months ago
0
0
0
Swift Talk 465 Visual Node Editor (Part 7) We add snapping to node resizing, with shared state managed in the model rather than in preferences or the environment.
talk.objc.io/episodes/S01...
loading . . .
7 months ago
0
1
0
Swift Talk 464 Visual Node Editor (Part 6) We refactor our view state, moving properties and logic into a compound struct. This makes gestures more testable.
talk.objc.io/episodes/S01...
loading . . .
7 months ago
0
1
0
Swift Talk 463 Visual Node Editor (Part 5) We address some issues with multi-selection, moving node state to the graph view, which we plan to simplify later.
talk.objc.io/episodes/S01...
loading . . .
7 months ago
0
1
1
Swift Talk 462 Visual Node Editor (Part 4) We add multi-select for nodes, but that means rethinking our focus architecture.
talk.objc.io/episodes/S01...
loading . . .
8 months ago
0
1
0
Swift Talk 461 Visual Node Editor (Part 3) We wire-up the draggable resize handles, and deal with some tricky edge case logic.
talk.objc.io/episodes/S01...
loading . . .
8 months ago
0
3
0
Swift Talk 460 Visual Node Editor (Part 2) We add focus behavior to the nodes and edges, with custom drawing and resize handles.
talk.objc.io/episodes/S01...
loading . . .
10 months ago
0
3
0
Swift Talk 459 Visual Node Editor (Part 1) In a new series, we build a node editor to explore focus, selection, gestures, and accessibility. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
10 months ago
0
4
2
Swift Talk 458 SwiftUI as Static Site Generator (Part 6) We finish the series by adding Hummingbird as a web server, using WebSockets to reload live when something changes.
talk.objc.io/episodes/S01...
loading . . .
10 months ago
0
1
0
Swift Talk 457 SwiftUI as Static Site Generator (Part 5) We generate share images from SwiftUI views, and use hashing to reload them correctly when content changes.
talk.objc.io/episodes/S01...
loading . . .
10 months ago
0
5
0
Swift Talk 456 SwiftUI as Static Site Generator (Part 4) We add a templating system using the environment, and integrate Swim for HTML generation.
talk.objc.io/episodes/S01...
loading . . .
11 months ago
0
5
0
Swift Talk 455 SwiftUI as Static Site Generator (Part 3) We add directory observation, which lets us use SwiftUI's preferences to generate the site.
talk.objc.io/episodes/S01...
loading . . .
11 months ago
0
0
0
Swift Talk 454 SwiftUI as Static Site Generator (Part 2) We add file observation using GCD’s Dispatch Source APIs, which handle both standard write events and atomic delete-plus-write sequences.
talk.objc.io/episodes/S01...
loading . . .
11 months ago
0
4
0
Swift Talk 453 SwiftUI as Static Site Generator (Part 1) We build a very unconventional static site generator on top of SwiftUI. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
11 months ago
0
2
0
Swift Talk 452 Building a Token Field (Part 5) We finish our drag-and-drop implementation, displaying an insertion point for dragging and using Transferable for the drop.
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
0
0
Swift Talk 451 Building a Token Field (Part 4) We use SwiftUI's drag-and-drop APIs to support token reordering. While dragging is almost free, we need a delegate to track the dropping position.
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
1
0
Swift Talk 450 Building a Token Field (Part 3) We add more selection and backspace behaviors. Token fields on macOS feel natural, but they're actually quite complicated!
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
1
0
Swift Talk 449 Building a Token Field (Part 2) We add selection to our custom SwiftUI token field. Even the most basic behaviors are quite tricky!
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
1
0
Swift Talk 448 Building a Token Field (Part 1) In a new series, we build a token view from scratch, using pure SwiftUI. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
1
0
Swift Talk 447 Building a FaceTime-like Animation (Part 2) We add smoothly animated drag gestures to our FaceTime-like view.
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
1
0
0
Swift Talk 446 Building a FaceTime-like Animation (Part 1) We build an interactive animation similar to FaceTime’s picture-in-picture view, visualizing the path it takes. This episode is free to watch, enjoy! 😊
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
1
0
Swift Talk 445 Staggered Animations Revisited (Part 3) We add priorities and custom sorting to our staggered animations.
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
1
0
Swift Talk 444 Staggered Animations Revisited (Part 2) We add custom transitions using SwiftUI's Transition protocol, which work when new views are inserted.
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
0
1
0
Swift Talk 443 Staggered Animations Revisited After a two year hiatus, we build a staggered modifier in SwiftUI that works with any view in the view tree. This episode is free to watch! 😊
talk.objc.io/episodes/S01...
loading . . .
about 1 year ago
1
6
1
print("Hello, Bluesky!")
about 1 year ago
1
6
0
Load more
feeds!
log in