Good API Design

Leave a comment

Hard to find good concrete examples of design trade-offs. But here is on a colleague of my recently pointed out in a code review.

Method takes a bool

func switchToChatTab(hasActivationFailed: Bool)

and then does something interesting. But if the thing that is changing is a struct or something else, pass that in instead.

func switchToChatTab(with entryPoint: EntryPoint)

Now this function is open for extension but close for modification. Even better if the struct captures the Bool you were passing around before.

How to build Swift iOS Applications using Closures

Leave a comment

Just created a new video walking through how closures can be used for building iSO Swift applications.

New Video – Protocol Delegate Pattern

Leave a comment

New video just published in the Swift Arcade showing people how the Protocol Delegate / DataSource pattern works.

If you work in iOS, or or just learning mobile development, check it out!

New YouTube Channel – Swift Arcade

Leave a comment

Hi all,

I just created a new YouTube channel dedicated to Swift and iOS videos. If you are new to mobile development, and want to learn along with me how Swift iOS mobile development works, come check it out.



New Course – Level Up in Swift

Leave a comment

Want to learn the #1 programming language that the iPhone?
Don’t have the time to watch countless random YouTube videos?

If the answer is yes – this course is for you.

Get up to speed fast

This course distills all the fundamental basics of Swift into a series of short, powerful videos that cut out the cruft, and get you up to speed fast.

Learn on the go

All the core Swift fundamentals have been condensed, distilled, and package into easily understood chunks. No video is on average longer than ten minutes. This will enable you to learn any time, any where, and then pick up next time exactly where you left off.

Have fun

By following topic with what I call a Swift Arcade, you won’t be passively sitting by. You will be fully engaged applying what you are learning with fun interactive challenges designed to solidify the learning, while building muscle memory and having fun along the way.

This course was designed to save you the time and get you up to speed on the Swift programming language quickly. Join me. I will be there with you every step of the way. And if you have a question simply ask. I offer great support and am here to help all my students.

Learn Swift today. I hope to see you in there.

What you’ll learn

  • Functions
  • Optionals
  • Closures
  • Tuples
  • Enums
  • Properties
  • Structures & Classes
  • Functional programming
  • Stack vs Heap
  • Extensions & Protocols
  • Protocol Delegate Pattern
  • Inheritance
  • Protocol Oriented Programming
  • Error handling
  • JSON
  • Result types
  • Retain cycles
  • Generics
  • Collections
  • Access Control
  • And more!

So what are you waiting for? Start your journey and Level Up in Swift today!



How to Adobe MultiExport script

Leave a comment

Screen Shot 2020-01-22 at 8.48.26 AM.png

github permission denied

Leave a comment

If you even see this error when trying to commit to git

Screen Shot 2020-01-18 at 7.21.57 AM.png

Open up keychain on mac and delete any old cached entries


Screen Shot 2020-01-18 at 7.23.28 AM.png

It will then prompt your for new username password at next github push or login.

Older Entries

%d bloggers like this: