Cover image of The iPhreaks Show

The iPhreaks Show

The iOS Development Podcast

Weekly hand curated podcast episodes for learning

Popular episodes

All episodes

The best episodes ranked using user listens.

Podcast cover

iPS 229: Flawless App

Panel: Erica Sadun Gui Rambo Special Guest: Lisa and  In today's episode, the iPheaks panel, Erica and Gui speak with Lisa Dziuba and Ahmed Suljman about their new product called Flawless App. The discussion covers topics on design, how the app works, marketing, team size, and much more. This is a great episode to learn about new iOS products and their unique build and design, and implementation. In particular, we dive pretty deep on:  What's Flawless Dealing with multiple screen sizes The story of Flawless Working on a small team Designing and marketing as a developer Marketing ProductHunt The future of Flawless app and much more! LINKS: https://flawlessapp.io https://twitter.com/FlawlessAppio https://twitter.com/LisaDziuba https://twitter.com/ahmed_sulajman http://www.dailyui.co https://bendodson.com/weblog/2017/06/16/flawless/ https://medium.com/flawless-app-stories/https-medium-com-flawless-app-stories-the-ultimate-guide-for-mobile-developers-who-want-to-design-part1-a2d47c04fd49 https://medium.com/flawless-app-stories/designed-by-engineer-76cbc6ffe34d https://www.smashingmagazine.com/2018/01/reduce-app-optimizing-sketch-files/ https://medium.com/flawless-app-stories/how-flawless-app-will-make-you-a-better-ui-designer-23c7c5338e8c https://speakerdeck.com/lisadziuba/marketing-for-engineers https://github.com/LisaDziuba/Marketing-for-Engineers https://medium.com/flawless-app-stories/flawlessapp-on-producthunt-7db3e561ce7a Picks: Gui Tech Podcasts Lists Erica Donuts Lisa Marketing for Engineers


11 Feb 2018

Rank #1

Podcast cover

028 iPhreaks Show – New iOS APIs

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...


7 Nov 2013

Rank #2

Similar Podcasts

Podcast cover

iPS 230: ChibiStudio

Panel: Erica Sadun Gui Rambo Special Guest: None In today’s episode, the iPhreaks panel, Erica and Gui talk about his app ChibiStudio, the challenges and lessons learned, and specifically about how it's like to have a freemium app in the App Store. The app allows people to create their own avatar, or Chibi, that they the can share through the iMessage app. This is a great episode to learn about the thought processes that go into creating a new iOS app. In particular, we dive pretty deep on:  Where did the idea for ChibiStudio come from? iMessage apps How to improve the iMessage app success Discoverability Free app with in-app purchases. Why? Different theme packs, especially during holidays Balance between free content and paid options Corporate outreach Developing your own brand Small and specialized audience 2 pathways to monetary success Using ads in apps King Games Ethical apps Lessons he’s learned from developing And much, much more! Links: Linode ChibiStudio Microsoft App Center Picks: Gui HomePod Erica Farscape


15 Feb 2018

Rank #3

Podcast cover

192 iPS Core Data

On today's episode, Andrew and Jaim discuss Core Data. Core Data is now easy to use as a result of the recent changes in Xcode 8 and iOS 10. Learn what it is and understand how you can get the most out of it. 


2 Mar 2017

Rank #4

Most Popular Podcasts

Podcast cover

iPS 269: Ray Tracing with Petrie Michael

Sponsors Sentry– use the code “devchat” for two months free on Sentry’s small plan GitLab | Get 30% off tickets with the promo code: DEVCHATCOMMIT My Ruby Story CacheFly Panel Jaim Zuber Abbey Jackson Joined by Special Guest: Petrie Michael Summary Joining iPhreaks is our new panelist Abbey Jackson, an iOS developer from Vancouver, Canada and our special guest Petrie Michael, an iOS developer from Australia currently working in Japan. Petrie has joined the podcast today to discuss his recent talk at TrySwift about Ray tracing. After defining ray tracing and explaining how it works, Petrie walks the panel through his demonstration for his talk. The panel discusses the technology he uses and how a bigger project becomes much more complex using a Mercedes rendering he did. Petrie introduces binary space partitioning and how this speeds up the process. The panel asks Petrie for recommendations for beginners to graphics, how to get started and what language to use.  Petrie shares his opinions on the state of the industry. The first being that modern programmers try to solve problems that don’t exist. The second being that programmers are neglecting to focus on things that encourage productivity. The panel discusses examples of these and how we can improve.  Links Ray Tracing in One Weekend Graphics like Pixar using Swift https://github.com/kapsy/swift_ray_tracer Binary space partitioning https://www.blender.org/ iPS 258: Learning Objective-C as a Swift Developer with Abbey Jackson https://www.facebook.com/iphreaks/ https://twitter.com/iphreaks Picks Abbey Jackson: https://twitter.com/aumi_app Aumi Petrie Michael: The Thirty Million Line Problem


