iOS Dev Weekly - iOS Dev Weekly - Issue 514

Do you want to pair program with a copilot? đŸ€–
 

iOS Dev Weekly

 
View on the Web    Archives

ISSUE 514  July 2nd 2021

 
Comment

  Comment  

 

It’s always a good signal to write about something when I get several emails saying “Have you seen this?” along with a link. I’ve received more of those emails this week about GitHub Copilot than for anything else I can remember recently.

If you’ve been reading for a while, you won’t be surprised to hear that I can see both the positive and negative sides of this technology. đŸ˜±

Before I start, It’s important to note that I don’t yet have access to Copilot. I signed up, but I’m still on the waiting list. Everything I write here comes from what I see on the marketing page. That’s not ideal, but it’s what I have!

The negative side of things is the obvious place to start. AI-produced code is going to be buggy, just as human-written code is buggy. However, Copilot doesn’t have the context of what you’re trying to achieve or why you’re trying to achieve it. It also doesn’t benefit from the clarifications and adjustments you naturally make as you progress through a problem.

Then, there’s a more subtle side of things. The consequences of AI making a wrong choice in a self-driving car are immediate and drastic. đŸ’„ The results of a mistake in a generated function are neither and will be much easier to miss.

Since I haven’t had a chance to experience the product, part of my concern comes from how GitHub is marketing it. For example, I really couldn’t disagree more with this statement:

Whether you’re working in a new language or framework, or just learning to code, GitHub Copilot can help you find your way.

Surely learning a new language or framework is the last time you should use a tool like this. I think we can all agree that it’s good to understand the code you write, and without knowledge of the language or framework, you’ll miss plenty of mistakes. If GitHub can’t be sure that the code won’t contain biased, discriminatory, abusive, or offensive outputs or someone’s personal data, will it really be well written? To get sidetracked slightly, I also saw a few people ask good questions about whether any of the training data was GPL licensed, because that will be a problem. 😬

It’s surely also a terrible way to learn to code. The code produced by Copilot comes with no information on why the AI wrote what it did. Is GitHub genuinely thinking about this as a teaching tool? 🙄

I have to stop myself here, or my negative take will take you all day to read. It’s almost too easy to find problems with this product. Yet, when I think about it, I want to support what GitHub is doing here.

If not for experiments and research like this, how would we move software development forward? I’ll be surprised if Copilot ends up being more than a curiosity in its current form, but who knows if some of the ideas and techniques that come out of this project could lead to significant advances in the field?

Ironically, I’d be more excited about this if it did a little less! 😂 If Copilot generated one line at a time rather than whole blocks of code, it’d feel like enhanced code completion rather than code generation. The slower pace would mean you’d be reviewing a line at a time rather than a whole block. Unfortunately, that doesn’t seem feasible given that the result of the AI seems to be full blocks of code. It’s maybe one way to think about how AI could make our lives as developers easier in the future, though.

Now, where’s the Copilot for writing newsletters? đŸ€”

Dave Verwer

 
 

  Sponsored Link  

 

Mac Remote Desktops from MacStadium & Teradici

MacStadium, the developer cloud for Mac, has partnered with the creator of PCoIPÂź technology, Teradici, to enable high-performance remote access for Mac use cases, including automating CI/CD pipelines, improving testing, and bringing Mac desktops to wherever they're needed. Launching later this summer, sign up now to get release updates.

macstadium.com

 
 
 

  Tools  

 

Kintsugi

Is there anyone reading who hasn't dealt with a merge conflict in an Xcode project file? Even if you work alone, you'll inevitably need to merge one as soon as you have two branches on the go. Wouldn't it be great if you didn't have to worry about all but the messiest and most complex ones? Enter this tool from Ben Yohay! The goal of the project is to cope with 99.9% of conflicts automatically. I'm not sure how close they are, but it's certainly going to be better than not having the tool!

github.com

 

Apple's DocC is excellent, but unusable for open source projects

Jesse Squires with a rather pessimistic view of Apple's new DocC documentation tool. He makes some good points, and he's right that it's pretty apparent Apple created this tool for themselves first and the community second. However, instead of looking at it as something that missed the mark. I think it's better to look at it as a promising start. I hope Apple isn't finished developing this tool, and as Jesse added in an update, there are options to build better processors for DocC output. In fact, immediately before publishing this issue, I noticed Helge Heß published a set of three new packages that look interesting. đŸ€”

Also, as Sven said on Twitter, helping to host open-source package documentation was already on our Swift Package Index radar. CocoaDocs was a fantastic resource, and expanding into that area would fit nicely alongside what we've already built.

jessesquires.com

 
 

  Code  

 

Advanced SwiftUI Animations with TimelineView

As soon as I saw Canvas and TimelineView in SwiftUI, I knew I would be reading Javier Nigro's thoughts on them at some point! Sure enough, the first topic he has picked to write about is animations with TimelineView, and the post is just as good as you'd expect. 🚀

