Side Project Spotlight: Recent Episodes

Philly CocoaHeads Association

PhillyCocoa Presents Side Project Spotlight is a podcast for app builders, documenting the process of producing real apps for the Apple App Store.

View Details

This week Kotaro pods solo to introduce the concept of design systems, especially as they apply to mobile development. This is a topic we will revisit once the Trio can gather together once more and this episode will act as the foundation for those future discussions.## Topics Discussed:- Introductions- What is a “design system” - Figma's definition - https://www.figma.com/blog/design-systems-101-what-is-a-design-system/ - Definition: - Tokens - Color (light/dark) - Corner radius - Dimensions - Fonts name/sizing/weight - Animation - Assets- What are they useful for - Consistency thru-out the product(s) - Faster time to market changes - May good for white label apps- How are they implemented for SwiftUI - SwiftUI implementation - https://www.interaction-design.org/literature/topics/design-systems - Packages - Asset Folder - Structs/Enums - SF Symbols- What are the drawbacks - Complicated setup with all the state holders needing to be in constant communication. - Can get overly complex with everyone waiting on the other to finish their work - Once implemented. It can be very rigid to deal with maintaining order when individual stakeholders demand their part to be special. - Can be highly opinionated or too generalized depending on implementation- One More Thing... - AzamSharp Workshops - https://azamsharp.school/workshops.htmlIntro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio discuss the state of the tech job market, especially for Apple platform developers. We touch on all manner of topics from how hiring practices are broken, to practical tips for new grads, to the utility of side projects, future hot platforms, and of course the "AI" question. There is a lot of good stuff in this episode. Enjoy!

Topics Discussed:

  • Introductions

  • Job Market Vibe Check

  • Junior Developers

  • Hiring Practices Are Broken

  • Developer Demand Will Increase

  • Apple Platforms Ever More Functional

  • Tangent: Our Drexel Experiences

  • Recent College Graduates

  • Mohammad Faani’s Mention in iOS Dev Weekly

  • https://iosdevweekly.com/issues/670?m=web#nDJBq0q

  • Explore Tech Stacks

  • Kotaro the Mercenary

  • Utility of Side Projects

  • Consultant Agencies

  • Tying Things Together

  • Crossing the Platforms

  • The “AI” Question

  • Steve Yegge’s Article: “The Death of the Junior Developer”

  • https://sourcegraph.com/blog/the-death-of-the-junior-developer

  • Kotaro’s Positive Ending…The Purge!?

  • The Wrap-Up & One More Thing

  • https://azamsharp.school

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio is back from celebrating America to talk about Apple's horribly named "predictive code completion" in Xcode 16. Kotaro tries to use it with some interesting results and we compare Apple's current implementation with other similar products like Microsoft's Intellicode and contrast it with something like Copilot or Apple's forthcoming Swift Assist product. We also engage in an interesting discussion about when you should or should not use these code generation tools.

Topics Discussed:

  • Introductions

  • Kotaro installs macOS 15 beta

  • Kotaro tries “predictive code completion” in Xcode 16

  • Steve’s experience with Intellicode in Visual Studio

  • DocC generation with Copilot in VS Code

  • Generating unit tests with Copilot

  • When and when not to use these tools?

  • Future experiments

  • Wrap-up

  • PhillyCocoa.org

  • One More Thing

  • AzamSharp.school

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio concludes our WWDC24 trilogy by discussing the vibes and themes we saw at this year's conference before ending with our picks for our favorite videos from the week. Links in the show notes!

Topics Discussed:

  • Introductions

  • WWDC Vibes

  • Swift / SwiftUI All the Things

  • V isionOS is Not Dead

  • Designers are No Longer in Charge?

  • SF Symbols 6 Talk

  • “Spatial Computing” is the Future

  • Quicklooks Talk

  • Shaders

  • Create / Optimize 3D Assets

  • Game Development Skills

  • “AI” & Siri Integrations

  • App Intents

  • Our WWDC24 Video Picks

  • Kotaro:

  • Meet the Translation API

  • https://developer.apple.com/wwdc24/10117

  • Demystifying SwiftUI Containers

  • https://developer.apple.com/wwdc24/10146

  • Design great visionOS apps

  • https://developer.apple.com/wwdc24/10086

  • *Enhance your UI animations and transitions

  • https://developer.apple.com/wwdc24/10145

  • *Create custom visual effects with SwiftUI

  • https://developer.apple.com/wwdc24/10151

  • Steve:

  • Migrate your app to Swift 6

  • https://developer.apple.com/wwdc24/10169

  • Xcode Essentials

  • https://developer.apple.com/videos/play/wwdc2024/10181/

  • Bring your app’s core feature to users with App Intents

  • https://developer.apple.com/wwdc24/10210

  • Meet the next generation of CarPlay architecture

  • https://developer.apple.com/wwdc24/10111

  • Aaron:

  • Meet AccessorySetupKit

  • https://developer.apple.com/wwdc24/10203

  • Go small with Embedded Swift

  • https://developer.apple.com/wwdc24/10197

  • Design advanced games for Apple platforms

  • https://developer.apple.com/wwdc24/10085

  • Port advanced games to Apple platforms

  • https://developer.apple.com/wwdc24/10089

  • The Wrap-Up & Jokes

  • https://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio convenes the night after the Keynote to discuss some of the highlights from this year's WWDC including "Apple Intelligence," UI animations, SwiftData improvements, Swift Testing, iPhone mirroring, and more!

Topics Discussed:

  • Introductions

  • Apple Intelligence

  • Widgets Everywhere

  • Zoom Transitions & Other Updates

  • SwiftData

  • SwiftUI Views @MainActor

  • Xcode Tabs Now Make Sense!

  • SwiftUI Previews

  • Swift Testing

  • iPhone miring on macOS

  • Finally…

  • Passwords.app

  • Tap to Cash

  • iPad Calcula tor App / Math Notes

  • Wrap-Up & One More Thing…

  • https://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio discuss WWDC24 rumors and wishlists in advance of what feels like the biggest Apple conference in years. Stay until the end to hear our WWDC Bingo Card items and our guesses for how many times the acronym "AI" will be spoken during the keynote with Aaron making the most intriguing guess.

Topics Discussed:

  • Introductions

  • Developer Conference Season

  • Year of “AI”

  • Microsoft Recall Feature

  • Copilot button

  • Apple has already been using “AI”!

  • CoreML

  • Object detection

  • Vision

  • Hand gesture

  • Photo identification

  • Text-to-Speech

  • Siri!

  • MacRumors WWDC24 Rumors!

  • https://www.macrumors.com/roundup/wwdc/

  • Developer Wishlist

  • “AI” code writing in Xcode

  • SwiftData Improvements

  • VisionOS improvements

  • Siri Shortcuts Integration

  • Widgets in VisionOS

  • Bingo Card Items

  • Arc Browser Sherlocked

  • Widgets for VisionOS

  • VisionOS 2.0 (not 1.5)

  • Trello Sherlocked

  • New game engine

  • of times “AI” spoken

  • Kotaro - 20+

  • Aaron - 1 single time

  • Steve - 50+

  • Wrap-Up & Jokes

  • https://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio discuss the new M4 iPad Pros, both the updates and the use cases. Who are these devices for and do the new models really represent the biggest update in the iPad lineup in years? Plus, Kotaro teases a new game to be built with Godot.

Topics Discussed:

  • Introductions

  • New iPad Pros

  • What are iPads useful for?

  • Pencil Pro updates

  • What Nobody Else Told You About Tandem OLED and M4! (Snazzy Labs)

  • https://youtu.be/3moprE5S3Qc

  • Kotaro teases a new game to be built with Godot

  • https://godotengine.org

  • Killer Klowns from Outer Space

  • https://www.imdb.com/title/tt0095444/

  • Wrap-Up & Jokes

  • https://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Joe Cieplinski returns to the pod to talk about his latest app, The Last Word, a journal app for tracking your personal cocktail journey. Built using the latest iOS 17 technologies from SwiftUI to SwiftData with a cross-platform design that includes visionOS, our discussion touches on many topics that will be of interest if you are starting your own greenfield side project app.

Topics Discussed:

  • Introductions / Welcome Joe Cieplinski

  • The Last Word in Cocktails app

  • https://havethelastword.app/

  • iOS 17, SwiftUI, SwiftData, VisionOS

  • Story behind the name

  • Opinionated Design

  • Custom Artwork

  • App Store Optimization

  • App Store Subscription

  • RevenueCat article about using StoreKit 2

  • https://www.revenuecat.com/blog/engineering/ios-in-app-subscription-tutorial-with-storekit-2-and-swift/

  • Meet StoreKit for SwiftUI WWDC23 Video

  • https://developer.apple.com/videos/play/wwdc2023/10013/

  • App Store Analytics

  • AppFigures

  • https://appfigures.com

  • VisionOS Apps / Development

  • MKBHD Disney VR floor video

  • https://youtu.be/1KEtxTQUzxY

  • Future plans for The Last Word

  • Where to find Joe

  • Mastodon

  • https://mastodon.social/@jcieplinski

  • Web

  • https://joec.design

  • Get the App!

  • https://havethelastword.app

  • Wrap-Up

  • https://phillycocoa.org

  • One More Thing…

  • WWDC wishes from Joe

  • New PencilKit

  • SwiftUI photo capture & other updates

  • SwiftData updates

  • VisionOS Window Management

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This episode is all about SwiftData. Steve has started using it a lot lately and talks about his experience so far trying to sync a bunch of API data into a SwiftData model as well as using a Swift Actor to control write access to the data container in a thread-safe manner. There are some really useful links in the show notes this week. You'll want to bookmark them all!## Topics Discussed:- Introductions- Steve’s Real World SwiftData Experience…so far - Maintaining a local copy of server data - https://developer.apple.com/documentation/swiftdata/maintaining-a-local-copy-of-server-data - Practical SwiftData: Building SwiftUI Applications with Modern Approaches - https://fatbobman.com/en/posts/practical-swiftdata-building-swiftui-applications-with-modern-approaches/ - Concurrency of SwiftData | Donny Wals - https://www.youtube.com/watch?v=VG4oCnQ0bfw - Observable Architecture: Structural Identity | PointFree - https://www.pointfree.co/episodes/ep260-observable-architecture-structural-identity - Populating SwiftData from Server (ETag) Explained | Azam Sharp - https://youtu.be/f_Amhej1bkM- Tangent: Rendering HTML in SwiftUI with a WebView - Wrap-Up & Jokes - https://phillycocoa.orgIntro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Jumping off from one of our topics last episode, this week we are tackling the idea of working a 9 to 5 with a side project. What are the challenges? How do you maintain motivation? What time management strategies work? Are there any tools that can help you stay organized? Steve has some concrete tips based on his recent experience trying to juggle side projects and a day job while maintaining a healthy lifestyle. Kotaro and Aaron provide the perspective of developers working a traditional in-office, corporate job and the challenges that creates for side project success. Along the way, we discuss how to make a website using Swift, the WWDC24 announcement, and Kotaro shares his latest insights about Reality Composer Pro. There are some good tips, tools, and techniques in this episode for those trying to find a healthy balance while working towards that side project dream.