27 Aug 2019

Rank #5

Podcast cover

026 iPhreaks Show – Custom UI Controls with Sam Davies

Panel Sam Davies (twitter github blog) Rod Schmidt (twitter github infiniteNIL) Ben Scheirman (twitter github blog NSSreencast) Jaim Zuber (twitter Sharp Five Software) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up)Discussion00:57 - Sam Davies Introduction ShinobiControls01:47 - Custom UI Controls04:50 - Design-Time Experience and Documentation09:49 - When Should You Use Custom Controls?11:40 - ControlsUISlider TableView UIView25:40 - OpenGLCAEAGLLayer Class Reference27:01 - Transitioning Custom Controls30:04 - New for iOS7Picks The iOS Design Cheat Sheet (Jaim) AFNetworking-ASIHTTPRequest (Jaim) Cocoa Controls (Ben) Lufthansa Airlines (Ben) Samarkand (Ben) Geist Dark (Ben) NSCalendar-EqualWithGranularity (Rod) JVFloatLabeledTextField (Rod) Sublime Text (Sam) Dash (Sam) Introducing iOS7 Day-by-Day (Sam) what-if.xkcd.com (Sam)Next WeekiOS Game Development with Kyle Richter and Nathan ErorTranscriptBEN: Sounds like you need a shot of espresso, Chuck.[Laughter]JAIM: Do pushups maybe, you know.ROD: Cold shower.CHUCK: Cold shower, yeah. [Laughs]CHUCK: Hey everybody and welcome to Episode 26 of The iPhreaks Show! This week on our panel, we have Rod Schmidt.ROD: Hello from Salt Lake City!CHUCK: Ben Scheirman.BEN: Hello from Houston!CHUCK: Jaim Zuber.JAIM: I’m good enough, I’m smart enough, doggone it, people – sorry. Hello from Minnesota!BEN: [Laughs]JAIM: Can you believe that guy is my senator?CHUCK: [Laughs]JAIM: No. He don’t get back to work. I don’t know what’s going on here.CHUCK: [Chuckles] I’m Charles Max Wood from DevChat.tv, with a quick reminder to go check out GoingRogueVideo.com. I have a 30-minute video on how I went freelance. And we also have a special guest this week, and that’s Sam Davies.SAM: Hello there from Bristol, the UK!CHUCK: Do you want to introduce yourself for the people who don’t know who you are?SAM: Sure! I’m Sam Davies. I work now for a company called ShinobiControls, and we build various different UI controls for both iOS and for Android and things. All kinds of different things; I’m not going to [unclear] you with exactly what we do, but charting and all kinds of different to help people’s [unclear]. I stay at that life as a computer vision researcher back in the day a few years ago. I spent a while of doing that. But Academia just doesn’t really have any money so I had to leave Academia and go do something a bit more applicable so I started doing mobile development and kind of stuff at working machine over a few years ago. Now, I work as a developer evangelist so kind of writing different bits and pieces and teaching people about things as well. I like talking to devs and doing dev work as well.CHUCK: Very nice. We brought you on the show to talk about “Custom UIControls”.SAM: Yup! I guess, sure, I’d talk a little bit about what – what they are and why you would want to make custom UIcontrols.CHUCK: Yeah, that sounds like a good start to me.SAM: UIControls, we all know exactly what UIControls are because we use them all the time, but what that actually means for somebody who’s using something that really helpful for lots of different groups of people including designers, developers, and for the end user as well. They represent a common vocabulary of ways and what you interact with an app. So we’re all used to UIControls in iOS because we have things like UISliders, we have Buttons, we have segment of control, whole selection of different things, and they were really, really useful.But the question always comes when you get to the stage where you want something that doesn’t quite – whether the existing ones from iOS don’t exactly do what you want to do – you want to have something slightly different. An example I always give whenever anybody wants to talk to me about this kind of thing is,


24 Oct 2013

Rank #6

Podcast cover

185 iPS Why I'm Not A React Native Developer with Ariel Elkin

Introduction Ariel Elkin Why I Am Not a React Native Developer 1:20: React Native Functional reactive programming Reactive architecture Inconsistent state 7:15: Context of iOS app 9:50: Developing in React Native What went well What didn’t go well 18:45: JavaScript patent Example with Facebook Example with Airbnb Patent trolling 29:30: More concerns with React Native Ubuntu Parse Picks: How to Disagree by Paul Graham (Ariel) Bullet list of what real programmers are (Ariel) Chainsawsuit comic (Ariel) Hired.com/iphreaks