swiftui-lab.com

 

How Swift runs an async executable

What happens if you write a command-line Swift tool and call an async function in it? If you'd have asked me to guess, I'd say it'd quit and never complete the task. Am I right? Ole Begemann has investigated.

oleb.net

 

Mastering search in SwiftUI

If you've ever implemented search UI using UISearchController, you may not have the fondest memories of it. So when SwiftUI made significant improvements to creating searchable content this year, I was intrigued to see what they had implemented! Majid Jabrayilov has some good coverage of what's new and how to use it.

swiftwithmajid.com

 
 

  Business and Marketing  

 

The Droid (Stats) You're Looking For

Curtis Herbert posted this the day before WWDC started, and while I wanted to link to it, that's terrible timing! If you write an iOS-only app, it's so easy to dismiss the idea of creating an Android version for so many reasons. So when someone with a well-established app on iOS goes through the process and then publishes numbers about how it went, that's worth a read, so I'm glad I kept it in my queue.

curtisherbert.com

 
 

  And finally...  

 

I 😍 this attention to detail.

 
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 513

Friday, June 25, 2021

I may be out of things to say, but there's still plenty of links! 👀 View on the Web Archives ISSUE 513 June 25th 2021 Comment Sometimes I sit down to write my comment for this newsletter, and there

iOS Dev Weekly - Issue 512

Friday, June 18, 2021

A truly amazing feature of Xcode, that I might never use… 😰 View on the Web Archives ISSUE 512 June 18th 2021 Comment I didn't know quite how to feel as I watched Kieran Senior talk about reviewing

iOS Dev Weekly - Issue 511

Friday, June 11, 2021

Did you have a good WWDC? Mine was a bit special! 😍 View on the Web Archives ISSUE 511 June 11th 2021 Comment I didn't think I'd ever get to see anything I had worked on in a WWDC session

iOS Dev Weekly - Issue 510

Friday, June 4, 2021

Dub Dub Dub Dub Dub Dub Dub Dub! 😍🎉🚀 View on the Web Archives ISSUE 510 June 4th 2021 Comment It's almost WWDC time! 🚀😍🎉 Looking around Twitter and the web this week, I see two very different

iOS Dev Weekly - Issue 509

Friday, May 28, 2021

The constant ebb and flow of complexity in software development. 🌊 View on the Web Archives ISSUE 509 May 28th 2021 Comment I still (just about! 👴) remember the first time I came across asynchronous

You Might Also Like

iOS Dev Weekly – Issue 694

Friday, January 10, 2025

Hopefully you won't see that much difference with receiving this issue, but it's ALL CHANGED behind the scenes! 😱 ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Daily Coding Problem: Problem #1664 [Easy]

Friday, January 10, 2025

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Twitter. A permutation can be specified by an array P , where P[i] represents the

Spyglass Dispatch: The Case for a For-Profit OpenAI

Friday, January 10, 2025

RIP Venu • A More Political and Real Time Threads • An OpenAI Auction • Apple's Tough 2025 The Spyglass Dispatch is a newsletter sent on weekdays featuring links and commentary on timely topics

⌨️ 10 Mods to Improve Your Mechanical Keyboard — How to Set Up Quick Share on Windows

Friday, January 10, 2025

Also: Why Are Tech Companies Trying to Sell Me Expensive Clocks? How-To Geek Logo January 10, 2025 Did You Know Famed biologist Charles Darwin and US President Abraham Lincoln were born on the same day

Your best friends in design

Friday, January 10, 2025

​ Working With Designers Product manager & UX designer collaboration guide. How members of your product team work together is just as important as the work itself. A fundamental relationship within

Charted | How Canada Would Rank as the 51st State 📊

Friday, January 10, 2025

Donald Trump has floated the idea that Canada should be the 51st state. Here's how it compares statistically. View Online | Subscribe | Download Our App Presented by: Global X ETFs Power AI's

Pinpointing The Actual Problem 🎯

Friday, January 10, 2025

WordPress accidentally diagnoses its own business problem. Here's a version for your browser. Hunting for the end of the long tail • January 10, 2025 Pinpointing The Actual Problem A blog post from

😱Major Azure Outage in EastUS2, 🚀New AI and Azure Developer CLI Courses, azureedge.net DNS retiring

Friday, January 10, 2025

͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏

iOS Cocoa Treats

Friday, January 10, 2025

View in browser Hello, you're reading Infinum iOS Cocoa Treats, bringing you the latest iOS related news straight to your inbox every week. Adopting Swift 6 across the app codebase I've been

Issue #575: Excalibird, bird’s eye metropolis, and Stimulation Clicker

Friday, January 10, 2025

View this email in your browser Issue #575 - January 10th 2025 Weekly newsletter about Web Game Development. If you have anything you want to share with our community please let me know by replying to