WWDC Prediction: A First Class Swift IDE from Apple

So if you read my recent rant, On Tooling, I think I clearly described that Apple has a real IDE problem. Xcode is outdated, doesn’t seem to want to support Swift, it’s buggy, it’s not modern and generally tries to do too much but never enough. 

I think Apple knows this. Apple is a company focussed on quality. And they probably don’t want to keep their devs this annoyed about the tools they’re provided with. 

Playgrounds. Swift Playgrounds was a great first step in this direction. We’ve seen it be useful for anyone from a code novice, learning for the first time through to seasoned professionals, prototyping some code in a fast way. 

So let’s break down the reasons behind this prediction:

  1. Playgrounds aren’t finished. We can’t export to apps and we cant…. well, we can’t do much at all. 
  2. Bret Victor made a lot of stuff at Apple. While he’s pretty coy about what he did there, we know for sure some of it turned into Swift Playgrounds. What else did he decide a futuristic IDE needed? Maybe we’ll see that?
  3. Xcode isn’t accessible. Apple wants everyone making apps. Students, children, people who live far away from internet that can download 8GB of Xcode. Students and novices want something lightweight. They want something where they can describe their idea and it almost comes to life in front of them. Something like Scratch + playgrounds for iOS would be awesome. 
  4. 3 years on and Xcode still can’t rename Swift classes and methods. I’d really only be keen to see this lack of progress if the efforts were going elsewhere… I’d consider this our biggest hint. 
  5. Apple has a real chance to disrupt IDEs here. A real chance. They did it with the iPod, iPhone, iPad, iTunes, almost anything with i in front of it, yet Xcode’s innovation has really been more incremental, and not much more. It’s a text editor, and it doesn’t have to be. 

Reasons that might be against us:

  1. Chris Lattner left to Tesla. While we don’t know the reason for the move, if I built a language for a company that’d last 20 years at least, and then told I couldn’t build a good IDE to go with it, I’d be pretty annoyed and want to jump ship. Maybe this is what happened here?
  2. Swift is Open Source. Maybe Apple is looking at Jet Brains or the community in general to fill this gap?

What do you think? Let me know! 

Thanks for reading. You can follow me on twitter — @samjarman. You can also follow me on Twitch, where I do live coding streams — twitch.tv/samjarman. This post and others like it was originally published on my blog — samjarman.co.nz/blog.