try... ▸ My friend said X is awesome, I’m going to use it! These are not necessarily bad, but doing things in the heat of the moment is usually a bad idea.
can if we want to, but we don’t have to. This isn’t the Perfect World that was sold to us. Nothing is perfect. We have to find a way to live in the imperfect world.
code I’m working on is usually not started or finished by me. ▸ I don’t want to leave someone else with the constraints I’ve chosen. ▸ I tend to avoid clever code. I use what the system provides as much as possible. ▸ I started working on my own, not in a team, which is why I have opinions.
The observer pattern, façade, Dependency Injection. ▸ Probably a whole lot of other patterns that I don’t know the names of - I’m not Computer Science educated. ▸ I avoid third party omni dependencies. ▸ I try and use third party code that I understand and can fix. ▸ I sound like an Apple fanboi.
supposed to control a view. ▸ Everything else can get passed off. ▸ Delegation (or even closures) for performing work related to views. ▸ Data sources don’t have to be in the view controller. ▸ Having separate subsystems makes them easier to test.
easier with property observers. ▸ There’s also Key-Value Observing for NSObject based classes. ▸ The functional paradigm that made MVVM and Reactive attractive to me are now available in Swift. ▸ I use Core Data - plenty of change notifications there.
are in the perfect world: ▸ JSON Parsers. ▸ Autolayout DSLs. ▸ Generics make code simple, harder to understand at first. ▸ Lot’s of new names, who do you believe?