iOS Dev Weekly - iOS Dev Weekly - Issue 653

We stand on the shoulders of so many giants that it's hard to see beneath the clouds! ☁️
 

iOS Dev Weekly

 
View on the Web    Archives

ISSUE 653  March 22nd 2024

 
Comment

  Comment  

 

Watching this video from Daniel Leivers demonstrating his master’s dissertation this week set me thinking.

What Daniel has built is clearly impressive. You can sketch UI with your iPad’s pencil and see real interactive UI or Swift code appear alongside it. The app uses a model created from sketched UI components fed into the yolov5 algorithm and converted to a CoreML model to generate code from the identified UI components. It’s a good idea and makes a fantastic demo. If you’re interested in reading his dissertation, it’s available here.

I took a couple of things away from Daniel’s video. With all the light shining on GPT and LLMs at the moment, it’s easy to forget that CoreML is still capable of building amazing features like this. It’s also easy to think that AI means “running in the cloud” with how resource-intensive LLMs are, but this all runs locally.

But more significantly, his video set me thinking about progress. Thinking back to my own final year project that made up part of my software engineering degree that I completed in 1996, 28 years ago. I created an HTML editor using Borland Delphi 1. Remembering what my app did, it seems almost comical. It did not have an integrated browser preview, syntax highlighting, auto-completion, auto-indentation, or any number of other features that would be table stakes for even the most basic code editor today. To give you an idea, it was a slightly less capable version of something like this. I was still proud to complete it, though, as I am sure Daniel is proud of his project.

But still, I stood on the shoulders of giants to create my little 16-bit text editor, and so did Daniel with his remarkable iPad app. There are obvious dependencies like the machine learning algorithms and CoreML, but there are so many more that you might not immediately consider. Think about some of the more “mundane” parts of his app. How difficult would it have been to implement the sketching functionality without PencilKit? Not to mention technologies like SwiftUI, UIKit, the Swift language, Foundation, and even Darwin!

I don’t say this to undermine the amount of work Daniel did on his project. I want to celebrate the amazing technologies and development environments we have access to today that make projects like this possible as dissertations.

We truly do stand on the shoulders of giants I stood on the shoulders of the giants that created Borland Delphi, HTML, and the web back in 1994 and Daniel stands on countless researchers and computer scientists that made his project possible. One of the things I love about this industry is that even if we build an app in a team of one, we’re not working alone. Whether open or closed source, the APIs that others create are constantly pushing the industry forward and it’s a huge part of why it’s one of the fastest-paced industries that exist. I find it incredibly inspiring.

Dave Verwer  Permalink

 
 

  Sponsored Link  

 

Nail the toughest tech interviews

Get trained by tier-1 instructors with individualized coaching and 1:1 sessions, mock interviews, and personal feedback. Register now for the next Interview Kickstart webinar and nail your next interview.

interviewkickstart.com  Permalink

 
 
 

  News  

 

Provide your trader status in App Store Connect

You probably received an email yesterday telling you to add your “trader status” to App Store Connect. The legal definition of a trader is hard to parse, but I think RevenueCat’s attempted definition is reasonable:

If you make money with your app, probably.

Many people are upset about needing to provide an address and phone number that will be public, but don’t think it’s unreasonable. Maybe it’s because I’m used to needing to have a public business address in the UK, but I don’t have a problem with the EU requiring businesses not to be anonymous. If you’re on an individual account, it’s trickier, but if you’re making money then you might be about to cross that line to becoming a business. There are good tips on avoiding exposing your personal address in the RevenueCat article for those based in the US, so I’d recommend reading that.

Note: RevenueCat are a sponsor of this newsletter, but I am including this link here not as part of any sponsorship, but as it contained by far the clearest explanation I found about all this.

apple.com  Permalink

 

Visual Studio App Center Retirement

I’m sad to see the retirement of Microsoft’s App Center as it means the end of the timeline for HockeyApp, which was always my favourite way to distribute apps for testing before Apple released their integration of the competing TestFlight service¹. The retirement makes perfect sense, of course, since both Apple and Google have fantastic pre-release distribution systems, and Microsoft gives details of other services that people can use for the other pieces of functionality it had. I was sceptical but also hopeful when the acquisition happened, but it turned out much better than expected. I doubt many of you were using App Center in 2024, but I link to this announcement mainly because I want to give one more link to HockeyApp. 🫡

¹ One of the rare occurrences where Apple purchased a company and didn’t rebrand it. There are others, like Siri, Beats, and Shazam, but they are few and far between.

microsoft.com  Permalink

 
 

  Tools  

 

How to link to native type extensions in DocC

Daniel Saidi on DocC in Xcode 15:

While DocC was already great, Xcode 15 made it even better. You can now use metadata to describe your pages, create interactive tabs and grids, and much more.

He goes on to explain one of the biggest features in this year’s DocC release, support for documenting your extension methods.

danielsaidi.com  Permalink

 
 

  Code  

 

Nerdy internals of an Apple text editor

I enjoyed Mihhail Lapushkin’s write-up on creating a TextView-based editor. He tackles lots of background and high-level details in his first article and moves to the technical side of things in the second part. Both are very well-written and illustrated, and I’d recommend checking them out!

papereditor.app  Permalink

 

Sending trial notifications with provisional authorization on iOS

As Natalia Panferova explains in this article, “provisional” push notifications are a powerful way to show your users that your app can provide useful information via push before without needing any opt-in from users at all. This doesn’t use a new API, it was introduced with iOS 12, but I don’t see enough apps taking advantage of it.

nilcoalescing.com  Permalink

 

Complementing Unit Tests with Performance Checks

