Chris Wagner does a fantastic job covering many of the mistakes developers make as a result of the dilemmas and issues they face when first starting out. In fact, I'm guilty of making many of the mistakes listed on here myself. As Chris notes, the important thing is to acknowledge that none of us are perfect. While this read is directed at new developers, I found this quite helpful. It reminded me that those of us with a bit more experience should use what we've learned to encourage rather than discourage.
There's definitely no shortage of articles when it comes to iOS app architecture and patterns. However, I found Aleksandar Vacić's piece quite refreshing. Rather than suggesting alternatives to Apple's recommended MVC pattern, Aleksandar calls it how it is, and puts the "massive view controller" blame on developers themselves.
Say what you will, but I've always been a huge fan of MVC. Quite frankly, our team at Polly is doing just fine with it thanks to the proper use of delegates and the way we structure our code. However, whether you prefer MVC or an alternative, Aleksandar shares some useful rules of engagement for maintainable projects that will surely be helpful. 🙃
I side with Chris that relying on too many third-party libraries can lead to issues down the road, however, I still use a few. In fact, over at Polly, we use SnapKit and we absolutely love it. With that said, it's always nice to try something new for a change. Chris Eidhof helps lends us a hand by showing us how to write less layout-code that is clearer and more concise, all without using any third-party libraries. It may look a bit complicated at first, but it's definitely one way to approach it. 🤓