iOS Dev Weekly - iOS Dev Weekly - Issue 691

Can Swift, C/C++, Linux, Android, Dart, and Flutter all work together? They can! 🤖
 

iOS Dev Weekly

 
View on the Web    Archives

ISSUE 691  December 13th 2024

 
Comment

  Comment  

 

Happy Friday, everyone! Below, I’ve got another longer-form article covering an interesting hardware-based Swift project from Luke Howard and Peer Espen Ursfjord. The device they’re building is music-related, but the real story is about getting Swift, C/C++, Linux, Android, Dart, and Flutter all working together!

Next week’s issue will be my usual "Best of And Finally…" for 2024, and then I’ll take my annual week off the week after. But until then, enjoy hearing about what Luke and Peer have been up to. 🎸

Dave Verwer  Permalink

 
 

  Sponsored Link  

 

Remotely configured paywalls with 1 line of code

Developers rely on Superwall to grow revenue, from the biggest apps like PhotoRoom, Mojo & Citizen to thriving Indies. Run price tests, paywall experiments, update locked features, and more without shipping app updates. Plus, set up revenue tracking (no SDK required!) to access our advanced revenue charts and analytics – all for free. Superwall is the complete toolbox to unlock your growth.

superwall.com  Permalink

 
 

  Article  

 

I don’t know if you’ve noticed, but Swift is trying hard to shake the image of being only for Apple platform development. Take a look at some of the posts from the Swift blog over the last year and you’ll spot a theme:

Apple also recently announced swift-java, and it was in response to my writing about it that Luke Howard got in touch to tell me about his project.

He’s building a hardware device for use in recording studios. It uses a mix of technologies but has Swift at its heart. The device monitors and mixes audio tracks that are flying around an Ethernet network as Audio over IP (AoIP). It captures the audio and gives musicians the ability to make their own mix from the individual AoIP feeds and output it to their headphones. For example, a drummer might turn down other channels to focus on their own output while setting the rest of the band to be quieter.

I had a quick call with Luke and Peer Espen Ursfjord, another developer on the project, earlier this week to learn more about it. The hardware is built around a Raspberry Pi CM4 with a small touchscreen. The Swift app runs on Linux and handles the creation of two mixes for two headphone ports on each device. All the back-end logic happens in Swift using some open-source libraries written by Luke and his team. It then uses Flutter for the UI with their FlutterSwift library. The end result is a device you can either control from the embedded touchscreen or from an iPhone, a Mac, or an Android phone!

Luke is a musician and producer by profession but has always kept one foot in the Apple development world ever since he worked on Rhapsody in 1997/98. That mix of backgrounds shows, and is often where you get the most interesting products. Software developers know how to fix problems that software developers have, but bring in some professional experience from outside of the industry and magic can happen.

When you combine that domain knowledge with Swift’s ability to fit in with other technologies you can progress quickly. That said, Luke was keen to say that he’s building on the shoulders of giants like the people behind Open Control Architecture (OCA) and the work of the Swift and Flutter teams:

“One thing I really want to drive home is that this is not rocket science. I’ve not done anything half as clever as the Swift team has with C++ and Java interoperability. FlutterSwift is just a few thousand lines of structured concurrency glue around Flutter platform channels. The beauty is what you can do with it, which is to make your platform-specific Flutter code platform-agnostic.”

That goes back to my point about different perspectives, but also shows how far we have come with interoperability with Swift. I hope you’ll get inspired and check out a few of the links in this article and sign up for their notification list where they are gathering interest.

I’ll finish with my favourite quote from Luke during our conversation:

“Having C, C++, Dart, Java, and Swift in the same process is kind of ridiculous, but somehow it all works.”

I’m really glad we live in a world where not everything is pure Swift.

Are you doing anything interesting with Swift that isn’t an iOS/macOS app? Let me know by replying to this email.

Dave Verwer  Permalink

 
 

  News  

 

2024 App Store Award winners

Congratulations to all the winners of this year’s awards! I’m happy to see recognition for Balatro and “Thank Goodness You’re Here!”, both are fantastic. There’s a great selection of independent developers in the list, too, which is great to see. I’ll be checking some of them out over the holidays.