Topics Discussed:

  • Introductions

  • Using Swift to Build a Website

  • https://github.com/twostraws/Ignite

  • https://github.com/johnsundell/publish

  • Flutter vs React vs Native

  • News: WWDC24 Announced

  • Fun With Reality Composer Pro

  • 9 to 5 Lifestyle with a Side Project

  • Four Thousand Weeks book (not an affiliate link)

  • https://www.amazon.com/Four-Thousand-Weeks-Management-Mortals/dp/0374159122

  • Sleep++

  • https://sleepplusplus.app

  • Wrap-Up & Not a Sponsor

  • https://AzamSharp.school

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Kotaro has been doing the 9 to 5 thing for a while now and he's been thinking about his days as a consultant and what it means in 2024 to "go indie." The trio discuss some of the options they see in the present day including consulting or SaaS, making educational content, traditional app or game development, whether the Vision Pro gold rush might be the most attractive option and more. Plus, Aaron finally tries a Vision Pro and Kotaro waxes nostalgic for his former indie app, "Dividend Calc." This is a great episode for anyone looking to "go indie" in 2024.

Topics Discussed:

  • Introductions

  • Indie Opportunities

  • Our last discussion on this topic: #40: “Going Indie”

  • https://podcast.phillycocoa.org/episodes/40-going-indie

  • Consulting or SaaS Business

  • Bombing Brain Interactive

  • https://www.bombingbrain.com/

  • Release Notes Podcast

  • https://releasenotes.tv/

  • RelaNet

  • https://relanet.com/

  • Educational Content / Workshops

  • AzamSharp

  • https://azamsharp.school

  • PointFree

  • https://www.pointfree.co

  • Design+Code

  • https://designcode.io

  • Indie App Success

  • https://getslopes.com/

  • Indie Game Success

  • 9 to 5 with a Side Project

  • Vision Pro Gold Rush!

  • https://sandwich.vision

  • Tangents & Our “Going Indie” Strategies

  • Tangent: SPM Problems

  • Tangent: Aaron tried a Vision Pro!

  • Tangent: Dividend Calc History

  • Wrap-Up & Jokes

  • https://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

On the day the huge iOS 17.4 update drops, the Trio come together to talk about apps we love from budgeting software to productivity to 3D design and even fitness. The Apple ecosystem is full of amazing apps. Sometimes it's good to take a break, smell the roses, and gain some inspiration.

Topics Discussed:

  • Introductions

  • Breaking News

  • iOS 17.4

  • Xcode 15.3

  • Other platforms are still in RC

  • https://developer.apple.com/documentation/financekit

  • Jon Prosser’s Vision Pro Review

  • https://youtu.be/krpbAMJlLTc

  • Apps We Love

  • YNAB (Steve)

  • https://www.ynab.com

  • RIP Mint (Kotaro)

  • https://mint.intuit.com

  • Training Peaks (Aaron)

  • https://www.trainingpeaks.com

  • OmniFocus 4 (Steve)

  • https://www.omnigroup.com/omnifocus

  • Trello & GitHub Projects (Kotaro)

  • https://trello.com

  • https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/quickstart-for-projects

  • Sketch (Kotaro)

  • https://www.sketch.com

  • Strava (Aaron)

  • https://www.strava.com

  • Bike Outliner (Steve)

  • https://www.hogbaysoftware.com/bike/

  • Modo (Kotaro)

  • https://www.foundry.com/products/modo

  • Zed (Kotaro)

  • https://zed.dev

  • Zwift (Aaron)

  • https://www.zwift.com/home

  • Concluding Thoughts

  • Wrap-Up & Jokes

  • https://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week the Trio follow-up on some visionOS ideas before delving into Kotaro's experience learning Flutter with an assist from Github Copilot. We round out the show discussing some rumors of new "AI" tools coming at the next WWDC.

Not a Sponsor: https://azamsharp.school/workshops

Topics Discussed:

  • Follow-up: Exploring visionOS Ideas

  • Kotaro’s Github Copilot experience

  • app.quicktype.io

  • Learning Flutter with Github Copilot

  • https://docs.flutter.dev/data-and-backend/state-mgmt/options

  • Rumors of Generative AI at WWDC

  • AI in iOS 18 / iPhone 16 (Max Tech)

  • https://youtu.be/wtwW5IoIOvs

  • Code completion improvements

  • Test generation

  • Siri Intent improvements

  • Final thoughts about Copilot

  • A good assistant for well solved problems

  • Helpful for learning new languages and frameworks

  • Wrap-up

  • Not a Sponsor: https://AzamSharp.school/workshops

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

We have experienced the Apple Vision Pro for ourselves, well Kotaro and Steve have, and we have thoughts! Tune in to hear about Steve's Apple Store demo experience, what was impressive and what was surprisingly not. Then a digression about the dystopian nightmare this Brave New "Spatial Computing" world may be about to unleash upon us and our children before a discussion about trying to build software now that hardware is available. Finally, will we actually be buying our own Vision Pros to become true Vision Bros? You'll have to listen until the end to find out!

Topics Discussed:

  • Introductions

  • Steve’s demo experience

  • Dystopia Fears

  • Building for Vision Pro

  • Will we buy Vision Pros?

  • Wrap-Up & Jokes

  • https://phillycooca.org

  • Not a Sponser: AzamSharp Workshop

  • https://azamsharp.school/workshops

  • Physics in RealityKit Video

  • https://youtu.be/zZlJZo6GR2w

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The long awaited launch of Vision Pro is here and the Trio are in a festive mood. In this episode, we have a fun time reviewing some of the hands-on impressions and speculate about the kinds of apps we will see in this first generation of "spatial computing." Most launch apps will probably be iPad apps and there have been some salty takes on the InterWebs about streaming platforms not supporting the device on day one, but we think they probably have some good reasons to be cautious. Kotaro brings up the immersion possibilities of haptics and Spatial Audio. Plus, we talk about a variety of confirmed and speculative app categories that may be coming to the platform from Fruit Ninja to DJ-ing without records to, dare we dream, DDR? Plus, we think some kinds of live events may be excellent targets for Vision Pro. Finally, the digital eyes are still goofy and Steve may want to get his own eyes checked before he schedules a demo. This episode is a breezy, fun, nerdy, good time. Afterwards, why don't you come over to the PhillyCocoa Slack and keep the party going with your own impressions, link can be found at phillycocoa.org/slack.

Topics Discussed:

  • Introductions

  • MKBHD impressions

  • iPad Apps & Opting-Out

  • Haptics

  • Spatial Audio

  • AR/VR use cases

  • Simulated training

  • Aaron’s packing list app

  • DDR?

  • Fruit Ninja

  • DJ app

  • SharePlay collaborative apps

  • Live Events

  • Best seats in the house

  • Quarterback cam

  • Low Hanging Fruit

  • Monitors for days

  • Is “Spatial Computing” a new category?

  • Prescription Lenses

  • The Eyes are still goofy

  • The Wrap-up & Jokes

  • http://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio has returned from their holiday break to talk about 2024 developer resolutions! Aaron wants to build an "AI" model and interact with hardware. Steve is looking at backend stuff for a change of pace. Kotaro is talking himself into building a visionOS game. There is also some good discussion of some "AI" application ideas and tools we've been using. With the Vision Pro on the immediate horizon, we also discuss how much we should invest in the platform if we aren't buying one of the launch devices. It's a nice easy introduction to 2024 with lots more to come. Here's to a new year in our developer journeys! Now, let's get to work!

Topics Discussed:

  • New Years Eve Experiences

  • 2024 Developer Resolutions

  • Aaron

  • Ship something!

  • Play with some hardware that connects to app where the hardware is the focus. Move beyond Xcode.

  • Mojo language / AI experimentation

  • “AI” Ideas Discussion

  • Stephen

  • Ship a small side project to the App Store

  • Backend dev for JenkintownArtsGarage.com

  • Build a revenue-generating business

  • visionOS experimentation

  • Kotaro

  • Fighting game mechanics with Godot engine

  • Get good at Procreate Dreams animation software

  • Use experience to build an iPad app

  • Learn how to make or at least read Metal shaders code

  • “Cool” visionOS stuff

  • The Wrap-up & Jokes

  • https://phillycocoa.org

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

In this final episode of 2023, the trio dive into the topic of dependencies! What kinds are there? How do you manage them? What are some examples? This episode is jam packed with great advice and a ton of useful links (see below!) to help you think about the tradeoffs of different kinds of dependencies as well as concrete advice on how to write cleaner code that your future self will appreciate. Have a great holiday season and a happy new year as you embark on your own developer journey into 2024! The trio will return in January!

Topics Discussed:

  • Introductions

  • Dependencies Intro

  • Metal shaders

  • Godot vs Unity

  • https://godotengine.org

  • https://unity.com

  • Platform Dependencies

  • Godot/Unity

  • Vendor like Apple/Google/Windows/etc.

  • Library Dependencies

  • Analytics

  • Infrastructure Dependencies

  • Linode

  • Buddy Build

  • OpenAI

  • Managing Dependencies

  • Platform alternatives

  • How much work to migrate?

  • Noclip Documentary: Remaking Demon’s Souls

  • https://youtu.be/hCBJ2fiiUXk

  • Emulators

  • Getting updates “for free” when you use platform provided controls

  • Programming Techniques

  • Protocol Oriented Programming

  • Themes

  • Pragma Conf 2023 - Token Driven UI Development

  • https://youtu.be/YvAkyiy6B3g

  • Atomic Design by Brad Frost

  • https://atomicdesign.bradfrost.com

  • Protocol composition for dependency injection by Krzysztof Zabtocki

  • https://www.merowing.info/using-protocol-compositon-for-dependency-injection/

  • Protocol Witnesses by Point-Free

  • https://www.pointfree.co/collections/protocol-witnesses

  • Dependencies Library: https://github.com/pointfreeco/swift-dependencies

  • Protocol Witnesses Introduction by NSScreencast

  • https://nsscreencast.com/episodes/486-codable-witnesses-1

  • SwiftData management

  • Dependency management tips

  • Don’t be too dependent

  • Kotaro’s story about XLForm

  • Think carefully about letting your “moat” be dependent on a third-party API

  • e.g. DividentCalc

  • What are your options for platform changes?

  • Fork/mirror third-party SPMs and Pods

  • https://github.com/apple/swift-evolution/blob/main/proposals/0219-package-manager-dependency-mirroring.md

  • https://www.sonatype.com/products/sonatype-nexus-oss-download (cocoapods)

  • Off Topic: Auto generating acknowledgements

  • SwiftyStack

  • https://www.swiftystack.com

  • AcknowList

  • https://swiftpackageregistry.com/vtourraine/AcknowList

  • Wrap-Up & thanks!

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio convene for the penultimate episode of 2023 to discuss the latest presentations by OpenAI and Github and the way generative "AI" tools may be enabling the dream of a "universal" UI for computing (for both end-users and developers) that is more natural and contextual than ever before. Stay until the very end for a short after show on the strange, but super useful, ContentUnavailableView. As always, check the show notes for all the links!

Topics Discussed:

  • Introductions

  • Exploring Side Project Directions

  • visionOS uncertainty without hardware

  • Cool particle effects: https://x.com/JamesSwiney/status/1721136324953174092

  • Metal shaders in SwiftUI

  • Color effect

  • Distortion effect

  • Layer effect

  • The “Universal” UI

  • Hu.ma.ne AI pin

  • Release video: https://vimeo.com/882968794

  • Photoshop generative “AI”

  • OpenAI “GPTs”

  • OpenAI Keynote: https://www.youtube.com/live/U9mJuUkhUzk

  • Universal Translator Demo

  • Github Copilot’s “universal” developer UI

  • https://youtu.be/NrQkdDVupQE

  • https://myfirstcommit.com

  • What about Apple?

  • An opinion on how to build “AI” products by using it for as little as possible

  • https://www.builder.io/blog/build-ai

  • GitLab Duo

  • https://about.gitlab.com/gitlab-duo/

  • Wrap-Up & Jokes

  • After Show: ContentUnavailableView

  • https://swiftwithmajid.com/2023/10/31/mastering-contentunavailableview-in-swiftui/

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio are riding a sugar high from Halloween and ready to discuss Apple's "Scary Fast" event. Online controversy erupted over the "Shot on iPhone" tag at the end. The incorporation of an iPhone into a legitimate "professional" workflow and the resulting hoopla got us thinking about what other opportunities are afforded developers and creatives on Apple platforms in this new Apple Silicon/USB-C/Soon to be VisionOS era! From filmmaking to game development to "AI" model training and more, we look at some of the things you can do now that you couldn't do, or do nearly as well, a few short years ago. Plus, amazing programmer dad jokes and Steve and Kotaro propose Aaron tackle the question: "Hotdog or sausage?" It's a fun episode with a lot to digest. Give us your thoughts about opportunities on the PhillyCocoa Slack!## Topics Discussed:- Introductions - Podcast editing (logic vs Descript) - Scary Fast Discussion - Opportunities for apps - Opportunities for content creation - “Shot on iPhone” - Demonstrating what “Pro” means - Social Media Debate - Like the iPad “Pro” debate - M3/A17 Gaming Opportunities - Apple TV? - Indie dev “slow roll” strategy - Game Porting Toolkit - M3 GPU changes- Baby Mac Developers - SwiftUI cross platform development- Layoffs and Opportunities - AI Hype Cycle- Mojo Tease - Superset of Python from Chris Latner and Modular - Make AI tools more optimized - Dev tools released for Mac- The Wrap-Up & Programmer Dad JokesIntro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week the Trio revisit the topic of "AI" by discussing some of the tools and workflows they have tried out lately. There is some follow-up to last episode's topic of The Composable Architecture, including Steve talking about a side project idea that he may use TCA to implement. Plus, talk of the job market, concurrency in Swift, and Meta Glassholes! It's a long episode, but we think it's pretty interesting. Enjoy!

Topics Discussed:

  • Introductions

  • Follow-up

  • The Composable Architecture

  • https://github.com/pointfreeco/swift-composable-architecture

  • https://github.com/pointfreeco

  • Steve’s TCA Side Project Ida

  • Job Market Talk

  • Hacker News Hiring Trends*

    • We incorrectly referred to this as the Stack Overflow trends page, but it was actually Hacker News! We apologize for the confusion. The data is still good!
  • https://www.hntrends.com

  • Concurrency Talk

  • Steve’s Side Project Idea Cont…

  • Keyboards

  • Fav10 app

  • https://tomatoboy.co/fav10

  • Revisiting “AI” Tools & Workflows

  • Kotaro’s Vanilla Prooompting

  • Kotaro’s Metal Shaders in SwiftUI

  • Arc Max “AI” tools

  • Photos app search

  • Animation assistant?

  • Photoshop AI tools

  • Pixel 8 Photo tools

  • The context a photo is in matters

  • AI tools effect on art making process & market

  • Last Minute News

  • visionOS labs in NYC!

  • Meta Glassholes

  • https://www.theverge.com/23920102/meta-quest-3-in-public-privacy-recording-glassholes

  • The Wrap-Up & Jokes

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio are together once more! This week, Steve and Kotaro discuss Steve's most recent HTTP API Client design, some of which was inspired by Rob Napier's "Generic Swift" talk from several years ago. Then, Steve almost loses his voice trying to poorly explain The Composable Architecture (TCA), but does go into some depth on the pieces and ideas he has applied to real world projects. It's mostly Steve talking this week, but it's pretty interesting stuff. Be sure to check the show notes for links so you can dive deep into these topics yourself!

Topics Discussed:

  • Pre-Show: AI Podcasters

  • Introductions

  • PhillyCocoa Updates

  • HTTP API Client Design Discussion

  • Steve's pseudocode to illustrate this discussion

  • https://gist.github.com/stolton/86ce14eb7dcf2b45d04532b84ef37b04

  • Generic Swift: It Isn’t Supposed to Hurt - Rob Napier

  • https://youtu.be/_m6DxTEisR8

  • The Composable Architecture, Poorly Explained

  • https://github.com/pointfreeco/swift-composable-architecture

  • https://www.pointfree.co/

  • Swift-Testing project

  • https://github.com/apple/swift-testing/tree/main

  • NSScreencast - A Look at the New Swift Testing Framework (subscription required)

  • https://nsscreencast.com/episodes/565-swift-testing-framework

  • Kotaro’s Object Capture 3D Mapping Side Project Idea

  • Object Capture

  • https://developer.apple.com/augmented-reality/object-capture/

  • CloudKit

  • https://developer.apple.com/icloud/cloudkit/

  • Create ML

  • https://developer.apple.com/documentation/coreml

  • The Wrap-Up

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Kotaro hosts solo one more time this week to briefly talk about "secret sauces." No, not the kind you use on nuggets! It's that ineffable quality of an app that makes you love it vs those annoying anti-patterns often prevalent in apps created just to catch the wave of a hype cycle. Kotaro wants to make apps he loves and that you might love, too! This is a short, but practical and personal essay celebrating some apps that found their "secret sauce."

Topics Discussed:

  • Introductions

  • iOS 17 is out

  • Xcode 15 is out!

  • To continue work on visionOS keep Xcode 15 Beta 8 around.

  • New iPhones out. Dynamic Island is available across the board.

  • What is the secret sauce in an app that makes you love it?

  • Hype cycle

  • Generative AI

  • AR/VR

  • Crypto

  • How can I make a cool app with these? Lots of bad ideas

  • Personal favorites:

  • Modo

  • SoundStudio

  • Sketch

  • Procreate (also Procreate Pocket)

  • Not A Sponsor: GetClipDish.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Kotaro is solo this episode due to scheduling issues around the end of summer holiday festivities. But, fear not, this episode is short, but jam packed with advice about opportunities for your next big app as we move into the iOS 17/visionOS world. Widgets, AI, visionOS, Macros, and more! There are so many cool new features in this next generation of updates that can lead to brand new opportunities for success in your developer journey...if you read the tea leaves.

Topics Discussed:

  • Introductions

  • Episode 50

  • visionOS status and personal

  • Xcode Beta 8!?

  • Reading Apple’s tea leaves and looking for opportunities for your next big app.

  • Obvious leaves:

  • Widgets Everywhere

  • AI in plain site

  • CoreML/CreateML make it easier to consume and create custom models.

  • visionOS

  • ARKit/RealityKit

  • SharePlay

  • Freeform as a example has an app that came out of nowhere but is now the key app to demonstrate what Apple intends for SharePlay to be utilized.

  • Not-so obvious ones:

  • DocC

  • Better documentation and deeper long term integrations

  • SwiftData

  • Easier to implement and work with CloudKit sync

  • Macros

  • Easier to wrap complex templates inside a macro

  • Interactive Widgets

  • Standby mode becomes more interesting

  • CarPlay might be more useful

  • Implementation of visionOS version

  • Wrap-Up

  • One More Thing: GetClipDish.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio gather to hear about Steve's Baltimore e-scooter adventure and the app experience. Then, a brief discussion of Xcode Beta 7 before diving into inspiring visionOS demos found on social media. Multiple bad app ideas are entertained this week, including one based on a classic Kids in the Hall sketch. Kotaro goes into some detail on how hand gesture recognition works today and how it might work in the future while Aaron describes our dystopian nightmare future of inescapable avalanches of ads in immersive environments. Ending on a positive note, the Trio wonder if "spatial computing" could usher in a new era of developer experiences. One More Thing...GetClipDish.com!

Topics Discussed:

  • Introductions

  • Steve’s Baltimore e-scooter adventure

  • Government apps have gotten better!?

  • Xcode Beta 7!?

  • visonOS Inspiration is Out There!

  • Kotaro follows some Japanese devs on X

  • Yasuhito Nagamoto https://github.com/ynagatomo/VOClimateSpiral

  • Hattori Satoshi https://github.com/satoshi0212/visionOS_30Days

  • Bad App Idea: Squishing Heads! (Like Kids in the Hall)

  • https://knowyourmeme.com/memes/im-crushing-your-head

  • Hand gesture recognition

  • An Avalanche of Ads

  • Long Long Man https://www.youtube.com/watch?v=6-1Ue0FFrHY

  • Will visionOS lead to new development experiences?

  • Wrap-Up

  • One More Thing: GetClipDish.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio continue exploring visionOS despite ongoing beta challenges. Steve updates his experiment with a little more functionality while Kotaro scans a "mutant peach" into a 3D object, and Aaron is stymied in his physics experiments due to inadequate Simulator support. Kotaro provides some insights into what game developers may find familiar and frustrating if they decide to venture into visionOS development before discussing some "hot shader action" coming to SwiftUI in iOS 17. Finally, Bad App Ideas returns, revisiting "Portal Pigeons," and we give a shout-out in our "Not a Sponsor" segment to Happy Scale!

Topics Discussed:

  • Breaking Beta News:

  • Xcode 15 Beta 6

  • visionPro Beta Restrictions

  • visionOS Experiments Progress & Challenges

  • Steve updates his toy photo demo app

  • Kotaro has issues with 3D objects

  • Aaron physics experiments

  • Kotaro’s “Mutated Peach”

  • iPad or iPhone Pro (LIDAR) used to scan an object to create a 3D model

  • Kotaro scans a “mutated peach”

  • Use Object Capture demo app from Apple

  • https://developer.apple.com/augmented-reality/object-capture/

  • Get a USDZ asset that can be used in RealityKit

  • Reality Composer Pro & Package Oriented Programming

  • Assets contained in an SPM library that you import into your app

  • Game Developers & visionOS

  • Hot Shader Action

  • https://www.hackingwithswift.com/quick-start/swiftui/how-to-add-metal-shaders-to-swiftui-views-using-layer-effects

  • https://www.shadertoy.com

  • Shader modifiers

  • Bad App Ideas

  • Portal Pigeons

  • One More Thing…

  • Not a Sponsor: Happy Scale

  • https://happyscale.com/

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio continue to suffer the Beta Blues, but Steve did do his pod homework this round and made a very janky visionOS prototype that lets you apply a pixelation filter to a photo! This leads into some good discussion of photo app features that would be appropriate on visionOS interspersed with some "bad app ideas," a digression about Share Play, and Kotaro & Aaron decide they want to build Cerebro! It's an easy-breezy episode, perfect for these hot summer days.

Topics Discussed:

  • visionOS Progress

  • Steve: Success with loading an image and applying a pixelate filter.

  • visionOS Photo App Ideas

  • Beta Blues

  • Reading the Apple Tea Leaves & App Ideas

  • Share Play

  • Next Steps

  • Steve: grid or ornament or picker

  • Kotaro: videos, windows, and geometry

  • Aaron: work with Kotaro

  • Bad App Ideas Throughout!

  • Pixelate the world!

  • Wrap-Up

  • Not a Sponsor: https://GetClipDish.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio are trying to run the visionOS sample apps, but broken Xcode betas are getting in the way! Undeterred, Kotaro leads a discussion on what you can learn via the four visionOS demo apps (if you get them running). Then, the trio speculates about the forthcoming dev kits, Steve brings up the movie Hackers (because it's awesome!), and we end the show with some truly "bad app ideas." We are taking baby steps into our spacial computing developer journeys!

