iOS Dev Weekly - iOS Dev Weekly - Issue 457

SPM is the future, but CocoaPods and Carthage are going to be with us for a very long time! ๐Ÿ“ฆโณ
 

iOS Dev Weekly

 
  

ISSUE 457  May 22nd 2020

 
Comment

  Comment  

 

Last week's "one question" Swift Package Manager survey wasn't on the same scale as the full community survey, but it was a nice update on how people feel about the SPM. As promised, here are the raw results. Thanks for taking the time to fill in the survey!

There were also a couple of optional, free text questions, so let me summarise those too. The most significant technical complaints about the SPM were:

  1. Not being able to (easily) check in your dependencies alongside your source code. I'm a firm believer that wherever possible, your source code repository should contain all of the source code required to build your app, so I'm 100% on board with this one!
  2. Xcode being a black box around checking out package dependencies and the technical issues that can cause. I agree with this too, but it seems like less of a fundamental problem and is something that future releases of Xcode can fix. I have high hopes for Xcode 12 when it comes to SPM support. ๐Ÿคž

So, what about non-technical issues? Many people also felt that the lack of a "CocoaPods style" centralised repository of packages was a downside, and I very much agree! ๐Ÿ˜‚ That said, it's not something that I ever see Apple taking on. They've always been ultra-cautious about recommending third-party code, and even though a centralised package list doesn't implicitly mean recommendation, I don't see them wanting to solve this problem.

However, by far the biggest issue facing the Swift Package Manager that came across loud and clear is that neither of the other dependency managers are broken, and it's a big job to change the dependency manager for a large project. Then, think about the fact that switching dependency managers doesn't necessarily come with any tangible benefits, and the time needed to do it is hard to justify.

I'm still confident SPM will become the dominant choice for managing dependencies in iOS apps at some point, but CocoaPods and Carthage are going to be with us for a very long time. ๐Ÿ“ฆ

Dave Verwer

 
 

  Sponsored Link  

 

Launch Scalable iOS Chat In Days With Stream

This tutorial shows how easy it is to use Streamโ€™s scalable chat API & UI components to ship in-app chat in a fraction of the time. Start a free trial now and try out Stream's chat API, SDK and chat React Components. See why Stream powers the feeds and chat for over 500 million end-users. Check out the tutorial.

getstream.io

 
 
 

  News  

 

Enhance the VoiceOver experience in your app

You might know that it was Global Accessibility Awareness Day yesterday. There's plenty of accessibility content in this week's newsletter, but let's kick the issue off with a post from the Apple Developer app on VoiceOver. There's a wealth of accessibility documentation from Apple, and I liked how this post acted as a guide into the documentation you need to get your app accessible.

apple.com

 

The Future of Swift on the Server

Great post from Tim Condon on the state of Swift on the server. I'm not quite as convinced as Tim that this year is the year, but I do agree that the Swift team certainly keep an eye focused towards it, and there must be a reason for that. Will we ever see a first-party Swift on the server solution? I still believe it could happen, but probably not soon.

I've been doing a bit of work with Vapor recently, and as someone who has worked with web frameworks in many different languages, it's obvious how young Swift on the server is. Even though Vapor is already at version 4, it's still a very long way from where it needs to be to see any kind of large scale adoption in a world of very mature and capable other languages.

timc.dev

 
 

  Tools  

 

Piranha

I saw a fair bit of sarcasm flying around about this post about Piranha, Uber's new tool to automatically remove code from feature flags that are no longer in use. The digs were mainly around the fact that Uber have thousands of these flags. So many that the technical debt caused by them required the creation of this tool.

You almost certainly don't need this tool, and that's OK. ๐Ÿ‘ But don't let comments you might have seen this week make you fear a technique that can be an incredibly beneficial tool for your app, and your business. Being able to run experiments is really valuable.

uber.com

 
 

  Code  

 

Nuke 9

It's always nice to see a mature, stable, well-loved open-source project get an update, and that's what Nuke from Alexander Grebenyuk is. This latest release adds SwiftUI and Combine support to the image caching library, along with a whole host of other improvements. ๐Ÿš€

github.io

 

Supporting Dynamic Type with Custom Fonts

It's been possible to support dynamic type with custom fonts since iOS 11, but have you done it yet? If not, Tim Roesner shows you how to make easy work of it. What are you waiting for?

timroesner.com

 

Making iOS Accessibility Testing Easy

Here's Nick Entin with a lovely little technique for unit testing your UI for accessibility grouping through snapshots. Simple and effective. ๐Ÿ‘

github.io

 

Swift tip: marking unused required initializers as unavailable

Let's finish this week's Code section with a quick tip from Jesse Squires, along with your regular reminder that you should be using SwiftLint! ๐Ÿ‘

jessesquires.com

 
 

  Design  

 

Blueprint Icon

Remember this article from a couple of weeks ago about creating your own "sketched" style app icon for a beta version? What if you didn't have to draw anything? What if you could get 90% of the way there by typing a character into a text box? Check out this new app from Canis does! Love it. โค๏ธ

wooji-juice.com

 

Building a Design System for iOS

Here's a brand new blog from Ram Shandilya, and it kicks off in style with a four-part (1, 2, 3, and 4) series on building a design system for iOS apps. The benefits of a design system in a team setting are clear, but individuals will benefit from doing this too. It's all about making clear decisions, once, and letting the clarity of those decisions make your app have a consistent look and feel.

