Greg Heo

Greg
šŸ¤“šŸ“šŸ‡ØšŸ‡¦šŸ¦Š

Iā€™m a software engineer currently living in San Francisco. I like puppies, shoot with Fujifilm cameras, and am originally from Toronto šŸ‡ØšŸ‡¦.

You can reach me by email at hello@ this domain or on the Twitter.


Past Talks

Fun With Flags
Toronto CocoaHeads šŸŒ®, Toronto šŸ, january 2019

Swift, Synchronization, and Semaphores. Why is multi-threaded code so difficult, and how can semaphores help?

What is the simplest hash implementation? How about the worst? What is a hash anyway? And why does it matter?

Augmented Reality; Crafted Reality
Craft Conf, Budapest šŸ‡­šŸ‡ŗ, may 2018

What does crafting augmented realities teach us about crafting better software?

Compiler Sanitizers for Fun and Profit
iOS Conf Singapore, Singapore šŸ¦šŸ‡øšŸ‡¬, october 2017

How do we deal with uncertainty in our programming lives, and how can the thread sanitizer help us in managing that uncertainty?

Thirteen Ways of Looking at a View Controller
AltConf, San Jose ā˜€ļøšŸ‡ŗšŸ‡ø, june 2017

View controllers: we know them, love them, despise them, and overload them. Let's look at them a little closer.

Dealing With Asynchrony in a Synchronous Swift World
Swift Language User Group, San Francisco šŸ¤“šŸ‡ŗšŸ‡ø, april 2017

How do we deal with Swift code that executes in a (mostly) straight line when there are so many side tangents and threads to wait around for?

Clarity, Cohesion, Coupling, Complexity
Swift Summit, San Francisco šŸŒ‰šŸ‡ŗšŸ‡ø, november 2016

How can reading more code help us write better code?

What I Learned From 55 Swift Standard Library Protocols
Swift Summit, San Francisco šŸŒ«šŸ‡ŗšŸ‡ø, october 2015

How does the way the Swift standard library uses protocols give us hints on how we should do it?

šŸ“£ See all talks

Writing

Size, Stride, Alignment ↝
The basics on the memory layout of Swift struct instances.
12 March 2018
Fun With Flags
Managing concurrency with better communication. And flags.
15 Jan 2019
Concurrency From the Ground Up
Based on a talk presented at 360iDev 2018
27 Aug 2018
Getting Under Swift's Skin @ NSMeetup
Three ways to get under Swift's skin: reflection, debug toolchains, and SIL
8 Feb 2018
Five Unbelievable Secrets of Reactive Programming the Experts Don't Want You to Know!
Totally non-clickbaity article about lessons learned from reactive programming.
23 Feb 2017

See all posts