Sign in

You know their codes are shit when the only technical argument a dev can make is to block you

I asked some legit questions in this article: My basic HttpManager in Swift

In which the dude claims to make network requests even easier. …


An example of why MVVM sucks shit in iOS

Avert thine eyes. This will get ugly.

This is what a typical iOS MVVM tutorial would cover:

  1. Trash Apple MVC
  2. Ignore binding, or worse, try to do it manually like it’s no big deal
  3. Build around this retarded ambiguous shit called view model, which is nether a view…


Why we should NOT use RxSwift

No, Sensei!

Just watched this article: Why should we use RxSwift, in which several comparisons are made against UIKit.

This is good, because most RxSwift tutorials downplayed this part. They never bother considering SDK alternatives because of the agenda they want to push.

The problem is…


With Reactive MVVM + Coordinator, and RxDataSources

Boilerplate mess is only the beginning

By using every design pattern known to men simultaneously.

As shown in this epic article:

Reactive MVVM and the Coordinator Pattern Done Right

Full disclosure, I got blocked by the dude for pointing out flaws in his grand design. But no this ain’t…


Aren’t you tired of massive view model with complex dependencies?

If “so powerful” MVVM + RxSwift are, why not compare with Apple MVC?

Nothing fancy. Just follow Apple SDK, but with some refactoring in mind.

Now let’s refactor the supposed-to-be refactor of MVC: Refactor MVC iOS App to MVVM with RxSwift in Minutes

First let’s get a broad overview of the example app…


An introduction to Property Observer Programming

Me, after watching MVVM+RxSwift

Let’s start by appreciating what a great show the haunting of bly manor is.

Some people think its pacing is too slow and not scary at all. But I think the part it does right, it does very right. …


Let’s destroy the anti-pattern known as VIPER

VIPER is not clean, it’s a boilerplate mess

The year is 2020, and VIPER continues to spread misinformation on how it is supposed to solve massive view controller problem.

First, there’s no massive view controller problem. …


Why you should not blindly follow guides with big words

It’s Judgement day

Came across this gem today, in which it claims:

MVVM-C helps with separation of concerns, and allows testing and implementation to be…much better than MVC

Oh, is it now?

What makes you think you can’t have separation of concern in…


Why MVVM, VIPER, RIB all failed at Control

Intelligent beings are we, not these MVVM retards

This is what RIB says in their github:

Business logic drives the app, not the view tree. Unlike with MV*/VIPER, a RIB does not have to have a view. …


Why you should not fix massive view controller with more massive view controller

How many lines do you need to implement this?

Boys and girls, may I present to you, RIB architecture.

Now let’s tear this pile of shit apart.

When designing this framework for Uber, we were adhering to the following principles

  • Encourage Cross-Platform Collaboration

If Swift gives…

Jim Lai

Casual iOS developer

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