About Quality Coding

You’re already a successful iOS developer. You’re able to create apps and ship them.

But the older the code gets, the harder it is to maintain. New features aren’t as easy to develop; the code seems to resist change. You’re spending more time fixing bugs than you used to.

Sometimes there’s a call to take existing code and reuse it. This might be in a new target, such as a share extension. Or it might be in a new project altogether. This sounds easy to the product owner, but you find it’s actually quite hard.

Does this sound like you?

  • Is your codebase becoming easier to manage? Or harder?
  • Are there sections of the code you’re afraid to touch?
  • Are you free to refactor ruthlessly? Or does the code itself resist attempts to “respond to change,” making it hard to be agile?

If you feel your code is becoming brittle and harder to work with, you’re not alone.

I know how you feel

I’ve been in those situations. I was on a team responsible for maintaining a touchy framework used by the rest of a Fortune 100 company. Successful changes became harder and slower. Eventually, the entire team was laid off and the framework was replaced.

At each new job, I’ve been confronted by code that was tangled together.

But things can be different

In the midst of chaotic code, I began carving out areas of safety:

  • I learned about Object-Oriented Design.
  • I started practicing Test Driven Development (TDD) and Refactoring in 2001.
  • I’ve been applying TDD to Objective-C since 2005 — first on macOS, then on iOS.
  • Now I’m doing TDD in Swift at another Fortune 100 company.

All you need is a guide

I would like to be your guide, helping you bring order to your codebase, so that you can sleep better at night.

You don’t have to be overwhelmed. I’m here to help you create iOS code that is maintainable over the long haul. My goal is to equip you with practical approaches that you can put to work. I want you to to experience greater effectiveness, and rediscover the joy of coding.

My name is Jon Reid, and this is Quality Coding.

“Ensures high-quality work, and enthuses others”

profile-pic

Jon always seeks out the best ways to ensure high-quality work, and to enthuse others with that desire. I've had the pleasure of watching him speak about TDD and quality coding on numerous occasions, and always learn not only how to advance my craft but how a passionate engineer shares their advances with their community.

Graham Lee (Author)

“One of the best”

profile-pic

Jon was voted as the best speaker of the first MCE conference. I think many of the developers who saw his presentations at our conferences were convinced they should at least try TDD in their own practice.

He is easily one of the best presenters I have seen at technology conferences. I highly recommend Jon as speaker and teacher! In addition to all the content, experience, teaching skills - Jon also has a great personality that allows him to build relationship with people quickly, making his trainings and presentations more personable and approachable.

Jarek Potiuk (MCE conference organizer)

“I discovered a TDD thought leader”

profile-pic

I saw Jon speak at Code Camp. Between the content and the presentation style, I realized I'd discovered my second TDD thought leader — that the content was perfect for engineering leaders. I engaged Jon to present it to our Silicon Valley Engineering Leadership Community audience — so for me it was the second time, and well worth the replay!

Ron Lichty (VP Engineering)

Writing

I’m here to help iOS developers create Clean Code. Any coder can hack out programs that “work” at first. But will you be able to easily modify it over many years, or across multiple projects?

That’s why I write on TDD, unit testing, architecture & design, project structure & language, and tools.

If you’ve ever been frustrated by fragile code, or interested in unit testing but afraid it would slow you down — then this blog is especially for you.

I try to post once every 2–3 weeks. To make sure you don’t miss my newest posts, you can subscribe via email. It’s quick, easy, and you can unsubscribe at any time.

Speaking

I’ve spoken at the following conferences and meetups:

  • Next Door Conf 2018
  • Silicon Valley Engineering Leadership Community (2018)
  • Swift by Northwest 2017
  • Silicon Valley Code Camp 2017
  • CocoaConf Chicago 2017
  • try! Swift Tokyo 2017
  • CocoaConf San Jose 2016
  • #Pragma Conference 2016
  • MCE^3 (2016)
  • CocoaPods Test Jam (2014)
  • CocoaConf San Jose 2014
  • NSSpain 2014
  • iOSDevUK 2014
  • eBay Tech Talk Berlin (2014)
  • Mobile Central Europe (2014)

Jon Reid speaking in Spain

Photo courtesy of NSSpain

Jon Reid teaching about Model View Presenter

Photo courtesy of Natasha Murashev @NatashaTheRobot

Teaching & Coaching

I teach a 2-day TDD workshop. I’m also available for coaching.

Contacting me

You can contact me via email through my contact form, or follow me on Twitter or Facebook.

Headshot by Rob Sirota Photography

>