Daily coverage of Apple’s WWDC 2019 conference, by John Sundell.

A Swift by Sundell spin-off.

Developer interview: Dave Verwer on WWDC, server-side Swift, Xcode, Marzipan, and more

Welcome to the second WWDC by Sundell developer interview, a mini-podcast and article series in which we hear from some of my friends from around the Apple developer community — about their thoughts, hopes and dreams for WWDC.

This time, I’m talking to Dave Verwer — creator of the very popular iOS Dev Weekly newsletter, and the new iOS Dev Jobs site.

Listen to the interview

You can also listen in your favorite podcast app, by adding the following RSS:

https://wwdcbysundell.com/podcast

Read the interview

John: With iOS Dev Weekly, you’ve been covering the iOS community for a long time, and I’m sure that you’ve also seen your fair share of WWDCs — so what’s your general strategy when it comes to trying to get a grasp of all the new APIs, the new version of Xcode, the new documentation — all of the things that will be released during the conference, how do you consume that?

Dave: It’s always a crazy week. You go there — I’ve been lucky to be there many times — and with your feet on the ground in the convention center, or in San Francisco or San José, everything is just this whirlwind of trying to catch up with what’s been announced at the conference, what’s been announced in the sessions, also talking to people and meeting people — so that week is absolutely jam-packed. But you’re right, that I do have something to publish every Friday, and that includes the Friday of WWDC. Now, I kind of cheat a little bit, and that’s the secret to it — just cheat [laughs].

John: Right, that’s the best advice [laughs].

Dave: Well, I tell you, I kind of designed it this way. Not intentionally, but it happened. I only get to link to other people’s stuff, so unless other people are writing about it, I don’t have to link to it. That’s actually quite an advantage, it’s not like I’m writing a whole lot of blog posts myself, I don’t have to cover every single aspect of it. Actually, in that first week, people aren’t really writing many blog posts either — because it is all new information, people are just getting their head around it, and nobody’s really dug into it yet.

So, that first week tends to be all about the official announcements, so I’ll link to quite a few of the official pages that week, normally. I mean, who knows what will happen this year, but normally that’s what happens. Then I do like a comment thing with my very rough take on approximately what was announced. But that’s only a few paragraphs, so compared to some people, I have a fairly easy job that week — although finding the hours to put that together while you’re out there at the conference is always a little bit challenging.

John: Yeah, that’s a big reason why I didn’t go this year — because I want to do that coverage of the conference, and focus 100% on that. So we’ll see how that goes this year — and maybe I’ll be in San José, or wherever it’ll be, next year.

Dave: So what you’re saying is that I’ll be linking to you a lot this year?

John: I hope so [laughs].

Dave: [laughs] You are going to be the chief summarizer of this WWDC.

John: Hopefully, yeah. I will follow much of the same strategy as you just mentioned — I’ll be linking a lot to the official stuff, and of course do my own take on it, and things like that. It’s a lot of fun to see many different people in the community do their different takes on things that will be announced.

Dave: Yeah.

John: Speaking of takes — one big feature this year seems to be what has so far been known as “Project Marzipan” — and there has been a lot of takes and debate around this, and what it means for the Mac as a platform, and from what I can tell you have been on the positive side of the spectrum. So what are your thoughts on Marzipan now that we might just be a few days away from seeing the production version of it?

Dave: I’m very positive about Marzipan, and have been since the beginning, really. I think that, right now, a lot of companies are just not writing Mac applications — but they do write iOS applications, because to have a good experience on an iOS device is much more difficult using web technologies, than it is on the Mac. So we see a whole lot of pretty good iOS applications coming out from these companies whose applications we use all the time — you know, usually these are web applications or web services that we use through some kind of native client, or something like that.

Right now those companies are not writing Mac applications. I think, given that they’ve already invested in iOS technology, and of course some of those companies are using cross-platform frameworks, but a lot of them are using iOS directly — I think we’ll see those companies potentially start to launch Mac applications as well, which I can only see as a positive thing.

Yes, it’s not going to give them the cross-platform, kind of Mac-and-Windows thing that they maybe were looking for — which is what Electron, and that kind of technology, gives them — but I think that, given they’re already invested in iOS, there’s an argument to be made that they could now invest in Marzipan, or whatever it gets called.

John: Yeah, absolutely.

Dave: The people who are not so optimistic about Marzipan, a lot of their argument is that it’s not going to be a “real Mac application” — or that it’s not going to be as integrated with the system as it could be, and that may be true with this first version. But actually I think that’s kind of OK, given that it’s just the first version of it.

I’m not expecting huge changes from what we’ve seen from the digging around that people have done so far. But, as people have already shown, a fantastic amount is already possible with what has been hacked out of Mojave — you look at what Steve Troughton-Smith has been publishing — he’s been doing incredible stuff with last year’s version. So there’s been a year’s worth of progress since then, and there’s some fairly obvious things that they almost certainly will do — like for example multi-window support, which I think is all but guaranteed to be in this actual release version.

But I’m not expecting huge changes. I’m certainly not expecting things like Apple Script. I’m not expecting a lot of the things that people might be draw into thinking “Well, it’s not a real Mac application unless it can X, Y and Z”. And I think that’s OK.

