iOS Dev Weekly - iOS Dev Weekly - Issue 509

The constant ebb and flow of complexity in software development. 🌊
 

iOS Dev Weekly

 
View on the Web    Archives

ISSUE 509  May 28th 2021

 
Comment

  Comment  

 

I still (just about! 👴) remember the first time I came across asynchronous programming. I assumed, incorrectly, that when I called into the concurrent code, execution would continue in my calling function after it had completed. Of course, I was as wrong then as I often am now!

I feel like programming languages are finally catching up with my naive expectations as async/await syntax becomes more standard across a wide range of languages. The great news is, that group of languages will soon include Swift.

I started thinking about this topic after reading Alejandro Martinez’s post on Swift concurrency and watching the three videos that accompany it. He covers three distinct parts of the Swift concurrency story in detail, and I learned a lot from watching them. I’m sure you will too.

Over the years, I feel like I’ve seen programming languages fight a constant battle against complexity as the hardware, operating systems, and user expectations push languages and frameworks to evolve. As the battle progresses, complexity goes through advances and retreats and for every step forward that languages make, there’s complexity is lying in wait trying to gain new footholds.

For example, manual memory management was a huge advance for the complexity army until the combined forces of reference counting, garbage collection, and eventually, automatic reference counting pushed it to retreat. It advanced again as asynchronous programming became something we all had to deal with until languages struck back with threads, queues, promises, and eventually async and await. There are more examples, of course, but those are two big ones. It happens over and over again.

I feel like complexity has been increasing quite consistently in Swift over the last few years, so I’m pleased to see the language make a decisive strike against it with some of the language changes carried by the Swift 5.5 cavalry! 🦄

Dave Verwer

 
 

  Sponsored Link  

 

Forget writing testing scripts, use Waldo.

Waldo is the first fully no-code mobile testing solution. Now, anyone on your team can create reliable automated tests and help you fix bugs before your users find them. Try Waldo now, for free.

waldo.io

 
 
 

  News  

 

New Apple Developer Forums features now available

Remember when we were all wondering how WWDC labs were going to work last year, and Apple surprised us the week before the conference with brand new developer forums?

It got plenty of criticism when it launched, but I urged everyone to give Apple plenty of slack (no pun intended!) while giving the new forum a chance. Well, here we are just one short year later 🙄 with updates. I agree with everything that Michael Tsai say about the RSS feeds, and while the updates are a step in the right direction, these forums aren't significantly different from what we had before, and what we had before wasn't great.

apple.com

 
 

  Tools  

 

Unexpectedly

This new open-source app from Stéphane Sudre isn't related to iOS development, but I bet plenty of you will still appreciate it.

free.fr

 
 

  Code  

 

What's new in Swift 5.5?

Unless Apple is planning something drastic, we're just over one week away from the next version of Swift being shipped in an Xcode beta! So here's Paul Hudson with his regular look at what's coming new.

hackingwithswift.com

 

Here is what SwiftData will be…

That's a bold title from Drew McCormack! A new "SwiftUI style" persistence framework is the most common prediction/wish for this year's conference that I see. I agree that it's not going to be, and shouldn't be, a completely new thing from the ground up. There's no need, and data persistence frameworks take years to mature. What will it be, though? Read on for Drew's take on it, including some interesting thoughts on data persistence and blockchain.

Note: That's the first mention of blockchain ever in this newsletter. I'm not sure how I feel about that. 😬

medium.com

 

Adding a Gradient to Large Title Text in SwiftUI or UIKit

Here's Becky Hansmeyer with a great piece on creating beautiful gradient-masked navigation bar titles. The article is summed up perfectly by these sentences:

The good news is that SwiftUI makes it trivially easy to create gradients and mask them in a variety of ways. The bad news is that SwiftUI can’t do much of anything when it comes to customizing the navigation bar.

Large masked gradient titles might not be trivial in SwiftUI right now, but they are possible, and there's a playground attached to this post that proves it!

beckyhansmeyer.com

 

Core Data In Memory Store

