Swift will have a huge impact in 2019, here are some key things that will bring Swift closer to it's main goal: total word domination!
Swift 5 & ABI stability
I already have an article that explains ABI stability pretty well, so I don't really want to get into the details here, but the stable ABI is a long awaited "feature" that definitely arrive for the Swift programming language later in 2019. 🎉
A couple of other interesting thing will also arrive in Swift5, you can always check the latest proposals & implementation statuses on the Swift evolution dashboard.
SwiftNIO HTTP2 support
Swift is already on the backend, the only problem is that currently you can't really make a server that supports the HTTP/2 protocol. Don't worry too much about it, because some great guys at Apple are already working on the issue. Next year the low level SwiftNIO framework will have it's well-deserved support for HTTP/2. 👍
This means lots of performance gains plus you will be able to set up a native push notification server purely in Swift. Hopefully this will be released right after Swift 5.
Vapor 3 is a pure success story, not so long ago I made a promise that I'll try it out, because I've heard that it's amazing. I can confirm the rumors, Vapor 3 is the best Swift backend framework of 2018. It's way better than anything else you can find out there, but there is still room for improvement. Vapor 4 is probably coming next year alongside with Swift 5 & NIO2 so it'll have a full HTTP/2 support. 💧
Swift Package Manager & Xcode
I really hope that Swift Package Manager support for Apple operating systems will arrive in the next version of Xcode. It was a logical step to hold back until there is a stable ABI, but now it'd be a huge step forward. This could be the end of 3rd party package managers, like CocoaPods or Carthage. You should note that this is just a prediction, but it'd be super cool! Oh please do this Apple! 👏
Marzipan - Phase 2
UIKit on the macOS (or project Marzipan) will have a public API in 2019. This means you'll be able to bring your already existing iOS app to the desktop with just a few little code changes. Sounds promising? Well it is, not just because UIKit is an easy to learn, well-designed framework, but the mac needs something new.
The platform is "dying" in the age of iPad Pro. Lots of people are complaining about this phenomenon, and the lack of pro applications on a device called iPad Pro. The current version of iOS is definitely holding back the iPads, especially the Pro series. I'd throw my Macbook Pro away with an ease if there were actual professional apps for iOS (or at least Xcode & Terminal). 🙃
Honestly I believe that "upscaled" iOS apps won't save macOS and the desktop macs. For example, the Home app in macOS Mojave has a horrible user experience. Empty spaces everywhere, force touch not working like you'd expect (you have to double click on the accessory) and many more. Why is the Photos app slower on macOS than iOS? Why is everything slower on the mac, and why I like to use my iPad more and more?
Now, back to the topic: I know Apple wants to replace AppKit on a long term with UIKit, which is a great idea, but despite the fact that they told us that they don't want to merge iOS & macOS, they are exactly doing that. I believe that a unified operating system would have huge benefits, the problem is always building user experiences, but UIKit on appleOS could help a lot for developers to address this issue.
This way our amazing community would be able to create a new generation of desktop class applications designed both for mouse & keyboard and touch interactions! Come on Apple, just look at the creative watch faces that people hacked together. 🤪
Anyway, we'll know a lot more about the upcoming plans after WWDC19.
Are you still with me? Cool! 2018 was an eventful year. Our family moved to a new home, our second baby arrived, so it was a pretty busy period of time for me. 😅
From the point of the blog, I was not able to deliver as much quality content as I wanted, but I'm pretty happy with the current results. More and more people are reading my posts every month, and the metrics for 2018 are way better than it was back in 2017. I hope that this trend will continue in 2019 as well.
I was invited to review two Swift books for paktpub. One that focuses on design patterns, and the other was about server side swift. It was a nice experience, I've learned a lot from it, but don't expect a book from me ever. #booksareobsolate
I have some interesting plans for 2019, we'll see how things turn out, but one thing is for sure, I'll keep writing new articles (hopefully every week). I still love the Swift programming language and I want to teach more and more about it. 🤐
Feel free to subscribe below & enjoy the rest of the holiday season! 🎊