In a reflective post yesterday Manton Reece of the Core Intuition podcast precisely summed up the concerns I’ve had since Apple’s announcement of Swift at WWDC 2014:

I also believe that a programming language can either encourage or discourage clever code based on the syntax it allows. I saw it with Ruby — programmers intent on fitting as much logic into a single line of code as possible. I think I see it with Swift as well, in operator overloading and maybe even a kind of rejection of Objective-C’s notorious verbosity. We’ll know for sure if we eventually see a Swift book in the pattern of JavaScript: The Good Parts.

Ruby developers like to call this fit-all-my-logic-in-one-line code “expressive.” Type less, do more; I would see the appeal 30 years ago when everyone was hacking on an 80-column terminal in emacs or vi. Today, we have powerful IDEs with code completion, snippets, and refactoring tools. I can write hundreds of characters of code in a handful of keypresses; and due to the beautiful verbosity of the Objective-C/Cocoa code we’re used to, it’s self documenting and easy to read by somebody new to the language/frameworks/app.

Don’t get me wrong, I enjoy the syntax of Swift, and I’m very happy with the way Apple is writing it in all of their WWDC 2015 slides. However, it’s the factions of the community at large that want to take it in a more “expressive” direction that worry me.

We’re half-way through this year’s WWDC I’ve finally resigned myself to the fact that after the Xcode 7 official release in the fall, I will be learning and using Swift in production code. Personally, I’m going to try and do it like a Objective-C developer, with self-documenting and beautifully-verbose syntax, but I hope I’m not alone.