Every app has a story.

You’ve heard this before, right? Apple pushes it in their messaging, the press lets you know you should tell yours and general marketing revolves around it.

But, each app also needs to solve a problem that’s a legitimate pain point for someone. After several years — I’d love to tell you my app’s story and the problem it solved for me.

Today, I’m pleased to finally introduce the world to Spend Stack. It’s a list app that can keep an accurate total cost of its items that syncs to your devices, plus you can share and collaborate with others on any list you make. …

A new home for my writing.

I’ve been thankful to find a new audience here on Medium, but for some time I’ve yearned to have a little place on the internet to call home. By the same token, though iOS is my career and passion — I have missed dipping into some front-end development.

To that end, I’d love to introduce you to the new home of all my articles going forward:

Swiftjective-C!

I created it using Jekyll, and the whole entire thing is open source as well. Thanks for reading all these years, and I hope you’ll follow along with me at my new home.

Until next time ✌️.

Image for post
Image for post
Pass those mocks for the stock photo, photo-op!

Modern Drawing on iOS

A quick note — all of my future posts will be published on my dedicated website and this publication is no longer being updated. Thanks for reading!

The history of photography is rife with interesting stories of how the medium developed. Among them, digital photography is one of the more exciting bits of its history. It’s still quite a nascent craft, with its history tracing back to as recently as 1957 when the fine folks at the National Institute of Standards and Technology slapped a photo into computer memory.

The translation from the analog to the digital was an inflection point. We’ve experienced a similar shift on iOS starting with iOS 10, though many engineers have yet to discover or adopt the latest innovation for drawing images — UIGraphicsImageRenderer. …

Image for post
Image for post
An ode to headphone jacks refusing to go out to pasture on MacBook Pros 🎧.

Let’s UIView What’s New #PunGameStrong

A quick note — all of my future posts will be published on my dedicated website and this publication is no longer being updated. Thanks for reading!

And here we are. We’ve finally got a good look at iOS 12 and all it has on offer. Though some chose to view it as a tame maintenance release, tagging it as such is a disservice and there was plenty to digest during the WWDC keynote.

Each year, I dive in on the latest version of iOS and try to bring up some of the new APIs that our favorite framework, UIKit, has brought to the table. …

Image for post
Image for post
iOS 12 beckons. Will it be a maintenance release, or a feature rich treasure trove 🤔?

The Fourth Annual T.T.I.D.G. quiz is here 🎊

A quick note — all of my future posts will be published on my dedicated website and this publication is no longer being updated. Thanks for reading!

It’s Christmas time for iOS engineers the world over. Mr.Cook and friends are a little less than a week away from pulling the curtains off of iOS 12. Will we see vast improvements, or the oft rumored “maintenance” release?

Time will soon tell, but until then it’s time for the fourth annual T.T.I.D.G. WWDC Pregame Quiz!

If you’d like a quick primer on how this all works or how it got started, check out the first three quizzes from 2015 ,2016 and 2017. …

Image for post
Image for post
Yay for open lighted offices.

Slice & Dice Collections Effortlessly

A quick note — all of my future posts will be published on my dedicated website and this publication is no longer being updated. Thanks for reading!

When Swift hit, we were enamored over its simplicity compared to Objective-C. Then it quickly became key to roll with protocol oriented programming. Also, forget reference types and classes. The list goes on.

And true — those things are great tools and have superb use cases. But I sense they are often lifted up as silver bullets without the necessary amount of thought that should probably be given to architectural decisions.

So in 2018, the blog posts overfloweth with Swift hackery (even on my blog 🤷🏻‍♂️) and the conference talks wax poetic of its future using functional programming parlance (yup, I’ve done that too 🙋🏻‍♂️). …

Image for post
Image for post
Are you pro MacBook sticker on the lid or no?

User Interface Creation Made Responsible

A quick note — all of my future posts will be published on my dedicated website and this publication is no longer being updated. Thanks for reading!

It’s astounding to think that we lived in a pre Auto Layout world not that long ago. Auto resizing masks and CGRectMake() ruled the lands of user interface development for quite some time.

But as Apple’s devices started stacking up various point sizes, it was obvious that developers would either languish in the pit of misery that can result from too many frame calculations or embrace the power of describing relationships. …

Image for post
Image for post

Lately, every engineer at Buffer has been keeping a closer eye on accessibility. Regardless of the platform Buffer is housed on, be it iOS, Android or the web — we consider it part of our craft to ensure that anyone can use the things we make. Aside from the fact that it opens up Buffer to more users, we also subscribe to the belief that it’s simply the right thing to do.

For iOS, that means it’s on Andy and I to recognize tools that can help us excel in that department. Core ML, introduced alongside iOS 11, presented us with such an opportunity. While you would think machine learning and accessibility may only be tangentially related, we found a perfect use case that connects them together that’ll help our vision impaired usersHere’s what I found and some of the challenges I faced while exploring it. …

Image for post
Image for post
I do enjoy this stock photo, though I question the authenticity of paper notebook and if it was really being used 🤔

Curry favor with users by making things easy

A quick note — all of my future posts will be published on my dedicated website and this publication is no longer being updated. Thanks for reading!

Developing for the web feels like a world that’s simply left me behind. I made a concerted effort to double down on iOS development several years ago. I’ve never looked back or regretted it, and I don’t even know what the rear view mirror looks like. It’s caked in dust by this point, no doubt.

Though I’ve mentioned web related things here before, the last time I did any meaningful web development in a professional context, I was using JQuery v4.x. …

Image for post
Image for post
My stock photos game is starting to suffer. I think I was supposed to put images in the green screens 😐.

Foundation’s Powerful API to Measure #AllTheThings 📐

A quick note — all of my future posts will be published on my dedicated website and this publication is no longer being updated. Thanks for reading!

Measuring units, things or items in software won’t always be the most glamorous job for software engineers. Though not as thrilling as writing performant user interface libraries nor as fulfilling as conjuring up networking code that weaves concurrent execution with ease, measuring units in iOS is still done more often than not, wrong.

How can one author such code in an internationlized manner and not in a precipitous one? Foundation, as is so often the case, holds the answer. …

About

Jordan Morgan

iOS @buffer. Author for Pluralsight, contributor to a few books, conference talks and some other stuff! Writing at swiftjectivec.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store