Topics Discussed:

  • Beta cycle breakage!

  • The Four Apps & More

  • https://developer.apple.com/documentation/visionos/world

  • https://developer.apple.com/documentation/visionos/diorama

  • https://developer.apple.com/documentation/visionos/happybeam

  • https://developer.apple.com/documentation/visionos/destination-video

  • Learn about visionOS - https://developer.apple.com/visionos/learn/

  • Hello World - Introduce you to Windows, Volumes, Spaces

  • Happy Beam - Mixed immersive, ARKit for hand shape

  • Physics via ARKit

  • Meet ARKit for spatial computing - https://developer.apple.com/videos/play/wwdc2023/10082/

  • Diorama - 3D map to show shader stuff in a Volume

  • Destination Video - Multiplatform video playback app

  • SharePlay

  • Xcodes.app - manage multiple Xcode versions

  • https://github.com/XcodesOrg/XcodesApp

  • Dev Kits Coming Soon?

  • Work with Apple section on Developer site

  • Coming in July

  • VR Gaming Thoughts

  • VR Gaming in Hackers - https://www.youtube.com/watch?v=rQ7o3ziR5io

  • What is Vision Pro For?

  • Desktop metaphors

  • M2

  • iPad/iPhone apps

  • For Next Time

  • Hopefully run all these apps in beta 4!

  • Steve: Load an image and put a filter on it!

  • Kotaro: UI component exploration & PencilKit.

  • Aaron: ARKit physics (if it works in the beta)

  • Bad App Ideas (Gone Good?)

  • Book Shelf AR Cover Visualizer

  • visionOS Fart App

  • visionOS fire/ice hand beams

  • visionOS movie theater apps

  • visionOS tabletop card games

  • visionOS virtual telegram

  • Next Time:

  • Big corporation bad ideas

  • Wrap-Up

  • Not a Sponsor: https://GetClipDish.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio have had some initial hands-on time with the visionOS SDK and are ready to dive into a new development adventure. That's right, it's time to pivot! We think visionOS is a rare opportunity that should not be missed by Apple developers. Maybe it's a big nothing burger, maybe it'll be a new App Store gold rush, maybe somewhere in between, but the time to start exploring this new platform is now! In this episode, we talk about what we have already learned from the visionOS SDK before discussing some very rough prototyping ideas we want to use to start exploring this brave new Spatial Computing world.

Topics Discussed:

  • What’s up with PickleJarTodo?

  • Pivot to visonOS

  • Physical Dev Kit

  • Apple’s visionOS timeline

  • Knowledge and skills in this space good career wise

  • visionOS SDK Discoveries

  • RealityKit for rendering engine (no SceneKit!)

  • Windows/Objects anchor in real world

  • Windowed Apps

  • What’s the market?

  • Prototype Ideas

  • Work on interaction prototypes

  • Scan real world objects to create 3D models

  • Hand tracking, detect open/close fist

  • AV Player interactions

  • Photo editing/exploration/framer

  • Hang Photos on your wall

  • Portal based Item box

  • Portal based JIRA! LOL

  • Scan real paper notes and “fax” them

  • Magnetic Blocks

  • For Next Time

  • Pick a prototype that is SMALL

  • Steve: Window app, desaturate photo with basic editor controls

  • Kotaro: Hand gestures

  • Aaron: Something with 3D models/physics engine

  • Final Thoughts

  • Sound will be vital

  • The Wrap-up

  • GetClipDish.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio are joined by developer and educator, Mohammad Azam to discuss some of the big announcements from WWDC23. Topics include Swift Macros, SwiftData, app architecture patterns, server-side swift, and more! There are ton of great links in the show notes this episode, so be sure to check them out! When you are done, follow some of the links to Azam's courses and content. We have found his work to be very helpful in our own developer journeys and maybe you will, too!

Topics Discussed:

  • Welcome Azam!

  • Azam’s WWDC23 Highlights

  • Swift Macros

  • SwiftData

  • VisionOS

  • visonOS/Vision Pro

  • Swift Macros / Observable

  • SwiftData & App Architecture

  • Building Large-Scale Apps with SwiftUI: A Guide to Modular Architecture

  • https://azamsharp.com/2023/02/28/building-large-scale-apps-swiftui.html

  • Backyard Birds Sample Code (WWDC23)

  • https://developer.apple.com/documentation/swiftui/backyard-birds-sample

  • Food Truck Sample Code (WWDC22)

  • https://developer.apple.com/documentation/swiftui/food_truck_building_a_swiftui_multiplatform_app

  • Data Essentials in SwiftUI (WWDC20)

  • https://developer.apple.com/videos/play/wwdc2020/10040/

  • Server-Side Swift

  • Use Xcode for server-side development (WWDC22)

  • https://developer.apple.com/videos/play/wwdc2022/110360/

  • Vapor

  • https://vapor.codes/

  • Express

  • https://expressjs.com/

  • Machine Learning / CreateML

  • Azam’s CreateML Workshop Preview

  • Tabular Data

  • What’s a tomato?

  • ChatGPT

  • Azam’s Content / Production Tips & Tricks

  • Twitter: https://twitter.com/azamsharp

  • Web: https://azamsharp.com/

  • YouTube: https://www.youtube.com/channel/UCKvDySsrOVgUgRLhWHeyHJA

  • Udemy Courses: https://www.udemy.com/user/mohammad-azam-2/

  • Bonus: Azam’s Developer Advice

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Twas the pod before WWDC and the trio decided to enjoy themselves with a little speculation about what gifts Apple will bestow on June 5, 2023. Most of the discussion centers on speculation about the "mythical goggles" rumored to be released along with a brief tangent on widgets, some thoughts on whether Apple will even utter the acronym, "AI," during the conference, and we end with a nerdy grab bag wishlist of features we hope to see added to Apple's platforms this year. Don't miss the Not a Sponsor segment this week as Steve demonstrates that the Clip Dish devs' prompt engineering is second to none!

Topics Discussed:

  • WWDC23 is Almost Here

  • Keynote

  • State of the Union

  • Apple Headset / xrOS

  • Name

  • External Screen

  • Use Cases

  • Stage Manager UI?

  • Content Creation / Art

  • Games

  • Hardware SDK Possibility

  • Developer Tools

  • Widgets All the Way Down

  • Apple and AI

  • Not a Sponsor: GetClipDish.com

  • Nerdy Grab Bag Wishlist

  • SwiftData

  • ScrollViewReader improvements

  • PencilKit improvements

  • CarPlay next-gen

  • Under the Radar - Preparing for WWDC 2023

  • https://apple.co/43xRlJc

  • Wrap-up

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, the trio is joined by our good friend and Philly CocoaHeads alum, Joe Cieplinski. Joe is an accomplished designer who transitioned into iOS development and has built multiple apps for iPhone and iPad. With the recent announcement of Final Cut and Logic on iPad, it feels like a new era of pro iPad apps may be on the horizon and there is no one better to talk to about iPad apps than Joe. In this wide-ranging discussion, we touch on Joe's journey from teacher to designer to developer of awesome iOS apps, his former podcast and sometimes current conference, Release Notes, plus a whole lotta iPad talk. What makes iPad a unique computing device? What kind of apps thrive? Has Apple lost its way navigating the path between simplicity and power with iPadOS? What do we hope to see at WWDC this year? All that and much more is covered in this very fun conversation between old friends. Enjoy!

Topics Discussed:

  • Welcome Joe Cieplinski

  • How we know Joe

  • Teleprompt+

  • Joe’s iOS journey

  • Joe’s apps

  • Polywork

  • Release Notes Podcast

  • https://releasenotes.tv

  • Release Notes Conference

  • CocoaLove Segue

  • Kotaro’s Introduction to the iPad

  • Joe, Champion of the iPad

  • Photoshop on iPad is interesting

  • SF Symbol Creation App Idea

  • iPad is Computing for “Normal” People

  • Is iPad Getting Too Complicated?

  • Final Cut & Logic on iPad

  • Pro iPad app market

  • What makes iPad software good?

  • Where are the opportunities?

  • iPad & Apple AR development

  • WWDC23 Wishlist

  • “Underwear people podcast”

  • Independence

  • https://podcasts.apple.com/us/podcast/independence/id1238555061

  • Multi-app audio routing

  • Apple Watch independence

  • SwiftUI improvements to replacements for UIKit controls

  • Swift Core Data

  • Foundation in Swift 5.9

  • Where to find Joe!

  • https://micro.blog/joec

  • https://joecieplinski.com/

  • https://boulderos.com/

  • Every third Wednesday, 7pm - 9pm in Boulder, CO

  • Upcoming WWDC watch party

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, the trio celebrates their podcast mid-life crisis by discussing a concept coined by Daniel Steinberg in a 2022 talk, "Packaged Oriented Programming." How do you organize your app using Swift Package Manager packages? What are the benefits and costs? There is also some discussion on dealing with JSON API changes, using Codable vs DTOs, and strategies for caching external package dependencies for the longterm. Be sure to stay until the end where Kotaro engages in some live "prompt engineering" with Chat GPT that generates some impressively bad jokes.

Topics Discussed

  • Mid-life crisis episode

  • Are we buying the rumored AR headset?

  • PickleJarTodo / LazyGrids are cool!

  • Package Oriented Programming

  • Previews and Package Oriented Programming

  • Daniel Steinberg

  • CocoaHeadsNL, Do iOS 2022

  • https://youtu.be/_5uBJeJVUm0

  • Why?

  • How?

  • How many frameworks per SPM?

  • Codable/Decodable/Encodable/DTO

  • Dealing with JSON API changes

  • Unit testing

  • Project organization

  • Circular dependencies

  • Assets/Resources

  • Apple Food Truck example

  • Caching SPMs for the future

  • https://www.sonatype.com/products/sonatype-nexus-repository

  • Swift Package Index

  • https://swiftpackageindex.com

  • Be mindful of importing dependencies

  • Wrap-Up

  • Chat GPT Prompting for Jokes!

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, Steve engages in a little "proompt engineering" with Bing, we bring back our Not a Sponsor segment to share how impressed we are with Clip Dish, and then we discuss the topic that all Apple dev podcasts must tackle at least once, "going indie." We focus on some of the logistics like whether you should use a company App Store account, how important it is to get an accountant, and ideas on revenue models, the special challenges of being an indie game dev, and end with some advice on getting started consulting. This is a perennial topic in PhillyCocoa and we only scratch the surface of the areas of discussion, but hopefully you'll get some utility from what we do discuss, especially if you are thinking of starting an indie app business or consultancy for the first time yourself.

Topics Discussed:

  • Introductions

  • “Proompt Engineering” with Bing

  • PickleJarTodo Update

  • SwiftUI Grid is cool!

  • Not a Sponsor: GetClipDish.com

  • Main Topic: Going Indie

  • Slopes

  • Fin Timer

  • RECaf

  • Going Indie Discussion

  • Consider a Company Developer Account (e.g. LLC)

  • Get an accountant!

  • Create separate bank account!

  • Understanding budget and runway!

  • Revenue timing

  • e.g. seasonal sticker packs

  • Revenue Models

  • One Time Purchase

  • In App Purchase

  • Subscriptions

  • Apple App Store Small Business Program

  • Focus on a project

  • What About Games?

  • Consulting

  • General Liability Insurance

  • One option is Hiscox, but look around based on your needs.

  • How much to charge?

  • Charge to your ability

  • Once you have your first gig, you can grow prices

  • How to find your first client?

  • Networking!

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

