Wil and Matt discuss tech, startups, and building really cool things with AI. Sometimes joined by (actual expert) friends.
…
continue reading
Mode Context Protocol Podcasts
NSScreencast features weekly bite-sized videso on iOS development. This free feed is just a sample of what is available for members. Subscribe today at https://nsscreencast.com.
…
continue reading

1
Building Software With Thorsten Ball: Decoupling Code for Agents, Finding "Your Pain" and Germans Use the Winky Face
1:10:37
1:10:37
Play later
Play later
Lists
Like
Liked
1:10:37"Elderly German Landlord.. she would use these winky face emojis" "Memes in blogs feel cheap" "Dude.... you didn't even run this" Takeaways The podcast jingle was created using AI technology. Thorsten's journey into programming began in his teenage years. He transitioned from music to software engineering after realizing his passion for coding. The…
…
continue reading

1
In Person!!! Topic of Agent Payments, Friendly Acquisitions, GPT-5, Endless Model Name and Many Free Ideas
1:10:45
1:10:45
Play later
Play later
Lists
Like
Liked
1:10:45Chapters 00:00 Introduction and Context of the Podcast 07:23 Updates on SimplePoll and AI Integration 18:14 Telemetry and Continuous Improvement in Development 24:30 Acquisitions and Industry Insights 32:37 Discussion on GPT-5 and Future of AI Models 39:13 Consumer Experience with AI Models 48:29 The Future of AI Content Verification 58:17 The Impa…
…
continue reading

1
Uncut with Danilo Leal, Design Engineer at Zed, Prototyping in React and Built in Rust, Designing for an AI Assisted UX
1:00:42
1:00:42
Play later
Play later
Lists
Like
Liked
1:00:42TDLR: 10 episodes in and we are going full uncut conversation with Danilo Leal. One of the magician Design Engineers working on the Zed code editor. “I'll be making a jingle” “We prototype everything in React before Rust” Danilo Leal represents a new breed of designer and engineer. The role of design is becoming more approachable with technology. A…
…
continue reading

1
Sub Agent or Super Agent, MCP UI Over Lunch, Bitter Lesson Learnings, Locking in on Prompts and Trying to Live in the Future
57:46
57:46
Play later
Play later
Lists
Like
Liked
57:46TLDR Matt caught whitebait for dinner during his outdoor adventures. Wing foiling is a new sport gaining popularity. Sub agents are necessary for exploring context windows in AI. A2A and MCP servers are the future of AI integration. AI-assisted code review can streamline the development process. Prompting techniques are evolving and require careful…
…
continue reading

1
Study Says AI Makes Developers Slower? F1 Movie Review, Coding and Testing for AI, Free Perplexity and Free Ideas
1:09:54
1:09:54
Play later
Play later
Lists
Like
Liked
1:09:54News The pod has twitter/x - https://x.com/badagentpod Wil’s new brand - tritanclub.com Links Boris Tane post on Cloudflare DOs + Drizzle - https://boristane.com/blog/durable-objects-database-per-user/ Experience with Claude Code - https://sankalp.bearblog.dev/my-claude-code-experience-after-2-weeks-of-usage/ Focus on inputs not outputs: https://jo…
…
continue reading

1
Sunil Pai, Agents SDK at Cloudflare, Becoming Accidentally Important at Work, React Core Team, Durable Objects EXPLAINED and Future of Computing
47:20
47:20
Play later
Play later
Lists
Like
Liked
47:20“UI is so over” “If all humans were perfect robots” "I just got stoned and did open source." "I rewrote their entire CLI." Sunil Pai's Backstory and Career Journey from India to London The Evolution of React and Sunil's Contributions Transition to Cloudflare and the Concept of Durable Objects Building PartyKit and Its Impact The Role of AI Agents a…
…
continue reading