29 Dec 2016

Rank #7

Podcast cover

iPS 277: 100 Days of SwiftUI with Paul Hudson

In this episode of The iPhreaks Show the panel interviews well-known author Paul Hudson. Paul is the creator and editor of Hacking with Swift. He does talks all around the world and writes books about swift. Paul went to the recent WWDC and even managed to write a book while at the conference.  The panel asks him about the conference. Paul explains that he didn’t go to many talks, instead, he uses that time to prepare for the labs. Curious the panel wonders at this strategy for conference attendance. Paul expounds, explaining there are only about 10 minutes of good stuff in a 40-minute talk once you get past the intros, jokes, stories and other filler. He can watch those online. His time is better spent playing with Swift and preparing questions for the labs.  As for writing a book during the conference, he explains that the body can do amazing things when fueled by caffeine. He also made sure he was in the Marriot where the conference was held, that way he could walk downstairs and know that his swift code was correct. This saved him a ton of time worrying and second-guessing his code.  The panel considers how SwiftUI has progressed. Paul explains how in the early days it was really hard to tell which features worked as designed. The beta used in the presentations at WWDC is not the beta given to developers, by the time developers get beta 1, Apple is already working on beta 3. He emphasizes the importance of filing your radars early because everything is changing so quickly. Paul goes onto explain that SwiftUI is learning from the mistakes of Swift. Swift had everything but none of it was great. SwiftUI is missing things but what it does have is great.  Paul has a new program for learning Swift called 100 Days of Swift. For each of the 100 days, Pauls supplies an encouraging and educational article along with a kit. The kit includes chapters to read, videos to watch, tutorials, projects, assessments, and challenges. Paul put a lot of work into creating hours of free content. After SwiftUI was out for a few months he decided to do 100 Days of SwiftUI. His goal with these programs is that by doing these each day for less than an hour, you will graduate by Dec 31st, just in time for the New Year.  The panel considers the wonderful things about this program and asks Paul about the feedback he has received from it. This program builds and leads to a goal. People are so proud of what they are accomplishing they can share it on social media. Paul works hard every day to make sure everyone feels welcome on his site and in his programs. Every day he finds people on twitter using the 100 Days of Swift hashtag and encourages them with positive feedback.  Next, the panel discusses the dark corners of iOS 13 where all the new features that people are missing are. Paul explains that there are so many amazing new features in iOS 13 that have been drowned out by SwiftUI. These features include Cryptokit, Imagekit, SF Symbols, Core Haptics, improved core images, quality of life improvements, date-time formatter and many more. He explains a few of the features that he is really excited for and encourages listeners to check out all the features.  Paul wonders if it is Apple’s plan to get as many developers to adopt iOS 13 with all these exciting new features. The panel considers how the poor documentation problem will hold developers back from adopting iOS 13. With poor documentation and only WWDC presentations to go off of many developers have to go looking to outside sources to learn how to use these tools.  Considering how the documentation has gone down for years and the fact that Apple is so wealthy, Paul concludes that Apple has to have a greater plan for documentation in works. He predicts that it will be something more interactive to fit the learning trends of the day, bring people to iOS. The panel considers how iOS is becoming less programmerly and how this too may bring more people to iOS.  Paul goes on a small rant about the chasm between iOS and Mac development. He explains how he is continually nagging whoever he can to see this fixed. Paul believes that the best way to align these to platforms is to bring Swift Playground to Mac.  The episode ends with Paul explaining his app, Unwrap. Unwrap teaches Swift, it is opensource and free. With it, you learn Swift by earning badges, completing challenges and taking assessments. The panel loves that is open source and fun. Paul explains that this app and his 100 Days of Swift program are not just for beginners, programmers of all levels have told him how much they have learned from these resources. Panelists Abbey Jackson Evan Stone Jaim Zuber Guest Paul Hudson Sponsors Sentry– use the code “devchat” for two months free on Sentry’s small plan My Ruby Story My JavaScript Story CacheFly ________________________________________________________________________________________________________________________ "The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood will be out on November 20th on Amazon.  Get your copy on that date only for $1. ________________________________________________________________________________________________________________________ Links iPS 243: Paul Hudson - Writing, Swift, & Writing Swift https://developer.apple.com/wwdc19/ https://www.hackingwithswift.com/100 https://www.hackingwithswift.com/quick-start/swiftui https://www.hackingwithswift.com/100/swiftui https://twitter.com/hashtag/100DaysOfSwiftUI?src=hash https://www.hackingwithswift.com/unwrap https://twitter.com/twostraws https://www.facebook.com/ReactNativeRadio/ https://twitter.com/R_N_Radio Picks Abbey Jackson: SF Viewer App Evan Stone: Love Notes to Newton Einstein Paul Hudson: Swiftoberfest Spendo App