We’ve all probably run some kind of benchmark against a piece of code we’ve written at some point, but I bet most of them get thrown away once we reach the point of “Yep, it’s good enough!”

How about if we made that benchmark a part of our test suite, so we know if it regresses? Joakim Hassila believes that would be a good idea, and made a package to make it easier!

swift.org  Permalink

 

Guide to Naming SwiftUI Components

This is a great tip on naming SwiftUI components, and a great example that not all blog posts need to be epic! Useful is useful. 👍

ptrkstr.com  Permalink

 
 

  Jobs  

 

iOS Engineer @ trivago – trivago, a metasearch engine using real-time auction and petabytes of data, enables millions of travelers compare hotel prices from hundreds of booking sites. Based in Düsseldorf, we foster a culture of learning and innovation, embracing flexibility for our talents to shape the travel industry. – On-site (Germany) with some remote work (Anywhere)

Senior iOS/macOS Developer @ Paste – Joining Paste means crafting impactful, user-focused products alongside a team that values innovation, flexibility, and a culture of collaboration. Dive into projects that push the boundaries, enjoy freedom in how you work, and help shape the future of productivity tools. – Remote (within European timezones)

 Permalink

 

If you’d like to see your job featured in iOS Dev Weekly, post it on iOS Dev Jobs and select “Featured listing” as you check out, and it’ll be in next week’s newsletter. 🎉

 Permalink

 
 

  And finally...  

 

You thought you had a tough debugging problem? Think again!

 Permalink

 
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.
 
iOS Dev Weekly is published by Verwer Services Ltd. with a registered office at 5 Albert Road, Southsea, Hampshire, England, PO5 2SE.
 
 

 
 

RSS

 
©2024 iOS Dev Weekly | Privacy Policy | Mastodon | Suggest a Link
 
Published with Curated

Older messages

iOS Dev Weekly - Issue 652

Friday, March 15, 2024

We all make mistakes, but I just show 50000 people my mistakes 🫣 View on the Web Archives ISSUE 652 March 15th 2024 Comment I received two types of emails in response to last week's introductory

iOS Dev Weekly - Issue 651

Friday, March 8, 2024

How do you make a software developer deeply suspicious? Have them turn on a feature they expect to show errors but produce none! 😂 View on the Web Archives ISSUE 651 March 8th 2024 Comment Swift 5.10

iOS Dev Weekly - Issue 650

Friday, March 1, 2024

Tell me again about your new app idea… 😴 What's that? Sorry, I dropped off for a second 💤 View on the Web Archives ISSUE 650 March 1st 2024 Comment People often ask me about a new app idea they

iOS Dev Weekly - Issue 649

Friday, February 23, 2024

Platform fit? What kind of platform is it, and where are you trying to make it fit? 🫣 View on the Web Archives ISSUE 649 February 23rd 2024 Comment I know it's possibly a less popular opinion

iOS Dev Weekly - Issue 648

Monday, February 19, 2024

Have you ever wanted to learn SwiftUI with a focus on how the layout system works? 💭 View on the Web Archives ISSUE 648 February 16th 2024 Comment Did you see Chris Eidhof's announcement of The

You Might Also Like

See what Apple did to the iPads

Tuesday, May 7, 2024

Plus: A sperm whale alphabet and Oyo wants some discounted funding View this email online in your browser By Christine Hall Tuesday, May 7, 2024 Hello, and welcome back to TechCrunch PM. Today's

🍿 5 Things to Do With Your Old TVs — Ditching Google Search for Perplexity AI

Tuesday, May 7, 2024

Also: How to Turn Off Vanish Mode on Instagram, and More! How-To Geek Logo May 7, 2024 Did You Know The lens of your eye casts everything it sees upside down onto your retina; only when the image

JSK Daily for May 7, 2024

Tuesday, May 7, 2024

JSK Daily for May 7, 2024 View this email in your browser A community curated daily e-mail of JavaScript news Building Large Scale Web Apps | A React Field Guide I had the privilege to work with Addy

Random Web App Ports, unittest, TypeIs vs TypeGuard, and More

Tuesday, May 7, 2024

`TypeIs` Does What I Thought `TypeGuard` Would Do in Python #628 – MAY 7, 2024 VIEW IN BROWSER The PyCoder's Weekly Logo TypeIs Does What I Thought TypeGuard Would Do in Python In this post,

Daily Coding Problem: Problem #1434 [Medium]

Tuesday, May 7, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Airbnb. You are given a huge list of airline ticket prices between different cities

Chaos, Coyotes & Palm Trees 🌴

Tuesday, May 7, 2024

John Mulaney helps Netflix nail its final comedic frontier. Here's a version for your browser. Hunting for the end of the long tail • May 07, 2024 Chaos, Coyotes & Palm Trees John Mulaney's

Issue 155

Tuesday, May 7, 2024

🧑‍🚀🚀 Humanity has entered the 3rd space age. Professional fraud fighter goes undercover at a “Yahoo Boy School.” The AI music app that actually makes good music. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

A very random issue

Tuesday, May 7, 2024

Plus a new language that compiles to Go, charts for the terminal, and some Go books from Packt. | #​506 — May 7, 2024 Unsub | Web Version Together with Ardan Labs Go Weekly Evolving the Go Standard

Chart | The Growth of a $1,000 Investment, by Stock Market Index 📈

Tuesday, May 7, 2024

In this graphic, we've visualized stock market growth by country over the past five years using major indices. View Online | Subscribe Presented by: Discover the motivations and behaviors of

⚙️ A new LLM for Microsoft

Tuesday, May 7, 2024

Plus: A revenue beat for Palantir & a new partnership for OpenAI ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