he trio is back from The State of the Mobile Union event where fun was had by all and minds were expanded about the possibilities of mobile development! Plus, the Comcast Technology Center is cool! We continue to slowly build PickleJarTodo with Kotaro putting into practice the ideas he espoused at his talk for our UI. In our newly restored Not a Sponsor segment, we check-in with the current state of Arpit's GroceryTimer app, which might just be what Steve needs to avoid rotten strawberries. Plus, the trio discuss some thoughts on the much rumored Apple AR/VR Goggles, what the heck we might be able to do with it, and some thoughts on what might be coming (or we hope is coming) at WWDC23 this year. It's a jam-packed episode. I hope you have a long walk planned for today, Zorn!

Topics Discussed:

  • PickleJarTodo Update

  • Advice From the Release Notes Podcast

  • https://releasenotes.tv

  • KanjiLove

  • https://abilenky.github.io/kanjilove/

  • The “spirit” of skeuomorphism

  • Can ChatGPT solve the software estimations problem?

  • Kotaro’s Jira mea culpa

  • Not a Sponsor: GroceryTimer

  • https://grocerytimer.app

  • State of the Mobile Union Outcome

  • https://arpitonline.com/2023/03/29/gdg-philly-and-philly-cocoas-state-of-mobile-union-event/

  • Kotaro’s “Immersive UI” concept

  • Future events ideas

  • Apple’s AR/VR Goggles

  • The Future is a Dead Mall - Decentraland and the Metaverse

  • https://youtu.be/EiZhdpLXZ8Q

  • Like Watch v0

  • Widgets

  • Use Cases

  • WWDC23 Hot Take Wishes

  • Swifty Core Data?

  • Improved Property Wrappers?

  • Donny Wals Talk with CocoaHeadsNL

  • https://www.youtube.com/watch?v=O_aKEd4dyjE

  • Wrap-Up

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, the trio wonder about the nature of a “sprint” and Steve takes his first tentative steps into whatever circle of Hell is reserved for Jira. The three amigos then revisit the topic of “AI” tools since this space is moving at warp speed. Kotaro and Steve talk about their experiences with ChatGPT and Bing before discussing some of the machine learning tools already available from Apple. Kotaro talks about diffusion model image workflows and the concerns of visual artists. Then Aaron tells us to wrap things up after some final discussion about generative art and how to adapt to this brave new world taking shape around us.

Topics Discussed:

  • Introductions

  • PickleJarTodo Update

  • Tinder-like swipe gesture updated

  • What’s a default sprint look like?

  • Tangent: AI Tinder

  • Next: Onboarding/preview data so we have a full experience with sprints

  • Jira & Enterprise Apps

  • AI Part Duex

  • OpenAI ChatGPT

  • Building a ChatGPT macOS Toolbar App Using SwiftUI

  • https://www.youtube.com/watch?v=v6SMV_TUOJk

  • Code snippets

  • Bing Chat

  • Microsoft Copilot

  • Apple’s existing APIs

  • Vision Framework

  • CreateML/CoreML

  • Diffusion model workflows

  • Corridor Crew Anime techniques

  • Visual Artists’ concerns

  • Generative art via shaders

  • Wrap-up

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, Steve makes progress building a log screen, but not without encountering obstacles. Then the trio dives into a discussion about how we learn. What works for us, what doesn't, what are good resources? It's a content-rich episode full of tips, some possibly questionable anecdotes, a dash of philosophy, and so, so many links. It's a little haphazardly presented, but that's just our charm!

Topics Discussed:

  • PickleJarTodo Update

  • https://getslopes.com

  • How to Learn

  • Books vs Articles

  • https://bignerdranch.com

  • https://www.swiftbysundell.com

  • https://www.hackingwithswift.com

  • https://designcode.io

  • https://www.kodeco.com (formerly Ray Wenderlich)

  • https://practicalcoredata.com

  • Videos

  • https://www.youtube.com/@azamsharp

  • https://www.youtube.com/@EngineeringwithUtsav

  • https://www.youtube.com/@Kavsoft

  • https://www.youtube.com/@iOSAcademy

  • https://developer.apple.com/videos/

  • https://apps.apple.com/us/app/apple-developer/id640199958

  • Mentorship/Meetups

  • http://phillycocoa.org

  • Apps

  • https://apps.apple.com/us/app/interactful/id1528095640

  • https://apps.apple.com/us/app/fabula-for-swiftui/id1591155142

  • https://apps.apple.com/us/app/libraried-ui-components/id1642862540

  • https://apps.apple.com/us/app/judo-design-and-build-apps/id1564578427

  • Coding

  • Contracting

  • Side Projects

  • Game Jams

  • Tangent: Comics and Anime

  • Final Words about Learning

  • Find what works for you!

  • How to Take Smart Notes, Sönke Ahrens

  • https://www.soenkeahrens.de/en/takesmartnotes

  • Learn multiple programming languages

  • Learn from Mike Zornek

  • https://mikezornek.com

  • State of the Mobile Union Announcement!

  • http://phillycocoa.org/blog/state-of-the-mobile-union/

  • March 22, 6-8pm at Comcast Technology Center

View Details

On this exciting episode, incremental progress has been made with PickleJarTodo! I know, you're in awe at our productivity. But, the bulk of the episode is a semi-literate discussion about the latest crop of "AI" tools and their potential impact on our discipline of software development. From the current crop of tools like ChatGPT and CoPilot to potential uses in designer/developer collaboration and even full app generation, this discussion is preliminary, but interesting, and we will surely revisit the topic in the future as we gain knowledge and experience in the space.

Topics Discussed:

  • PickleJarTodo Update

- SwiftLint for TODO warnings

- Core Data model relationships

  • AI and Software Development

- Azam testing blog post (testing is about confidence)

- https://azamsharp.com/2023/02/15/testing-is-about-confidence.html

- Generating code via Figma-like app

- Apple and AI tools

View Details

Steve's voice is back...like 95%! Tune in this week for an update about PickleJarTodo where, as usual, we quickly go off the rails into a classic Kotaro rant about JIRA! We also have some discussion about the perennial SwiftUI issue, integrating Core Data. Plus, some pros and cons we have found trying to use GitHub Projects and we end by setting some semi-realistic goals for next time!

Topics Discussed:

  • PickleJarTodo Update

- Side Projects Can Help Day Job Projects

- GitHub Projects Tickets

- Kotaro Rants About JIRA Slowness. 🤣

- GitHub Projects Discussion

- Core Data is Our Nemesis

- Core Data design patterns in SwiftUI

  • Next:

- Kotaro: Wire up UI components

- Steve: Core Data Model layer CRUD

- Aaron: Layout review sections/settings

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Steve lives! The trio is back this week and while Steve still sounds like a frog has taken up residence in his throat, the show must go on! In this episode, we discuss the plan for the next few months, make some goals, assign some tasks, and go off on tangents about Apple backends, Disney World weirdness, and the awesomeness of the Ren Faire. New year, new plan! Let's gooooooo!

Topics Discussed:

  • Steve lives!

  • Plan to finish PickleJar MVP

- Why the PickleJar name?

- Time management with a 9 to 5

- 2023 Timeline

  • Tangent: Apple Backend Woes

  • Plan to finish PickleJar MVP (2)

- Timeline

- Capacities

- Update GitHub Project Todos

  • Tangent: Disney World & Ren Faire

  • Outro

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Steve is still recovering from some bad laryngitis and we should be back to our regular schedule next podcast. In the meantime, Kotaro provides some quick updates about the pod, the app, and his personal goals for the new year. Stay to the end to hear examples of what our future robot overlords consider developer "jokes." Welcome to 2023! We hope you build some cool stuff this year.

Topics Discussed:

  • Podcast update

  • PickleJar update

  • Personal developer goals for the new year

- Better understand how to build Mac apps.

- Improve my skills at shaders.

- Get into Godot more.

  • ChatGPT "Jokes"

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

It's the final episode of 2022! This week, Steve is solo as he puts on his best "podcast voice" to talk about his personal journey to embracing SwiftUI over the last year. See you in 2023!

Topics Discussed:

  • Steve's journey to embracing SwiftUI

- WWDC22 turning point

- Integrating SwiftUI and UIKit

- Living the SwiftUI Preview lifestyle

- Greenfield app prototyping with SwiftUI

- Better cross-platform collaboration with SwiftUI

- Feeling re-invigorated about Apple app development

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio is taking a break over the holidays and so this is the first of a few special, short, solo episodes we are releasing until we get back to our regular routine in the new year. This week, Kotaro provides his retrospectives on our journey so far with this podcast and Side Project Saturday, plus lays out some goals for PhillyCocoa projects in the new year. Happy Holidays from Philly CocoaHeads!

Topics Discussed:

  • Podcast retrospective

  • PhillyCocoa Community retrospective

  • SPS goals for 2023

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, the trio finally remembers we passed our 1-year Podiversity before very skillfully transitioning into an in depth conversation on the topic of prototyping! What is it? How does it work? What are the tools and techniques? How is it practiced at a BigCo vs an Indie shop? The conversation is varied and interesting. Please note, this will be the last "regular" episode of 2022, but more content shall flow into your feed in the form of some special, shorter, episodes, so stay subscribed!

Topics Discussed:

  • 1 year anniversary…back in October!

  • No PickleJar update. On hold due to schedules and holidays.

  • What is prototyping?

  • Dynamic

  • UI Transitions

  • Degrees of Prototyping

  • Wireframing vs Prototyping

  • Wireframes are mostly static layouts, may be low fidelity or high

  • Prototypes are interactive, often on device

  • Traditional Tools vs. SwiftUI

  • Traditional tools link static screens together

  • WWDC14 - Prototyping: Fake It Till You Make It

  • https://developer.apple.com/videos/play/wwdc2014/223/

  • SwiftUI feels more like an actual app in your hands

  • Prototyping IRL

  • Independent consultant with a client

  • Big Co Team

  • One-man-band developer

  • Advice for New Developers

  • Pushing the Boundaries of Prototyping

  • Game Jams As Prep For App Prototyping

  • Favorite Prototyping Tools & Techniques

  • SwiftUI Introspect

  • https://github.com/siteline/SwiftUI-Introspect

  • Iterate the prototype and ask “How do I make this better?”

  • Persona 5 Transitions In the Metaverse?

  • https://youtu.be/DxOGkhLfPf8

  • Focus on how it feels

  • Screen recording and screenshots for demos

  • Don’t be precious with your code

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Aaron's out this week, so the inmates are running the asylum! Steve is embarking on some greenfield app work at the day job and asks, "What is a modern app?" Since Kotaro has a lot of recent experience with all the newest Apple frameworks and features, an interesting discussion ensues about both how you can expand beyond the in-app experience and why you should or should not. Plus, the entire pod goes off the rails for a while when Kotaro goes into significant detail about an infamous Side Project Saturday "bad app idea" for a next generation fart app! It's both an informative and pretty funny episode.