29 Oct 2019

Rank #8

Podcast cover

iPS 250: iOS Architecture at Scale with Parveen Kaler

Panel: Jaim Zuber Gui Rambo In today’s episode, the iPhreaks panel talks to Parveen Kaler about iOS architecture at scale. Parveen has been doing mobile development, specifically iOS development, for almost 10 years now, and he previously used to work in the video games industry. They talk about the difference between scale when it comes to dollars and revenue, the pull request process, and what good architecture at scale is. They also touch on creating uniform views, object mappers, and more! In particular, we dive pretty deep on: Parveen Intro Used to work with PSP video game development iOS Architecture At Scale - types of scale His talk at AltConf Is there a difference scale w/ dollars and scale /w customers? What are major differences from coming from a large company? Do you run into issues with many customers? Pull Requests and Release Train Release Manager What is good architecture at scale? Definition of good architecture Three things lead to good architecture What are coding style differences? You want to unify models Unification really matters How do you create uniform views? How do you work when code you want to change is handled by another team? Unified router framework Object Mapper How do you combat long compile times? Does Xcode improve compile times? Does Swift provide advantages vs Objective-C? AB Testing at Scale? And much, much more! Links: His talk at AltConf Xcode parveenkaler.com @kaler Parveen’s GitHub Smartful Studios Sponsors: FreshBooks Loot Crate Picks: Jaim Iron Maiden Pinball Gui Things You Should Never Do, Part I by Joel Spolsky Parveen US Passport


2 Aug 2018

Rank #9

Podcast cover

020 iPhreaks Show – Vim with Jason Felice

Panel Jason Felice (twitter github blog Maitria) Pete Hodgson (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up)Discussion01:08 - Jason Felice Introduction02:03 - “Expressive Code”04:35 - iOS Programming in Vimibtool Xcode06:39 - Why Vim?Muscle Memory The Tool Chain Polar Puzzles11:30 - Build Processxctool12:23 - TestingKiwi The Objective Vimmer16:50 - Vim TacticsCode Completion clang_complete Omnicomplete21:06 - Navigation23:11 - AppCode25:22 - Toolchain WishlistScheme Lisp Clojure RubyMotion31:51 - Building and Installing VimPicks No Mouse Fridays! (Pete) AppCode (Pete) Practical Vim: Edit Text at the Speed of Thought by Drew Neil (Pete) VimCasts (Pete) vimium (Pete) VimGolf (Chuck) Emacs (Chuck) Jason Felice: Getting Started with iOS Development With Vim (Jason) lambdanative (Jason) Nathan Sorenson: Clojure to Native via Scheme (Jason)Next WeekScalable Cloud Apps with Aaron DouglasTranscriptPETE: My boy is teething at the moment, and we got up today at 5 o’clock in the morning. That’s nice.CHUCK: [Laughs]CHUCK: Hey everybody and welcome to Episode 20 of iPhreaks! This week on our panel, we have Pete Hodgson.PETE: Good morning from San Francisco!CHUCK: I’m Charles Max Wood from DevChat.tv. We have a special guest, and that’s Jason…is it Felice?JASON: Yeah, it’s Felice, that’s right. Hello from Detroit this time!CHUCK: I do that just to make Pete laugh.PETE: [Laughs] Yeah, it makes me laugh, I freaked out. [Laughs] Oh, I was going to say like you did the episode number, and I was like thinking, “Should I remind him? Because I don’t remind him, I’d keep him say anything.” [Laughs]CHUCK: No, I was seriously actually thinking, “I should ask Jason just to make sure I know how to say his last name,” and I was like, “Nope! I’m going to do this just for Pete.”JASON: [Laughs]PETE: Oh, man. Well, I’m touched. Thank you very much.CHUCK: So Jason, since you’re new to the show, do you want to introduce yourself really quickly?JASON: Sure! That’s probably the hardest question. I have been doing mobile development for, I don’t know, it’s like 3 years or something like that, but it really depends on what you count. I’ve done some of embedded development before that, and some dust wholesome stuff back in the day, something like ’90 something. And mostly, I’ve been on the next person, which is why I found first to home with iPhone stuff, and I’ve done some Android.I think the bigger focus that I have is on creating expressive beautiful code and helping people to do that because I think a lot of people just haven’t been exposed to really expressive code especially when we’re talking mobile environment.PETE: What do you mean by expressive code? This is a good sidebar conversation we can talk about. I’m interested particularly in expressive code in Objective C [laughs]. It’s an interesting language for that kind of stuff I think.JASON: It is, yes. And that brings up an interesting question, which is like ‘how much of the language you have to know before code is expressive?’ Because everybody that I have actually worked with are brought into Objective C into them, like for first couple of weeks, group of programmers who weren’t familiar with it. Like my first 2 weeks, they’re just like, “I don’t even see code. It just looks like ASCII. I’m not even sure what’s going on either.”CHUCK: [Laughs]JASON: That’s the response that I’ve got. And it’s interesting because after a week or 2, they’re like, “Oh, okay! Got it!” I think it has to do with the [unclear] versus the indentation, the way that it uses it being different from most of the languages.PETE: Yeah.JASON: But I’ve seen Kiwi who makes nice expressive tests for the most part that’s sort of the DSL approach.


