Some nice background on how/why things went all reactive on us.
Tag: reactive
The Elm Architecture
I’ve been trying to understand the Elm Architecture for a new iOS project. I kept reading over this article and thinking, “Wait a minute…. What’s the catch here? This seems too simple.” 🧐
👉 The Elm Architecture: Simple, yet powerful – An overview by example
I like that this architecture can be explained in a very short post with examples.
The beauty of The Elm Architecture lies in its simplicity.
That article is simple but assumes a web UI and explicit mentions HTML 🙄. Here is a funnier and more useful article about Elm for iOS. 😂
👉 Elm architecture in iOS: Why you don’t need shit like RxSwift or MVVM
Elm architecture can be described as follows
msg -> Model -> View -> msg
I even made my own diagram just to make sure I “got” it. The devil is in the details, but I think this is right. 🤷🏻♂️ It definitely seems simpler than VIPER.

Combine Basics
This intro to Apple’s reactive Combine framework comes highly recommended by iOS Dev Weekly. This sounds like the best way to jump into Combine wit real, practical code.
I liked his approach of starting with the very simplest way of using Combine to process downloaded JSON data, before moving on to splitting tasks into more logical chunks with chaining.
Understanding, Profiling, and Debugging Combine
The latest iOS Dev Weekly had some great links to Combine resources.
This looks really useful as I get into Combine and reactive iOS programming.
👉Profiling and debugging your Combine code with Timelane

Also, this for, well, understanding Combine.
Thanks as always, iOS Dev Weekly!
Timelane
Free open source Xcode Instruments plugin for profiling reactive Swift code, wither RxSwift or Combine. How is this stuff free?!?
Timelane is a free app that bundles a custom Xcode Instrument and the frameworks to enable your code to talk to the Timelane instrument.
👉 Timelane: Visually profile your asynchronous code
Via iOS Dev Weekly.

ReactiveX
I love that ReactiveX supports the same reactive paradigm across so many languages, especially Swift (also Java, Scala, C#, C++, Clojure, JavaScript, Python, Groovy, JRuby, ..).
👉 ReactiveX – An API for asynchronous programming with observable streams
ReactiveX is a combination of the best ideas from the Observer pattern, the Iterator pattern, and functional programming

And don’t forget RXMarbles for some experimenting with Rx.