Topics Discussed:

  • PickleJarTodo app update

  • There's an app for that!

  • Expanding beyond the in-app experience

  • Push notifications

  • App Library and getting engagement

  • Widgets & Product Owners

  • Live Activities & Dynamic Island

  • Siri Integration

  • CarPlay Integration

  • WatchKit app

  • iMessage stickers

  • App Clips

  • Shortcuts

  • What experiences are relevant to your app?

  • Don’t ask why, ask why not?

  • Don’t be evil.

  • Fart App: The Next Generation

  • So, in the end, what is an app?

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, we have actual PickleJarTodo updates! Plus, Kotaro gets up on his soapbox to rant about testing, but is coaxed down and a more nuanced discussion ensues. Plus, we have some thoughts on the recent Mohammad Azam article about SwiftUI architecture and the NSSpain presentation about rewriting SoundCloud in SwiftUI. Finally, Steve remembers some sage advice he read on the early Web in the 1990s...RTFM!

Topics Discussed:

  • PickleJarTodo Update

  • Lots of UI Components! (Kotaro)

  • Basic Image Picker Support (Steve)

  • Testing Discussion

  • TDD

  • UI Testing

  • Testing time vs Development Time

  • It Depends

  • SwiftUI Architecture Discussion

  • SwiftUI Architecture — A Complete Guide to the MV Pattern Approach

  • https://betterprogramming.pub/swiftui-architecture-a-complete-guide-to-mv-pattern-approach-5f411eaaaf9e

  • Lessons Learnt Rewriting SoundCloud in SwiftUI

  • https://vimeo.com/751534042/f1ae29434e

  • Programmers as Craftsmen

  • Environment

  • PreferenceKeys

  • RTFM!

  • Building a Budget App Using SwiftUI and Core Data Part 1 (Mohammad Azam)

  • https://www.youtube.com/watch?v=Mfp2l59JKKo

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

On this week's episode, the trio is totally focused and not at all awkward in their transitions as Steve recounts his recent FogBugz drama and Kotaro discusses a recent foray into building a straight-up macOS app in SwiftUI! Steve wonders if the culture of building your own tools has changed in the mobile world and a brief update on the PickleJarTodo app leads into a plug for Mike Zornek's blog, which you should totally read!

Topics Discussed:

  • Follow-up: FogBugz Drama

  • Kotaro’s Experimental SwiftUI Mac App Development

- Platform Expectations 

  • Building Your Own Tools From Scratch

  • PickleJarTodo Update

- Images in Core Data

- UI Component “Lego Bricks”

- Stealing moments to work on the app 

- https://mikezornek.com/posts/2022/9/side-project-tiny-tickets/

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The trio is back this week with some follow-up to Kotaro's solo episode and some spicy takes on The Verge's re-design. Steve tells the tale of how he was stymied by an obvious bug until Aaron fixed it and this leads into some discussion about the challenge in learning new mental models and the importance of having someone else read your code when you are stuck. Meanwhile, Kotaro promises he is working on the UI layouts and the big news since last episode was the new Dynamic Island feature in the iPhone 14 Pro models! We discuss in our infinite ignorance how this feature works and how we might use it for fun; Steve mentions something called "Super Sayan Aaron Mode!?"

Topics Discussed:

  • Follow-Up: Kotaro’s Solo Episode

  • The Verge vs Craigslist

  • RSS Never Died

  • PickleJarTodo Update

  • Steve’s Core Data refactor works after Aaron fixed a bug!

  • SwiftUI mental models

  • Kotaro is building layouts

  • Dynamic Island Discussion

  • Live Activities API

  • Super Sayan Aaron Mode

  • Dynamic Island and Recent App Design Trends

  • How Can Our App Visit the Island?

  • Storing Images in Core Data

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Due to scheduling conflicts, this week is a special solo episode featuring Kotaro! People often ask us in PhillyCocoa how to become an iOS developer. Listen as Kotaro gives his recommendations on how to start your Apple Developer journey whether you are a complete novice or an experienced developer in another speciality. Also hear about Kotaro's own journey into iOS development back when Objective-C was still a thing! This episode features 100% less Steve and Aaron, but is full of useful advice and fun Kotaro anecdotes. Don't worry, the trio will be back in action next time! 

Topics Discussed:

  • A Developer's Journey

  • Foundations of Apple Development

  • Learning Materials

- https://www.raywenderlich.com

- YouTube

  • Kotaro's Apple Developer Journey

  • Building Skills With Side Projects

  • Reading Others' Code

  • Asking For Help

  • Apple Development is Not For Everyone

  • It's About the Journey, Not the Destination

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week the trio review the PickleJarTodo journey so far before discussing the trials and tribulations of macOS betas, bringing back tasteful skeuomorphism in our app, adding playfulness via animation, and why copy is important. Aaron describes his solution to our NavigationSplitView dilemma, Steve discusses some Core Data architecture patterns, and Old Man Kotaro Story Time and a project management tools discussion result in some entertaining hot takes and rants.

Topics Discussed:

  • PickleJarTodo Update

  • The journey so far

  • The trials and tribulations of macOS betas

  • NavigationSplitView

  • Skeuomorphism, Martin Style!

  • Digital paper notebook

  • The Martin System inspiration

  • SPS #17: Fingerpicking Good

  • http://phillycocoa.org/podcast/sps-17/

  • Thomas Frank Video

  • https://youtu.be/0bxIg3M_MHY

  • “Martin System” Article

  • https://collegeinfogeek.com/paper-habit-tracker/

  • Adding playfulness via animation

  • Side Project Saturday Design Feedback

  • Copy is important

  • NavigationSplitView & Tab Bars

  • Make a new layout based on device size

  • TabBar for iPhone

  • NavigationSplitView for iPad (2-pane)

  • Core Data architecture patterns in SwiftUI

  • Practical Core Data Book

  • https://practicalcoredata.com

  • Old Man Kotaro Story Time: The Objective-C Days

  • retain/release, provision hell, and the “bad old days” of Apple Dev.

  • Game Plan:

  • Kotaro: Flesh out core UI experiences (e.g. card view)

  • Steve: Core Data & Log View

  • Aaron: Onboarding View

  • September 7 Apple Event - Release candidate imminent

  • Project Management Tool Hot Takes

  • GitHub Projects

  • Trello

  • Microsoft Planner

  • Jira

  • RIP FogBugz

  • Bitsplitting.org: Dump FogBugz

  • https://bitsplitting.org/2022/07/20/dump-fogbugz/

  • Basecamp

  • Microsoft Teams

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

In this episode, Kotaro has some more thoughts about respecting the platform and we get into an interesting discussion about the how, when, and why of using SwiftUI as a prototyping tool. Then, Kotaro reveals his UI epiphany for the iPhone version of PickleJar. Finally, Steve inadvertently creates a Not a Sponsor segment and the productivity app world is introduced to the idea of "Aaron Mode."

Topics Discussed:

  • Follow-Up: Respecting the Platform

  • Using SwiftUI as a Prototyping Tool

  • Sketch Is an Exemplary “Mac” App

  • Collaborative Prototyping With SwiftUI

  • Mockup/Prototyping Tools

  • https://sketch.com

  • https://figma.com

  • https://balsamiq.com

  • https://www.adobe.com/products/xd.html

  • Kotaro’s UI Epiphany & Discussion

  • The “Martin System”

  • https://collegeinfogeek.com/paper-habit-tracker/

  • Side Project Saturday: Suburban Edition, Aug 20

  • Next Steps

  • Not a Sponsor: Practical Core Data

  • https://practicalcoredata.com

  • Donny Wals: Using Core Data in a Modern SwiftUI Application

  • https://youtu.be/P8rqjs_CNsk

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, the trio is back from our first IRL meetup in two years! We provide an update on PickleJar including CoreData refactoring, architecture patterns, new UI sketches, a possible Radar-worthy bug, and we ask the big question, has Apple decided that Hamburger Menus are cool again? In the second half of the episode, we discuss the latest native vs web technology debate sparked by a Paul Hudson tweet about Notion switching to native views in their iOS app. It's quite an interesting conversation full of Kotaro anecdotes! Who doesn't love them? That's a rhetorical question, they're awesome!

Topics Discussed:

  • Side Project Saturday Suburban Edition (IRL) was a success!

  • PickleJar app status

  • CoreData Refactoring Continues!

  • Architecture Patterns Discussion

  • Kotaro’s SwiftUI Sketches

  • Hamburger Menus are cool again?

  • SplitView Bug Fix on iOS

  • Implementing UI Sketches

  • Notion Native Code Drama

  • https://twitter.com/twostraws/status/1550077375643361280

  • The “Sweet Solution”?

  • Kotaro’s Epic Mac Word Rant

  • Respecting the platform

  • Speed is a feature

  • What’s the business value?

  • Ultimately, it depends

  • Wrap-Up

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, Kotaro's struggles with UI block leads into a discussion about the primary views that need to be updated, some priorities for the UX, and because this is a side project, we dream big about extra features before we've even gotten the core done, including A-Hole mode, the perfect way to motivate yourself when positive reinforcement fails. Considering our slow progress, maybe we should implement that feature first! In the end, Kotaro is back on track with his UI design tasks while Aaron and Steve continue architecting the Core Data + MVVM of it all. PRs were being pushed right after this recording!

Topics Discussed:

  • 20 episodes!

  • Side Project Saturday IRL!

  • Kotaro’s Mea Culpa

  • What’s the Primary View Hierarchy?

- Goals

- Sprints

- Reports

  • Work Assignments & Schedule Update

  • A-Hole Mode

  • UI Ideas

- Sprints

- Goals

- Reports

  • UX Priorities

- Lightweight

- Logging

- Onboarding

  • Next Sprint

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Progress has been made on the app and as we move beyond simple prototyping into trying to make a functional MVP for other people to eventually use, how we structure our code becomes more important. This week, we discuss the MVVM architecture pattern and how well it does and doesn't get along with Core Data. Then, Kotaro leads us on a UI/UX design discussion, partially inspired by "the most satisfying checkbox."

Topics Discussed:

  • PickleJar Update

  • Testing iCloud Sync

  • Multiple simulators signed into iCloud

  • MVVM + Core Data Discussion

  • CS193p

  • https://cs193p.sites.stanford.edu

  • Translating core data models to structs?

  • FetchRequest wrapper vs View Model

  • Map Into structs

  • https://www.youtube.com/watch?v=ehV2gp5uVhs

  • Sync is hard

  • Custom environment variables

  • UI/UX Design Discussion

  • Tags

  • Habits (ADA Winner)

  • https://www.andy.works/words/the-most-satisfying-checkbox

  • UI Focus

  • Sprints UI

  • Timeline Review

  • iPhone vs iPad vs Mac UX

  • Next

  • UI Core Mechanics (Kotaro)

  • Basic Charts view to explore (Steve)

  • ViewModel fleshed out (Steve + Aaron)

  • Tests!

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

WWDC22 has come and gone and boy was it full of developer goodies this year! This week, the trio first survey some of their favorite announcements from WWDC22 before diving into a discussion about how to pivot the todo app development in light of the upcoming OS changes. Be sure to check out this week's Not a Sponsor and Apple Design Award Winner: Slopes