12 Sep 2013

Rank #10

Podcast cover

iPS 262: Tying Things Together with Paul Samuels

Sponsors Sentry use the code “devchat” for 2 months free on Sentry’s small plan CacheFly Panel Jaim Zuber Michael Holt Joined by Special Guest: Paul Samuels Summary Paul Samuels joins the panel in discussing his recent blog post. He shares the takeaways from the blog post. The panel discusses the problems that prompted Paul to write this post and how these tools fix these problems. Paul gives examples of how to organize your code. The panel discusses the possible restrictions and disadvantages of this tool. Paul explains how to write code for multiple platforms. The panel discusses libraries and data storage that might work for this tool.  Links https://paul-samuels.com/blog/2019/03/09/tying-things-together/ https://twitter.com/paulio87 Picks Jaim Zuber: https://www.infoq.com/minibooks/domain-driven-design-quickly/ Michael Holt: https://github.com/CutFlame/StarWarsContacts Paul Samuels: https://www.destroyallsoftware.com/talks/boundaries


25 Jun 2019

Rank #11

Podcast cover

191 iPS Take Manhattan II - Sam Guckenheimer

On episode 191 of iPhreaks, Andrew and Jaim discuss Take Manhattan II with Sam Guckenheimer. Sam is the Group Product Planner of the Visual Studio Team Services of Microsoft. In the last 6 years, he has been working on Microsoft's transformation from Agile to DevOps. Tune in to their exciting talk, and learn about it!


23 Feb 2017

Rank #12

Podcast cover

iPS 257: Apps for Magicians with Marc Kerstein


21 Mar 2019

Rank #13

Podcast cover

209 iPS Vapor with Bob Snyder