1
Massive Trail Marathons, Got Parekh'd, Context Engineering Strikes Back, Armin Ronacher Shares Tips and .env Suckkksss
1:01:57
1:01:57
Play later
Play later
Lists
Like
Liked
1:01:57"Bullish on claude code" "I found Soham in our ATS" "these things have been like RLHF to fuck" Vibe Tunnel - https://vibetunnel.sh/ Armin Ronacher on Simon Willison’s blog - https://simonwillison.net/tags/armin-ronacher/ Amp by Sourcegraph - https://ampcode.com/ Matt is finalizing his event for AI Demo Days. Juliette completed a challenging maratho…
…
continue reading

1
CLOUDFLARE CONTAINERS!!! Claude Code vs AI SDK Showdown, Offsite Fun, United Sucks and Wil Goes Out Out in Berlin
45:32
45:32
Play later
Play later
Lists
Like
Liked
45:32"Context window… kaboom" "Am I gonna get cancelled for this" "United is not a good airline" "Just make more money." Takeaways Integrations bring people together in meaningful ways. Video podcasts are gaining popularity among Gen Z audiences. Editing podcasts can be time-consuming but rewarding. Family events can provide a refreshing break from work…
…
continue reading

1
Structuring Codebases for AI, Claude Code in GitHub, Scale Acquired! Granola Cafe, AI Rules and More MCP
1:03:46
1:03:46
Play later
Play later
Lists
Like
Liked
1:03:46"Cortex podcast is God tier" "Claude Code is the best devtool this year" "gotta structure your codebase for AI" Stuff we talked about: Cortex podcast - https://www.relay.fm/cortex Claude Code in Github - https://github.com/anthropics/claude-code-action Shippie - https://github.com/mattzcarey/shippie Amp - https://sourcegraph.com/amp Claude Code Git…
…
continue reading

1
AI Engineering is Dead? Hectic Stag Dos, Event FOMO or Not to Go and Agent Evals are HARRDDD
50:12
50:12
Play later
Play later
Lists
Like
Liked
50:12"We're always live." "I think evals are so hard." "AI engineering is dead." Stag do experiences can lead to unexpected personal updates. Consumer behavior in Las Vegas highlights the allure of gambling despite its downsides. Podcasting can encompass news, guest interviews, and personal stories. Traveling to Peru offers breathtaking experiences like…
…
continue reading

1
With Lu Wilson, Teach was the Hardest Demo, Dev Rel?, Return to Office, Windsurf Acquisition and more MCP
1:10:07
1:10:07
Play later
Play later
Lists
Like
Liked
1:10:07Lu, Wilhelm, and Matt discuss the evolution and features of tldraw, "a very good whiteboard". They explore the office culture, community engagement through demos, and the integration of AI technologies. The challenges faced in AI development and the importance of developer relations are also highlighted, emphasizing the need for effective communica…
…
continue reading