Topics Discussed: - WWDC22     - SwiftUI is The Way     - App Intents     - WeatherKit     - Passkey     - AR/Metal     - CarPlay     - Lock Screen Widgets     - Xcode Live Previews      - Swift Charts     - Swift Regex     - SwiftUI Navigation     - Losing Platform Distinction? - Side Project WWDC Pivot     - All-in on iOS 16/iPadOS 16/macOS 13     - Installing Beta macOS     - Timeline Discussion         - June: Finalize layout         - July: Implement Prototype         - August: Revisions         - September: iOS/iPadOS release. Mac Revisions.         - October: macOS release - Not A Sponsor: Slopes     - ADA Award Winner!

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Just in time for the weekend plane ride to Cupertino, it's our WWDC22 speculation episode! We talk about some of things we hope to see at this year's WWDC including new hardware, iOS 16 features, and dev tool improvements. Plus, Kotaro provides a bonus tip about how you can glimpse the future by subscribing to the Swift Evolution mailing list. If you'd like to join us at our virtual keynote watch party, RSVP and join our Slack! Details are on our website at http://phillycocoa.orgor at https://www.meetup.com/PhillyCocoaHeads/.

Be sure to check out our Not a Sponsor this week: SwiftBySundell.com

Topics Discussed:

  • What is WWDC?

  • In-person vs virtual

  • Alt conferences

  • Speculation

  • Hardware

  • M2 Mac Pro

  • AR Glasses Dev Kit

  • Joy-con style controllers for iPhone/iPad

  • iOS 16

  • New era of UI design?

  • Theming support?

  • Mac Password Management App?

  • SwiftUI 4

  • Becomes The Way to do Apple dev

  • Native ARView?

  • Native support for PencilKit?

  • NavigationLink improvement?

  • Native Siri Intents?

  • Keyboard/Text fields improvements?

  • Core Data Updates

  • New API?

  • NoSQL style db?

  • Continue improving SwiftUI integration

  • Better CloudKit support in Xcode

  • AR

  • Commitment that AR glasses are coming and timeframe?

  • Reality Composer features

  • Glimpse the future on the Swift Evolution mailing list

  • Concurrency

  • Regex support

  • Not a Sponsor: SwiftBySundell.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week, we return to our Todo App project. Coding has stalled because we didn't have a specific enough idea of exactly WHAT the app is supposed to be all about. Problem definition is hard and this week Steve presents his thoughts on how to move forward based on his research into some existing digital and paper habit tracking systems. Then we sketch some specific app feature requirements where we coalesce around the idea of tracking something akin to "epics," provide positive reinforcement via widgets, and support Siri Intents for use in the Shortcuts app.

Be sure to check out our Not a Sponsor this week: the TIL with Mohammad blog at https://mfaani.com

Topics Discussed:

  • Todo App Progress Updates / Blockers

  • Wayward Kotaro: CloudKit Shared Data Containers & (Not) Getting Things Done

  • Steve: Did research!

  • Aaron: Busy with work.

  • How to find the time and motivation to do a side project

  • Todo Research Discussion

  • Thomas Frank Video: https://youtu.be/0bxIg3M_MHY

  • "Martin System" Article: https://collegeinfogeek.com/paper-habit-tracker/

  • Strides app: https://www.stridesapp.com

  • App Design Discussion

  • iOS: Check off items

  • Mac: Center of attention, graphs, planning

  • Epic tracking

  • Positive reinforcement via widgets

  • Siri Intents for Shortcuts support

  • Next Sprint:

  • UI Design Prototype

  • Data Model Update

  • Not A Sponsor: https://mfaani.com - TIL with Mohammad Blog

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

The app is making slow progress and we will have more to say about that soon, but we couldn't pass up the opportunity to talk with our special guest this week, Mohammad Faani. Mohammad is an active member of PhillyCocoa and joins us to discuss his journey to becoming an iOS developer as well as how both Stack Overflow and his new TIL blog help him focus and shape his own developer journey.

Topics Discussed:

  • Introducing Mohammad Faani

  • Mohammad’s origin story

  • Mohammad’s background

  • Online courses to learn development

  • StackOverflow

  • Meetups

  • Joining Philly CoocaHeads

  • PhillyCocoa book club

  • Unit Testing In the Real World

  • Mohammad’s TIL blog

  • Why blog?

  • How to choose topics?

  • How Stack Overflow and blogging can be complementary

  • What’s next for Mohammad?

  • Where to find Mohammad?

  • Website: mfaani.com

  • Stack Overflow: @mfaani

  • PhillyCocoa Slack: @mfaani

  • Twitter: @mfaani

  • GitHub: @mfaani

  • Not a Sponsor: ReCaf.app

  • Mohammad’s Words of Wisdom

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

This week we finally reveal our idea for our second app on this podcast and it's a macOS todo app! I know, very original! Listen in to our unscripted discussion as we talk about why we chose this concept for the app, some theories around todo systems, and eventually coalesce around some broad goals for features as well as a timeline for a Test Flight prototype.

Topics Discussed:

  • Introducing our next side project: a macOS Todo app!

  • How do we do todos?

  • Steve: Omnifocus, Todo, Calendar

  • Aaron: Calendar

  • Kotaro: Reminders, 3-4 core things to do that day in notes app

  • Theory Discussion

  • Pickle Jar Theory

  • Kotaro’s Theory

  • Broad App Goals

  • What would make this app useful for us?

  • Kotaro

  • Lightweight

  • Pattern reporting (task completion)

  • iOS version for quick task check-off

  • Recurring tasks you want to do every day

  • CloudKit/Core Data sync

  • iPad app?

  • One-offs

  • Siri Intent

  • Steve

  • Habit tracker

  • Historical trends

  • Aaron

  • Fitness training goals

  • e.g. Training Peaks app

  • Goal tracking

  • Feature Summary Discussion

  • Record when you did the task or assume you did it at the time of checking off?

  • Epics vs Tasks

  • Notifications are not annoying (summary info, for example)

  • Widgets

  • Default view is stuff we already did.

  • Bucket List app, checking off towards a goal and get summaries

  • Timeline for MVP

  • Release before WWDC: 1.5 month project

  • Aaron’s Scope Suggestion: Help us prioritize WWDC work

  • How do we break this up?

  • We already created an app, Trello, GitHub repo, icon

  • 4 sprints of 2 weeks

  • Strong prototype by 4th sprint at least

  • Test Flight

  • First Sprint:

  • Basic Todo Task UI

  • Basic Core Data data model

  • CloudKit sync

  • Mac to iOS syncing

  • Not a Sponsor: Fin Timer

  • Kotaro’s New Outro!

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

After we recorded this week's podcast, we did decide on our next side project and it's not what you might expect. It has to do with pickles. Stay tuned for info about that next time! This week, we delve into the side project "failure" bin to talk about overcoming the many challenges to completing side projects and how even when we move on from one, it was still worth doing.

Topics Discussed:

  • Pre-Show:

  • Stocks and studio displays

  • The Death of Kotaro’s Side Project Dividend Calc

  • KanjiLove: A Passion Project that Took Multiple Attempts

  • Fav10: Learn SwiftUI, CoreData, & CloudKit

  • A Customer of One

  • The Daily Chron Podcast: Learn a New Non-Dev Skillset

  • https://www.dailychronpodcast.com

  • Video Killed the Podcast Star?

  • Side Projects are building blocks

  • Kotaro and Aaron’s Big O Apple TV app

  • How to finish a side project

  • Keep scope small enough to not be overwhelmed, but big enough to still be useful

  • Hold yourself accountable by building in public like with KanjiLove

  • Work with other people

  • When to move beyond v1.0 on a successful side project?

  • Revisit to learn new things

  • Stuff you had on the back burner

  • A platform for your learnings

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

We have another special guest this week! Sean Najera, Senior Mobile Developer at Nuuly, joins the Pod to talk about his experiences using Flutter before discussing his new SwiftUI Navigator library that fixes a big missing feature in Apple's framework. There is also some love for C#, a look at the waves of Android development over the years, the evolution of languages like Dart and Swift, and new this week, a special post-show where Steve asks the question that only Aaron can answer, "What is a table?" This was a fun one.

Topics Discussed:

  • Welcome Sean Najera to the podcast

  • An Infinite Closet

  • Riding the Waves of Android Development

  • Flutter & Declarative/Reactive UIs

  • Flutter Challenges

  • Should you still use Flutter today for a cross-platform app?

  • C# Rocks

  • Flutter’s rendering engine

  • Dart, Swift, C#, and Language Evolution

  • Sean’s Navigator Library for SwiftUI

  • Wrap-Up

  • Post-show: What is a table?

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

With all of us getting busy with work, we are using this opportunity to experiment with the podcast format and bring a spotlight to other developers in the community. Our first guest to the POD is Arpit Mathur, creator of GroceryTimer.app. This app was our Not a Sponsor last time and since it was recently released, we thought it would be fun to discuss the how's and why's of its creation. Arpit is always a pleasure to converse with and we delve into several interesting aspects of the app's creation, design, and technologies as well as how Arpit is experimenting with the Virtual Meetup format of Philly's Google Developer Group using tools like Twitter Spaces. It's a fascinating and entertaining conversation. We hope you enjoy it as much as we did.

Download GroceryTimer.app!

Topics Discussed:

  • Welcome Arpit Mathur to the podcast

  • @GDGPhiladelphia

  • Virtual Meetups with Twitter Spaces

  • Slack Huddles

  • GroceryTimer.app Origin Story

  • Building an App with Flutter

  • GroceryTimer.app Design Process

  • Flutter and Platform Specific Considerations

  • The Present & Future of Widgets

  • The Future of GroceryTimer.app

  • Future Arpit Side Projects

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Ok, we are really spinning our wheels now getting a new app idea pinned down, but the upshot is there are a lot of interesting subjects touched upon this week, including the "confirmation" of RealityOS, how people occlusion works in ARKit, a tangent about the history of Web API technologies, and much more. Plus, our Not a Sponsor this week could help you keep your food from spoiling!

Topics Discussed:

  • RealityOS is Real!

  • How ARKit People Occlusion Works

  • What makes a good AR experience, according to Apple

  • AR Goggles Pricing and Design

  • A Tangent on XML, JSON, gRPC, and Web APIs

  • Ray casting and ray tracing

  • Not a Sponsor: GroceryTimer.app

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Continuing our incremental progress exploring the AR app space, this week, Aaron shows off our first baby steps with a working prototype! Steve discusses his month long side project making movies, which prompts a discussion of how AR could be used in filmmaking. Then, Kotaro and Steve go on a tangent exploring nightmare AR/VR dystopia possibilities before getting back on track with this week's "Not a Sponsor" segment. Finally, the trio settles on a handful of feature paths to explore for next time.

Topics Discussed:

  • Steve’s Film School Experience

- Potential for AR as a filmmaking tool

- AR for V-Tubing

  • Aaron's AR prototype

- Drop a marker on an IRL location

- Reality Composer Explained

- How to get/create AR assets

  • Dystopian AR/VR Nightmares

  • Not a Sponsor: Nuuly Thrift

  • Next Steps with the AR App

- Occlusion mapping

- Interactions with 3D objects

- Some Text-based UI GUI

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

We decided that we want to work on an AR app, but we still can't figure out what to build. The space is still very new, hardware from Apple doesn't exist yet, and life really got in our way last sprint, so we didn't get much prototype exploration done. This week, we continue our search for an AR app idea, perhaps come up with a germ of an idea by the end, and in the middle, Kotaro expounds on game jams and creative cheats from his own past. It's a diamond in the rough kind of episode, but sometimes that's how it goes when you are trying to start down an unexplored path.

Topics Discussed:

  • Searching for an AR app idea on Twitter

  • Types of AR Hardware

  • Game Jams & Creative Cheats

  • A Prototype Idea for Next Time

  • Not a Sponsor: Happy Scale

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