iPS 209: Vapor with Bob Snyder On today's episode of iPhreaks, Andrew Madsen and Jaim Zuber talk about Vapor with Bob Snyder. Bob is on the show today to discuss the structure of Vapor and web app deployment, etc. Don't miss this one! [00:01:20] – Introduction on Vapor Vapor is a server-side Swift framework. It came out two months after Swift became open-source. A couple of weeks ago, they just released Vapor 2.0. It’s a big jump from 1.5. Swift has protocols and has incredible performance as compared to Objective-C and other languages like JavaScript. It deserves more attention. [00:02:30] – Back-end development before Vapor Bob is a former graphic designer. He went to a boot camp last year and made that career shift. The boot camp focused on Python and iOS but that was all front-end for apps. Right now, he is a full-stack developer for a start-up called Crew and he works on Objective-C and Python, and Python Django for the backend. You can deploy, build, and have a production-ready server-side Swift application but you probably want to keep it for a small to mid-size projects. It’s not quite enterprise-level yet. [00:03:35] – Swift vs. Python Besides the curly brackets, Bob also loves the Swift protocols. With these protocols, you can apply pretty much different attributes to a class. Working with Xcode and protocols, it gives you good practices for building applications. It’s also type-safe. When it comes to making variables, knowing that you’re keeping the same type of values is very important. That’s actually one of the reasons why the performance is better than JavaScript that isn’t type-safe. [00:04:45] – Projects with Vapor Bob has a project with his friend, and they’re making it open-source. It’s a web-based application where you just insult your friends and maybe insult you back. It goes back and forth. In doing that, what allowed Bob to really explore is how easy it is to set up relationships for your database inside Swift versus something else like Python. [00:05:40] – Structure of Vapor You have the Droplet which is your entire application. It’s where everything comes down to. That is your server. Everything else just kind of relates to that. You have the Vapor Nodes, which is going to be your central point for all of your data types. The real premise of the server is you have information that you take from outside, get request, you process them, and most of the time that you’re sending it to the database or returning it without going to the database. Each one of those parts to this environment generally takes a lot of interaction to get information for one piece to the next. That’s what vapor nodes kind of comes into play. It makes using that data very easy. [00:06:30] – Node A node is a class that has protocols built on top of it. If you want to return a JSON object with a request that you got, you can immediately spit out a JSON object. You get some information from the database. It’s basically a converter that you can return almost any format that you will need inside of Vapor. [00:08:25] – Fluent Nodes interact with Fluent. It allows Vapor to communicate with whatever database you’re using. It makes it easy to go from Vapor to a MySQL, a Postgre, or a MongoDB database. You can have a basic server. You’re going to have the Droplet. You’re going to have the information you want to get into a Node. And then, you’re going to send that information to Fluent. Then, Fluent will communicate your profile of the database. That will send on to the actual database. If you want to change the database you’re using, you can do that without changing Fluent, without changing Nodes, or the Droplet. All you have to do is change how your profile on the back-end. [00:09:30] – Droplets Vapor has different packages that are built into the Vapor library. The Droplet is the thing that you create. You instantiate one of those. That’s the web server and you can attach handlers for URL’s for routing to it, etc. It’s a top level application where everything else goes through. Actually, between 1.5 and 2, they’ve made some improvements to the structure of it, as well. In 1.5, they have a lot of things in their main .swift file. And now, it’s really down to 6 lines of code. They have everything partitioned out. [00: 11:05] – Vapor is modular That is one reason why Bob thinks Vapor is going to outlast a lot of the other frameworks. You don’t really have to use every part of it. It also allows you to add-in whichever tool you need. Everything’s modular. [00: 12:50] – Who’s behind Vapor? They’re called Node. They’re based out of London. They’ve been financing the Vapor project early on. But it was Tanner Nelson and Logan Wright who founded it. They’re still both heading it. [00: 14:25] – Tools to create new Vapor project It’s really simple if you can break into a terminal. You will have to download Vapor. You have one command for Vapor. It constructs a framework for you. Vapor xcode will create your Xcode build file. If you check on the run schema to your Mac, you can just run it as a server straight to Xcode. [00: 18:25] – Validation, Authentication They have this validation tool that fully manages Swift’s protocols. The authentication is also there. It helps you to connect securely with your users. It’s not in their 2.0 docs but the 1.5 web sockets are still compatible with Vapor 2.0. [00: 21:30] – Web app deployment Vapor does have support for Heroku. That’s one of the first deployment options that they have. But using Ubuntu server is going to be the better option down that road. Heroku is good but it’s not something you have that much control when it comes to scaling. If you ever need to deploy something larger, to a cloud-based ecosystem, try to figure out Ubuntu, try to figure out better ways to deploy it. Heroku used to be the only deployment option that they offer but now they have Nginx and Supervisor. There’s a build pack for Heroku that is on Github. Just point the Heroku command line tool to the build pack on Github and it figures out what needs to be done. Digital Ocean also has an option that’s using Docker. Docker container probably uses any number of cloud hosting – Amazon, Azure. [00: 25:35] – Swift 4 They’re expecting that this is going to be the first real stable build of Swift. If 4.0 is a stable build as people are expecting, that could be a really big deal for Vapor. You can see enterprise-level applications. They’re talking about implementing that next year. It could lead to a full-stack Swift environment. We can see an environment where you have a full-stack that has no HTML, no CSS, and no JavaScript. It’s just all Swift and possibly XML. Picks Bob Snyder Podcast: Turing-Incomplete Andrew Madsen WWDC Mac app Jaim Zuber Blog post: Overview of Swift Serve-side Frameworks


3 Aug 2017

Rank #14

Podcast cover

iPS 259: ARKit with Mohammad Azam

Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly Panel: Andrew Madsen Guilherme Rambo Special Guest: Mohammad Azam Episode Summary In this episode of iPhreaks, the panel hosts Mohammad Azam, a Full Stack Immersive Web Instructor at DigitalCrafts and a Udemy instructor. Mohammad talks about ARKit: how it works, its features, its benefits and which industries will possibly benefit from this augmented reality framework. They talk about what actions Apple takes to help developers feel more comfortable with 3D development. They also briefly compare ARKit and Unity. Mohammad gives examples of some of the more interesting projects he has seen done, using ARKit. He then talks about resources where developers can learn about ARKit; two of which are Mohammad’s YouTube video, Building Augmented Reality Apps Using ARKit and his Udemy course Mastering ARKit for iOS which offers a coupon code 'iPHREAKS' for Devchat.tv listeners. Links Mohammad's Twitter Mohammad's LinkedIN ARKit Building Augmented Reality Apps Using ARKit Mastering ARKit for iOS - Coupon Code = iPHREAKS https://www.facebook.com/DevChattv  Picks Andrew Madsen: PSPDFKit and Swift Guilherme Rambo: How Overnight Shipping Works Mohammad Azam: Bad Blood: Secrets and Lies in a Silicon Valley Startup by John Carreyrou American Kingpin: The Epic Hunt for the Criminal Mastermind Behind the Silk Road by Nick Bilton


