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

The best AI chatbot for coding

Tuesday, April 23, 2024

9 video gadget must-haves; 6 things Linux should borrow from MacOS -- ZDNET ZDNET Tech Today - US April 23, 2024 placeholder Can Meta AI code? I tested it against Llama, Gemini and ChatGPT - it wasn

Do I get to put your AI idea in front of 100K people?

Tuesday, April 23, 2024

If you build something great, I want to tell the world about it ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

UnitedHealth breach may affect huge portion of US citizens

Tuesday, April 23, 2024

The Change Healthcare ransomware attack has led to a massive leak of US healthcare data View this email online in your browser By Alex Wilhelm Tuesday, April 23, 2024 Good morning, and welcome to

LW 130 - Building a Product Configurator

Tuesday, April 23, 2024

Building a Product Configurator Shopify Development news and articles Issue 130 - 04/23/2024 Read Online Liquid Weekly All Things Shopify Development How to Sell Personalized Products on Shopify 2024 -

New public workshop in June: architecting for fast flow

Tuesday, April 23, 2024

Get the early bird discount You are receiving this email because you subscribed to the microservices.io mailing list. Helping organizations accelerate software delivery I provide consulting and

Pnpm v9.0.0; Biome v1.7; ESLint v9.1.0; Node.js collaboration summit; Intl.Segmenter; tree shaking;

Tuesday, April 23, 2024

We have 9 links for you - Stay up-to-date on JavaScript and tools WorkOS, the modern API for auth and user identity. workos.com Sponsor WorkOS enables B2B SaaS companies to accelerate enterprise

New on VC+: Our Visual Briefing on the IMF's World Economic Outlook Report 🔮

Tuesday, April 23, 2024

We've compiled a visual analysis of the most important takeaways from IMF's latest report. View email in browser EXCLUSIVE PREVIEW Upcoming on VC+: Our Key Takeaways from IMF's World

Meta teases a limited-edition, Xbox-inspired Quest headset

Tuesday, April 23, 2024

The Morning After It's Tuesday, April 23, 2024. Meta announced it's opening up the Quest's operating system to third-party companies, allowing them to build headsets of their own. The Quest

Post from Syncfusion Blogs on 04/23/2024

Tuesday, April 23, 2024

New blogs from Syncfusion What's New in Blazor Query Builder: 2024 Volume 1 By Satheeskumar S This blog explores the new features added in the Syncfusion Blazor Query Builder component as part of

Police Chiefs Call for Solutions to Access Encrypted Data in Serious Crime Cases

Tuesday, April 23, 2024

THN Daily Updates Newsletter cover Java All-in-One For Dummies, 7th Edition ($27.00 Value) FREE for a Limited Time A beginning coder's resource for learning the most popular coding language