Go to homepage

Reid Main

  1. Archives
  2. Tags
  3. About Me
  4. Email
  5. Resume

🔗 Dominik Wagner: On my misalignment with Apple's love affair with Swift

Yes, Swift code might end up being more correct in the end. It also might alert you to edge cases early on. However, the flip side is it inhibits your creativity while writing. When starting out to program, the way I enjoy working, I don't yet know how the API is best expressed. So I try out different ways to express it until I find a sweet spot. Then I go back and unify accordingly

This is a blog post that has been making the rounds and as I read it the only thing that kept coming to mind was this sounds like a developer who hasn't written Swift since 2.0. Either that or they think they never write any bugs and therefore don't need the compiler to call them on their bullshit.

I don't think Swift is perfect and I actually agree with Dominik that Swift's goals of world domination are cause for concern. I have started to grow fearful of the Swift Evolution Forums because the developers who are incredibly vocal on them are not representative of everyone who writes Swift. The vast majority of Swift users don't have the time or ability to express enhancements they want/need to the language and with the sheer number of proposals that go through the "Swift way" of doing things can become very muddled. I wish there was a dictator-like figure who drove the design of the language more. Someone who pushed the "Swift way" so that all developers moved towards designing things in a similar manner.

But even with all of those concerns Swift is still and amazing language for writing iOS apps and interacting with UIKit. It causes developer productivity to skyrocket not because it is stifling but because the compiler helps minimize all of the bullshit you had to catch at runtime previously. I have been using Swift daily for the last two years and I have no urge to go back to Objective-C because everything I need to make world-class iOS apps efficently is already at my fingertips. But if you'd prefer to write thousands of tests to properly catch all of your speghetti Objective-C code I won't stop you.