4 Apr 2019

Rank #15

Podcast cover

iPS 279: Serverside Swift with Gopal Sharma

In this episode of the iPhreaks Show the panel interviews Gopal Sharma who gave a talk at try! Swift 2018 about serverside Swift. He starts by sharing his background and how got into building stuff for the serverside. In his talk, Gopal outlined what is expected in a serverside framework and explains where Swift was at.  The major things looked for in a serverside framework are performance and predictability. Swift has the basic building blocks of a serverside framework and Gopal shares what makes Swift unique. Its been over a year since his talk and Gopal tells the panel that things have improved for serverside Swift since then.  Gopal explains that the real reason to use serverside Swift is for Neo. Vapor and Kitura are the Swift frameworks built on top of Neo. Gopal compares these too frameworks and walks the panel through the specifics of each one. They discuss how each handles requests, databases, migration, template-based rendering, and microservice environments. The panel discusses which frameworks should be used for different projects. They share their preferences for ORMs and weigh the costs and benefits of using ORMs. Gopal explains why he prefers to just use SQL and avoid ORMs. Shawn shares tips for using ORMs and explains how they save him time and make him more efficient.  Panelists Alex Bush Shawn Clabough Guest Gopal Sharma Sponsors Sentry– use the code “devchat” for two months free on Sentry’s small plan CacheFly Links Swift on Server: Are We There Yet https://vapor.codes/ https://www.kitura.io/ https://twitter.com/gopalkri https://www.facebook.com/iphreaks/ https://twitter.com/iphreaks Picks Gopal Sharma: https://github.com/groue/GRDB.swift http://diesel.rs/guides/getting-started/ https://github.com/cashapp/sqldelight Alex Bush: The Obstacle Is the Way: The Timeless Art of Turning Trials into Triumph Shawn Clabough: Recreational Hockey


24 Dec 2019

Rank #16

Podcast cover

iPS 276: Automating Painful Things with David House

In this episode of The iPhreaks Show the panel interviews David House about Continous Integration and Continuous Delivery. David is an iOS developer currently living in Georgia. He has been working in iOS development since the iOS SDK was int beta.  Right now he is working for a health care company, Kaiser Permanente. David starts by sharing how he became interested in this topic. Kaiser Permanente is a large enterprise and has large enterprise applications. Their iOS app has almost a million users along with employees who use the app as well. This led him to find a way to scale an app for a large app while also maintain quality and security.  The panel asks David to breakdown the terms Continuous Integration and Continuous Delivery. David explains that neither of these terms was meant for mobile so they now have a different meaning. Originally, Continuous Integration meant you were integrating developer changes in an automated fashion. Continuous Delivery meant you were shipping out code in an automated fashion. Now CI/CD just means you can automate things and run them continuous through your workflow, not just integration and delivery.  The panel wonders how automated systems have effected that end of the workday ritual of checking your daily build. David explains how automated pull request has made this ritual obsolete. He explains the shift left approach which is the idea is to shorten the time frame between submitting your build and receiving feedback. With the rise of the pull request, this timeframe has been significantly reduced, essentially giving you continuous feedback. Pull requests can be a pain at first but David explains how getting into a habit of using them can say developers a lot of pain and worry.  David shares a life hack that also translates well to programming. The more you regulate the boring and the tedious the more room in your brain you have for interesting and new ideas. He equates this to automation. By automating the parts of your job that are tedious and painful, you free up time and brain space for the more interesting parts of your job. He uses the example of the pain and time it took to get an app into the app store, after automating that he had more time to do the cool parts of his job that he enjoys. The panel discusses how this can benefit the solo developer and not just a developer that is part of a team. The panel considers how automation affects the way developers learn, does help developers avoid learning to do something for themselves. Unfortunately, David believes that true. He recommends learning how to do the things your automated systems do, it may just save your butt when your system fails. He advises thinking of automated systems as a minion. It is there to do the tedious and painful jobs you don’t want to do yourself but you should still know what your minion is doing.  The panel considers the various CI tools. David has used many different tools including Jenkins, Travis, CircleCI, Bitrise and the beta for Github actions. He explains that Bitrise is a great option, it is very visual and good for beginners. Github action will be good once it is released, the best part will be the community. Both Github action and Bitrise are opensource. Jenkins has been around forever, therefore, it has good roots and is powerful. However, Jenkins is not for everyone. David explains that there should be more tools to fill the spectrum of needs.  The panel considers security in automated systems. David explains that it is hard to tell which automated systems are more secure. They consider ways to determine how secure an automated system is. Open source is one way, you can look for holes in the system by checking out the source code. Also, some systems have a reputation for security.  The panel considers the lack of educational resources and good documentation for CIs. David shares how frustrating it can be to try and find a fix for a failed build in a CI. He shares some of his hopes for the future of CI including, rich feedback, documentation, and resources for learning automated systems. The episode ends with a discussion of Xcode bots. Peter Witham shares his experience using them. David explains that even though they have great user experience it is still really limited in what it can do. The panel finishes with some final advice for automating painful things. Panelists Andrew Madsen Peter Witham Guest David House Sponsors Sentry– use the code “devchat” for two months free on Sentry’s small plan Dev Ed Podcast My Angular Story CacheFly Links https://www.bitrise.io https://twitter.com/davidahouse https://github.com/davidahouse https://www.facebook.com/ReactNativeRadio/ https://twitter.com/R_N_Radio Picks Andrew Madsen: Human Interface Guidelines Infrastructure Peter Witham: https://plugins.jenkins.io/  David House: https://gitmoji.carloscuesta.me/