John: I think it’s also fair to say that what makes a Mac application is also going to change. Marzipan might not only bring a lot of new apps, but it might also modify the existing conventions.

Dave: I think that’s absolutely fine. None of these platforms stay the same forever anyway — just look at how iOS has changed in the last 10 years — it’s constantly evolving. Computing constantly evolves, by definition, that’s what has happened for the last 30 years. And we have a choice as well, whether to embrace that change, or whether to resist that change. And I’m certainly on the side of embracing that change, and I’m very optimistic about it.

John: Yeah, me too. It was the same when there was this hashtag #embracethenotch when the iPhone X was launched — but we’re embracing change now.

Dave: Right.

John: So speaking of change, what are some of the other developer tools that you’d like to see upgraded, changed, or introduced at WWDC? Are there any new tools that you think would make your day-to-day more smooth, or are there any specific problems that you’d like to see solved in Xcode or some other developer tools?

Dave: I really like Xcode. I think Xcode as a development environment is, for me, I get pleasure from using it. It’s not perfect, there are problems with it of course, nothing is perfect — but Xcode, I think, is pretty good. The thing that I’m looking for, and the thing that I’m a little frustrated that it hasn’t been tackled yet, is the Swift Package Manager.

It’s been more than 3 years since the Swift Package Manager was first announced and released, I think it was at the end of 2015, with the open sourcing of Swift. So it has been 3 and a bit years since then, and of course the announcement of that certainly killed a lot of the time that was being invested into the other package managers — but Apple didn’t really finish the job. It’s been left in this limbo, and now we’ve got 3 or even 4 dependency managers for iOS applications — I just think that’s a crazy situation, and I’d really like to see Apple just solve that problem. I don’t know whether they will this year, but I hope that they do.

John: Yeah, absolutely. So you’d like to see the Swift Package Manager be integrated into Xcode — and be usable for things like iOS, AppKit applications, and all sorts of things?

Dave: Yeah, absolutely. And I believe that it is already usable in some way, shape and form for iOS — but it’s not there yet. What I want to see is the Swift Package Manager to be as easy to use, or even more easy to use, than the other options we’ve got. So that we don’t have this situation of having 3 or 4 different package managers for our use. That’s not to say that I want CocoaPods and Carthage and all the others to die — those projects are amazing — but this limbo that we’re in right now is hurting all of them. I think a better situation would be if we had one that was really good, and it was integrated into Xcode, and it worked really well — I hope that’s what they’ll do.

John: Yeah, totally agree. The situation we’re in right now is a bit like “We have too many standards, let’s make another standard”.

Dave: Exactly, yeah.

John: Alright, so as someone who does more and more of your work on the web — just like me — with iOS Dev Weekly, and now with iOS Dev Jobs as well — do you think that we’ll see Apple expand server-side Swift this year? It’s always been a little bit of its own world, kind of like the Swift Package Manager that you just mentioned, so do you think that this is the year when server-side Swift will get some front-and-center time during the conference?

Dave: I think it’s no secret that Apple are working on some kind of server-side Swift technology — you look at SwiftNIO, and some of the other projects that they’re open sourcing — there’s no secrets here, there projects are designed for running Swift on the server, it’s that simple. I don’t think they’re even trying to hide that. I think the bigger question is why they’re doing that.

One of the members of the Swift core team at Apple said a few a months back, and I forget who exactly it was, but one of them said that Apple is using Swift on the server internally to host production software. Now that’s a really interesting statement. I don’t know what that really means — does that mean that they’re using something internally built, or is that a Vapor thing, who knows what that actually means? It could just be that they’ve got a script running on some server that was written in Swift, it could be anything.

But it is very interesting, and all these signs show that Apple is certainly interested in this area. How we get to see that as developers on the official platform, I think the most likely is that we’ll see something like cloud functions for CloudKit, or something like that — where you can write little snippets of Swift. I don’t think we’re going to see a big wide-ranging Swift on the server framework from Apple, I don’t that’s what they’re going to do. I don’t think they’ll do a traditional web framework, at least not anytime soon. I’d love to see what that would look like, but I don’t think it’s very likely. But I think it’s obvious that they have their eye on this, and as Chris Lattner once said: “The goal of Swift is world domination”, right?

John: Right, exactly. This is just one step along that line [laughs].

It is true that Apple is using server-side Swift in production, and the statement that you mentioned there — I think you might actually be referring to Ted Kremenek who was on the Swift by Sundell podcast, where he actually made that statement.

Dave: Ah, there you go. I knew I heard it somewhere [laughs].

Thanks a lot to Dave Verwer for doing this interview, and I hope that you enjoyed it. You can find Dave on Twitter @daveverwer, and also make sure to check out iOS Dev Weekly and iOS Dev Jobs.

For the rest of this week, I’m publishing a new developer interview every day on this site — so make sure to check back tomorrow for more insights, speculation and wishes from another fantastic member of the iOS developer community. Like always, your feedback is very welcome, just find me on Twitter @johnsundell.

Thanks for reading/listening! 🚀