AppForce1: news and info for iOS app developers

CLI, oh my...

March 22, 2021 Jeroen Leenarts Episode 23
AppForce1: news and info for iOS app developers
CLI, oh my...
AppForce1: news and info for iOS app developers +
Help us continue making great content for listeners everywhere.
Starting at $3/month
Support
Show Notes Transcript Chapter Markers

I launched. Wow! Also created a sweet little CLI util I am going to use on the next Swift Weekly Brief. After my book launch it is time to gather feedback and iterate a few times. Oh and let's not forget to also mention that rotten roof.

Filip's Němeček iOS chat with me.

Runway
Put your mobile releases on autopilot and keep the whole team in sync throughout. More info on runway.team

Lead Software Developer 
Learn best practices for being a great lead software developer.

Sendy, send newsletters, 100x cheaper
A self hosted email newsletter, send emails via Amazon SES without sacrificing deliverability.

Disclaimer: This post contains affiliate links. If you make a purchase, I may receive a commission at no extra cost to you.

Support the Show.

Rate me on Apple Podcasts.

Send feedback on SpeakPipe
Or contact me on Mastodon: https://hachyderm.io/@appforce1

Support my podcast with a monthly subscription, it really helps.

My book: Being a Lead Software Developer

Jeroen Leenarts:

Hi, and welcome to my 23rd episode of the app flushmount podcast. My name is Julian Assange, I've been developing software for over 18 years developing iOS app for over nine years, and I'm running the Dutch Cocottes for close to eight years. If you're an iOS app developer, you should listen to my podcast because keep you updated on interesting articles, conferences and events you might not have heard about otherwise. Soon, I will be hitting an awesome milestone 50 episodes, I'm preparing something special for that occasion. In this episode, I'm going to talk about the iOS chat I did with Philip Nemecek. Using pipes in Swift scripts, Xcode UI testing reliability tips for iOS, creating a series shortcut, auto layout versus auto resizing mask in Swift, how to show and hide content with disclosure groups using Swift UI. Don is Monday morning tweet, my book launch some fun I had with Swift argument parser. And of course, the home redecorating. So let's get started. The work on my house is progressing nicely. They took the roof off, and they're close to actually tiling it up again. There was one setback actually, there was like a rotten spots in a flat area on my roof, which will cause some extra work. But fortunately, there is some budget for that available. So tomorrow, they will take up on this work and see how much it will add to the total tally. These workers, they tend to make a lot of noise. I haven't lost my mind yet. But as already mentioned, last week, I am doing some self reflection and introspection on the way that I actually performed my day job. And my biggest therapist is my daughter, Lisa, actually, she's just five years old, but she's having some similar issues that I'm dealing with. And it's very fun to actually talk with her about certain topics. It's hard to just express things at a level that a five year old will understand. But actually doing that also gets a thought process going within myself. So who knows this will actually end up helping me as well. I already got a big compliment last week from my wife, she said that I'm already a bit less grumpy. But I still tend to forget a lot of things. So when some you lose some, but I think I'm at the start, but on the right track again. Why would a topic of me Philip Nemecek didn't iOS chat with me? He just published this today. And I'd say definitely check this out. If you want to learn a little bit more about my backstory as a software developer. It's a good read, I think. So it's already hard to say that about stuff that is about you. And definitely a big shout out to Philip for reaching out and asking me these questions. I had a lot of fun answering those. And I think the result is quite nice. And make sure to also have a look at the other iOS chats Philip has done. As we'll discuss later, I had some interesting experimentation with Swift argument parser. But due to that work, I also noticed this article but Jesse Squires. It's an article about using pipes in Swift scripts. One of the things if you're creating command line tools is that you quite often need a way to actually pipe input and output in and out of your script or program. In this article, Jessie actually discusses ways that you can actually do this in Swift scripts. But these techniques equally applied to any command line tool that you create yourself. This article picks an interest with me because I was actually working on something similar earlier this week as well. So have a look at Jesse's article if you want to have some knowledge about creating your own command line interface scripts. While I was reading Jesse's article on piping swift scripts, I also noticed his article on Xcode UI testing reliability tips. Xcode UI testing framework has had its ups and downs over the years. Most recently, it has been much more robust and reliable in justice experience. However, tests still tend to flake sometimes. And Jessie has written up some advice on how to reduce the flakiness in UI tests. There are some good tips and practices in there that can actually help you speed up and improve the reliability of UI tests. So have a look at those. And I'm sure that it will help you on your day job anytime. Jordan Morgan has a nice section on his blog, he calls it code snips. This time he has an article on creating a series shortcut. The scenario he tries to address is how you create a barebone Siri shortcut that will be exposed to the shortcuts app. And the interesting thing about this example is there isn't much code in it. And it's mostly steps that you need to take in Xcode. Basically, his article involves creating intents and how you can actually use those to feed into Siri. You should actually do this quite a lot in your apps as well because it helps Siri suggest behaviors for your end user to do at certain times during the day. are meaningful to the workflow of the end user. And it actually helps users back into your app. So definitely have a look at this and see how easy it is to create Siri shortcuts. Of course, there's some more work that you need to do in your own code base. Based on the intent, you have to make sure that the end user ends up on the screen that they expect. But just having the intents in place will make this last step quite easy. If you still have some issues grasping the difference between Auto Layout versus auto resizing masks in Swift, Robert Pietta is there to help you out. In his article he talks about how user interface layer programming is a big part of modern iOS and Mac OS apps written in Swift. In his posts, he presents a brief overview of to layout mechanisms, auto layout and auto resizing masks, and he has a number of examples to explain what those are and what the differences are. Kristaps Grint Kristaps. Greenberg's has a nice article on how to Krista greenbacks has an article on how to show and hide content with disclosure groups using switch why showing and hiding some part of information is a final feature in mobile apps, especially considering that phone screens are much smaller than those on laptops or desktop computers. With the new stretch y capabilities, you can collapse content with disclosure group. In this article, Christoph explains how you can use this in various ways. And that concludes the articles I wanted to mention from last week. I also spend some time on creating a swift command line interface for sending the Swift weekly brief newsletters. I was reminded to actually do this because I initially created a small iOS app to do a similar thing. But of course, now I had the code. And I wanted a more convenient way to be able to execute this logic from the command line really, because the command line is powerful. And you can script it and just have it as a good citizen. There's a lot of flexibility there. So I got started. And based on some podcasting done by Leo G. Dion, I was able to quickly pick up on the Swift argument parser. And I wanted to make it something that used to exist. So in the end, I created a nice combination of a to s command line tool, which uses networking. So it waits for networking to complete but then exits. It does some interesting RSS parsing, it gets content from the internet. And that stands submitted to my newsletter engine, which is Sunday. So definitely have a look at this, if you want some inspiration on some fun things you can do with a command line interface. It's a really small code base. But I reckon that if you look at it, you can do some really awesome things on your own. Just create a command line with good arguments. Being able to use a swift packages conveniently do actual networking, and use to Western on top of that, I think it's marvelous. And that's why I wanted to share this with you. Last week was also a book launch week for me, the lead developer book, and I had really positive and awesome feedback from a number of people. And one person actually reached out with a number of typos and grammar fixes in my book. So Eric Lippmann, thank you very much for that. Here's some actual feedback that I got. I just couldn't stop reading. And all I can say is that this book is just awesome. This is the book I've been looking for in the past months, I'm probably gonna read it again in the weekend. So if you haven't bought my book yet, and are still thinking about it, do remember, there's a discount code that you can use podcast. And make sure that once you've read my book, provide me with feedback because I will add new content to my book, as soon as I can create meaningful additions. So again, discount code podcast link to the book in the show notes. And now we're already at the Monday morning tweet by Donnie walls. Donnie Walsh and I are still gearing up to do the Core Data workshop in April. But this week, Dhoni has been busy on his codable posts, and it's moving much slower than he'd like. And he's dusting off his combined workshop and prepping it for coming Wednesday. Krista has launched his new product and he's been generating the first revenue from real clients. And the most important thing for him this week is fundraising new features for the app and hiring. Eugene has been learning RX Swift, he think it's really cool. addictive. Carlos is listening and taking proper notes. On his second lesson of the Johnson Dell and Donnie waltz episode. Tommy is working on few side projects. This week. He's writing a blog post about how to add swift packages to Xcode projects. And he's applying for more IOs dev jobs. Leo G. John who I already mentioned, in my swift argument parser section is doing a newsletter, releasing new episodes recording new episodes recording another new episode and he's working on his fifth package manager talk for swift heroes. 10 Steph has released a new video today detailing how to build a skeleton few using districtwide redacted modifier. Brad is taking his first app into alpha this week. And he's happy to finally do the first user testing rather than just building stuff. And Bruno is back to regular old consultant work is resolved in JIRA tickets. Like some kind of masochists. Damian has published the first article from his iOS developer recruitment process. And her son has improved these jets completions in the Swifty compiler app. So people are really digging down this week, getting a lot of stuff sorted and worked out. So I expect more releases in the coming weeks. Because it seems to me that people are really doing the prep work right now. And I hope for the best, best wishes to everyone. And that's it again for this week. I'll be back on Thursday with an interview with Alan that's unwary from the iOS deaf happy hour, so be on the lookout for that one in your feed. If you have any feedback, please reach out on Twitter at app Force One, and I look forward to talking to you next week. Don't forget to buy my book

Intro
Chat with Jeroen Leenarts | iOS Chats by Filip Němeček
Using pipes in Swift scripts Jesse Squires
Xcode UI testing reliability tips for iOS Jesse Squires
Creating a Siri Shortcut | Swiftjective-C
Autolayout vs Autoresizing Masks in Swift
How to show and hide content with DisclosureGroup using SwiftUI | Kristaps Grinbergs
Swift CLI for sending Swift Weekly Brief
Lead Developer book launch
Donny monday morning tweet
Outro