You might be aware that Core Data supports in-memory data stores but wondered why you'd use them. If that sounds like you, Keith Harrison has just the post for you as he covers how to create them and two interesting use cases.

useyourloaf.com

 

AASA File Identifiers

We recently struggled with AASA while trying to make the SPI Playgrounds app respond to URLs. Documentation is sparse and spread over multiple WWDC videos, and we eventually decided not to implement it. So, I read this story from Michael Amundsen with interest. I don't think the bug he ran across was the same problem we were having, but it might the same issue you face in the future!

lickability.com

 
 

  Design  

 

Should you use gamification techniques in your app?

Getting gamification right in apps can be tricky. Go too far, and people could feel manipulated, but get it right, and it can work wonders for engagement. I liked this article from Nick Babich, especially the section where he talks about "achievements", or more accurately showing meaningful progress inside your app. Just be cautious with it!

uxplanet.org

 
 

  Videos  

 

NSSpain 2020 - Remote Edition Videos

It's been a rough year for conferences, but that didn't stop NSSpain! As always, they've been kind enough to release the videos online. With almost 30 videos available, you're sure to find plenty to consume your weekend!

vimeo.com

 
 

  Jobs  

 

Technical Director of Engineering @ Stream – Stream is hiring for a Technical Director of Engineering managing our SDK teams for iOS, Android, Flutter, React Native, and React. Our APIs for activity feeds and chats are used by over a billion end-users. We’re one of the fastest-growing startups in Europe, and recently announced our Series B of $38 mln. – Amsterdam or Remote

Senior Mobile Developer @ Six to Start – We make Zombies, Run!, the world's most popular smartphone fitness game with over 10 million downloads. Help us make exercising fun for everyone! – Remote

Swift Developer @ Toggl Track – Help us build and improve our Toggl Track app for iOS, iPadOS, watchOS and macOS. You will be part of a 5 people team dedicated to build the apps for Apple devices. Our code has been built from scratch in the last year, we just released the iOS app and we are starting work on our macOS app. We do 100% Swift with some small doses of SwiftUI. The salary for this position is €50,000 annually. – Remote

iOS Engineer @ Karbon – Join our dedicated, all-remote agency and help us build amazing iOS apps for amazing clients. We've spent the past 10 years helping companies ship apps to millions of users—join us as we focus on the next 10 years. – Remote within the US

iOS Software Engineer @ Slumber Group – Join the Slumber Group team and help us achieve our mission of "Improving the health of every single person worldwide through sleep". Our audio-focused sleep apps and podcasts help millions suffering from insomnia, tinnitus, anxiety, PTSD, bereavement, or colic. Our products have been featured by Apple, Google, The Washington Post, NYT, WSJ and more. – Remote

Senior iOS Developer @ Sunshine Health Studios Inc. – We make a direct impact on people's health for the better. Our product works long-term, and our large active community shows. Join us in a stable job, alongside Y Combinator founders and top-notch engineers. Paid holidays/vacation, benefits, stock options are available for all employees, even international employees. – Remote

Senior iOS Engineer @ ClassPass – Want to work on an app that helps people lead healthier, more fulfilling lives? Join the team at ClassPass, the world's leading fitness and wellness aggregator. You'll be defining our mobile strategy, collaborating with an incredible product team, and guiding us through a really exciting period of growth. – Missoula MO, Houston TX, or New York City NY

iOS Developer @ Marks & Spencer – We’re looking for enthusiastic, product-focused iOS developers to join our growing mobile engineering team at M&S and contribute to our App Store chart topping iOS application that’s used by millions of our loyal customers every month. Our app is a universal app, written completely in Swift, and we are always looking for ways to improve, enhance and extend its functionality. – London UK

 
 

  Insiders  

 

Thanks so much to this week’s iOS Dev Weekly Insiders! Ilter Cengiz, Paul Jackson, Shawn Marston, shengchalover, and Russ Shanahan. Thank you so much for your generosity. 😍

This issue’s insider call is on Monday, and we’ll be talking about complexity in software development, as well as covering some of the other links in this issue. Join us?

 
 

  And finally...  

 