After a brief retrospective about our last app, Kanji Love, and a shout out to the recently departed Release Notes podcast, the team starts a discussion about our next project, which looks like it'll be focused on Augmented Reality. First, we ask ourselves, what is the relationship between AR, VR, and the "Metaverse" concept? Then we read the tea leaves of Apple's APIs to make an educated guess about future hardware and types of applications that would be useful to build. Finally, we spend time talking about some specific app ideas and end the episode with some bonus talk about recognizing hand gestures. Next time, we will decide what app we will build for season 2!

Topics Discussed:

  • Introductions

  • Kanji Love Retrospective

  • Built for the learning experience

  • How could we make money, theoretically?

  • RIP Release Notes

  • What is the Metaverse?

  • Reading the AR Tea Leaves

  • What can Apple AR APIs do?

  • Big Funky Goggles VR

  • Apple Glass v1 Speculation

  • What app should we build?

  • AR Dance Instructor app

  • Record dance movements with body pose estimation APIs

  • Playback via an AR character

  • Mixamo.com for character asset

  • IRL to 3D Object Scanner app

  • Scan with the iPhone

  • Generate 3D object in Mac app

  • Export a file for 3D asset or AR

  • AR Graffiti app

  • Create a drawing and post it on a wall

  • AR Scavenger Hunt app

  • Smashing Crates animation FTW!

  • Next Steps

  • Look for/build prototypes to explore ideas

  • Steve: AR Dance Instructor

  • Kotaro: IRL to 3D Object Builder

  • Aaron: General AR research

  • Our next project should use SwiftUI as much a possible

  • Decide the project on next podcast

  • Bonus Discussion about hand gesture recognition

  • Not a Sponsor: ClipDish AR feature idea

  • getclipdish.com

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

It's release day! Kanji Love is in the App Store! In this season finale episode, we discuss the story behind the app's name as well as some of the final bug fixes and tasks we had to complete. Then, you can listen in to the moment we made the app live in the store! Finally, we discuss some ideas for next season. Don't worry, Side Project Spotlight WILL RETURN!

  • Download the app!

  • Check out the website!

Topics Discussed:

  • Story behind the app name: Kanji Love

  • cocoalove.org

  • Fracture Prints FTW!

  • Sprint Retrospective

  • Kotaro: Website & Metadata

  • Aaron: Minor Bug Fixes

  • Steve: Launch From Notification Discussion

  • Using GitHub Pages for your App Website

  • https://abilenky.github.io/kanjilove/

  • PUSH THE BUTTON!

  • Releasing the app LIVE!

  • What’s Next?

  • Bug Fixes

  • Complications improvements

  • App Store Marketing Team Submission

  • Next Season on SPS

  • AR + CoreML?

  • Explore ideas more than develop projects?

  • Playgrounds App Projects?

  • The Podcast will continue!

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

We are in the endgame now! Kotaro has refined the UI while Aaron has updated our Core Data stack and Steve got Notifications working! All the pieces are together and we basically have a feature complete 1.0 app! Now we are entering into the final stress test, debugging, and polishing stages. In this episode we discuss the promise and current limitations of Xcode Cloud, provide an overview of the App Store submission process and steps we need to complete, and worry out loud about whether Swift UI conditionals are a good idea or not. App Submission Day is rapidly approaching. Will we make it?

Beta Test the app: https://testflight.apple.com/join/Ag07XWbg

Topics Discussed:

  • Sprint Retrospective

  • Aaron:

  • Core Data migrations

  • Card Deck updates

  • Steve:

  • Notifications work!

  • Kotaro:

  • Refined UI!

  • Refined text-to-speech

  • Refined metadata displayed

  • Xcode Cloud Issues

  • Archive & build almost works. Bug in Xcode Cloud.

  • App Store Submission Process Overview

  • Copyright Info

  • Keywords

  • Privacy policy

  • App nutrition label

  • Screenshots

  • etc.

  • Core Data Migrations

  • Automatic Lightweight migrations

  • Swift UI Conditionals

  • If/Then, Switches, etc. within a view

  • Looks ugly

  • Is it appropriate?

  • Refactor into View Builders?

  • On-Device & Swift UI Preview Problems

  • Problems getting it to run on Kotaro’s watch

  • Swift UI Previews unreliable

  • Rely on Simulators

  • getslopes.com

  • Not a sponsor!

  • Awesome app

  • How to open a SwiftUI View From a Notification?

  • Jump to a SwiftUI view from notification

  • Deep link via scheme?

  • Complications

  • Onwards to Submission Day:

  • We are feature complete for v1.0

  • Need stress testing on device.

  • Polish time

  • Get app setup on Aaron’s account

  • Marketing materials, App Store metadata, etc.

  • Deadline for Submission: Dec 23

  • Parting Words

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist

View Details

Sprint 4 is over and we are entering the home stretch. Kotaro got the swipe mechanic working, Aaron got so much done, he started adding features, and Steve ran into issues trying to build a Notifications UI. The trio discuss Git branches and merging strategies and then spend the bulk of the episode diving into SwiftUI architecture in general and specifically regarding the app. Finally, in a segment that is the nightmare of project managers everywhere, new features are discussed! This is a long one, but with a lot of great technical discussion. Bonus! It's edited more gently than the last episode. You're welcome, Zorn!

Topics Discussed:

  • Sprint 4 Retrospective

  • Kotaro: Swipe mechanic

  • Got it working!

  • Had to modify the Deck library for watchOS

  • Aaron: Next Kanji algorithm

  • Initial implementation is simple, but works

  • Added some methods

  • Daily Goal

  • Some complications work

  • Steve: Notifications reactions

  • UI picker (third party)

  • Refactoring

  • Basically everything almost works

  • Merge Strategies

  • Feature branches & Pull Requests

  • How Steve does merging at work

  • What does the master/main branch mean?

  • Kotaro has been testing Xcode Cloud!

  • App Architecture - High Level of how our app works

  • Structs not Classes (for the most part)

  • Views

  • Managing State vs UIKit

  • App Struct

  • Scenes

  • Environment

  • SwiftUI - How does it work?

  • Notifications Integration

  • Feature Creep

  • Complications Discussion

  • Haptics

  • Speech-to-Text on Long Press

  • SiriKit intents

  • Next Sprint: Path to Release

  • TestFlight

  • App Store metadata like privacy policy, screenshots, etc.

  • App Store transfer

  • For Next Time:

  • Kotaro: complications placeholders, deep links, and polish UI

  • Aaron: CoreData migrations, Siri

  • Steve: Notifications / Podcast / Website

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Sprint 3 is over and Kotaro has made progress on the UI with a complete app skeleton now linked together, but is still working on the core swipe animation. Meanwhile, Steve found notifications a little harder to setup in a SwiftUI environment than expected, but got the basic plumbing working when he wasn't editing the podcast. Aaron is the Sprint MVP as he updated the data managers so that Kanji can be retrieved from the database with ease and user stats saved on demand. All together, this means we are getting close to a working app! Plus, a discussion comparing Objective-C and Swift and the struggle to switch mental modes when you are learning new things.

Sprint 3 Retrospective:

  • Kotaro

  • Swipe UI not done, yet. Working on choosing library or technique

  • Improved onboarding screens to initially load JSON into database

  • Completed linking areas of the app together

  • Aaron

  • Added accessing methods to kanji database like next, random kanji

  • Added stats tracking

  • Steve

  • Notifications wired up, but not fully implemented

  • Need proper settings for schedule

  • Lots of refactoring needed

Topics Discussed:

  • Time management in a sprint - How Kotaro approaches game jams

  • Week 1: get features done

  • Week 2: fine tuning/bug fixes

  • Notifications

  • Where do you put authorization check?

  • SwiftUI modifiers for WindowGroup?

  • How to handle implementing delegate methods in Swift UI?

  • Structs vs Classes in SwiftUI

  • Structs for layouts and immutable values

  • Classes for data model and data state stuff in background

  • Objective-C vs. Swift

  • Obj-C doesn’t slap you on the hand like Swift will

  • Swift enforces a kind of discipline

  • Toughest part is changing your mental model

  • if let and guard statements

  • Obj-C geared for reading and Swift geared towards writing?

  • Async/Await in Swift

  • Inside a closure, has to be wrapped in a Task

  • Future Features

  • Fling a card from one watch to another using nearby interactions framework

Next Sprint:

  • Core mechanics of scheduling specific notifications and handle actions (Steve)

  • Know it

  • Don’t know it

  • More Info (deep link with tap)

  • Dismiss

  • Mute for Today option

  • Next Kanji algorithm (Aaron)

  • Method on public database class to get the next kanji

  • Debug settings screen

  • Complications, if time

  • Swipe mechanic (Kotaro)

  • Main UI

Links:

  • https://github.com/1amageek/Deck

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Sprint 2 is done and we have data! In this episode, we check-in on our goals for the sprint and discuss what got done, what didn't, and some interesting issues that came up along the way. Now that we have Kanji data in the Core Data database, we can shift focus to building the UI for the app and notifications for next time.

Follow-up from last sprint:

  • Wireframes and prototype UI

  • Kanji database parsed into JSON

  • Core Data stack setup

  • Everyone get the app built and run on their watches

  • Look into how notifications might work

  • Get a podcast website setup

Steve

  • Got podcast website done

  • No notifications

Aaron

  • Got subset of data parsed into Core Data (3,000 kanji!)

Kotaro

  • Started skeleton layout of all views

  • Hasn't hooked up UI to Core Data, yet.

Topics Discussed:

  • Hugo as an option for building your podcast or app website

  • PRs for collaboration on GitHub

  • Analysis Paralysis and comic book artists

  • Core Data array magic with the transformable attribute

  • UI mechanics

  • What are the stats we are saving?

  • Extensions on CoreData models (like Kotaro's Fav10)

Next Time:

  • Working prototype swipe UI and save user stats (Kotaro)

  • Working notifications (Steve)

  • Public interface to the Kanji database (Aaron)

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

Our first sprint encountered some hiccups and we are off to a slow start, but progress has been made!  This week, we have some follow-up about changes to our initial App Store Connect environment, describe how we setup the podcast, and spend the majority of the meeting talking about data sources, structures, and UI. 

Topics include:

  • Switching to an App Store Connect Team account for development

  • Podcast infrastructure setup with Anchor.fm and Podcast Connect

  • Exploring Kanji databases using Python in Google Collab

  • What data do we really need for a "card" in the app?

  • What kind of stats do we need to track and where do we store this data?

  • What are the primary user interface interactions?

Goals for next time: 

  • Wireframes and prototype UI

  • Kanji database parsed into JSON

  • Core Data stack setup

  • Everyone get the app built and run on their watches

  • Look into how notifications might work

  • Get a podcast website setup

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.

View Details

For our inaugural season, we (Kotaro, Steve, and Aaron) are building a watchOS Kanji flashcard app and documenting our journey. This week, we tackle the initial project infrastructure setup and talk next steps. Topics include:

  • Github project setup and .gitignore

  • App Store Connect Users

  • New up a Xcode Project from a template

  • What is this app all about?

  • Initial wireframes

  • Kanji database options

  • SwiftUI vs Storyboards

  • How to use Github Projects

  • Project management techniques

  • Deadlines

  • Goals for next week

Intro music: "When I Hit the Floor", © 2021 Lorne Behrman. Used with permission of the artist.