1
Opencode, Cloudflare, MCP MCP MCP, Scented Bin Liners and Broken Garmin Watches
48:03
48:03
Play later
Play later
Lists
Like
Liked
48:03Wilhelm and Matt are starting a podcast together. They discuss the differences in humor between the UK and the US. Scented trash bags are surprisingly beneficial. Matt's Garmin watch has malfunctioned after years of use. Wilhelm is adjusting to life in San Francisco, noting its high cost of living. They plan to include guests in their podcast to en…
…
continue reading
We'll first take a look at the AudioKit Cookbook application, which is a great way to see what is possible. Once we've seen some of the capabilities we can look at the code to get an idea of how to build things with AudioKit.We'll then add a package collection in Xcode to make bringing in the various AudioKit package dependencies a little easier.…
…
continue reading
We kick off a new series on audio programming for iOS using AudioKit. Before we jump into code, however, it is important to get a foundational understanding of how audio works and how it is represented by the audio hardware (sound cards, etc) that the software integrates with. In this episode we will talk about the fundamentals of audio, learn some…
…
continue reading
In this episode we tackle showing a list of posts, which requires us to convert the network models into models more fit for the UI, parsing HTML in order to display as an AttributedString, and displaying the author information.
…
continue reading
Sometimes we run into issues where SwiftUI doesn't quite do what we need. In some cases, SwiftUI views are powered by UIKit under the hood. Wouldn't it be great (and devious) to dig into the underlying UIKit views to customize things when vanilla SwiftUI just won't cut it? In this episode we'll look at a technique for discovering the UIKit undernea…
…
continue reading
One of the most impactful things you can do to improve productivity is to improve turnaround time when iterating on features. Playgrounds and Xcode Live Previews are great, but both have their limitations. In this episode we will explore how to utilize hot module reloading to have the simulator automatically reflect your changes when you save. It's…
…
continue reading
One way of achieving modularization is to build frameworks using nested Xcode projects. This has the benefit of having everything in one place and can easily build the entire thing. You can also zero-in on a single project and just work from there if you want. Each sub-project can have its own tests, sample application, etc.…
…
continue reading
In this episode we will talk about the overview and motivation for a modular project architecture. Why split things up? I'll talk about the problems we face, what benefits we may achieve, and how can we approach the problem.
…
continue reading
One of my favorite new features of Xcode 13 is support for Vim key bindings. In this episode we will see how to enable this and I'll give a quick tour of how to get around using Vim.
…
continue reading
In the next few episodes we will explore the concept of Protocol Witnesses. This is an advanced topic that can be somewhat hard to approach, but in learning about Protocol Witnesses you will see how we can leverage the Swift language and functional programming to do some really cool things.
…
continue reading
Context menus are a great affordance for performing related actions to a UI element. Users can tap and hold to view the context menu, and the gesture is consistent across the OS so users will likely already be familiar with it. In this episode we'll show how to set up a basic context menu with a custom preview with normal and destructive actions.…
…
continue reading
This is a discussion and code overview of another implementation of mapping models using key paths with a special guest, Antoine van der Lee! In this episode we talk about his initial goals and constraints, and some of the design tradeoffs he made while designing a solution that would give him a bidirectional mapping between Core Data entities and …
…
continue reading
In this episode we review the basic example app and start setting up our collection view in code. We start with the basic flow layout which is most common. Later we'll refactor this to use the newer style, but this episode introduces the series and sets up the foundation we'll build upon.
…
continue reading
In this episode we migrate our collection view to use the new cell registration API. Using this API we no longer need to cast dequeued cell types to our custom types. Instead, we set up the registration object with the cell type and the data we'll be passing to each cell. This further reduces the code we have to write in our datasource implementati…
…
continue reading
With UITableView no longer being encouraged for use, we need to replace this behavior with UICollectionView. This is where UICollectionViewListLayout comes into play. Using this layout we can get the familiar table view appearance in plain and grouped styles (as well as additional styles to support sidebars on iPad and macOS). This includes support…
…
continue reading
First introduced in iOS 13, UICollectionViewCompositionalLayout is an amazing and powerful addition that gives you lots of flexibility when describing layouts. There are a few new types to get used to (namely sections, groups, and items) but they all work together allowing you to keep layout separate from your views and your data.…
…
continue reading
I've been working on rendering waveforms using mathematical functions and have found the experience to be both fun and enlightening. In this episode we will develop a method to render arbitrary functions using a Shape, then explore some mathematical concepts that can help us render a nice looking waveform that could be use to indicate activity in s…
…
continue reading
With the introduction of LazyVGrid and LazyHGrid In iOS 14 we now have access to much more powerful grid-based layouts in SwiftUI. In this episode We will examine the different types of layouts we can accomplish with flexible, fixed, and adaptive sizing for our rows and columns. We'll look at how animations work between different layouts, and how t…
…
continue reading
A few episodes back we covered how to wrap a UIActivityIndicatorView to show loading progress in SwiftUI. Now in iOS 14 this is built in. In this episode we'll cover the various styles, how to hook it up to a Progress instance, and how to create your own custom progress visualizations.
…
continue reading
iOS 14 Beta is now available and one of the new features is Lazy stacks. With a normal stack, all the layout happened at once, which meant poor performance for large lists of content, grids, etc. With Lazy stacks the views are only created when they first come on screen, greatly increasing the usefulness of stacks for large or infinite collections …
…
continue reading
Before Swift 5 we used to write our own Result type to contain a value or an error (but never both). A lot of 3rd party libraries brought along their own as well. Then Swift 5 came and brought us Result. Not only is it slightly different than the ones we might be familiar with, Swift's Result type also has some useful functionality up its sleeve.…
…
continue reading
Sometimes we need to create variants of our icons. This can be done by using template images and using a UIImageView with a tintColor change, however sometimes this isn't feasible. We can use our icons along with a mask to create new images of whatever color we want. In this episode we'll use UIGraphicsImageRenderer to quickly draw a new dimmed ima…
…
continue reading
Attaching gestures works quite a bit differently in SwiftUI than in UIKit. In this episode we will look at the @DragGesture property wrapper and how we can use gestures to update custom state that we can then use to transform our UI.
…
continue reading
SwiftUI's declarative nature makes building UIs incredibly easy. In this episode we will build a wallet UI with cards. We will create a CardView so we can reuse it in multiple places. Then we will use transforms to alter it's size and position. Finally we will see how declarative animations work as we expand the cards apart.…
…
continue reading
Now that we've seen a taste of SwiftUI, let's dive into a real example and build an app. We'll have a first look at @State variables we can use to creating a binding between our state and our UI, and we'll run into a few puzzling errors and see how we can coax Xcode into giving us the right error message.…
…
continue reading
Back from WWDC 19 and blown away by the announcements. There's a lot to cover, but we'll start by digging into the most exciting announcement: SwiftUI. This is going to change everything...
…
continue reading
Working with dates is a task that is universally applicable to Swift developers. Particularly when dealing with an API, dates can arrive in all shapes and sizes. We‘ll examine some of the common ones such as ISO 8601, show how to parse these formats into Date instances, and how to use DateFormatter to display them back again as a string. We‘ll also…
…
continue reading
In this episode we configure our iOS app to receive push notifications, adding the OneSignal SDK to our project, configuring the Notification Service extension, and testing it out on a real device.
…
continue reading
In this episode we look at how to generate a certification for adding push notification support for your app, using OneSignal as our push notification provider
…
continue reading
In this episode we will setup iTerm2, profiles, custom color schemes, and fonts.
…
continue reading
In this episode we look at some of the basic system preferences on macOS High Sierra. We set up the Dock, Keyboard shortcuts, and show how to customize key repeat timing outside of the preferences window.
…
continue reading
UITableView can support scrolling through many rows of data, however fetching large amounts of remote data can slow down your app, use up too much memory, and bog down your web server. This is all wasteful if users aren‘t ever going to scroll down that far. In this episode you‘ll learn how to perform automatic UITableView pagination using an easy t…
…
continue reading
In order to use CloudKit to read or write private data (or to write in the public database) the user will have to be signed in to iCloud on their device. If they are not, they'll not have a great experience, and things won't work. In this episode we'll check the account status before trying to save a record in CloudKit. We'll also respond to the no…
…
continue reading
The first episode in a new series on CloudKit, here we see how to setup our project to use CloudKit as well as how to create and save our first record.
…
continue reading
In this episode I am joined by Soroush Khanlou. Together we pair up to implement the Poker Hands Kata. We start off by parsing the raw string input into structured types, complete with tests.
…
continue reading
In this free episode, we take a look at a core Swift 2 feature: Optionals. Unlike Objective-C, where nil is considered a no-op, in Swift nil is specifically recognized by the compiler, which forces you to handle cases where nil might be present in a variable.
…
continue reading
In this free episode, Ben explores Swift 2 functions, how argument labels work, returning tuples, the guard clause, as well as extending behavior on core types.
…
continue reading
In this episode we take a look at Swift 2's basic types such as Int, Double, Bool, Array, and Dictionary. This episode is part of a series covering Swift 2 from a beginner's perspective.
…
continue reading
Continuing our build out of Road Trip DJ, this time I focus on the music player, and keeping the play/pause button in sync on UIToolbar, which proves to be more difficult than it should be.
…
continue reading