, 5 tweets, 1 min read Read on Twitter
I get a real cognitive dissonance when I see threads of Obj-C fans complaining about how complex and confusing Swift is. I used and loved Objective-C for most of a decade, but I just can't reconcile the rose-tinted views of it with my own experience.
Swift is certainly not perfect, but it has freed me from a bunch of pain I suffered when trying to write esoteric things like graphics, games or parsers in Obj-C (mostly around trying to find the balance between fast-but-primitive C and slow-but-elegant Obj-C APIs)
Swift is certainly a lot more complex than Obj-C in terms of keywords and concepts, but I rarely encounter that complexity in typical use.

And in *atypical* use cases, Obj-C was also immensely complex and weird and hard to use correctly. Did you ever try playing with runtime.h?
95% of Swift code is just simple structs, classes, protocols and enums. I rarely use generics, and I *never* use PATs (apart from stdlib types).

Sure, the new @dynamicWhatever stuff is all crazypants, but you'll rarely ever touch it. These are not barriers to entry.
Meanwhile "magic" like Codable or auto-synthesized Equatable conformance is so much simpler and nicer than trying to implement NSCoding or isEquals in Obj-C ever was. So much ugly, error-prone boilerplate just vanishes with Swift.
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Nick Lockwood
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!