A bug in a web app that only manifested on Windows PCs and started in 1977? That sounds like a story you should read, doesn't it. 🤯

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

 
 
©2021 iOS Dev Weekly | Privacy Policy | Twitter | Suggest a Link
 
Published with Curated

Older messages

iOS Dev Weekly - Issue 507

Friday, May 14, 2021

The App Store is a perfect utopia, free of all flaws. 😵‍💫 View on the Web Archives ISSUE 507 May 14th 2021 Comment The last time I wrote about scam subscription apps, I finished by saying this:

iOS Dev Weekly - Issue 506

Friday, May 7, 2021

Do you ever try libraries in a Swift playground before deciding whether they're a fit for your project? 📦 View on the Web Archives ISSUE 506 May 7th 2021 Comment You may think I talk about the

iOS Dev Weekly - Issue 505

Friday, April 30, 2021

What was your first development experience on the Mac? 🤖 View on the Web Archives ISSUE 505 April 30th 2021 Comment I lost about two hours yesterday to this tweet from Davide Di Stefano. Xcode 2 was

iOS Dev Weekly - Issue 504

Friday, April 23, 2021

What does the new Mac hardware lineup have in common with SwiftUI? 🤷‍♂️ View on the Web Archives ISSUE 504 April 23rd 2021 Comment Something struck me as I watched the M1 chip appear in more hardware

iOS Dev Weekly - Issue 502

Friday, April 9, 2021

Should you wait for the next new API, architecture style, or bug fix? 😬 View on the Web Archives ISSUE 502 April 9th 2021 Comment Many years ago, back when I used to be a .net developer, I remember

You Might Also Like

🎉 Black Friday Early Access: 50% OFF

Monday, November 25, 2024

Black Friday discount is now live! Do you want to master Clean Architecture? Only this week, access the 50% Black Friday discount. ​ Here's what's inside: 7+ hours of lessons .NET Aspire coming

Open Pull Request #59

Monday, November 25, 2024

LightRAG, anything-llm, llm, transformers.js and an Intro to monads for software devs ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Last chance to register: SecOps made smarter

Monday, November 25, 2024

Don't miss this opportunity to learn how gen AI can transform your security workflowsㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ elastic | Search. Observe. Protect

SRE Weekly Issue #452

Monday, November 25, 2024

View on sreweekly.com A message from our sponsor, FireHydrant: Practice Makes Prepared: Why Every Minor System Hiccup Is Your Team's Secret Training Ground. https://firehydrant.com/blog/the-hidden-

Corporate Casserole 🥘

Monday, November 25, 2024

How marketing and lobbying inspired Thanksgiving traditions. Here's a version for your browser. Hunting for the end of the long tail • November 24, 2024 Hey all, Ernie here with a classic

WP Weekly 221 - Bluesky - WP Assets on CDN, Limit Font Subsets, ACF Pro Now

Monday, November 25, 2024

Read on Website WP Weekly 221 / Bluesky Have you joined Bluesky, like many other WordPress users, a new place for an online social presence? Also in this issue: CrawlWP, Asset Management Framework,

🤳🏻 We Need More High-End Small Phones — Linux Terminal Setup Tips

Sunday, November 24, 2024

Also: Why I Switched From Google Maps to Apple Maps, and More! How-To Geek Logo November 24, 2024 Did You Know Medieval moats didn't just protect castles from invaders approaching over land, but

JSK Daily for Nov 24, 2024

Sunday, November 24, 2024

JSK Daily for Nov 24, 2024 View this email in your browser A community curated daily e-mail of JavaScript news JavaScript Certification Black Friday Offer – Up to 54% Off! Certificates.dev, the trusted

OpenAI's turbulent early years - Sync #494

Sunday, November 24, 2024

Plus: Anthropic and xAI raise billions of dollars; can a fluffy robot replace a living pet; Chinese reasoning model DeepSeek R1; robot-dog runs full marathon; a $12000 surgery to change eye colour ͏ ͏

Daily Coding Problem: Problem #1618 [Easy]

Sunday, November 24, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Zillow. Let's define a "sevenish" number to be one which is either a power