POPULARITY
Ben Scheirman is back for part 2 of our interview on SwiftUI Migration. In this episode we focus on navigation, data handling and Swift packages.GuestBen Scheirman | Ben is an experienced software engineer from Houston, TX. Currently focused on Swift, iOS, Ruby, and Rust.Ben Scheirman (@bens@mastodon.xyz) - Mastodonsubdigital (Ben Scheirman)NSScreencast: Bite-sized Screencasts for iOS DevelopmentCombine SwiftAnnouncementsNeed help with your projects this year? BrightDigit has openings.Join Bushel BetaJoin our Brand New Patreon Page!LinksEpisode #288: Modern UIKit: Stack Navigation, Part 2pointfreeco/swift-perception: Observable tools, backported.brightdigit/Sublimation: Enable automatic discovery of your local development server on the fly. Turn your Server-Side Swift app from a mysterious vapor to a tangible solid server.krzysztofzablocki/LifetimeTracker: Find retain cycles / memory leaks sooner.siteline/swiftui-introspect: Introspect underlying UIKit/AppKit components from SwiftUIPresenting Coordinators - Soroush Khanlou on VimeoRelated EpisodesThe Great SwiftUI Migration - Part 1 with Ben ScheirmanSwiftUI Field Guide with Chris EidhofSOTU 2024 with Peter WithamSwiftUI Tips and Tricks with Craig ClaytonSwiftly Tooling with Pol Piella AbadiaIt Depends with Brandon WilliamsMy Taylor Deep Dish Swift Heroes World TourMobile System Design with Tjeerd in 't VeenThe Composable Architecture with Zev EisenbergBehind the Scenes of SwiftUI with Aviel GrossWWDC 2022 - SwiftUI and UIKit with Evan StoneSocial MediaEmailleo@brightdigit.comGitHub - @brightdigitTwitter BrightDigit - @brightdigitLeo - @leogdionLinkedInBrightDigitLeoPatreon - brightdigitCreditsMusic from https://filmmusic.io"Blippy Trance" by Kevin MacLeod (https://incompetech.com)License: CC BY (http://creativecommons.org/licenses/by/4.0/) (00:00) - Discussing Data Handling in Swift UI (01:22) - Observable Objects and View Models (04:20) - The Power of Previews in Swift UI (06:36) - Combining Combine and Async/Await (10:29) - Interfacing Between UIKit and Swift UI (17:12) - Challenges with Swift Package Manager Thanks to our monthly supporters Bertram Eber Edward Sanchez Satoshi Mitsumori Danielle Lewis Steven Lipton ★ Support this podcast on Patreon ★
Ben Scheirman of NSScreenCast comes on to talk about migrating apps such as a Nike's Sneakers app from UIKit to SwiftUI and all the little things you don't think about. This is part 1 of a 2 part interview.GuestBen Scheirman | Ben is an experienced software engineer from Houston, TX. Currently focused on Swift, iOS, Ruby, and Rust.Ben Scheirman (@bens@mastodon.xyz) - Mastodonsubdigital (Ben Scheirman)NSScreencast: Bite-sized Screencasts for iOS DevelopmentCombine SwiftAnnouncementsNeed help with your projects this year? BrightDigit has openings.Join Bushel BetaJoin our Brand New Patreon Page!LinksEpisode #288: Modern UIKit: Stack Navigation, Part 2pointfreeco/swift-perception: Observable tools, backported.brightdigit/Sublimation: Enable automatic discovery of your local development server on the fly. Turn your Server-Side Swift app from a mysterious vapor to a tangible solid server.krzysztofzablocki/LifetimeTracker: Find retain cycles / memory leaks sooner.siteline/swiftui-introspect: Introspect underlying UIKit/AppKit components from SwiftUIPresenting Coordinators - Soroush Khanlou on VimeoRelated EpisodesSwiftUI Field Guide with Chris EidhofSOTU 2024 with Peter WithamSwiftUI Tips and Tricks with Craig ClaytonSwiftly Tooling with Pol Piella AbadiaIt Depends with Brandon WilliamsMy Taylor Deep Dish Swift Heroes World TourMobile System Design with Tjeerd in 't VeenThe Composable Architecture with Zev EisenbergBehind the Scenes of SwiftUI with Aviel GrossWWDC 2022 - SwiftUI and UIKit with Evan StoneSocial MediaEmailleo@brightdigit.comGitHub - @brightdigitTwitter BrightDigit - @brightdigitLeo - @leogdionLinkedInBrightDigitLeoPatreon - brightdigitCreditsMusic from https://filmmusic.io"Blippy Trance" by Kevin MacLeod (https://incompetech.com)License: CC BY (http://creativecommons.org/licenses/by/4.0/) (00:00) - Who is Ben Scherman (02:38) - Migrating Apps to Swift UI (07:03) - Challenges with Swift UI and iOS Versions (10:24) - Using Introspect for Swift UI (16:44) - Implementing Collection View in Swift UI (25:05) - Exploring iOS 18 Scroll View API (25:30) - SwiftUI vs UIKit: Productivity and Constraints (26:38) - Design and Engineering Collaboration (29:43) - Stages of Migrating to SwiftUI (34:14) - SwiftUI Navigation and Environment Bindings (39:44) - Retain Cycles and Memory Management Thanks to our monthly supporters Bertram Eber Edward Sanchez Satoshi Mitsumori Danielle Lewis Steven Lipton ★ Support this podcast on Patreon ★
Slices: The Deep Dish Swift Podcast In this episode of Slices: The Deep Dish Swift Podcast, Kai and Malin chat with Ben Scheirman, iOS Engineer at Nike, the creator of Combine Swift Course and NSScreenCast, speaker at Deep Dish Swift, and an overall terrific person. Links Deep Dish Swift Website Deep Dish Swift Mastodon Deep Dish Swift Twitter Special Guest Ben on Mastodon NSScreenCast Combine Swift Hosts Kai on Mastodon Kai on Twitter Malin on Mastodon Malin on Twitter Deep Dish Swift Sponsors Revenue Cat Codemagic OneSignal Runway Emerge Tools Stream MichiganLabs Happy Scale
Ben Scheirman returns to the show to discuss how Swift's built-in concurrency features, such as async/await and tasks, can be used in practice when building apps for Apple's platforms.
Ben Scheirman returns to the show to talk about modern UIKit-based app development, how UIKit has evolved over the past few years, and how its API design and usage has been influenced by the introduction of frameworks like SwiftUI and Combine.
Kevin, Jon and Rob talk to Ben Scheirman about developing user interfaces for the Apple platform with SwiftUI and Combine. Ben screencasts at NSScreencast and is the creator of the Combine Swift course. Download / Listen: Herding Code 244: Herding Code 244: Ben Scheirman on SwiftUI and Combine Transcript: Herding Code – March 5, 2021 … Continue reading "Herding Code 244: Ben Scheirman on SwiftUI and Combine"
Ben Scheirman. An experienced software developer from Houston, TX. He spends most of his time these days writing Swift and Ruby and recording screencasts. You might know him from NSScreencast.comPlease rate me on Apple Podcasts.Send me feedback on SpeakPipeOr contact me through twitterMy website appforce1.netNewsletter, sign up!Podcast PartyNSScreencast.comColdFusionMy professor, my mentorAlex Honnold and Combine learning curveCombine Swiftobjc.ioHacking with SwiftBook: Deep WorkSo Good, they can't ignore youVenkat SubramaniamCore Data Workshop by Donny Wals Gain practical experience with Core Data from the author of Practical Core Data. Support the show (https://github.com/sponsors/AppForce1)Buzzsprout Start your own podcast and get a $20 Amazon Gift Card (sent after 2nd paid invoice)Backblaze Cloud Backup Never Lose a File Again with the World's Easiest Cloud Backup. Back up your Mac or PC just $6/month.
Ben Scheirman, creator of NSScreencast, joins John on an episode all about UICollectionView. How have UICollectionView’s features evolved over time, and how are modern APIs like compositional layouts and diffable data sources changing the way collection views are built and used?
Guest: Ben Scheirman @subdigital Full show notes are at https://developeronfire.com/podcast/episode-397-ben-scheirman-screencasting-magic
My guest is Ben Scheirman, who runs NSScreencast.com and creates the media content there. He also produces two podcasts at Vibrato.fm and Appdevdiary.com. And we rolled out a new segment called Nightmare Sessions! We discussed A LOT, including: UA Apollo 8 Quad (4 XLR’s) Heil PR40 (with shock mount/boom) Audio-Technica ATR-2100 USB Rolls Mic Mute Audio Hijack and Loopback on the Mac (for podcasting) Magewell HDMI USB3 Capture Screenflow Logic Pro (for music), Mainstage Beyerdynamic DT770 headphones (80 ohm) Onyx Blackjack (interface) Onyx 820i firewire mixer Mix minus KRK Rokit 5 mounted on wall API Vision channel strip plugin Thanks for being a great guest and sharing so much, Ben! DID YOU KNOW........We exist for the purpose of helping you, so please comment below with any questions or remarks. Thanks for listening! Want to Start a Business or Have a Career as a Podcast Producer/Engineer? Listen and Subscribe in Apple Podcasts, Google Podcasts, iHeart Radio, Stitcher, TuneIn Radio, Android, RSS
After settling the scores from last episode's poker game, John and Gui dives into the announcements and news from WWDC 2018. What does the new Shortcuts system mean for Siri, how useful is Augmented Reality really, what's it like building a Mac app using UIKit and Marzipan, and much more. Stacktrace by 9to5Mac is available on iTunes and Apple’s Podcasts app or through our dedicated RSS feed for Overcast and other podcast players. Hosts: Gui on Twitter: @_inside John on Twitter: @johnsundell Topics: Our WWDC poker score card Swift by Sundell episode with Ben Scheirman Tim Cook interview with CNN Money Imagine Engine
Ben Scheirman, creator of NSScreencast, joins John for a special WWDC episode of the show — to talk about the cool new things that Apple announced at the conference. iOS 12's focus on performance, UIKit apps on the Mac, what's new in Xcode and Swift 4.2, and much more.
Get a new Fatal Error episode every week by becoming a Patreon supporter!Chris’s new jobBeaconAshley Nelson-HornsteinString Processing for Swift 4Swift Strings: Unicode discusses extended grapheme clustersSE-0180: String Index Overhaul (under review until June 28)SE-0168: Multiline String LiteralsSE-0165: Dictionary & Set EnhancementsErica Sadun: The surprising awesomeness of Grouped DictionariesSE-0169: Improve Interaction Between private Declarations and ExtensionsSE-0143: Conditional conformancesSE-0166: Swift Archival & SerializationBen Scheirman: Ultimate Guide to JSON Parsing with Swift 4SE-0161: Better Key-Value Coding for SwiftExpanding User-Defined Runtime Attributes in Xcode with Objective-CKuery: A type-safe Core Data query API using Swift 4's Smart KeyPathsSR-5220: Expose API to retrieve string representation of KeyPathWhat’s New in Xcode 9What’s New in Swift 4
Today we’re joined again by Ben Scheirman, who leads the team that builds the 5 Calls iOS app that encourages its users to engage with their elected representatives. Today we talk about measuring what’s really important, why 5 Calls is careful with its use of analytics, and using technical skills as a form of activism. […]
Today we’re joined by Ben Scheirman, who leads the team that builds the 5 Calls iOS app that encourages its users to engage with their elected representatives. We talk to Ben about what it’s like to work on an app with a team of volunteers, how they manage the development and support process for an […]
Congratulations, iPhreaks, on 100 Episodes! 02:50 - What’s Up, Ben Scheirman? Twitter GitHub Blog NSSreencast 03:30 - What’s Up, Rod Schmidt? Twitter GitHub InfiniteNIL 05:18 - The Evolution of The iPhreaks Show and the Panel 07:32 - WWDC 08:00 - The Amazon Dash Button 09:28 - WWDC (Cont’d) 11:34 - Show Topics: Growth Is Objective-C Dead? The Introduction of Swift 15:10 - Favorite Episodes Episode #076: Finding Jobs Episode #048: Sprite Kit with Jonathan Penn Episode #040: MGPCommandBus with Saul Mora Episode #006: Core Data with Saul Mora Episode #024: 64-bit with Mike Ash Episode #008: Prototypes with Ben Lachman 20:38 - Ben’s Guitar Podcast: Vibrato.fm @vibratofm Cohost: Daniel Pasco Recording Gear Heil PR-40 Dynamic Studio Recording Microphone Mackie Onyx 820i 8-channel Premium FireWire Recording Mixer Consumer Electronics Show (CES) 27:48 - The Show Process: Scheduling => Final Product Mandy = DevReps Chuck's Podcasting Setup Roland R-05 Studio WAVE/MP3 Recorder Zoom H5 Four-Track Portable Recorder (Ben) 30:40 - Getting Good Sound Derick Bailey Signals And Leaves Podcast WhisperRoom Sound Isolation Booths 37:20 - Listenership: Finding Our Audience Saul Mora’s NSBrief Podcast “Podcast Fatigue” Picks Shanghai (Ben) Scanbot (Ben) Vibrato.fm (Ben) Electro-Harmonix SOULFOOD Distortion/Fuzz/Overdrive Pedal (Ben) Hire Rod! (Rod) GoPiGo (Rod) The New James Bond Trailer: SPECTRE (Rod) RATIONAL FUNK with Dave King Video Series (Jaim) Shun VBS0200 Sora 2-Piece Knife Set (Alondo) CompareFolders (Andrew) TenFourFox (Andrew) The New Nintendo 3DS (Andrew) Steelheart (The Reckoners) by Brandon Sanderson (Chuck)
Congratulations, iPhreaks, on 100 Episodes! 02:50 - What’s Up, Ben Scheirman? Twitter GitHub Blog NSSreencast 03:30 - What’s Up, Rod Schmidt? Twitter GitHub InfiniteNIL 05:18 - The Evolution of The iPhreaks Show and the Panel 07:32 - WWDC 08:00 - The Amazon Dash Button 09:28 - WWDC (Cont’d) 11:34 - Show Topics: Growth Is Objective-C Dead? The Introduction of Swift 15:10 - Favorite Episodes Episode #076: Finding Jobs Episode #048: Sprite Kit with Jonathan Penn Episode #040: MGPCommandBus with Saul Mora Episode #006: Core Data with Saul Mora Episode #024: 64-bit with Mike Ash Episode #008: Prototypes with Ben Lachman 20:38 - Ben’s Guitar Podcast: Vibrato.fm @vibratofm Cohost: Daniel Pasco Recording Gear Heil PR-40 Dynamic Studio Recording Microphone Mackie Onyx 820i 8-channel Premium FireWire Recording Mixer Consumer Electronics Show (CES) 27:48 - The Show Process: Scheduling => Final Product Mandy = DevReps Chuck's Podcasting Setup Roland R-05 Studio WAVE/MP3 Recorder Zoom H5 Four-Track Portable Recorder (Ben) 30:40 - Getting Good Sound Derick Bailey Signals And Leaves Podcast WhisperRoom Sound Isolation Booths 37:20 - Listenership: Finding Our Audience Saul Mora’s NSBrief Podcast “Podcast Fatigue” Picks Shanghai (Ben) Scanbot (Ben) Vibrato.fm (Ben) Electro-Harmonix SOULFOOD Distortion/Fuzz/Overdrive Pedal (Ben) Hire Rod! (Rod) GoPiGo (Rod) The New James Bond Trailer: SPECTRE (Rod) RATIONAL FUNK with Dave King Video Series (Jaim) Shun VBS0200 Sora 2-Piece Knife Set (Alondo) CompareFolders (Andrew) TenFourFox (Andrew) The New Nintendo 3DS (Andrew) Steelheart (The Reckoners) by Brandon Sanderson (Chuck)
Today we’re joined by Ben Scheirman, who recently left his day job to go indie with his company NSScreencast. We talk about his background in programming, the start and growth of NSScreencast, how he planned his transition to his new indie career, and more. Conference We’re planning a conference! Release Notes will be held October […]
Panel Manton Reece (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Pete Hodgson (twitter github blog) Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:13 - Manton Reece Introduction VitalSource Riverfold Software 01:33 - Subscription APIs and Recurring Revenue 02:25 - How Subscriptions Work 12:10 - In-app Purchases Non-renewing Subscriptions Auto Renewing Subscriptions 16:11 - Verifying Receipts Store Kit 19:32 - Subscription Levels Changing Plans 25:14 - Payments Stripe vs PayPal Picks Eric S. Raymond: The Lost Art of C Structure Packing (Jaim) Torchlight II (Ben) SC2Casts (Ben) after_party (Ben) thebennybox (Ben) Using Receipts to Protect Your Digital Sales (Ben) Using Store Kit for In-App Purchases (Ben) 2 Free (Technical Support Incidents) TSIs (Pete) Bay Area Casual Carpool (Pete) Bay Area Bike Share (Pete) Lucky 13 (Pete) Mike Ash: Friday Q&A 2014-01-10: Let's Break Cocoa (Andrew) The official raywenderlich.com Objective-C style guide (Andrew) Bacon Ipsum (Chuck) David Brady: The Job Hunting Mindset (Chuck) David Brady: The Job Replacement Guide: Why I Have To Write This Book (Chuck) Stripe (Manton) Helios (Manton) Next Week MGPCommandBus with Saul Mora Transcript CHUCK: We got this Man-ton on our show! CHUCK: Hey everybody and welcome to episode 39 of the iPhreaks Show. This week on our panel we have Ben Scheirman. BEN: Hello, from Bayou City. CHUCK: Bayou City? BEN: That’s Houston’s nickname. If we had a Ruby Conference, it would be Bayou City Ruby, and no one would know where it was. CHUCK: Yeah, that’s true. ANDREW: We’d all be in Louisiana. [Chuckling] CHUCK: Why are y’all in New Orleans? JAIM: That would be dirty south [inaudible]. CHUCK: Hey, at least you can go [inaudible]. Anyway –. JAIM: No offense to my New Orleans listeners. CHUCK: [Chuckles] We also have Pete Hodgson. PETE: Good morning from San Francisco! I don’t know what her nickname is; I should look that up. JAIM: Golden Gate City, is that it? PETE: I was tempted to go for Rainbow City, but –. CHUCK: [Laughs] We’re batting two for two this morning. Alright, Andrew Madsen. ANDREW: Hi from Salt Lake City. CHUCK: Jaim Zuber. JAIM: Hello from the Twin Cities. CHUCK: I'm Charles Max Wood from DevChat.tv and this week we have a special guest, and that is Manton Reece. MANTON: Hello from Austin, Texas! Good to be here. CHUCK: Hey, I managed to say that right! Do you wanna introduce yourself for those of us who don’t know who you are? MANTON: Sure. My name is Manton Reece, and I work for a company called VitalSource doing e-book software with Mac iOS12 web development, and I have a little side business called Riverfold Software where I have a number of iOS and Mac apps, web apps. CHUCK: Cool! So we brought you on today to talk about subscription APIs and recurring revenue – is that a thing for iOS? MANTON: That’s a thing for iOS. It depends who you ask what kind of answer you're gonna get about the right way to do that, or whether you should do it. But it’s a thing, I would say. CHUCK: I thought the thing was to write Angry Birds and make millions of dollars. MANTON: That’s one way to do it. The problem with the app store – the great thing and the problem is that you do have these huge hits that make way too much money, but then most of us aren’t that lucky, and even the ones that are lucky have a big hit, you sell a bunch of copies, you quit your job, you say, “This is great” and you do really well. Eventually, your app’s gonna fall out of the top 10 and top 100 and sales are gonna drop off and so you have to do it all over again and get a big launch. So, the subscriptions, the hope is you get a little more recurring revenue,
Panel Manton Reece (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Pete Hodgson (twitter github blog) Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:13 - Manton Reece Introduction VitalSource Riverfold Software 01:33 - Subscription APIs and Recurring Revenue 02:25 - How Subscriptions Work 12:10 - In-app Purchases Non-renewing Subscriptions Auto Renewing Subscriptions 16:11 - Verifying Receipts Store Kit 19:32 - Subscription Levels Changing Plans 25:14 - Payments Stripe vs PayPal Picks Eric S. Raymond: The Lost Art of C Structure Packing (Jaim) Torchlight II (Ben) SC2Casts (Ben) after_party (Ben) thebennybox (Ben) Using Receipts to Protect Your Digital Sales (Ben) Using Store Kit for In-App Purchases (Ben) 2 Free (Technical Support Incidents) TSIs (Pete) Bay Area Casual Carpool (Pete) Bay Area Bike Share (Pete) Lucky 13 (Pete) Mike Ash: Friday Q&A 2014-01-10: Let's Break Cocoa (Andrew) The official raywenderlich.com Objective-C style guide (Andrew) Bacon Ipsum (Chuck) David Brady: The Job Hunting Mindset (Chuck) David Brady: The Job Replacement Guide: Why I Have To Write This Book (Chuck) Stripe (Manton) Helios (Manton) Next Week MGPCommandBus with Saul Mora Transcript CHUCK: We got this Man-ton on our show! CHUCK: Hey everybody and welcome to episode 39 of the iPhreaks Show. This week on our panel we have Ben Scheirman. BEN: Hello, from Bayou City. CHUCK: Bayou City? BEN: That's Houston's nickname. If we had a Ruby Conference, it would be Bayou City Ruby, and no one would know where it was. CHUCK: Yeah, that's true. ANDREW: We'd all be in Louisiana. [Chuckling] CHUCK: Why are y'all in New Orleans? JAIM: That would be dirty south [inaudible]. CHUCK: Hey, at least you can go [inaudible]. Anyway –. JAIM: No offense to my New Orleans listeners. CHUCK: [Chuckles] We also have Pete Hodgson. PETE: Good morning from San Francisco! I don't know what her nickname is; I should look that up. JAIM: Golden Gate City, is that it? PETE: I was tempted to go for Rainbow City, but –. CHUCK: [Laughs] We're batting two for two this morning. Alright, Andrew Madsen. ANDREW: Hi from Salt Lake City. CHUCK: Jaim Zuber. JAIM: Hello from the Twin Cities. CHUCK: I'm Charles Max Wood from DevChat.tv and this week we have a special guest, and that is Manton Reece. MANTON: Hello from Austin, Texas! Good to be here. CHUCK: Hey, I managed to say that right! Do you wanna introduce yourself for those of us who don't know who you are? MANTON: Sure. My name is Manton Reece, and I work for a company called VitalSource doing e-book software with Mac iOS12 web development, and I have a little side business called Riverfold Software where I have a number of iOS and Mac apps, web apps. CHUCK: Cool! So we brought you on today to talk about subscription APIs and recurring revenue – is that a thing for iOS? MANTON: That's a thing for iOS. It depends who you ask what kind of answer you're gonna get about the right way to do that, or whether you should do it. But it's a thing, I would say. CHUCK: I thought the thing was to write Angry Birds and make millions of dollars. MANTON: That's one way to do it. The problem with the app store – the great thing and the problem is that you do have these huge hits that make way too much money, but then most of us aren't that lucky, and even the ones that are lucky have a big hit, you sell a bunch of copies, you quit your job, you say, “This is great” and you do really well. Eventually, your app's gonna fall out of the top 10 and top 100 and sales are gonna drop off and so you have to do it all over again and get a big launch. So, the subscriptions, the hope is you get a little more recurring revenue,
Panel Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Ben Scheirman (twitter github blog NSSreencast) Discussion 01:32 - Model View Controller (MVC) and Model View Presenter (MVP) Ruby on Rails Model View ViewModel (MVVM) MFC Knockout.js 14:20 - Implementing MVC in iOS Apps 16:46 - Designing Models Alistair Cockburn: Hexagonal Architecture Domain-Driven Design: Tackling Complexity in the Heart of Software by Eric Evans Ruby Rogues Episode #78: Hexagonal Rails with Matt Wynne and Kevin Rutherford Ruby Rogues Episode #61: Domain Driven Design (DDD) with David Laribee 28:32 - Models and the Controller Notifications 31:00 - Key-Value Observing (KVO) 35:48 - Delegates and Blocks Picks Mattt Thompson: Key-Value Observing (Pete) Alistair Cockburn: Hexagonal Architecture (Pete) Saul Mora - Design Patterns for Mobile Apps (Pete) New Spring: The Novel (Wheel of Time) by Robert Jordan (Chuck) Freelancing Q&A (Chuck) Next Week OS X Transcript PETE: I can’t believe I beat Ben Scheirman today. CHUCK: With a stick? PETE: No, he’s in the wrong state for that. CHUCK: Hey everybody and welcome to episode 37 of the iPhreaks Show. This week on our panel we have Jaim Zuber. JAIM: Hello from Minneapolis, where it’s a balmy 4°. CHUCK: Pete Hodgson. PETE: You just totally stole my thunder. I was going to complain about being cold in San Francisco, but it’s a lot warmer than that. Hello from not-so-frigid San Francisco. CHUCK: How cold is it in San Francisco? PETE: [Chuckles] Like, 32°. I don’t know, it feels like it’s freezing, but it’s probably not even 32°. Probably warmer than that, just cold for San Francisco. CHUCK: Charles Max Wood from DevChat.tv and it’s also 4° here. PETE: Okay, I’ll stop complaining. JAIM: Really? Or is it just dry cold? CHUCK: Yeah, it’s just dry cold here, too. We did get some snow. JAIM: There we go. PETE: It all makes sense now. JAIM: A little bit nicer. CHUCK: Yeah. Gives you something to do – go shovel snow, go skiing – we’re making people jealous now, I'm sure. PETE: I think I've been here once in San Francisco when it snowed, and it was like two or three flakes on the top of Twin Peaks, which is like the only really tall bit of San Francisco, and people drove their cars up there in the middle of the night to see these snowflakes fall [chuckles]. But it wasn’t like snowball fights; it was like four snowflakes. It was really exciting; it made my year. No skiing that year for us at San Francisco. CHUCK: Oh, come on. Alright. Anyway, so today on our [inaudible] we have MVC. JAIM: Alright, we’re talking MVC – an MVC extravaganza of sorts, I think. CHUCK: Yup. [Chuckles] PETE: Maybe we should start off with a definition. CHUCK: [Chuckles] A definition. Thanks, Josh. JAIM: That might take the entire episode, I think. PETE: With MVC, I always get really confused. So I know what MVC stands for: Model-View-Controller. And I kind of understand the principles quite well. But what I don’t get is the difference between MVC and MVP, and then it gets really confusing when you start talking about some of the other things out there. This is a long shot. Do either of you two know the difference between MVC and MVP? Because I definitely could not answer that if I have to save my life. CHUCK: I have a very vague idea of what it means, so I'm not even going to venture to try because I’ll probably get it wrong. One thing that I can say, though is that I've come to iOS programming from a very strong Rails background, and MVC in Rails and MVC in iOS are not the same. JAIM: Yup. CHUCK: I tend to think of iOS as more of an MVVM, because –. JAIM: I forgot about that one. CHUCK: The controller acts more like a view model or a view controller than it does, you know, a full-on controller.
Panel Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Ben Scheirman (twitter github blog NSSreencast) Discussion 01:32 - Model View Controller (MVC) and Model View Presenter (MVP) Ruby on Rails Model View ViewModel (MVVM) MFC Knockout.js 14:20 - Implementing MVC in iOS Apps 16:46 - Designing Models Alistair Cockburn: Hexagonal Architecture Domain-Driven Design: Tackling Complexity in the Heart of Software by Eric Evans Ruby Rogues Episode #78: Hexagonal Rails with Matt Wynne and Kevin Rutherford Ruby Rogues Episode #61: Domain Driven Design (DDD) with David Laribee 28:32 - Models and the Controller Notifications 31:00 - Key-Value Observing (KVO) 35:48 - Delegates and Blocks Picks Mattt Thompson: Key-Value Observing (Pete) Alistair Cockburn: Hexagonal Architecture (Pete) Saul Mora - Design Patterns for Mobile Apps (Pete) New Spring: The Novel (Wheel of Time) by Robert Jordan (Chuck) Freelancing Q&A (Chuck) Next Week OS X Transcript PETE: I can't believe I beat Ben Scheirman today. CHUCK: With a stick? PETE: No, he's in the wrong state for that. CHUCK: Hey everybody and welcome to episode 37 of the iPhreaks Show. This week on our panel we have Jaim Zuber. JAIM: Hello from Minneapolis, where it's a balmy 4°. CHUCK: Pete Hodgson. PETE: You just totally stole my thunder. I was going to complain about being cold in San Francisco, but it's a lot warmer than that. Hello from not-so-frigid San Francisco. CHUCK: How cold is it in San Francisco? PETE: [Chuckles] Like, 32°. I don't know, it feels like it's freezing, but it's probably not even 32°. Probably warmer than that, just cold for San Francisco. CHUCK: Charles Max Wood from DevChat.tv and it's also 4° here. PETE: Okay, I'll stop complaining. JAIM: Really? Or is it just dry cold? CHUCK: Yeah, it's just dry cold here, too. We did get some snow. JAIM: There we go. PETE: It all makes sense now. JAIM: A little bit nicer. CHUCK: Yeah. Gives you something to do – go shovel snow, go skiing – we're making people jealous now, I'm sure. PETE: I think I've been here once in San Francisco when it snowed, and it was like two or three flakes on the top of Twin Peaks, which is like the only really tall bit of San Francisco, and people drove their cars up there in the middle of the night to see these snowflakes fall [chuckles]. But it wasn't like snowball fights; it was like four snowflakes. It was really exciting; it made my year. No skiing that year for us at San Francisco. CHUCK: Oh, come on. Alright. Anyway, so today on our [inaudible] we have MVC. JAIM: Alright, we're talking MVC – an MVC extravaganza of sorts, I think. CHUCK: Yup. [Chuckles] PETE: Maybe we should start off with a definition. CHUCK: [Chuckles] A definition. Thanks, Josh. JAIM: That might take the entire episode, I think. PETE: With MVC, I always get really confused. So I know what MVC stands for: Model-View-Controller. And I kind of understand the principles quite well. But what I don't get is the difference between MVC and MVP, and then it gets really confusing when you start talking about some of the other things out there. This is a long shot. Do either of you two know the difference between MVC and MVP? Because I definitely could not answer that if I have to save my life. CHUCK: I have a very vague idea of what it means, so I'm not even going to venture to try because I'll probably get it wrong. One thing that I can say, though is that I've come to iOS programming from a very strong Rails background, and MVC in Rails and MVC in iOS are not the same. JAIM: Yup. CHUCK: I tend to think of iOS as more of an MVVM, because –. JAIM: I forgot about that one. CHUCK: The controller acts more like a view model or a view controller than it does, you know, a full-on controller.
Panel Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:59 - Language Backgrounds 05:23 - Other Languages vs Objective-C Static Typing Go LINQ Semicolons First-Class Functions 18:46 - Benefits of Using Objective-C RubyMotion 25:44 - Building Apps Not Using Objective-C 29:36 - Xamarin 33:03 - Calatrava 33:39 - Appcelerator Titanium 38:01 - PhoneGap Picks Get an HD Antenna (Ben) FizzBuzzEnterpriseEdition (Jaim) Forecast (Pete) Stranger in a Strange Land by Robert A. Heinlein (Pete) MadTree Identity Crisis: A Black IPA from Cincinnati (Pete) The Walking Dead (Chuck) Duct Tape Marketing Revised & Updated: The World's Most Practical Small Business Marketing Guide by John Jantsch (Chuck) Next Week MVC Transcript CHUCK: Hey everybody and welcome to episode 36 of the iPhreaks Show. This week on our panel, we have Jaim Zuber. JAIM: Hello from Minneapolis. CHUCK: Pete Hodgson. PETE: Hello from San Francisco. CHUCK: Ben Scheirman’s going to be joining us in a few. This is a weird Christmas episode that we’re recording a little bit early. I’m Charles Max Wood from DevChat.tv and I just want to announce really quickly that if you go to RailsRampUp.com and you sign up before the end of the year, the 31st basically, actually I’m going to give you a few extra days. If you sign up by the 4th, then you can get 30 percent off if you want to learn Ruby on Rails, which is a handy thing for backend stuff. Anyway, this week we’re going to talk about some of the differences between some of our language backgrounds that we have. Some of us come from more enterprise languages like .NET or Java and some of us come from the hippie languages like Ruby, so should be an interesting discussion. JAIM: I think so. CHUCK: So real quickly, besides Objective-C, what are your languages that come out of your tool bag when you need to do something different? JAIM: Well for a long time, I did C# and .NET. Even before that, it was C and C++, embedded stuff, thick client stuff. So I can write C in any language, pretty much. [Chuckles] But things that I like with Objective-C is I’m getting more familiar with how a dynamic language really helps us out, especially with testing and being able to be more fluid with our development. So I like that. But I definitely do come from a static language background. I don’t know. What about you guys? PETE: So I guess I’ve been all over the place. I started off my career in C++. So when I first started doing iOS development, that actually felt quite familiar in some ways, doing manual memory management and all that fun stuff. And then I bounced around a bunch. I did some C#. I did a fair amount of Ruby. I still do quite a lot of Ruby. I do a lot of JavaScript. I do my current project, I’m writing Scala. I’m doing embedded C++ development in my spare time at the moment with Arduinos. So I guess I’ve been all over the place. But my main, my language I reach for the most is probably Ruby, still. And yeah, it’s interesting. I guess I’ve come to my journey into Objective-C is the opposite where I’m coming more from a dynamic place and seeing how it’s actually quite nice to have a type system sometimes, or have a static type system sometimes, and annoying as well. CHUCK: Very nice. BEN: It was a good fight we have right now. [Laughter] PETE: You know what? If you ever want to play with a strong type system, do some Scala development and you’ll either fall in love with type safety or you’ll absolutely hate it. It’s been driving me a little bit crazy but it’s also pretty cool. But anyway, that’s I guess a different podcast. CHUCK: Yeah. My background, I did Java and C++ in college but didn’t really take it seriously.
Panel Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:59 - Language Backgrounds 05:23 - Other Languages vs Objective-C Static Typing Go LINQ Semicolons First-Class Functions 18:46 - Benefits of Using Objective-C RubyMotion 25:44 - Building Apps Not Using Objective-C 29:36 - Xamarin 33:03 - Calatrava 33:39 - Appcelerator Titanium 38:01 - PhoneGap Picks Get an HD Antenna (Ben) FizzBuzzEnterpriseEdition (Jaim) Forecast (Pete) Stranger in a Strange Land by Robert A. Heinlein (Pete) MadTree Identity Crisis: A Black IPA from Cincinnati (Pete) The Walking Dead (Chuck) Duct Tape Marketing Revised & Updated: The World's Most Practical Small Business Marketing Guide by John Jantsch (Chuck) Next Week MVC Transcript CHUCK: Hey everybody and welcome to episode 36 of the iPhreaks Show. This week on our panel, we have Jaim Zuber. JAIM: Hello from Minneapolis. CHUCK: Pete Hodgson. PETE: Hello from San Francisco. CHUCK: Ben Scheirman's going to be joining us in a few. This is a weird Christmas episode that we're recording a little bit early. I'm Charles Max Wood from DevChat.tv and I just want to announce really quickly that if you go to RailsRampUp.com and you sign up before the end of the year, the 31st basically, actually I'm going to give you a few extra days. If you sign up by the 4th, then you can get 30 percent off if you want to learn Ruby on Rails, which is a handy thing for backend stuff. Anyway, this week we're going to talk about some of the differences between some of our language backgrounds that we have. Some of us come from more enterprise languages like .NET or Java and some of us come from the hippie languages like Ruby, so should be an interesting discussion. JAIM: I think so. CHUCK: So real quickly, besides Objective-C, what are your languages that come out of your tool bag when you need to do something different? JAIM: Well for a long time, I did C# and .NET. Even before that, it was C and C++, embedded stuff, thick client stuff. So I can write C in any language, pretty much. [Chuckles] But things that I like with Objective-C is I'm getting more familiar with how a dynamic language really helps us out, especially with testing and being able to be more fluid with our development. So I like that. But I definitely do come from a static language background. I don't know. What about you guys? PETE: So I guess I've been all over the place. I started off my career in C++. So when I first started doing iOS development, that actually felt quite familiar in some ways, doing manual memory management and all that fun stuff. And then I bounced around a bunch. I did some C#. I did a fair amount of Ruby. I still do quite a lot of Ruby. I do a lot of JavaScript. I do my current project, I'm writing Scala. I'm doing embedded C++ development in my spare time at the moment with Arduinos. So I guess I've been all over the place. But my main, my language I reach for the most is probably Ruby, still. And yeah, it's interesting. I guess I've come to my journey into Objective-C is the opposite where I'm coming more from a dynamic place and seeing how it's actually quite nice to have a type system sometimes, or have a static type system sometimes, and annoying as well. CHUCK: Very nice. BEN: It was a good fight we have right now. [Laughter] PETE: You know what? If you ever want to play with a strong type system, do some Scala development and you'll either fall in love with type safety or you'll absolutely hate it. It's been driving me a little bit crazy but it's also pretty cool. But anyway, that's I guess a different podcast. CHUCK: Yeah. My background, I did Java and C++ in college but didn't really take it seriously.
Panel Matthew Morey (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Andrew Madsen (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:35 - Matthew Morey Introduction Buoy Explorer ChaiOne 01:23 - Making Core Data Perform 05:45 - Importing Data 08:23 - Batch Sizing 09:37 - Photo Blobs 13:25 - Persistence 16:43 - Query Performance String Comparison Order of Operations Hashing Tokens 22:24 - Concurrency Models Context Notifications Picks iPad Telepresence Robot (Ben) Mercurial SCM (Andrew) Florian Kugler: Backstage with Nested Managed Object Contexts (Andrew) Needle Doctor (Jaim) Grado Labs Black1 (Jaim) Remote: Office Not Required by Jason Fried and David Heinemeier Hansson (Chuck) Audible (Chuck) High Performance Core Data (Matthew) Planet Money Podcast (Matthew) Core Data: Data Storage and Management for iOS, OS X, and iCloud by Marcus S. Zarra (Matthew) Next Week Security with Rob Napier Transcript BEN: That’s the problem is that when my kids see the mixer, they are like, “Oh, knobs and buttons! I'm going to push all of them.” CHUCK: Hey everybody and welcome to episode 31 of the iPhreaks Show. This week on our panel, we have Jaim Zuber. JAIM: Boy, that is one cranky Rottweiler. CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City. CHUCK: Ben Scheirman. BEN: Hi from Houston. CHUCK: I'm Charles Max Wood from devchat.tv and we have a special guest this week, and that is Matthew Morey. MATTHEW: Hello, also from Houston. CHUCK: So since you haven’t been on the show before, do you wanna introduce yourself? MATTHEW: Sure. So I got a couple of degrees in semiconductors physics and electrical engineering and quickly did nothing with those degrees. Spent a couple of years working on embedded electronics and a lot of C programming. And iOS SDK came out and jumped it to that, and been doing my own apps, including Buoy Explorer, which is a marine conditions app for surfers and water sports enthusiasts, where I implemented core data improperly there. And also I do work for a company here in Houston called ChaiOne, where we do a lot of client work. CHUCK: Yeah, I've met those guys before. MATTHEW: My boss is a real stickler. CHUCK: Yeah, I've heard that a couple of times. We brought John today to talk about high performance core data. Are there tricks to making core data perform or does it just work, or what? MATTHEW: Well, you can check the check box in the templates and it will generally just work. The problem is that it is such a complex framework and it’s just its so flexible and large. It’s very easy to put yourself in a bind or do the wrong thing and then suddenly, you'll have performance issues. I spent a lot of time making those mistakes, and I finally got to the point where I just wanted to figure all that out and kind of wrap my head around it. And so I've been focusing on that a lot, in particular. JAIM: You mentioned in Buoy Explorer, you initially did it improperly. Do you wanna elaborate on what mistakes you made there? MATTHEW: Yeah, so a common pattern in apps is you have to import data; either user’s data from the server or just general data, be it JSON, XML. On Buoy Explorer’s case, I'm downloading a bunch of data from these Buoys that are on the ocean and I measure wind conditions. And this data is very dense, so there's readings every 15 minutes from hundreds and thousands of these buoys. So there's a lot amount of data. And the way that the data is structured, I can't really fetch that data in a network efficient way. Unfortunately, I have to grab large amounts of data at a time. And importing that data into the persistence layer or into core data takes time; the data has to be parsed, the relationships have to be made, and then it has to be saved.
Panel Matthew Morey (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Andrew Madsen (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:35 - Matthew Morey Introduction Buoy Explorer ChaiOne 01:23 - Making Core Data Perform 05:45 - Importing Data 08:23 - Batch Sizing 09:37 - Photo Blobs 13:25 - Persistence 16:43 - Query Performance String Comparison Order of Operations Hashing Tokens 22:24 - Concurrency Models Context Notifications Picks iPad Telepresence Robot (Ben) Mercurial SCM (Andrew) Florian Kugler: Backstage with Nested Managed Object Contexts (Andrew) Needle Doctor (Jaim) Grado Labs Black1 (Jaim) Remote: Office Not Required by Jason Fried and David Heinemeier Hansson (Chuck) Audible (Chuck) High Performance Core Data (Matthew) Planet Money Podcast (Matthew) Core Data: Data Storage and Management for iOS, OS X, and iCloud by Marcus S. Zarra (Matthew) Next Week Security with Rob Napier Transcript BEN: That's the problem is that when my kids see the mixer, they are like, “Oh, knobs and buttons! I'm going to push all of them.” CHUCK: Hey everybody and welcome to episode 31 of the iPhreaks Show. This week on our panel, we have Jaim Zuber. JAIM: Boy, that is one cranky Rottweiler. CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City. CHUCK: Ben Scheirman. BEN: Hi from Houston. CHUCK: I'm Charles Max Wood from devchat.tv and we have a special guest this week, and that is Matthew Morey. MATTHEW: Hello, also from Houston. CHUCK: So since you haven't been on the show before, do you wanna introduce yourself? MATTHEW: Sure. So I got a couple of degrees in semiconductors physics and electrical engineering and quickly did nothing with those degrees. Spent a couple of years working on embedded electronics and a lot of C programming. And iOS SDK came out and jumped it to that, and been doing my own apps, including Buoy Explorer, which is a marine conditions app for surfers and water sports enthusiasts, where I implemented core data improperly there. And also I do work for a company here in Houston called ChaiOne, where we do a lot of client work. CHUCK: Yeah, I've met those guys before. MATTHEW: My boss is a real stickler. CHUCK: Yeah, I've heard that a couple of times. We brought John today to talk about high performance core data. Are there tricks to making core data perform or does it just work, or what? MATTHEW: Well, you can check the check box in the templates and it will generally just work. The problem is that it is such a complex framework and it's just its so flexible and large. It's very easy to put yourself in a bind or do the wrong thing and then suddenly, you'll have performance issues. I spent a lot of time making those mistakes, and I finally got to the point where I just wanted to figure all that out and kind of wrap my head around it. And so I've been focusing on that a lot, in particular. JAIM: You mentioned in Buoy Explorer, you initially did it improperly. Do you wanna elaborate on what mistakes you made there? MATTHEW: Yeah, so a common pattern in apps is you have to import data; either user's data from the server or just general data, be it JSON, XML. On Buoy Explorer's case, I'm downloading a bunch of data from these Buoys that are on the ocean and I measure wind conditions. And this data is very dense, so there's readings every 15 minutes from hundreds and thousands of these buoys. So there's a lot amount of data. And the way that the data is structured, I can't really fetch that data in a network efficient way. Unfortunately, I have to grab large amounts of data at a time. And importing that data into the persistence layer or into core data takes time; the data has to be parsed, the relationships have to be made, and then it has to be saved.
Panel Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discus...
Panel Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discus...
Panel Kyle Richter (twitter) Nathan Eror (twitter github) Ben Scheirman (twitter github blog NSSreencast) Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:01 - Kyle Richter & Nathan Eror Introduction Empirical Development 01:18 - The Future of iOS Devices (Speculations) Hardware Controllers Apple TV Latency 04:33 - Building Games on the iOS Platform Sprite Kit Unity Cocos2d UIKit 08:08 - Creative Assets (Art, Sound, Etc.) Infinity Blade II Letterpress Doodle Jump Slender 13:45 - Challenges of Building a Game Artist/Developer Relationships Production Art Tileable Art 22:29 - Tools 26:42 - Optimizations Pre-Allocating Only Rendering What’s Necessary 33:48 - Shaders 36:51 - GameCenter 40:04 - Getting into Game Development Picks Trainyard (Ben) Space Team (Ben) Duolingo (Ben) Game Coding Complete by Mike McShaffry (Ben) Physics of Light - John Carmack (Ben) Bret Victor - Inventing on Principle (Ben) Overcoming iOS Game Memory Limits (Jaim) Big Nerd Ranch Blog (Andrew) Code Signing and Mavericks (Andrew) CocoaColor (Andrew) NinjaHit (Rod) Joybox (Rod) OpenGameArt (Chuck) 080 JSJ Impact.js with Dominic Szablewski JavaScript Jabber #081: Testing Promises for Async JavaScript with Pete Hodgson (Chuck) Linear algebra for game developers ~ part 1 (Nathan) Linear algebra for game developers ~ part 2 (Nathan) Linear algebra for game developers ~ part 3 (Nathan) 3D Math Primer for Graphics and Game Development by Fletcher Dunn and Ian Parberry (Nathan) #AltDevBlog (Nathan) Sleep Cycle (Kyle) Pivvot (Kyle) Hungry Shark Evolution (Kyle) Next Week New iOS APIs Transcript CHUCK: Alright, Nathan, how do you say your last name? NATHAN: Eror, just like – CHUCK: Eror, okay. NATHAN: Yeah, just like NSError, except that it spelled differently. KYLE: Your middle initial is “S”, right? BEN: [Laughter] NATHAN: I wish. I’ve considered getting it legally changed. CHUCK: Hey everybody and welcome to Episode 27 of the iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Hello from Houston, eagerly awaiting the iPad event. CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City and I don’t get to buy anything today. CHUCK: Jaim Zuber. JAIM: Hello from Minneapolis! CHUCK: Rod Schmidt. ROD: Merry Christmas from Salt Lake City! CHUCK: I’m Charles Max Wood from DevChat.tv. This week, we have 2 special guests. We have Kyle Richter. KYLE: Good morning from Key West! CHUCK: And, do you prefer Nate or Nathan? NATHAN: Either one, it’s up to you. CHUCK: Nathan Eror. NATHAN: Hello! I’m also in Houston. CHUCK: Alright. Do you guys want to do a brief introduction since you haven’t been on the show before? KYLE: Sure, we can do that! My name is Kyle Richter. I’m the co-founder of Empirical Development. NATHAN: And I’m Nathan Eror. I am the game and development lead for Empirical Development. CHUCK: Awesome. Nobody plays games on their iOS device, so I’m not quite sure why we have you here. KYLE: No, it’s the passage fad for sure. I suspect that they’ll just be over in the next couple of weeks. CHUCK: Yeah. BEN: Once I get hardware, controllers are really going to ruin it. CHUCK: [Laughs] Do you think that’s going to be a thing? BEN: Yeah, they announced it at dub dub, that you’ll be able to get like sort of a Nintendo like shrink wrapped controller on top of the iPhone. I’m still waiting for one of those to come out. I want to play with one. KYLE: Logitech just released their print ad a couple of weeks ago for their first one. Mysteriously, it shows empty hand is holding a knife saying something’s missing [sound]. BEN: Oh! Awesome. CHUCK: [Laughs]
Panel Kyle Richter (twitter) Nathan Eror (twitter github) Ben Scheirman (twitter github blog NSSreencast) Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:01 - Kyle Richter & Nathan Eror Introduction Empirical Development 01:18 - The Future of iOS Devices (Speculations) Hardware Controllers Apple TV Latency 04:33 - Building Games on the iOS Platform Sprite Kit Unity Cocos2d UIKit 08:08 - Creative Assets (Art, Sound, Etc.) Infinity Blade II Letterpress Doodle Jump Slender 13:45 - Challenges of Building a Game Artist/Developer Relationships Production Art Tileable Art 22:29 - Tools 26:42 - Optimizations Pre-Allocating Only Rendering What's Necessary 33:48 - Shaders 36:51 - GameCenter 40:04 - Getting into Game Development Picks Trainyard (Ben) Space Team (Ben) Duolingo (Ben) Game Coding Complete by Mike McShaffry (Ben) Physics of Light - John Carmack (Ben) Bret Victor - Inventing on Principle (Ben) Overcoming iOS Game Memory Limits (Jaim) Big Nerd Ranch Blog (Andrew) Code Signing and Mavericks (Andrew) CocoaColor (Andrew) NinjaHit (Rod) Joybox (Rod) OpenGameArt (Chuck) 080 JSJ Impact.js with Dominic Szablewski JavaScript Jabber #081: Testing Promises for Async JavaScript with Pete Hodgson (Chuck) Linear algebra for game developers ~ part 1 (Nathan) Linear algebra for game developers ~ part 2 (Nathan) Linear algebra for game developers ~ part 3 (Nathan) 3D Math Primer for Graphics and Game Development by Fletcher Dunn and Ian Parberry (Nathan) #AltDevBlog (Nathan) Sleep Cycle (Kyle) Pivvot (Kyle) Hungry Shark Evolution (Kyle) Next Week New iOS APIs Transcript CHUCK: Alright, Nathan, how do you say your last name? NATHAN: Eror, just like – CHUCK: Eror, okay. NATHAN: Yeah, just like NSError, except that it spelled differently. KYLE: Your middle initial is “S”, right? BEN: [Laughter] NATHAN: I wish. I've considered getting it legally changed. CHUCK: Hey everybody and welcome to Episode 27 of the iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Hello from Houston, eagerly awaiting the iPad event. CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City and I don't get to buy anything today. CHUCK: Jaim Zuber. JAIM: Hello from Minneapolis! CHUCK: Rod Schmidt. ROD: Merry Christmas from Salt Lake City! CHUCK: I'm Charles Max Wood from DevChat.tv. This week, we have 2 special guests. We have Kyle Richter. KYLE: Good morning from Key West! CHUCK: And, do you prefer Nate or Nathan? NATHAN: Either one, it's up to you. CHUCK: Nathan Eror. NATHAN: Hello! I'm also in Houston. CHUCK: Alright. Do you guys want to do a brief introduction since you haven't been on the show before? KYLE: Sure, we can do that! My name is Kyle Richter. I'm the co-founder of Empirical Development. NATHAN: And I'm Nathan Eror. I am the game and development lead for Empirical Development. CHUCK: Awesome. Nobody plays games on their iOS device, so I'm not quite sure why we have you here. KYLE: No, it's the passage fad for sure. I suspect that they'll just be over in the next couple of weeks. CHUCK: Yeah. BEN: Once I get hardware, controllers are really going to ruin it. CHUCK: [Laughs] Do you think that's going to be a thing? BEN: Yeah, they announced it at dub dub, that you'll be able to get like sort of a Nintendo like shrink wrapped controller on top of the iPhone. I'm still waiting for one of those to come out. I want to play with one. KYLE: Logitech just released their print ad a couple of weeks ago for their first one. Mysteriously, it shows empty hand is holding a knife saying something's missing [sound]. BEN: Oh! Awesome. CHUCK: [Laughs]
Panel Steve Madsen (twitter github Light Year Software) Andrew Madsen (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:45 - Going Rogue Video 01:21 - Steve Madsen Introduction Light Year Software 02:00 - Networking with iOS WiFi Connection Speedtest.net HTTP Live Streaming 07:58 - Bandwidth and Quality of Connection 12:23 - Network Link Conditioner 15:29 - Reachability 24:27 - Networking Gotchas 26:54 - NSOperation Dependency 29:41 - AFNetworking RestKit 33:54 - Logging of Networking Requests and Response Runscope 38:49 - Networking Technologies 41:27 - WebSockets faye SocketRocket 45:48 - Fallacies of Distributed Computing Picks ARC vs. MRC Performance (Andrew) Machine language: how Siri found its voice (Andrew) Philips hue (Ben) hue (Ben) CopyPasteCharacter.com (Ben) Glyphboard (Andrew) Lawyers (Jaim) Runscope (Pete) estimote (Pete) Acme Pale Ale from North Coast Brewing (Pete) XCOM Enemy Unknown (Pete) RubyConf (Chuck) Airbnb (Chuck) Platform University (Chuck) Little Snitch (Steve) Upton Tea (Steve) Clojure: Enemy of the State (Rod) Hire Rod (Rod) Next Week Build Automation with Patrick Burleson Transcript CHUCK: Hey everybody and welcome to Episode 22 of The iPhreaks Show! This week on our panel, we have Andrew Madsen. ANDREW: Hi! I’m not a robot; I’m just going to [unclear] [Laughter] CHUCK: Ben Scheirman. BEN: Hello! I’m eagerly waiting of the arrival of GTA 5. So if the doorbell rings, I may run to go get it. CHUCK: Alright! Jaim Zuber. JAIM: Hello from Minneapolis! And also, not a robot. CHUCK: Pete Hodgson. PETE: Good morning from…I am not a robot. [Laughter] CHUCK: Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: I’m Charles Max Wood from DevChat.tv. Before I introduce our guest, I just want to make a real quick announcement. This Friday, meaning last Friday when you get this episode, was my ‘Freedom Day’. It was the day I was laid off from my job 3 years ago and went freelance. I’m celebrating that by putting up a free video that kind of chronicles my journey through freelancing and going from laid off to actually making enough money to live on. I’m going to have a lot of lessons that I learned in there and stuff, so if you’re interested, you can get that at GoingRogueVideo.com. BEN: Whoo-hoo! Congrats! CHUCK: Thanks! We also have a special guest, and that is Steve Madsen. STEVE: Hello from the Columbus, Ohio. CHUCK: Can we get you to introduce yourself real quick? STEVE: Sure! I own Light Year Software, which is a small consultancy here in Columbus specializing in Rails and iOS development. I’ve been doing that for about 7 years now since relocating back from the San Francisco Bay Area. CHUCK: Was it named after the unit of measure, or the cartoon character? STEVE: Unit of measure. CHUCK: Okay. STEVE: I was looking for something science-y. CHUCK: Awesome. PETE: What’s the cartoon character? CHUCK: Toy Story. Buzz Lightyear. PETE: Oh! Oh, yeah. CHUCK: Alright, we brought you on to talk about “Networking”. STEVE: Yes! That’s a big topic! CHUCK: I was going to say [laughs] it was kind of a broad topic. What in particular is interesting about networking with iOS or Cocoa? STEVE: Specifically about iOS, obviously, we’re talking about mobile devices. I think it’s safe to say that since mobile devices became as popular as they did with the introduction of the iPhone, the possibilities on how for us to build apps that communicate back to servers or communicate with people nearby have gone up a lot. CHUCK: Yeah, that makes sense.
Panel Steve Madsen (twitter github Light Year Software) Andrew Madsen (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Jaim Zuber (twitter Sharp Five Software) Pete Hodgson (twitter github blog) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:45 - Going Rogue Video 01:21 - Steve Madsen Introduction Light Year Software 02:00 - Networking with iOS WiFi Connection Speedtest.net HTTP Live Streaming 07:58 - Bandwidth and Quality of Connection 12:23 - Network Link Conditioner 15:29 - Reachability 24:27 - Networking Gotchas 26:54 - NSOperation Dependency 29:41 - AFNetworking RestKit 33:54 - Logging of Networking Requests and Response Runscope 38:49 - Networking Technologies 41:27 - WebSockets faye SocketRocket 45:48 - Fallacies of Distributed Computing Picks ARC vs. MRC Performance (Andrew) Machine language: how Siri found its voice (Andrew) Philips hue (Ben) hue (Ben) CopyPasteCharacter.com (Ben) Glyphboard (Andrew) Lawyers (Jaim) Runscope (Pete) estimote (Pete) Acme Pale Ale from North Coast Brewing (Pete) XCOM Enemy Unknown (Pete) RubyConf (Chuck) Airbnb (Chuck) Platform University (Chuck) Little Snitch (Steve) Upton Tea (Steve) Clojure: Enemy of the State (Rod) Hire Rod (Rod) Next Week Build Automation with Patrick Burleson Transcript CHUCK: Hey everybody and welcome to Episode 22 of The iPhreaks Show! This week on our panel, we have Andrew Madsen. ANDREW: Hi! I'm not a robot; I'm just going to [unclear] [Laughter] CHUCK: Ben Scheirman. BEN: Hello! I'm eagerly waiting of the arrival of GTA 5. So if the doorbell rings, I may run to go get it. CHUCK: Alright! Jaim Zuber. JAIM: Hello from Minneapolis! And also, not a robot. CHUCK: Pete Hodgson. PETE: Good morning from…I am not a robot. [Laughter] CHUCK: Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: I'm Charles Max Wood from DevChat.tv. Before I introduce our guest, I just want to make a real quick announcement. This Friday, meaning last Friday when you get this episode, was my ‘Freedom Day'. It was the day I was laid off from my job 3 years ago and went freelance. I'm celebrating that by putting up a free video that kind of chronicles my journey through freelancing and going from laid off to actually making enough money to live on. I'm going to have a lot of lessons that I learned in there and stuff, so if you're interested, you can get that at GoingRogueVideo.com. BEN: Whoo-hoo! Congrats! CHUCK: Thanks! We also have a special guest, and that is Steve Madsen. STEVE: Hello from the Columbus, Ohio. CHUCK: Can we get you to introduce yourself real quick? STEVE: Sure! I own Light Year Software, which is a small consultancy here in Columbus specializing in Rails and iOS development. I've been doing that for about 7 years now since relocating back from the San Francisco Bay Area. CHUCK: Was it named after the unit of measure, or the cartoon character? STEVE: Unit of measure. CHUCK: Okay. STEVE: I was looking for something science-y. CHUCK: Awesome. PETE: What's the cartoon character? CHUCK: Toy Story. Buzz Lightyear. PETE: Oh! Oh, yeah. CHUCK: Alright, we brought you on to talk about “Networking”. STEVE: Yes! That's a big topic! CHUCK: I was going to say [laughs] it was kind of a broad topic. What in particular is interesting about networking with iOS or Cocoa? STEVE: Specifically about iOS, obviously, we're talking about mobile devices. I think it's safe to say that since mobile devices became as popular as they did with the introduction of the iPhone, the possibilities on how for us to build apps that communicate back to servers or communicate with people nearby have gone up a lot. CHUCK: Yeah, that makes sense.
Panel Aaron Douglas (twitter blog) Ben Scheirman (twitter github blog NSSreencast) Andrew Madsen (twitter github blog) Rod Schmidt (twitter github infiniteNIL) Jaim Zuber (twitter Sharp Five Software) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:11 - Scalable Cloud Apps and iOS Programming 02:51 - iCloud Core Data 04:44 - Scalable Cloud Services Synchronization Amazon S3 Amazon EC2 Parse Syncing Authentication Simperium 09:31 - Use Cases Migraine Diary 12:00 - SDK and Basic Operations PFObject Querying PFQuery 18:11 - Platforms Supported by Parse Android Windows Phone MacOS .NET Unity UI 18:41 - Pros and Cons 25:59 - “Selling” Parse Use to Companies 27:20 - Choosing Parse Windows Azure 32:03 - Realtime Interaction Cheddar 34:17 - Other Services Simperium Firebase Helios Dropbox 38:32 - Advice for Others Appside/Server-side TICoreDataSync Understand Scaling 41:41 - Rolling your own vs using Parse Data Privacy Picks Mac Dev Weekly (Andrew) Gwynne Raskind: Friday Q&A 2012-03-02: Key-Value Observing Done Right: Take 2 (Andrew) 11 Untranslatable Words From Other Cultures (Andrew) Linode (Ben) Digital Ocean (Ben) Big Nerd Ranch talk on API design (Ben) FlatUIKit (Rod) iOS7Colors (Rod) Sylvan Dale Guest Ranch (Rod) Bloons Tower Defense (Chuck) Fieldrunners 2 (Chuck) Base 2 (Aaron) Spark Inspector (Aaron) Simplenote (Aaron) TICoreDataSync (Aaron) Next Week Networking with Cocoa with Steve Madsen Transcript CHUCK: So if I call you Andrew, or if I call Andrew, Aaron, sorry guys… AARON: [Laughs] BEN: Just run with it. CHUCK: Hey everybody and welcome to Episode 21 of The iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Happy Apple Christmas Day! And hello! CHUCK: Apple Christmas Day… BEN: Yeah! Today is the launch date. We’re going to find out all about in like an hour. CHUCK: Oh, that’s right! BEN: This would be all over the news by the time this sure comes out… ANDREW: It’s the only thing all of us were thinking about. BEN: [Inaudible] CHUCK: [Laughs] ANDREW: I can’t breathe. BEN: That’s right. We’re already on the clock, Chuck. CHUCK: Okay. BEN: [Laughs] CHUCK: We also have Andrew Madsen. ANDREW: Hi from Salt Lake City! CHUCK: Rod Schmidt. ROD: Hello from Salt Lake City as well! CHUCK: Jaim Zuber. JAIM: Hello! I just returned from the north shore of Lake Superior, where I was teaching berries to code iOS. CHUCK: I’m Charles Max Wood from DevChat.tv. We have a special guest, and that’s Aaron Douglas. AARON: Hey! How’s it going? I’m saying hi from Milwaukee, Wisconsin. CHUCK: Pete would be so proud of me, I didn’t butch your name. AARON: [Laughs] CHUCK: We have you on this week to talk about “Scalable Cloud Apps”. AARON: Yeah, definitely. CHUCK: I asked you before the show, I’m going to ask you again, how does that relate to iOS programming? AARON: I’ve noticed that a lot of us iOS devs come from more of the finite programming that we know – JavaScript and CSS – it’s just this kind of a logical step into iOS app development. I came from a Java enterprise background so I’m very familiar with writing apps that are behind other apps. I noticed that a lot of iOS developers are afraid of integrating their app with a server, and that there’s a lot of apps that have to talk to other users or there’s central data. So I think it’s a really important topic just because apps can be so much more powerful if they are connected with other people. CHUCK: Absolutely. Are you talking about API services like Facebook or Twitter? Or, are you talking about more of the backend systems like Parse? AARON: Yeah, it’s more of the backend systems like Parse.
Panel Aaron Douglas (twitter blog) Ben Scheirman (twitter github blog NSSreencast) Andrew Madsen (twitter github blog) Rod Schmidt (twitter github infiniteNIL) Jaim Zuber (twitter Sharp Five Software) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:11 - Scalable Cloud Apps and iOS Programming 02:51 - iCloud Core Data 04:44 - Scalable Cloud Services Synchronization Amazon S3 Amazon EC2 Parse Syncing Authentication Simperium 09:31 - Use Cases Migraine Diary 12:00 - SDK and Basic Operations PFObject Querying PFQuery 18:11 - Platforms Supported by Parse Android Windows Phone MacOS .NET Unity UI 18:41 - Pros and Cons 25:59 - “Selling” Parse Use to Companies 27:20 - Choosing Parse Windows Azure 32:03 - Realtime Interaction Cheddar 34:17 - Other Services Simperium Firebase Helios Dropbox 38:32 - Advice for Others Appside/Server-side TICoreDataSync Understand Scaling 41:41 - Rolling your own vs using Parse Data Privacy Picks Mac Dev Weekly (Andrew) Gwynne Raskind: Friday Q&A 2012-03-02: Key-Value Observing Done Right: Take 2 (Andrew) 11 Untranslatable Words From Other Cultures (Andrew) Linode (Ben) Digital Ocean (Ben) Big Nerd Ranch talk on API design (Ben) FlatUIKit (Rod) iOS7Colors (Rod) Sylvan Dale Guest Ranch (Rod) Bloons Tower Defense (Chuck) Fieldrunners 2 (Chuck) Base 2 (Aaron) Spark Inspector (Aaron) Simplenote (Aaron) TICoreDataSync (Aaron) Next Week Networking with Cocoa with Steve Madsen Transcript CHUCK: So if I call you Andrew, or if I call Andrew, Aaron, sorry guys… AARON: [Laughs] BEN: Just run with it. CHUCK: Hey everybody and welcome to Episode 21 of The iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Happy Apple Christmas Day! And hello! CHUCK: Apple Christmas Day… BEN: Yeah! Today is the launch date. We're going to find out all about in like an hour. CHUCK: Oh, that's right! BEN: This would be all over the news by the time this sure comes out… ANDREW: It's the only thing all of us were thinking about. BEN: [Inaudible] CHUCK: [Laughs] ANDREW: I can't breathe. BEN: That's right. We're already on the clock, Chuck. CHUCK: Okay. BEN: [Laughs] CHUCK: We also have Andrew Madsen. ANDREW: Hi from Salt Lake City! CHUCK: Rod Schmidt. ROD: Hello from Salt Lake City as well! CHUCK: Jaim Zuber. JAIM: Hello! I just returned from the north shore of Lake Superior, where I was teaching berries to code iOS. CHUCK: I'm Charles Max Wood from DevChat.tv. We have a special guest, and that's Aaron Douglas. AARON: Hey! How's it going? I'm saying hi from Milwaukee, Wisconsin. CHUCK: Pete would be so proud of me, I didn't butch your name. AARON: [Laughs] CHUCK: We have you on this week to talk about “Scalable Cloud Apps”. AARON: Yeah, definitely. CHUCK: I asked you before the show, I'm going to ask you again, how does that relate to iOS programming? AARON: I've noticed that a lot of us iOS devs come from more of the finite programming that we know – JavaScript and CSS – it's just this kind of a logical step into iOS app development. I came from a Java enterprise background so I'm very familiar with writing apps that are behind other apps. I noticed that a lot of iOS developers are afraid of integrating their app with a server, and that there's a lot of apps that have to talk to other users or there's central data. So I think it's a really important topic just because apps can be so much more powerful if they are connected with other people. CHUCK: Absolutely. Are you talking about API services like Facebook or Twitter? Or, are you talking about more of the backend systems like Parse? AARON: Yeah, it's more of the backend systems like Parse.
Panel Cesare Rocchi (twitter Studio Magnolia) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:31 - Cesare Rocchi Introduction CocoaConf Boston iCloud for Developers: Automatically Sync Your iOS Data, Everywhere, All the Time by Cesare Rocchi 03:53 - Auto Layout Cocoa Auto Layout Guide 04:45 - Resolutions Spring and Struts Localization Right-Left Languages 09:15 - Using vs Not Using Auto Layout Constraints Using Interface Builder 22:40 - Auto Layout & Animation Esoteric Animations 26:53 - ASCII Art 29:46 - Intrinsic Size 33:07 - Apple saying you should have used Auto Layout last year 36:22 - Open Source Tools that give Auto Layout-type Capabilities Wrappers Picks Online 3D Model Converter (Ben) Saint Arnold Icon Gold (Bière De Saison) - Saint Arnold Brewing Company (Ben) NoFlo (Rod) Cocoa Slopes (Rod) Dev Juice: Using your tech support incidents (Andrew) objc.io (Andrew) The Choosatron (Jaim) The Replacements (Jaim) Reveal (Pete) Bitter American (Pete) Teensy 3.0 (Pete) The Best Map Ever Made of America's Racial Segregation (Chuck) Kindle (Chuck) Kindle for Mac (Chuck) Clean Office (Chuck) FrameAccessor (Cesare) App.net (Cesare) Appsterdam (Cesare) Wasatch Brewery: Polygamy Porter (Rod) Next Week iOS Development with Vim with Jason Felice Transcript CESARE: By the way, I have a whole set of pictures of Starbucks bartenders trying to spell correctly my name and write it on the cup. [Laughter] CHUCK: Hey everybody and welcome to Episode 19 of The iPhreaks Show! This week on our panel, we have Pete Hodgson. PETE: Insert amusing British culture reference here! CHUCK: Ben Scheirman. BEN: Hello from H-Town! CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City. CHUCK: Jaim Zuber. JAIM: Hello from Houston! I'm not actually in Houston, but it feels like I'm in Houston. [Laughter] JAIM: It's like 95 degrees out here in Minnesota. I could like call a van that's full of ice cream or something, I don't know. CHUCK: [Laughs] BEN: Yeah! It's only 87 right now, so you're actually hotter than us. JAIM: I think we switched. CHUCK: And humid? JAIM: Humid? Not super humid, but yeah, pretty bad. CHUCK: We also have Rod Schmidt. ROD: Hello from Salt Lake City! CHUCK: I'm Charles Max Wood from DevChat.tv. We have a special guest this way, and that's Cesare Rocchi or Rocci. CESARE: Rocci. Rocci. Right. CHUCK: Rocci. Yeah, I knew that! PETE: You almost did it! CHUCK: I almost did it, yeah. I'm famous I guess for botching people's last names, but I speak Italian and I read Italian, and Italian's read like it's written. Anyway, Cesare, since you're new to the show, do you want to introduce yourself really quickly? CESARE: Yes! I'm Cesare. Hello from my office, which is in Italy on East Coast in Rimini, to be exact. I'm a iOS developer, I got started in 2007, and yes, that's before the SDK, the official SDK was released. I did a bunch of client work. Now, I'm focusing on my applications. I speak at conferences; I'll be at CocoaConf in Boston at the end of October. I write books; my latest book is “iCloud for Developers” published by The PragProg. That's all. There's more, but that's all at the moment. CHUCK: [Laughs] BEN: Is your book like a coping mechanism for iCloud? [Laughter] CESARE: Yeah, kind of. And yes, there is a chapter about Core Data and iCloud. And it's not anti-pages. CHUCK: [Laughs] BEN: It's not like, this page intentionally left link? CESARE: No! BEN: [Laughs] CESARE: Though I thought of that [laughs]. CHUCK: It looks and feels like a big band aid for your pain that you have.
Panel Cesare Rocchi (twitter Studio Magnolia) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Andrew Madsen (twitter github blog) Jaim Zuber (twitter Sharp Five Software) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:31 - Cesare Rocchi Introduction CocoaConf Boston iCloud for Developers: Automatically Sync Your iOS Data, Everywhere, All the Time by Cesare Rocchi 03:53 - Auto Layout Cocoa Auto Layout Guide 04:45 - Resolutions Spring and Struts Localization Right-Left Languages 09:15 - Using vs Not Using Auto Layout Constraints Using Interface Builder 22:40 - Auto Layout & Animation Esoteric Animations 26:53 - ASCII Art 29:46 - Intrinsic Size 33:07 - Apple saying you should have used Auto Layout last year 36:22 - Open Source Tools that give Auto Layout-type Capabilities Wrappers Picks Online 3D Model Converter (Ben) Saint Arnold Icon Gold (Bière De Saison) - Saint Arnold Brewing Company (Ben) NoFlo (Rod) Cocoa Slopes (Rod) Dev Juice: Using your tech support incidents (Andrew) objc.io (Andrew) The Choosatron (Jaim) The Replacements (Jaim) Reveal (Pete) Bitter American (Pete) Teensy 3.0 (Pete) The Best Map Ever Made of America’s Racial Segregation (Chuck) Kindle (Chuck) Kindle for Mac (Chuck) Clean Office (Chuck) FrameAccessor (Cesare) App.net (Cesare) Appsterdam (Cesare) Wasatch Brewery: Polygamy Porter (Rod) Next Week iOS Development with Vim with Jason Felice Transcript CESARE: By the way, I have a whole set of pictures of Starbucks bartenders trying to spell correctly my name and write it on the cup. [Laughter] CHUCK: Hey everybody and welcome to Episode 19 of The iPhreaks Show! This week on our panel, we have Pete Hodgson. PETE: Insert amusing British culture reference here! CHUCK: Ben Scheirman. BEN: Hello from H-Town! CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City. CHUCK: Jaim Zuber. JAIM: Hello from Houston! I’m not actually in Houston, but it feels like I’m in Houston. [Laughter] JAIM: It’s like 95 degrees out here in Minnesota. I could like call a van that’s full of ice cream or something, I don’t know. CHUCK: [Laughs] BEN: Yeah! It’s only 87 right now, so you’re actually hotter than us. JAIM: I think we switched. CHUCK: And humid? JAIM: Humid? Not super humid, but yeah, pretty bad. CHUCK: We also have Rod Schmidt. ROD: Hello from Salt Lake City! CHUCK: I’m Charles Max Wood from DevChat.tv. We have a special guest this way, and that’s Cesare Rocchi or Rocci. CESARE: Rocci. Rocci. Right. CHUCK: Rocci. Yeah, I knew that! PETE: You almost did it! CHUCK: I almost did it, yeah. I’m famous I guess for botching people’s last names, but I speak Italian and I read Italian, and Italian’s read like it’s written. Anyway, Cesare, since you’re new to the show, do you want to introduce yourself really quickly? CESARE: Yes! I’m Cesare. Hello from my office, which is in Italy on East Coast in Rimini, to be exact. I’m a iOS developer, I got started in 2007, and yes, that’s before the SDK, the official SDK was released. I did a bunch of client work. Now, I’m focusing on my applications. I speak at conferences; I’ll be at CocoaConf in Boston at the end of October. I write books; my latest book is “iCloud for Developers” published by The PragProg. That’s all. There’s more, but that’s all at the moment. CHUCK: [Laughs] BEN: Is your book like a coping mechanism for iCloud? [Laughter] CESARE: Yeah, kind of. And yes, there is a chapter about Core Data and iCloud. And it’s not anti-pages. CHUCK: [Laughs] BEN: It’s not like, this page intentionally left link? CESARE: No! BEN: [Laughs] CESARE: Though I thought of that [laughs]. CHUCK: It looks and feels like a big band aid for your pain that you have.
Panel Ken Auer (twitter github RoleModel Software) Pete Hodgson (twitter github blog) Andrew Madsen (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Jaim Zuber (twitter Sharp Five Software) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:57 - Software Craftsmanship Defined 01:26 - Manifesto for Software Craftsmanship 03:43 - Apprenticeship Situated Learning: Legitimate Peripheral Participation (Learning in Doing: Social, Cognitive and Computational Perspectives) by Jean Lave & Etienne Wenger Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt 09:25 - At what level do you consider somebody a “Craftsman”? 10:46 - How can you tell somebody is a Craftsman? Pair Programming 15:14 - Empathy One Love For Nurses 20:36 - Code Retreats, Katas, and Reviews RoleModel Software’s Craftsmanship Academy 28:07 - Pairing Partner Knowledge Levels and Learning 31:38 - Professionals and Professionalism 35:26 - Cost vs Value Don't Make Squirrel Burgers Picks Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt (Pete) My Life with Code Reviews (Pete) CodeRunner (Andrew) QuickRadar (Andrew) Rogue Brutal Bitter IPA (Ben) Web Economy Bullshit Generator (Ben) 7 Little Words (Ben) Plants vs. Zombies 2 (Ben) LSNewsletterInvite (Rod) Toastmasters International (Jaim) exercism.io (Chuck) 4 Pics 1 Song (Chuck) Go to User Group Meetings (Chuck) Situated Learning: Legitimate Peripheral Participation (Learning in Doing: Social, Cognitive and Computational Perspectives) by Jean Lave & Etienne Wenger (Ken) Next Week Autolayout with Cesare Rocchi Transcript CHUCK: Hey everybody and welcome to Episode 18 of The iPhreaks Show! This week on our panel, we have Pete Hodgson. PETE: Hello from San Francisco! I can’t think of anything funny to say. CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City! CHUCK: Ben Scheirman. BEN: Hello from Houston! CHUCK: Jaim Zuber. JAIM: Hello from Minneapolis! CHUCK: Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: I’m Charles Max Wood from DevChat.tv. This week, we have a special guest, and that’s Ken, is it Auer? KEN: That’s correct! And I’m in Holly Springs, North Carolina. CHUCK: Awesome. We brought you on the show today to talk about “Software Craftsmanship”. KEN: Good! That’s what I came for! CHUCK: Oh, good! BEN: You mean cowboy coding? CHUCK: [Laughs] Cowboy coding… KEN: Not at all. CHUCK: [Laughs] Don’t make him get his gun. BEN: [Chuckles] CHUCK: Do you want to just explain what Software Craftsmanship is? KEN: In a nutshell, I would say caring about the craft and what you’re doing and how you’re building yourself with. I tend to come from the school that Software Craftsmanship as opposed to the people who software craftsman and impress other people [unclear]. CHUCK: [Laughs] I like that. I know a lot of the latter. I know a few other former, too. I’ve talked to few people about Software Craftsmanship before. The one that comes to mind first off is Micah Martin who’s Uncle Bob’s son over at 8th Light. When I talked to him, he actually mentioned the Manifesto for Software Craftsmanship. Is that something that you try and stand by? And, is there a lot of culture and (I’m trying to think of what the right word is), sort of like the Agile Manifesto where there’s all of this extra stuff around it. Does the Software Craftsmanship kind of have that as well? KEN: I think, what are in the Software Craftsmanship Manifesto, if I understand it right because I wasn’t there when they put it up, it’s really just about software people that are often just get them treated like mushrooms; shelved in the dark in the corner if they don’t, and hopefully they go out. The whole idea was, “This is something that we should be proud of and do well.
Panel Ken Auer (twitter github RoleModel Software) Pete Hodgson (twitter github blog) Andrew Madsen (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Jaim Zuber (twitter Sharp Five Software) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 00:57 - Software Craftsmanship Defined 01:26 - Manifesto for Software Craftsmanship 03:43 - Apprenticeship Situated Learning: Legitimate Peripheral Participation (Learning in Doing: Social, Cognitive and Computational Perspectives) by Jean Lave & Etienne Wenger Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt 09:25 - At what level do you consider somebody a “Craftsman”? 10:46 - How can you tell somebody is a Craftsman? Pair Programming 15:14 - Empathy One Love For Nurses 20:36 - Code Retreats, Katas, and Reviews RoleModel Software's Craftsmanship Academy 28:07 - Pairing Partner Knowledge Levels and Learning 31:38 - Professionals and Professionalism 35:26 - Cost vs Value Don't Make Squirrel Burgers Picks Pragmatic Thinking and Learning: Refactor Your Wetware by Andy Hunt (Pete) My Life with Code Reviews (Pete) CodeRunner (Andrew) QuickRadar (Andrew) Rogue Brutal Bitter IPA (Ben) Web Economy Bullshit Generator (Ben) 7 Little Words (Ben) Plants vs. Zombies 2 (Ben) LSNewsletterInvite (Rod) Toastmasters International (Jaim) exercism.io (Chuck) 4 Pics 1 Song (Chuck) Go to User Group Meetings (Chuck) Situated Learning: Legitimate Peripheral Participation (Learning in Doing: Social, Cognitive and Computational Perspectives) by Jean Lave & Etienne Wenger (Ken) Next Week Autolayout with Cesare Rocchi Transcript CHUCK: Hey everybody and welcome to Episode 18 of The iPhreaks Show! This week on our panel, we have Pete Hodgson. PETE: Hello from San Francisco! I can't think of anything funny to say. CHUCK: Andrew Madsen. ANDREW: Hi from Salt Lake City! CHUCK: Ben Scheirman. BEN: Hello from Houston! CHUCK: Jaim Zuber. JAIM: Hello from Minneapolis! CHUCK: Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: I'm Charles Max Wood from DevChat.tv. This week, we have a special guest, and that's Ken, is it Auer? KEN: That's correct! And I'm in Holly Springs, North Carolina. CHUCK: Awesome. We brought you on the show today to talk about “Software Craftsmanship”. KEN: Good! That's what I came for! CHUCK: Oh, good! BEN: You mean cowboy coding? CHUCK: [Laughs] Cowboy coding… KEN: Not at all. CHUCK: [Laughs] Don't make him get his gun. BEN: [Chuckles] CHUCK: Do you want to just explain what Software Craftsmanship is? KEN: In a nutshell, I would say caring about the craft and what you're doing and how you're building yourself with. I tend to come from the school that Software Craftsmanship as opposed to the people who software craftsman and impress other people [unclear]. CHUCK: [Laughs] I like that. I know a lot of the latter. I know a few other former, too. I've talked to few people about Software Craftsmanship before. The one that comes to mind first off is Micah Martin who's Uncle Bob's son over at 8th Light. When I talked to him, he actually mentioned the Manifesto for Software Craftsmanship. Is that something that you try and stand by? And, is there a lot of culture and (I'm trying to think of what the right word is), sort of like the Agile Manifesto where there's all of this extra stuff around it. Does the Software Craftsmanship kind of have that as well? KEN: I think, what are in the Software Craftsmanship Manifesto, if I understand it right because I wasn't there when they put it up, it's really just about software people that are often just get them treated like mushrooms; shelved in the dark in the corner if they don't, and hopefully they go out. The whole idea was, “This is something that we should be proud of and do well.
Panel Andrew Madsen (twitter github blog) Pete Hodgson (twitter github blog) Rod Schmidt (twitter github infiniteNIL) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:33 - The Apple Developer Portal 01:57 - When the portal goes down 05:35 - What the Portal Does iBooks System Status 07:20 - Certificates and Provisioning Profiles Wildcard Certificate nomad cupertino shenzhen venice 17:50 - Managing the Device List 21:45 - Clients and Developer Accounts 23:00 - NDA 27:04 - Submitting Apps to the App Store 29:04 - iTunes Connect 34:24 - Rejecting Apps 37:46 - Apps on Particular Devices Version Requirements 44:05 - Entitlements 44:44 - TSIs Picks FontAwesome-for-iOS (Rod) When to use -retainCount? (Andrew) Strange Loop (Pete) Boxen (Pete) Homebrew (Pete) The Changelog (Pete) Brian Gorby - AppResigner: Easily re-sign iOS apps (Ben) Apple - Support - iPhone - Enterprise (Ben) Average App Store Review Times (Ben) Brian Stevens / Data Porters (Chuck) Canvas by Instructure (Chuck) Wistia (Chuck) Next Week Performance Tuning with Brandon Alexander Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 16 of the iPhreaks Show! This week on our panel, we have Andrew Madsen. ANDREW: Hi from Salt Lake City! CHUCK: Pete Hodgson. PETE: Hello from San Francisco where BART is not striking here. BEN: [Chuckles] CHUCK: Where what is not striking? BEN: BART. CHUCK: BART. PETE: Bay Area Rapid Transit. CHUCK: Rod! ROD: Hello from Salt Lake City! CHUCK: And we also have Ben Scheirman. BEN: Hello from Houston where it's 180 degrees! [Laughter] CHUCK: I'm Charles Max Wood from DevChat.tv. Real quickly, one of the reasons that I do this show is so that I can get work. So if you need backend work for your iPhone application and you're interested in using Ruby on Rails, I am available for hire! Alright, well let's get to the show! This week, we were talking about and having a discussion on the "Apple Developer Portal", when it's working. [Chuckles] ANDREW: Which is, sort of mostly right now. BEN: Yeah. We'll be back soon [laughs]. CHUCK: Yup. PETE: Except not soon. [Laughter] PETE: For some definition to see. CHUCK: Yeah. ANDREW: Oh, man! BEN: Yeah. They have a very loose definition of soon, I think. PETE: [Chuckles] BEN: Do we want to start off by just talking about what happened there? I don't know if anybody has any like behind the scenes info on the portal being down, but from what I heard, they detected some sort of hack attempt. And then shortly there after, this, I think he was an Israeli hacker, or I shouldn't say hacker, security researcher, came out and said -- CHUCK: [Laughs] BEN: "I successfully exploited this thing, and I told you about it and filed a radar. I just wanted to see how deep it went," so he pulled out, I don't remember how many users' contact info from the Dev Portal, and he posted a little screencast on the type of data he got and the level. I don't know if that -- they seem to be related because it was like around the exact same time.
Panel Andrew Madsen (twitter github blog) Pete Hodgson (twitter github blog) Rod Schmidt (twitter github infiniteNIL) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:33 - The Apple Developer Portal 01:57 - When the portal goes down 05:35 - What the Portal Does iBooks System Status 07:20 - Certificates and Provisioning Profiles Wildcard Certificate nomad cupertino shenzhen venice 17:50 - Managing the Device List 21:45 - Clients and Developer Accounts 23:00 - NDA 27:04 - Submitting Apps to the App Store 29:04 - iTunes Connect 34:24 - Rejecting Apps 37:46 - Apps on Particular Devices Version Requirements 44:05 - Entitlements 44:44 - TSIs Picks FontAwesome-for-iOS (Rod) When to use -retainCount? (Andrew) Strange Loop (Pete) Boxen (Pete) Homebrew (Pete) The Changelog (Pete) Brian Gorby - AppResigner: Easily re-sign iOS apps (Ben) Apple - Support - iPhone - Enterprise (Ben) Average App Store Review Times (Ben) Brian Stevens / Data Porters (Chuck) Canvas by Instructure (Chuck) Wistia (Chuck) Next Week Performance Tuning with Brandon Alexander Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 16 of the iPhreaks Show! This week on our panel, we have Andrew Madsen. ANDREW: Hi from Salt Lake City! CHUCK: Pete Hodgson. PETE: Hello from San Francisco where BART is not striking here. BEN: [Chuckles] CHUCK: Where what is not striking? BEN: BART. CHUCK: BART. PETE: Bay Area Rapid Transit. CHUCK: Rod! ROD: Hello from Salt Lake City! CHUCK: And we also have Ben Scheirman. BEN: Hello from Houston where it's 180 degrees! [Laughter] CHUCK: I'm Charles Max Wood from DevChat.tv. Real quickly, one of the reasons that I do this show is so that I can get work. So if you need backend work for your iPhone application and you're interested in using Ruby on Rails, I am available for hire! Alright, well let's get to the show! This week, we were talking about and having a discussion on the "Apple Developer Portal", when it's working. [Chuckles] ANDREW: Which is, sort of mostly right now. BEN: Yeah. We'll be back soon [laughs]. CHUCK: Yup. PETE: Except not soon. [Laughter] PETE: For some definition to see. CHUCK: Yeah. ANDREW: Oh, man! BEN: Yeah. They have a very loose definition of soon, I think. PETE: [Chuckles] BEN: Do we want to start off by just talking about what happened there? I don't know if anybody has any like behind the scenes info on the portal being down, but from what I heard, they detected some sort of hack attempt. And then shortly there after, this, I think he was an Israeli hacker, or I shouldn't say hacker, security researcher, came out and said -- CHUCK: [Laughs] BEN: "I successfully exploited this thing, and I told you about it and filed a radar. I just wanted to see how deep it went," so he pulled out, I don't remember how many users' contact info from the Dev Portal, and he posted a little screencast on the type of data he got and the level. I don't know if that -- they seem to be related because it was like around the exact same time.
Panel Jaim Zuber (twitter Sharp Five Software) Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Andrew Madsen (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:10 - Jaim Zuber Introduction 02:15 - Integrating somebody else's code into your project without using Cocoapods Dragging & dropping source files Static Library Approach Frameworks Circumventing 10:38 - Cocoapods Libraries Cocoa Controls 12:37 - Frequently Used Pods AFNetworking RestKit ocmock Kiwi SVProgressHUD BlocksKit 15:29 - Getting a Pod into a Library or Application Versioning Multiple Targets Specifying a Path to a Repository Handling Multiple Platforms 28:07 - RubyMotion and Cocoapods motion-cocoapods 29:29 - Using Cocoapods on Client Work 30:08 - Testing 32:17 - Creating Your Own Pods Hosting Dependencies Picks Objective-C Modules (Andrew) UTAsync (Jaim) CocoaPods Xcode Plugin (Rod) VVDocumenter (Rod) CocoaDocs (Ben) cocoapods-xcode-plugin (Ben) Getting Things Done by David Allen (Chuck) Omnifocus (Chuck) Next Week The Developer Portal Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 15 of the iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Hello from Houston! CHUCK: We have Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: Andrew Madsen. ANDREW: Hello also from Salt Lake! CHUCK: And we have a new guest panelist, that is Jaim Zuber. JAIM: Hello from Minneapolis! CHUCK: Do you want to introduce yourself really quickly since you're new to the show? JAIM: Sure, happy to! Independent consultants, I've been doing iOS stuff for about 2-3 years; before that, I did some kind of .NET stuff. Way before that, I did a lot of C++ and C stuff in kind of the past life. But, yeah, I'm doing iOS right now, mobile stuff, and enjoying it! CHUCK: Sounds good! I'm Charles Max Wood from DevChat.tv. This week, we're going to talk about "CocoaPods". BEN: Yay! CHUCK: [Laughs] ROD: [Chuckles] JAIM: I'm cuckoo for CocoaPods. CHUCK: There we go. JAIM: [Laughs] BEN: I'm a super fan of CocoaPods. I wonder if we have any haters in the audience, or on the panel. ANDREW: Yeah, I'm the hater. BEN: [Inaudible] ANDREW: Not really. BEN: Okay [laughs]. ANDREW: I just don't use it. BEN: You say you're the dissenting opinion? ANDREW: I can do that, sure. CHUCK: I've had people basically say, "Well, it's just like having bundler - bundlers of utility in Ruby for iOS!" I was like, "Oh! That sounds nice." But that doesn't really tell me necessarily how it works. BEN: So can we start off by maybe describing what it takes to integrate somebody else's code into your project without something like CocoaPods? ROD: [Chuckles] CHUCK: Yes. Yes, let's frame the public. BEN: Anybody want to describe this for like, say, a moderately complex library? ANDREW: It depends on how complicated the library is. But at its simplest, you can just drag source code from their project into yours and add it to your project, and that's it. But I think,
Panel Jaim Zuber (twitter Sharp Five Software) Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Andrew Madsen (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:10 - Jaim Zuber Introduction 02:15 - Integrating somebody else’s code into your project without using Cocoapods Dragging & dropping source files Static Library Approach Frameworks Circumventing 10:38 - Cocoapods Libraries Cocoa Controls 12:37 - Frequently Used Pods AFNetworking RestKit ocmock Kiwi SVProgressHUD BlocksKit 15:29 - Getting a Pod into a Library or Application Versioning Multiple Targets Specifying a Path to a Repository Handling Multiple Platforms 28:07 - RubyMotion and Cocoapods motion-cocoapods 29:29 - Using Cocoapods on Client Work 30:08 - Testing 32:17 - Creating Your Own Pods Hosting Dependencies Picks Objective-C Modules (Andrew) UTAsync (Jaim) CocoaPods Xcode Plugin (Rod) VVDocumenter (Rod) CocoaDocs (Ben) cocoapods-xcode-plugin (Ben) Getting Things Done by David Allen (Chuck) Omnifocus (Chuck) Next Week The Developer Portal Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 15 of the iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Hello from Houston! CHUCK: We have Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: Andrew Madsen. ANDREW: Hello also from Salt Lake! CHUCK: And we have a new guest panelist, that is Jaim Zuber. JAIM: Hello from Minneapolis! CHUCK: Do you want to introduce yourself really quickly since you're new to the show? JAIM: Sure, happy to! Independent consultants, I've been doing iOS stuff for about 2-3 years; before that, I did some kind of .NET stuff. Way before that, I did a lot of C++ and C stuff in kind of the past life. But, yeah, I'm doing iOS right now, mobile stuff, and enjoying it! CHUCK: Sounds good! I'm Charles Max Wood from DevChat.tv. This week, we're going to talk about "CocoaPods". BEN: Yay! CHUCK: [Laughs] ROD: [Chuckles] JAIM: I'm cuckoo for CocoaPods. CHUCK: There we go. JAIM: [Laughs] BEN: I'm a super fan of CocoaPods. I wonder if we have any haters in the audience, or on the panel. ANDREW: Yeah, I'm the hater. BEN: [Inaudible] ANDREW: Not really. BEN: Okay [laughs]. ANDREW: I just don't use it. BEN: You say you're the dissenting opinion? ANDREW: I can do that, sure. CHUCK: I've had people basically say, "Well, it's just like having bundler - bundlers of utility in Ruby for iOS!" I was like, "Oh! That sounds nice." But that doesn't really tell me necessarily how it works. BEN: So can we start off by maybe describing what it takes to integrate somebody else's code into your project without something like CocoaPods? ROD: [Chuckles] CHUCK: Yes. Yes, let's frame the public. BEN: Anybody want to describe this for like, say, a moderately complex library? ANDREW: It depends on how complicated the library is. But at its simplest, you can just drag source code from their project into yours and add it to your project, and that's it. But I think,
Panel Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:09 - Backend Experience 01:49 - Connecting to APIs & Synchronization Windows Azure Mobile Services iCloud Wasabi Sync TICoreDataSync Buoy Explorer 07:10 - Third-party APIs OAuth Instragram Stripe 11:57 - Parsing NSXMLParser NSXMLDocument Cocoa with Love: Using libxml2 for XML parsing and XPath queries in Cocoa libxml 18:18 - JSON RestKit 22:38 - Libraries AFNetworking 31:02 - Building Backends for iOS Applications DeliRadio 35:05 - Security SSL Pinning Charles API Keys Secrets 41:28 - Support Caching NSURLCache 45:34 - Charles Picks objc.io (Rod) Mackie | Onyx Blackjack 2x2 USB Interface (Ben) Runscope (Ben) Daring Fireball: Markdown Syntax Documentation (Chuck) Next Week Debugging Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 13 of the iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Hello from Houston! CHUCK: We also have Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: I'm Charles Max Wood from DevChat.tv. This week, we're going to be talking about "Connecting to Backend APIs and just Backend Systems" in general. I'm curious, how much of this kind of thing have you guys done in the past? BEN: That's pretty much the central part of any app that we develop. Most apps aren't really self-contained; it's a functionality. A lot of them required data that's accessible somewhere else. Or, even if you generate the data on the device, usually, people want to access that data elsewhere as well. So sometimes, you can consider things like iCloud, but that's more of an Apple-centric solution if you're billing it out for the web or for multiple platforms, and maybe you would consider building your own API and synchronizing with that. CHUCK: When you're talking about building your own API, I know that there are these syncing services out there that you send data to it and it does something with it, do you know under what circumstances that would be a good idea versus building your own API that does specific things with the data on the backend? BEN: It really depends on where, how much focus you have, how much time do you have to build something and where your skill set lies. For folks who aren't server-side developers, building an API is actually a tall order, and there are plenty of solutions out there that will do that for you at the cost of, sometimes flexibility, sometimes data portability, and you're sort of at the whim of the interface that they provide for you. But there's systems like Windows Add/Removal services, which allow you to just focus on your part - the mobile client portion of it. But they have support for saving data and sending push notifications, that sort of thing. There's also parse and there's just a bunch of others out there that can synchronize data. Some of them are focused purely on synchronizing Core Data models. So there's iCloud Core Data, which receives some sort of a lot of negative press,
Panel Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:09 - Backend Experience 01:49 - Connecting to APIs & Synchronization Windows Azure Mobile Services iCloud Wasabi Sync TICoreDataSync Buoy Explorer 07:10 - Third-party APIs OAuth Instragram Stripe 11:57 - Parsing NSXMLParser NSXMLDocument Cocoa with Love: Using libxml2 for XML parsing and XPath queries in Cocoa libxml 18:18 - JSON RestKit 22:38 - Libraries AFNetworking 31:02 - Building Backends for iOS Applications DeliRadio 35:05 - Security SSL Pinning Charles API Keys Secrets 41:28 - Support Caching NSURLCache 45:34 - Charles Picks objc.io (Rod) Mackie | Onyx Blackjack 2x2 USB Interface (Ben) Runscope (Ben) Daring Fireball: Markdown Syntax Documentation (Chuck) Next Week Debugging Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 13 of the iPhreaks Show! This week on our panel, we have Ben Scheirman. BEN: Hello from Houston! CHUCK: We also have Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: I'm Charles Max Wood from DevChat.tv. This week, we're going to be talking about "Connecting to Backend APIs and just Backend Systems" in general. I'm curious, how much of this kind of thing have you guys done in the past? BEN: That's pretty much the central part of any app that we develop. Most apps aren't really self-contained; it's a functionality. A lot of them required data that's accessible somewhere else. Or, even if you generate the data on the device, usually, people want to access that data elsewhere as well. So sometimes, you can consider things like iCloud, but that's more of an Apple-centric solution if you're billing it out for the web or for multiple platforms, and maybe you would consider building your own API and synchronizing with that. CHUCK: When you're talking about building your own API, I know that there are these syncing services out there that you send data to it and it does something with it, do you know under what circumstances that would be a good idea versus building your own API that does specific things with the data on the backend? BEN: It really depends on where, how much focus you have, how much time do you have to build something and where your skill set lies. For folks who aren't server-side developers, building an API is actually a tall order, and there are plenty of solutions out there that will do that for you at the cost of, sometimes flexibility, sometimes data portability, and you're sort of at the whim of the interface that they provide for you. But there's systems like Windows Add/Removal services, which allow you to just focus on your part - the mobile client portion of it. But they have support for saving data and sending push notifications, that sort of thing. There's also parse and there's just a bunch of others out there that can synchronize data. Some of them are focused purely on synchronizing Core Data models. So there's iCloud Core Data, which receives some sort of a lot of negative press,
Panel Sam Soffes (twitter github blog) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:13 - Sam Soffes Introduction Seesaw/@Seesaw 01:46 - Roon.io/@roon_app Drew Wilson Octopress 03:03 - Open Source in iOS Writing Tests Flurry TestFlight PLCrashReporter 09:00 - Open Sourcing Projects cheddar-ios Licensing 13:19 - Shared code between iOS and Mac 004 iPhreaks Show - Mac Development with Josh Abernathy Categories 17:48 - Contributions, Pull Requests & Bug Fixes 20:15 - Open Source Libraries CocoaPods 28:40 - Finding Reliable Libraries Rating Activity READMEs Cocoa Controls 32:44 - Contributing to Open Source Projects Consistency (tabs vs spaces) Testing Squashing Commits Submitting Code/Changes 38:09 - Cleaning Up Pull Requests 41:08 - Open Source at Seesaw SEEActivityIndicatorView Picks semver.org (Ben) Anker Astro3E Portable External Battery Pack (Ben) Cards Against Humanity (Ben) Travis CI (Pete) Pete Hodgson: Using Travis CI and xctool to build and test iOS apps (Pete) Reading Application Licenses (Pete) AppCoreKit (Rod) WatchESPN AppleTV App (Rod) Put Objective-C Back On The Map (Ben) David Siteman Garland: Create Awesome Online Courses (Chuck) How to Write a Nonfiction eBook in 21 Days by Steve Scott (Chuck) Amazon Prime (Chuck) Kickoff App (Sam) redcarpet (Sam) Next Week Backends Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 12 of iPhreaks! This week on our panel, we have Pete Hodgson. PETE: Buongiorno from rainy San Francisco this morning! CHUCK: Ben Scheirman. BEN: I can give you a very jet lagged hello from Houston! CHUCK: Rod Schimdt. ROD: Hello from Salt Lake City! CHUCK: I'm Charles Max Wood from DevChat.tv. This week, we have a special guest and that's Sam Soffes. Alright! SAM: Hello! CHUCK: Do you want to introduce yourself real quick? SAM: Sure! I live in Kentucky right now. I work in a company called "Seesaw". I'm working on a bunch of little projects; Roon had been my main side project right now. CHUCK: Awesome. BEN: That's Roon, R-O-O-N.io, right? SAM: You got it! BEN: Yeah, I'm primed I've got the best username. All I need to do now is blog a little bit. [Laughter] BEN: So Roon is like a blogging platform. What makes it kind of compelling in comparison to some of the other things that are out there? SAM: It's a product I did with Drew Wilson. If you're not familiar with his work, he's a spectacular designer. I always wanted it that makes it really simple that we wanted to use, and hopefully other people wanted to use, too, so he just made something really simple that's really beautiful, and there's also a native iPhone app. The iPad app is like the universal, it's almost done; I'm submitting it, hopefully, this week. And we have a Mac app in the Pipeline. It's just like we wanted to make a really good writing experience that's simple and pretty and hopefully people like it. CHUCK: Awesome. BEN: Yeah,
Panel Sam Soffes (twitter github blog) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:13 - Sam Soffes Introduction Seesaw/@Seesaw 01:46 - Roon.io/@roon_app Drew Wilson Octopress 03:03 - Open Source in iOS Writing Tests Flurry TestFlight PLCrashReporter 09:00 - Open Sourcing Projects cheddar-ios Licensing 13:19 - Shared code between iOS and Mac 004 iPhreaks Show - Mac Development with Josh Abernathy Categories 17:48 - Contributions, Pull Requests & Bug Fixes 20:15 - Open Source Libraries CocoaPods 28:40 - Finding Reliable Libraries Rating Activity READMEs Cocoa Controls 32:44 - Contributing to Open Source Projects Consistency (tabs vs spaces) Testing Squashing Commits Submitting Code/Changes 38:09 - Cleaning Up Pull Requests 41:08 - Open Source at Seesaw SEEActivityIndicatorView Picks semver.org (Ben) Anker Astro3E Portable External Battery Pack (Ben) Cards Against Humanity (Ben) Travis CI (Pete) Pete Hodgson: Using Travis CI and xctool to build and test iOS apps (Pete) Reading Application Licenses (Pete) AppCoreKit (Rod) WatchESPN AppleTV App (Rod) Put Objective-C Back On The Map (Ben) David Siteman Garland: Create Awesome Online Courses (Chuck) How to Write a Nonfiction eBook in 21 Days by Steve Scott (Chuck) Amazon Prime (Chuck) Kickoff App (Sam) redcarpet (Sam) Next Week Backends Transcript [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 12 of iPhreaks! This week on our panel, we have Pete Hodgson. PETE: Buongiorno from rainy San Francisco this morning! CHUCK: Ben Scheirman. BEN: I can give you a very jet lagged hello from Houston! CHUCK: Rod Schimdt. ROD: Hello from Salt Lake City! CHUCK: I'm Charles Max Wood from DevChat.tv. This week, we have a special guest and that's Sam Soffes. Alright! SAM: Hello! CHUCK: Do you want to introduce yourself real quick? SAM: Sure! I live in Kentucky right now. I work in a company called "Seesaw". I'm working on a bunch of little projects; Roon had been my main side project right now. CHUCK: Awesome. BEN: That's Roon, R-O-O-N.io, right? SAM: You got it! BEN: Yeah, I'm primed I've got the best username. All I need to do now is blog a little bit. [Laughter] BEN: So Roon is like a blogging platform. What makes it kind of compelling in comparison to some of the other things that are out there? SAM: It's a product I did with Drew Wilson. If you're not familiar with his work, he's a spectacular designer. I always wanted it that makes it really simple that we wanted to use, and hopefully other people wanted to use, too, so he just made something really simple that's really beautiful, and there's also a native iPhone app. The iPad app is like the universal, it's almost done; I'm submitting it, hopefully, this week. And we have a Mac app in the Pipeline. It's just like we wanted to make a really good writing experience that's simple and pretty and hopefully people like it. CHUCK: Awesome. BEN: Yeah,
Panel Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Pete Hodgson (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:22 - Launching a UIWebView and pointing it to a remote URL Autoplay Streaming over 3G or LTE 03:01 - HTTP Live Streaming AVPlayer MPMoviePlayerController MPMoviePlayerViewController Microsoft Silverlight AV Foundation 11:24 - AVPlayer Asynchronous Key Loading Protocol AVURLAsset Learning Core Audio: A Hands-On Guide to Audio Programming for Mac and iOS by Chris Adamson Key-Value Observing (KVO) Deli Radio AVAudioPlayer 19:42 - Use Cases System Sound Audio Categories Playback Control AVQueuePlayer 32:21 - Core Audio Learning Core Audio: A Hands-On Guide to Audio Programming for Mac and iOS by Chris Adamson Adding effects to audio and video AV Audio Mix Echo 38:51 - Interruption 42:04 - Network Connections Network Link Conditioner in Lion - Matt Gemmell 44:07 - .MP3, .CAF, .AIFF, .AAC 45:32 - Transcoding Zencoder M3U Picks Audacity (Rod) Customers (Rod) The Little Redis Book by Karl Seguin (Ben) MMDrawerController (Ben) MacBuildServer (Ben) OpenEmu (Ben) Reveal App (Pete) Snap CI (Pete) Buildozer (Pete) ThinkGeek (Pete) Commit (Chuck) Candy Crush Saga (Chuck) Mini Golf MatchUp (Chuck) Portal (Chuck) Next Week Web Apps & HTML5 vs Native Apps Transcript ROD: I'd get my Dad a Darth Vader helmet...because he's my father. BEN: Yeah, I got it. [laughter] [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 10 of iPhreaks! That's right, we're on the double digits now! This week on our panel, we have Ben Scheirman. BEN: Hello from NSScreencast.com! CHUCK: Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: Pete Hodgson. PETE: Hello from thepete.net! [Ben laughs] CHUCK: And I'm Charles Max Wood from DevChat.tv! This week we are going to be talking about "Audio and Video" in your apps. BEN: So this is where you just launch a UIWebView and point it to remote URL and then you're done? PETE: I did that once. CHUCK: All the games that I play, I have to turn the sound off on them. PETE: I actually did do that once, Ben. BEN: Yes, it's the quick and easy way to do it. PETE: Yup, it was surprisingly good. I discovered, we're going to jump straight into rearcane pit of noise, but didn't let you do "Autoplay" on video; Apple doesn't want you to do that. Can you still not do that if you're using native video? BEN: You can do whatever you want with the native stuff. PETE: Okay. So for the web one, you can't. But this -- BEN: I think it's just kind of the Safari limitation... PETE: Yeah [chuckles]. CHUCK: Every browser should do that. That rise me asked, too. PETE: I think they say it's a battery issue more than anything else like they don't want you firing up the radio to download like 50 maybe, to start offering conserve concept. BEN: Yeah, they have gotten a little bit more strict on the rules for that, and I don't remember the exact numbers off the top of my head.
Panel Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Pete Hodgson (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:22 - Launching a UIWebView and pointing it to a remote URL Autoplay Streaming over 3G or LTE 03:01 - HTTP Live Streaming AVPlayer MPMoviePlayerController MPMoviePlayerViewController Microsoft Silverlight AV Foundation 11:24 - AVPlayer Asynchronous Key Loading Protocol AVURLAsset Learning Core Audio: A Hands-On Guide to Audio Programming for Mac and iOS by Chris Adamson Key-Value Observing (KVO) Deli Radio AVAudioPlayer 19:42 - Use Cases System Sound Audio Categories Playback Control AVQueuePlayer 32:21 - Core Audio Learning Core Audio: A Hands-On Guide to Audio Programming for Mac and iOS by Chris Adamson Adding effects to audio and video AV Audio Mix Echo 38:51 - Interruption 42:04 - Network Connections Network Link Conditioner in Lion - Matt Gemmell 44:07 - .MP3, .CAF, .AIFF, .AAC 45:32 - Transcoding Zencoder M3U Picks Audacity (Rod) Customers (Rod) The Little Redis Book by Karl Seguin (Ben) MMDrawerController (Ben) MacBuildServer (Ben) OpenEmu (Ben) Reveal App (Pete) Snap CI (Pete) Buildozer (Pete) ThinkGeek (Pete) Commit (Chuck) Candy Crush Saga (Chuck) Mini Golf MatchUp (Chuck) Portal (Chuck) Next Week Web Apps & HTML5 vs Native Apps Transcript ROD: I'd get my Dad a Darth Vader helmet...because he's my father. BEN: Yeah, I got it. [laughter] [This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.] CHUCK: Hey everybody and welcome to Episode 10 of iPhreaks! That's right, we're on the double digits now! This week on our panel, we have Ben Scheirman. BEN: Hello from NSScreencast.com! CHUCK: Rod Schmidt. ROD: Hello from Salt Lake! CHUCK: Pete Hodgson. PETE: Hello from thepete.net! [Ben laughs] CHUCK: And I'm Charles Max Wood from DevChat.tv! This week we are going to be talking about "Audio and Video" in your apps. BEN: So this is where you just launch a UIWebView and point it to remote URL and then you're done? PETE: I did that once. CHUCK: All the games that I play, I have to turn the sound off on them. PETE: I actually did do that once, Ben. BEN: Yes, it's the quick and easy way to do it. PETE: Yup, it was surprisingly good. I discovered, we're going to jump straight into rearcane pit of noise, but didn't let you do "Autoplay" on video; Apple doesn't want you to do that. Can you still not do that if you're using native video? BEN: You can do whatever you want with the native stuff. PETE: Okay. So for the web one, you can't. But this -- BEN: I think it's just kind of the Safari limitation... PETE: Yeah [chuckles]. CHUCK: Every browser should do that. That rise me asked, too. PETE: I think they say it's a battery issue more than anything else like they don't want you firing up the radio to download like 50 maybe, to start offering conserve concept. BEN: Yeah, they have gotten a little bit more strict on the rules for that, and I don't remember the exact numbers off the top of my head.
Panel Saul Mora (twitter github NSBrief) Rod Schmidt (twitter github infiniteNIL) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:22 - Cora Data Core Data Programming Guide SQLite fmdb Transient Entities and Core Data | Cocoa Is My Girlfriend 07:50 - Stores and Contexts NSManagedObject Persistent Store Coordinator Core Data Editor Creating a CoreData Model in Code | Cocoanetics 21:17 - Faulting and Fetching NSFetchRequest The Law of Leaky Abstractions -com.apple.CoreData.SQLDebug 1 Base 2 CouchDB MongoDB TokyoCabinet 27:48 - Is Core Data the right tool for the job? Brent Simmons: On switching away from Core Data 29:46 - Managed Object Context MagicalRecord Core Data and Threads, Without the Headache | Cocoa Is My Girlfriend Core Data: Data Storage and Management for iOS, OS X, and iCloud by Marcus S. Zarra 38:22 - Importing Data 40:08 - Predicates Predicate Programming Guide Picks mogenerator (Ben) PonyDebugger (Ben) xctool (Pete) Neo4j (Pete) AeroPress (Pete) TICoreDataSync (Rod) Countly (Rod) Heil PR-40 Dynamic Studio Recording Microphone (Chuck) Roland R-05 Studio WAVE/MP3 Recorder (Chuck) iOS Programming: The Big Nerd Ranch Guide by Aaron Hillegass (Chuck) NSBrief (Saul) Wasabi Sync (Saul) Sip (Saul) Star Trek II: The Wrath of Khan (Saul) Next Week WWDC Transcript SAUL: I like your style. CHUCK: Hey everybody and welcome to Episode 6 of iPhreaks! This week on our panel we have, Rod Schmidt ROD: Hello from Salt Lake City! CHUCK: We also have Pete Hodgson. PETE: Good morning from San Francisco! CHUCK: We also have Ben Scheirman. BEN: Hello from Houston, Texas! CHUCK: I'm Charles Max Wood from DevChat.tv. And we have a special guest this week, that is Saul Mora! SAUL: Hello from Denver! CHUCK: Denver? I thought you said Fort Collins? Is that not the same thing? SAUL: [laughs] No, that's where the beer is. Okay [laughs] CHUCK: Oh, I see. SAUL: Right. But yeah, that wouldn't be so bad to go and get some beer now. CHUCK: If you go and get too much beer, is it a one-way trip [inaudible]? SAUL: [chuckles] Yeah, well, I have to take some guest with me. CHUCK: Oh, here you go. SAUL: But no...yeah, that's where the New Belgium Brewery is, so I take guests over there quite often. So for anybody comes and visit me in Denver, definitely head on up there. CHUCK: Well I don't drink alcohol, but I'm going to be in Denver this weekend. SAUL: Cool! CHUCK: Maybe I'll come and shake your hand, buy you lunch, or something. SAUL: Yeah! Just let me know! CHUCK: Awesome! ROD: You get to be the driver. [laughter] SAUL: There you go! CHUCK: I don't know what my wife would say about that. [laughter] SAUL: Oh, there are plenty of breweries out here to visit. So, we can visit them anywhere. CHUCK: Awesome! Well this week, we're going to be talking about CoreData. Or, do you call it Core Data? SAUL: [laughs] I thought that was an English thing; Pete might know. PETE: I'll refer to it as Core Data! [laughter] PETE: It's the French pronunciation. I still say Data; it's one of the few English things that I still say in the English way [inaudible]. SAUL: So do you say Beta or Beta? PETE: Oh, that's a good (question). I think I say Beta now just because it's like a -- I was going to say just because it's a software thing, but Beta was a software thing. So, I don't know. SAUL: We have gotten to him! Great! [Chuck laughs] PETE: Yeah. My covers are blown. [laughter] PETE: Actually, I'm native Texan. CHUCK: Yeah, you've seen that? Now you only sound cool when you're talking about things other than computers. PETE: Yup. CHUCK: Alright. So CoreData,
Panel Saul Mora (twitter github NSBrief) Rod Schmidt (twitter github infiniteNIL) Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:22 - Cora Data Core Data Programming Guide SQLite fmdb Transient Entities and Core Data | Cocoa Is My Girlfriend 07:50 - Stores and Contexts NSManagedObject Persistent Store Coordinator Core Data Editor Creating a CoreData Model in Code | Cocoanetics 21:17 - Faulting and Fetching NSFetchRequest The Law of Leaky Abstractions -com.apple.CoreData.SQLDebug 1 Base 2 CouchDB MongoDB TokyoCabinet 27:48 - Is Core Data the right tool for the job? Brent Simmons: On switching away from Core Data 29:46 - Managed Object Context MagicalRecord Core Data and Threads, Without the Headache | Cocoa Is My Girlfriend Core Data: Data Storage and Management for iOS, OS X, and iCloud by Marcus S. Zarra 38:22 - Importing Data 40:08 - Predicates Predicate Programming Guide Picks mogenerator (Ben) PonyDebugger (Ben) xctool (Pete) Neo4j (Pete) AeroPress (Pete) TICoreDataSync (Rod) Countly (Rod) Heil PR-40 Dynamic Studio Recording Microphone (Chuck) Roland R-05 Studio WAVE/MP3 Recorder (Chuck) iOS Programming: The Big Nerd Ranch Guide by Aaron Hillegass (Chuck) NSBrief (Saul) Wasabi Sync (Saul) Sip (Saul) Star Trek II: The Wrath of Khan (Saul) Next Week WWDC Transcript SAUL: I like your style. CHUCK: Hey everybody and welcome to Episode 6 of iPhreaks! This week on our panel we have, Rod Schmidt ROD: Hello from Salt Lake City! CHUCK: We also have Pete Hodgson. PETE: Good morning from San Francisco! CHUCK: We also have Ben Scheirman. BEN: Hello from Houston, Texas! CHUCK: I'm Charles Max Wood from DevChat.tv. And we have a special guest this week, that is Saul Mora! SAUL: Hello from Denver! CHUCK: Denver? I thought you said Fort Collins? Is that not the same thing? SAUL: [laughs] No, that's where the beer is. Okay [laughs] CHUCK: Oh, I see. SAUL: Right. But yeah, that wouldn't be so bad to go and get some beer now. CHUCK: If you go and get too much beer, is it a one-way trip [inaudible]? SAUL: [chuckles] Yeah, well, I have to take some guest with me. CHUCK: Oh, here you go. SAUL: But no...yeah, that's where the New Belgium Brewery is, so I take guests over there quite often. So for anybody comes and visit me in Denver, definitely head on up there. CHUCK: Well I don't drink alcohol, but I'm going to be in Denver this weekend. SAUL: Cool! CHUCK: Maybe I'll come and shake your hand, buy you lunch, or something. SAUL: Yeah! Just let me know! CHUCK: Awesome! ROD: You get to be the driver. [laughter] SAUL: There you go! CHUCK: I don't know what my wife would say about that. [laughter] SAUL: Oh, there are plenty of breweries out here to visit. So, we can visit them anywhere. CHUCK: Awesome! Well this week, we're going to be talking about CoreData. Or, do you call it Core Data? SAUL: [laughs] I thought that was an English thing; Pete might know. PETE: I'll refer to it as Core Data! [laughter] PETE: It's the French pronunciation. I still say Data; it's one of the few English things that I still say in the English way [inaudible]. SAUL: So do you say Beta or Beta? PETE: Oh, that's a good (question). I think I say Beta now just because it's like a -- I was going to say just because it's a software thing, but Beta was a software thing. So, I don't know. SAUL: We have gotten to him! Great! [Chuck laughs] PETE: Yeah. My covers are blown. [laughter] PETE: Actually, I'm native Texan. CHUCK: Yeah, you've seen that? Now you only sound cool when you're talking about things other than computers. PETE: Yup. CHUCK: Alright. So CoreData,
Panel Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 03:00 - Why don't people test in iOS? 06:12 - Testing Definitions and the Mechanics of Testing Instruments User Guide TestPyramid 13:00 - Why do we test our code? Why is it worth it? Feedback Communication 19:28 - Practicing TDD (Test-driven development) UI View Controllers 25:33 - Unit Testing is hard 28:01 - Tools Send Testing Kit aka OCUnit Application and Logic Tests Running objective-c tests from the command line (with color) (Ben's Script based on Eloy Durán's) Continuous Integration Code Coverage Git Hooks gh-unit Kiwi Cedar RubyMotion Writing Tests for RubyMotion Apps Bacon 42:00 - Frank Selenium Zucchini appium bwoken KIF Calabash Jenkins Writing iOS acceptance tests using Kiwi: Pete Hodgson PublicAutomation Picks TextExpander (Ben) Alfred (Ben) Jenkins (Ben) Oban Scotch (Ben) NSScreencast: Automated Testing with Kiwi (Pete) Rock Climbing (Pete) Scarlett Red (Pete) Test-Driven iOS Development by Graham J. Lee (Rod) 42 (Rod) Test iOS Apps with UI Automation: Bug Hunting Made Easy by Jonathan Penn (Pete) Backbone.js (Chuck) LaunchBar (Chuck) Next Week iOS/Mac & differences with Josh Abernathy Transcript PETE: So what are we talking about this Tuesday morning? CHUCK: I'm not sure, but I think we should write a test for it first. CHUCK: Hey everybody and welcome to Episode 3 of iPhreaks! This week on our panel we have, Pete Hodgson. PETE: Hello from Butte Lake! [Ben laughs] CHUCK: Ben Scheirman...Butte Lake... BEN: Very well done. Very well done. [Ben laughs] CHUCK: Ben Scheirman. BEN: Hello from Houston! CHUCK: We also have, Rod Schimdt. ROD: Hello from Salt Lake City! CHUCK: Sorry, Rod. I was looking at Pete's picture and I was like "No, I already said Pete". [laughter] BEN: Yeah, for those who didn't get the joke we were looking at the transcription from last episode, or from episode 1. And -- CHUCK: Did that get fixed? PETE: It got fixed, yeah. BEN: Okay. So originally, Pete said he's from Berkeley and it came through as Butte Lake, which I thought was hilarious. PETE: I was pretty -- I was looking for the transcript -- it's pretty hilarious how much my accent has closed issues. For whatever personal machine is doing that transcription is definitely challenged by my accent. CHUCK: We're really sorry to the transcriptionist. PETE: Yeah. [laughter] CHUCK: We will pick our panelist more carefully next time. PETE: Oh! It's my fault, huh? [laughter] CHUCK: Anyway...And you can tell I had to ask if it got fixed because I just asked Mandy to do it and assume it's done. PETE: Yeah. No, she fixed it. She fixed it very very quickly. CHUCK: Yeah. PETE: And I'm used to that. I'm living in a [inaudible] when you found out like you have automated voice systems. They often don't work with British accent so I have to put on like a stupid American accent when I'm...operator! [laughter] PETE: Reservations. [laughter] CHUCK: It's funny, too, because a lot of times on those automated systems, they have somebody with a British accent or a fake British accent like speaking. BEN: Yeah. PETE: Yeah. But they didn't understand British. Siri didn't understand British for a very long time because you couldn't get like, if you lived in the US, you couldn't get American, so you couldn't get British Siri to work with like American information. So if I wanted to actually know about anything about America like where I live, I'd have to use the American version Siri, but she couldn't understand my pronunciation. [Ben laughs] CHUCK: So is the British Siri more polite?
Panel Pete Hodgson (twitter github blog) Ben Scheirman (twitter github blog NSSreencast) Rod Schmidt (twitter github infiniteNIL) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 03:00 - Why don’t people test in iOS? 06:12 - Testing Definitions and the Mechanics of Testing Instruments User Guide TestPyramid 13:00 - Why do we test our code? Why is it worth it? Feedback Communication 19:28 - Practicing TDD (Test-driven development) UI View Controllers 25:33 - Unit Testing is hard 28:01 - Tools Send Testing Kit aka OCUnit Application and Logic Tests Running objective-c tests from the command line (with color) (Ben’s Script based on Eloy Durán’s) Continuous Integration Code Coverage Git Hooks gh-unit Kiwi Cedar RubyMotion Writing Tests for RubyMotion Apps Bacon 42:00 - Frank Selenium Zucchini appium bwoken KIF Calabash Jenkins Writing iOS acceptance tests using Kiwi: Pete Hodgson PublicAutomation Picks TextExpander (Ben) Alfred (Ben) Jenkins (Ben) Oban Scotch (Ben) NSScreencast: Automated Testing with Kiwi (Pete) Rock Climbing (Pete) Scarlett Red (Pete) Test-Driven iOS Development by Graham J. Lee (Rod) 42 (Rod) Test iOS Apps with UI Automation: Bug Hunting Made Easy by Jonathan Penn (Pete) Backbone.js (Chuck) LaunchBar (Chuck) Next Week iOS/Mac & differences with Josh Abernathy Transcript PETE: So what are we talking about this Tuesday morning? CHUCK: I'm not sure, but I think we should write a test for it first. CHUCK: Hey everybody and welcome to Episode 3 of iPhreaks! This week on our panel we have, Pete Hodgson. PETE: Hello from Butte Lake! [Ben laughs] CHUCK: Ben Scheirman...Butte Lake... BEN: Very well done. Very well done. [Ben laughs] CHUCK: Ben Scheirman. BEN: Hello from Houston! CHUCK: We also have, Rod Schimdt. ROD: Hello from Salt Lake City! CHUCK: Sorry, Rod. I was looking at Pete's picture and I was like "No, I already said Pete". [laughter] BEN: Yeah, for those who didn't get the joke we were looking at the transcription from last episode, or from episode 1. And -- CHUCK: Did that get fixed? PETE: It got fixed, yeah. BEN: Okay. So originally, Pete said he's from Berkeley and it came through as Butte Lake, which I thought was hilarious. PETE: I was pretty -- I was looking for the transcript -- it's pretty hilarious how much my accent has closed issues. For whatever personal machine is doing that transcription is definitely challenged by my accent. CHUCK: We're really sorry to the transcriptionist. PETE: Yeah. [laughter] CHUCK: We will pick our panelist more carefully next time. PETE: Oh! It's my fault, huh? [laughter] CHUCK: Anyway...And you can tell I had to ask if it got fixed because I just asked Mandy to do it and assume it's done. PETE: Yeah. No, she fixed it. She fixed it very very quickly. CHUCK: Yeah. PETE: And I'm used to that. I'm living in a [inaudible] when you found out like you have automated voice systems. They often don't work with British accent so I have to put on like a stupid American accent when I'm...operator! [laughter] PETE: Reservations. [laughter] CHUCK: It's funny, too, because a lot of times on those automated systems, they have somebody with a British accent or a fake British accent like speaking. BEN: Yeah. PETE: Yeah. But they didn't understand British. Siri didn't understand British for a very long time because you couldn't get like, if you lived in the US, you couldn't get American, so you couldn't get British Siri to work with like American information. So if I wanted to actually know about anything about America like where I live, I'd have to use the American version Siri, but she couldn't understand my pronunciation. [Ben laughs] CHUCK: So is the British Siri more polite?