How it's built: Recent Episodes

Sash Zats

Have you ever wondered what's inside of that app you use everyday? Curious how did the app you can't live without built that feature? This channel provides a unique peek behind the scenes of iOS (and not only) apps so you can get inspired by the ideas, learn about constrained and grow as an engineer. Your constructive feedback is greatly appreciated.

View Details

James Thomson has been maintaining PCalc for over 20 years. How do you write code that survives two decades? Well, you don't but how do you make it less painful? Learn about the natural selection process leading PCalc to have the engine separated from the UI, and how it came handy many years later. Custom UI, accessibility, easter eggs, and the ultimate question of universe: is calculator app a good business? - this episode has something for everyone.

Links:

James Thomson @jamesthomson

PCalc

DragThing

An Illustrated History of Easter Eggs

Dice

Chapters:

00:00 Intro

00:34 History Of PCalc

05:45 UI / Engine separation

12:22 Architecture

13:34 State machine

17:31 Cross-platform

19:19 In-depth state machine

22:54 Case for encapsulation of numeric types

25:44 Reverse engineering a calculator

27:48 UI theming

39:19 Representing numbers

43:12 Unit conversion engine

47:03 Work from home, year schedule

48:41 Importance of learning

53:02 Investing time

54:19 Art for PCalc

56:53 About screen

1:03:33 Dice app as a testbed

1:06:04 Testing and accessibility

1:14:13 Cross-platform

1:19:18 Business of selling a calculator app

1:26:42 iOS community

1:33:41 Closing remarks

View Details

Radek Pietruszewski has been working at Nozbe for 8 years building out an industry leading productivity tool. Nozbe places high value in making its tools available across all the platforms, which dictated an interesting technological choices.

Looking forward to your feedback on twitter: @zats

LINKS:

  • Radek Pietruszewski

  • Nozbe 

  • WatermelonDB 

  • ZACS

CHAPTERS:

00:00 Intro

05:23 React vs ReactNative

08:29 Build a New Screen in React

09:18 Styling

11:12 Routing

13:40 Dependency Injection

16:04 Testing vs Dogfooding

19:17 Adding New Native Features to React Native

22:13 Performance

27:01 Offline-first Approach

29:30 Reactive UI

31:04 Conflict resolution

34:13 Networking

36:12 Storage

38:23 Dark Mode Support

42:47 IDEs

46:18 Zero Abstraction Cost Styling 

50:02 Making great apps in React Native

54:58 Outro

View Details

Ryan Nystrom is a Director of Engineering at GitHub where he's supporting several teams building mobile and desktop apps. In this episode we discussed a broad range of topics from UI, and GraphQL to custom navigation framework, and responder chain.

EPISODE LINKS:

Ryan Nystrom https://twitter.com/_ryannystrom

GitHawk https://github.com/GitHawkApp/GitHawk

GitHub for Mobile https://github.com/mobile

GitHub Feedback https://github.com/github/feedback

Work at GitHub https://github.com/about/careers

Chapters:

00:00 Intro

03:24 Manager writing code

05:05 In-app Navigation

09:33 Responder Chain

10:55 App State & Dependency Injection

15:12 Storyboards vs programmatic UI

19:45 SwiftUI

21:46 Networking

26:18GraphQL

28:14 Cache

32:56 Polling

34:41 iOS 13-Compatible Sidebar

39:51 Catalyst vs Electron

41:42 Web UI

46:29 Roadmap

50:40 Client Analytics

54:22 Dogfooding vs Feature Preview

55:42 Open Source

57:35 Outro

View Details

Bridger Maxwell is the engineer behind Scribble Together - a collaborative drawing app. In this episode we discuss general software architecture, networking, and drawing aspects of the app.

EPISODE LINKS: 

Bridger Maxwell https://twitter.com/bridgermax

May-Li Khoe https://twitter.com/mayli

Scribble Together https://scribbletogether.com

Origami Studio https://origami.design

Chapters:

0:00 Intro

1:07 About the app

3:13 Core architecture, conflict resolution

13:59 Swift on the Server

17:34 Networking

24:23 In-app navigation

26:20 Shape recognition

32:50 Touch processing, model persistence

39:02 Dependency injection

40:06 Web-sockets

42:39 Future plans

43:48 OpenGL and Metal vs CALayers and CoreGraphics

46:52 Outro