ramshandilya.com

 
 

  Videos  

 

Videos from App Builders 2020

By all accounts, last week's remote AppBuilders conference was a great success, and as the talks were all pre-recorded, they're already online if you missed the event itself. As I mentioned above, it was Global Accessibility Awareness Day yesterday, and there are three separate accessibility talks here from Lea Marolt Sonnenschein, John Fox, and Matthew Bischoff.

youtube.com

 

Developing Apps for iOS at Stanford

The first time I linked to the Stanford iOS course was back in Issue 16, back in 2011 when they updated the materials for iOS 5! ๐Ÿฆ– I'd love to know how many people have learned to write iOS apps with this course. It must be many thousands. This year's class just started, and it now teaches SwiftUI. ๐Ÿ‘

stanford.edu

 
 

  Books  

 

Practical Server Side Swift

If you're fired up about Vapor after reading Tim's post above, and you find the official documentation for Vapor 4 a little... lacking (I'm assured it's being worked on!) then you could do a lot worse than pick up this book from Tibor Bรถdecs. It's bang up to date and covers the build of a full site from start to finish with Vapor 4.

For full disclosure, Tibor sent me a review copy of this book.

gumroad.com

 
 

  Jobs  

 

There are no featured job listings this week, but there are still plenty of non-featured new jobs being posted over at iOS Dev Jobs. Are you looking for a new job? You know what to do.

 
 

  And finally...  

 

This is my favourite WWDC wishlist ๐Ÿ˜‚

 
You received this email because you subscribed via the iOS Dev Weekly site.
Weโ€™ll be sorry to see you go but you can .
 
Shiny Development Ltd. Daresbury Innovation Centre Keckwick Lane Daresbury Cheshire WA4 4FS United Kingdom
 
 

 
 
ยฉ2020 iOS Dev Weekly | Privacy Policy | Twitter | iOS Dev Directory | Submit a link
 
Published with Curated

Older messages

iOS Dev Weekly - Issue 456

Friday, May 15, 2020

What's new in Swift 5.3? Many things, but the most exciting is resource support in the SPM! 🚀 View on the web Archives ISSUE 456 May 15th 2020 Comment The least surprising announcement at this

iOS Dev Weekly - Issue 453

Friday, April 24, 2020

How is Swift on the server doing? Find out with some analysis of the iOS Developer Community survey. 🚀 View on the web Archives ISSUE 453 April 24th 2020 Comment I've been poking around the results

iOS Dev Weekly - Issue 452

Friday, April 17, 2020

Will WWDC re-invent online conferences? Probably not, but the community might! 🤩 View on the web Archives ISSUE 452 April 17th 2020 Comment The remainder of this year is all about online events that

iOS Dev Weekly - Issue 451

Saturday, April 11, 2020

Will Apple experiment with pricing models on the App Store? Probably not, but we can live in hope! 🤞 View on the web Archives ISSUE 451 April 10th 2020 Comment I received a few emails after my comments

You Might Also Like

Retro Recomendo: Music

Sunday, April 28, 2024

Recomendo - issue #408 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Your Phone’s Other Number 📱

Saturday, April 27, 2024

Let's talk about your phone's IMEI number. Here's a version for your browser. Hunting for the end of the long tail • April 27, 2024 Today in Tedium: As you may know, Tedium is a blog and/or

🕹️ How to Play Retro Games for Free on iPhone — Why I Can't Live Without an eReader

Saturday, April 27, 2024

Also: Anker MagGo (Qi2) Power Bank Review, and More! How-To Geek Logo April 27, 2024 📩 Get expert reviews, the hottest deals, how-to's, breaking news, and more delivered directly to your inbox by

Weekend Reading — The Bob Ross of programming

Saturday, April 27, 2024

This week we use coffee tasting as our design practice, get as close to and as far away from the metal as possible, find an easier way to write documentation, discover why Google Search is getting so

Issue #538: All the Jam entries, Panthera 2, and Tristram

Saturday, April 27, 2024

Weekly newsletter about HTML5 Game Development. Is this email not displaying correctly? View it in your browser. Issue #538 - April 26th 2024 If you have anything you want to share with the HTML5 game

Daily Coding Problem: Problem #1424 [Easy]

Saturday, April 27, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Microsoft. Implement a URL shortener with the following methods: shorten(url) , which

Charted | Countries That Became More Happy (or Unhappy) Since 2010 😅

Saturday, April 27, 2024

Which countries had the highest happiness gains since 2010? Which became sadder? View Online | Subscribe Presented by Voronoi: The App Where Data Tells the Story FEATURED STORY Countries With the

Noonification: What Is E-Waste Hacking?

Saturday, April 27, 2024

Top Tech Content sent at Noon! The first AI-powered startup unlocking the “billionaire economy” for your benefit How are you, @newsletterest1? 🪐 What's happening in tech this week: The

TikTok faces a ban in the US, Tesla profits drop and healthcare data leaks

Saturday, April 27, 2024

Plus: Amazon's new delivery subscription and a deep dive on Rippling View this email online in your browser By Kyle Wiggers Saturday, April 27, 2024 Image Credits: TechCrunch Welcome, folks, to

🐍 New Python tutorials on Real Python

Saturday, April 27, 2024

Hey there, There's always something going on over at realpython.com as far as Python tutorials go. Here's what you may have missed this past week: Write Unit Tests for Your Python Code With