apple.com  Permalink

 
 

  Jobs  

 

Senior iOS Developer @ komoot – Develop innovative new features from the first idea and concept over to road map planning, implementation, testing, release and monitoring. Team up with six team members to build a state of the art iOS app with more than 5 million installations. – Remote (within European timezones)

 Permalink

 
 

  And finally...  

 

Has it only been 5 years? It seems like so much longer.

I sometimes wonder how the team who created that machine feel about it. It was a remarkable product, but they must have known what was coming. Or, maybe they didn’t? I’d love to know the story.

 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 690

Tuesday, December 10, 2024

Where is the Swift and Apple platform social media community these days? Scattered, but still there! 📱 View on the Web Archives ISSUE 690 December 6th 2024 Comment There's not a lot going on this

iOS Dev Weekly - Issue 689

Friday, November 29, 2024

I tried two new (ish) AI coding tools this week. What did I think? 🤔 View on the Web Archives ISSUE 689 November 29th 2024 Comment I've had a week off from Swift Package Index this week as I needed

iOS Dev Weekly - Issue 688

Friday, November 22, 2024

How do you get an app featured on the App Store? There's a new process, and it's great! 📝 View on the Web Archives ISSUE 688 November 22nd 2024 Comment Every developer, from solo indie devs to

iOS Dev Weekly - Issue 687

Friday, November 15, 2024

It's not all as bad as you think it is! 🙏 View on the Web Archives ISSUE 687 November 15th 2024 Comment The recent survey I did reminded me that, when you work with Swift every day, it can be easy

iOS Dev Weekly - Issue 686

Friday, November 8, 2024

CoPilot vs Xcode Predictive Code Completion: Is the playing field level now? 🤖 View on the Web Archives ISSUE 686 November 8th 2024 Comment If you didn't catch GitHub Universe, you might have

You Might Also Like

Re: Tomorrow's Password Class: How to sign up!

Thursday, February 27, 2025

Hi there, Do you reuse passwords? Do you struggle to remember unique passwords across accounts? Have you tried setting up a password manager but found it to be a hassle? You might not realize how

Documenting Event-Driven Architecture with EventCatalog and David Boyne

Thursday, February 27, 2025

If you're wondering on how to document Event-Driven Architecture, or you don't know that you should, I have something for you. We discussed with David Boyne, why data governance practices and

wpmail.me issue#708

Thursday, February 27, 2025

wpMail.me wpmail.me issue#708 - The weekly WordPress newsletter. No spam, no nonsense. - February 27, 2025 Is this email not displaying correctly? View it in your browser. News & Articles Shaping

Hackers stole 1Password logins - here's how

Thursday, February 27, 2025

Amazon AI races ahead; Research agents; Smartwatch trade-in -- ZDNET ZDNET Tech Today - US February 27, 2025 thief stealing passwords Hackers stole this engineer's 1Password database. Could it

New Golang-Based Backdoor Uses Telegram Bot API for Evasive C2 Operations

Thursday, February 27, 2025

THN Daily Updates Newsletter cover ⚡ LIVE WEBINAR ➟ Building Resilient Identity: Reducing Security Debt in 2025 Attacks Evolve, So Can Your Defenses--Learn How to Mitigate Risk and Optimize Identity

Reminder: What developer productivity metrics actually measure

Thursday, February 27, 2025

You are receiving this email because you subscribed to microservices.io. Considering migrating a monolith to microservices? Struggling with the microservice architecture? I can help: architecture

⚡ THN Weekly Recap: Google Secrets Stolen, Windows Hack, New Crypto Scams & More

Thursday, February 27, 2025

From Google espionage to crypto scams, this week's Cyber Recap uncovers it all—read more now ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌

Guest-post: Open-source Python Development Landscape

Thursday, February 27, 2025

30 must-know tools for Python development ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

⚙️ IBM's AI can reason, now

Thursday, February 27, 2025

Plus: A bit of AI legislation ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Post from Syncfusion Blogs on 02/17/2025

Thursday, February 27, 2025

New blogs from Syncfusion ® How to Add a Context Menu to .NET MAUI ListView? By Jayaleshwari N This blog explains how to implement a context menu in the .NET MAUI ListView control with code examples.