Skip to main content
Side Project Spotlight

Side Project Spotlight

By 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.
Where to listen
Apple Podcasts Logo

Apple Podcasts

Overcast Logo

Overcast

Spotify Logo

Spotify

#30: Prototyping
#30: Prototyping
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.
49:40
November 21, 2022
#29: What Is an App?
#29: What Is an App?
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.
49:54
November 07, 2022
#28: A Bad Relationship With Testing
#28: A Bad Relationship With Testing
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.
01:01:22
October 24, 2022
#27: Awkward Transitions
#27: Awkward Transitions
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.
50:53
October 10, 2022
#26: Gilligan's Dynamic Island
#26: Gilligan's Dynamic Island
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.
57:34
September 26, 2022
#25: A Developer's Journey
#25: A Developer's Journey
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.
17:18
September 12, 2022
#24: Jira Is Trying to Kill You!
#24: Jira Is Trying to Kill You!
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.
01:09:37
August 29, 2022
#23: It's A Trap!
#23: It's A Trap!
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.
01:12:09
August 15, 2022
#22: Respecting The Platform
#22: Respecting The Platform
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.
55:42
August 01, 2022
#21: A-Hole Mode
#21: A-Hole Mode
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.
55:12
July 18, 2022
#20: MVVM + Core Data
#20: MVVM + Core Data
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.
01:02:44
July 04, 2022
#19: WWDC22 – SwiftUI Is "The Way"
#19: WWDC22 – SwiftUI Is "The Way"
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.
59:52
June 20, 2022
#18: WWDC22 Speculation!
#18: WWDC22 Speculation!
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.org or 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.
57:25
June 03, 2022
#17: Fingerpicking Good
#17: Fingerpicking Good
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.
48:19
May 23, 2022
#16: TIL With Mohammad Faani
#16: TIL With Mohammad Faani
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.
54:22
May 09, 2022
#15: Learning How to Mac
#15: Learning How to Mac
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.
59:18
April 25, 2022
#14: Side Project Challenges
#14: Side Project Challenges
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.
42:49
April 11, 2022
#13: An Infinite Closet with Sean Najera
#13: An Infinite Closet with Sean Najera
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.
01:06:02
March 28, 2022
#12: GroceryTimer.app with Arpit Mathur
#12: GroceryTimer.app with Arpit Mathur
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.
01:01:22
March 14, 2022
#11: Spinning our Wheels
#11: Spinning our Wheels
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.
52:20
February 28, 2022
#10: Orange Balls
#10: Orange Balls
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.
49:08
February 14, 2022
#9: Reading the Tea Leaves
#9: Reading the Tea Leaves
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.
51:08
January 31, 2022
#8: Into the Metaverse
#8: Into the Metaverse
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.
01:08:22
January 17, 2022
#7: Kanji Love
#7: Kanji Love
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.
55:56
January 03, 2022
#6: Feature Complete
#6: Feature Complete
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
58:02
December 20, 2021
#5: Feature Creep
#5: Feature Creep
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.
01:20:43
December 06, 2021
#4: Welcome to My Objective-C TED Talk
#4: Welcome to My Objective-C TED Talk
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.
55:32
November 22, 2021
#3: We Have Data!
#3: We Have Data!
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.
44:26
November 08, 2021
#2: Data Structures & UI Considerations
#2: Data Structures & UI Considerations
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.
52:13
October 25, 2021
#1: Kanji Flash Card App Kickoff
#1: Kanji Flash Card App Kickoff
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.
52:13
October 09, 2021