22 Oct 2019

Rank #17

Podcast cover

102 iPS Game Development with Martin Grider

02:47 - Martin Grider Introduction Twitter GitHub Blog ActionChess Go Tetris For The Win Catchup Abstract Puzzle @abstractpuzzle 09:29 - Interaction Design and Mechanics Make it Playable, Then Add “Juice” 12:25 - Designing for Mobile vs Board Games Touch Interaction 14:30 - Converting Board Games to Mobile Getting the Company on Board Michael Mindes @MichaelMindes For The Win Kickstarter Carcassonne Ascension 17:09 - Copyright Infringement (Cloning) Settlers of Catan Threes 2048 Triple Town 20:54 - Protecting Your Ideas and Partnering with Publishers 23:19 - Getting Help as an Indie Game Dev Marketers, App Store SEOs, etc. 27:02 - App Shopper 28:24 - Technical Aspects of Game Development Cocos2d UIkit SpriteKit Unity Unreal Engine 34:31 - Physics 36:12 - The International Game Developer's Association (IGDA) 39:47 - Catchup Picks Hunter Loftis: We Will All Be Game Programmers (Pete) Indie Game: The Movie (Pete) Eurogames (Pete) The Changelog #151: Rust with Steve Klabnik and Yehuda Katz (Pete) A Swift Guide to Rust (Andrew) Arduino Esplora (Andrew) Analogue Nt (Andrew) L3D (Martin) Game Developers Conference (Martin) GameLoading (Martin) Top Hat (Martin) CumulusPRO Commercial Grade Anti-Fatigue Comfort Mat Area Mat (Jaim) iPhreaks T-Shirts are available via Teespring! Visit teespring.com/iphreaks to reserve yours by Wednesday, May 6th! T-shirt styles include: unisex up to 3x, ladies', hoodies, and long sleeve tees. Teespring also offers international shipping so that all of our listeners have a chance to buy!


23 Apr 2015

Rank #18

Podcast cover

iPS 285: The Life of an Image on iOS with Jordan Morgan

Jordan Morgan is a mobile developer at Buffer. He gave a talk at Swift Tokyo. He goes into the issues around images and TableView. He went to WWDC and got a rundown of how images work under the hood on iOS. This episode is a conversation with Alex Bush about how images work on iOS and how to work around the issues that arise from your assumptions about how images are displayed, decoded, and managed on iOS. Panelists Alex Bush Guest Jordan Morgan Sponsors Sentry– use the code “devchat” for two months free on Sentry’s small plan CacheFly _____________________________ "The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today! ____________________________________________________________ Links Optimizing Images try! Swift NYC 2019-The Life of an Image on iOS GitHubDreamingInBinary Swiftjective-C Picks Alex Bush: The Witcher Jordan Morgan: Watchmen


17 Mar 2020

Rank #19

Podcast cover

iPS 267: In Defense of Core Data with Donny Wals

Sponsors Sentry– use the code “devchat” for 2 months free on Sentry’s small plan CacheFly Panel Andrew Madsen Jaim Zuber Michael Holt Joined by Special Guest: Donny Wals Summary Donny Wals joins the panel to discuss his most recent talk at Try!Swift in Tokyo. The panel starts by discussing the most common complaints about Core Data. Donny shares how the changes made in iOS 10 and past updates solve these complaints. The panel discusses migration and how it has changed, making it much simpler and easier to use. Various Core Data features and their use cases are considered. Links In defense of Core Data https://twitter.com/donnywals https://www.facebook.com/iphreaks/ https://twitter.com/iphreaks Picks Andrew Madsen: https://www.autodesk.com/products/eagle/overview Michael Holt: https://github.com/krzysztofzablocki/Sourcery Donny Wals: https://preview.disneyplus.com/ https://walt-disney.itsmycareer.com


30 Jul 2019

Rank #20