Read the transcript
Jeroen Leenarts: Welcome to The
App force one podcast. My name
is Jeroen Leenarts. And I've
been developing software for
over 19 years, developing iOS
apps for over nine years, and
I'm running the Dutch cocoa has
for over eight years. If you're
an iOS app developer, you should
listen to a podcast because it
will keep you updated on
interesting articles and events
you might not have heard about.
In this episode, I'm going to
talk about first impressions of
Swift UI, awaiting web sockets
in Swift UI. Using count first
is empty to check whether a
collection contains any
elements. shift left testing
approaches the defer statement
in Swift. And of course, Don is
Monday morning sweet. So let's
get started. Last week, I
mentioned an interesting thing I
was working on. And it also
mentioned the conference. And if
you were thinking a bit when you
were listening to my podcast,
you probably could have put one
and one together. On Thursday,
this week, I'll be speaking at
the NS Spain conference. So
that's ns spain.com. Maybe they
have some tickets available.
They have to conference online,
and I think it's going to be
great. I've seen the lineup and
they're all amazing people, my
wife is already doing much
better, she's still resting up
to make sure that all the
effects of her concussion are
gone. But yeah, she's getting
better every day. And hopefully
by the end of the week, she'll
be up and running again. So now
let's dive into the articles of
this week. The first one is
first impressions of Swift UI by
Jesse Squires. Last week, Jesse
has been deep diving
infrastructure. Why seriously,
for the first time, he has been
keeping his eye on Swift UI
since it was released. But he's
afforded to really dive into it
due to a combination of
assistance, apprehension, and
just being too busy with other
projects. However, while taking
some time off from contracting
work, he decided to dive in. In
his article, Jessie details some
of the things he likes and that
he dislikes about Swift UI. And
he does mention that he finds it
an enjoyable experience.
Ultimately, Jessie agrees with
an article that Steve throat and
Smith's has written that's which
was great for auxilary
noncritical UI layouts. But
beyond that, he does not feel
that it meets barfing, complex,
reliable applications. Even with
the small projects that he
worked on, he had to do many UI
and UX compromises that he would
not have to make with UI kits.
And he would not have shipped to
compromise in a more serious
app. He has some other app IDs
and other in progress apps,
which he will not be using Swift
UI for not only because it's
something that he wants to
deploy to early iOS releases,
but also because it needs more
than what swift UI currently
offers. Still, he agrees that
swift UI at some point will be
the future, but it's just not
there yet. So interesting. Read,
have a look at it. And let me
know what you think. Omar has an
article titled awaiting
WebSockets in Swift, why
WebSockets have become the
standard network protocol force
jet and event driven based
applications, given the ability
to provide a persistent
communication channel between
clients and the server. Rather
than pull a server for results
at set intervals, web sockets
emit messages as they become
available to connect
participants, resulting in
reduced latency and bandwidth.
Apple provides inbuilt tools for
the URL session object class to
connect to a web socket and
receive events. However, despite
recent updates, leveraging
Swift's new concurrency features
in iOS 15, the class does not
make use of one of Swift's most
powerful concurrency features.
async sequence in this article
are more details how you can tie
an async sequence to a web
socket. And I think that's a
great idea to do that, because
it matches up very well
together. And there's a lot of
code sample in the article by
Omar. So reading this article
puts you in a place that you can
just get started with this in
your implementation. I think
it's a solid rate. And there's
some good stuff in there. And
the weblog by Omar I think is a
great addition to my reading
list for every week. John Sunday
on the Swift bus on the block
has a nice article that's titled
Using counters is empty to check
whether a collection contains
any elements. It's a nice little
deep dive investigating, what's
the difference between an SMT
check and querying the accounts
and comparing that to zero?
Which of those is more
efficient? What and why is this
the case? So it's the one of
those nice deep dives that that
John is very good at performing.
And, yeah, it's just it's just a
nice little tidbit of
information that that really
just can brighten your moods and
just reset your brain if you're
tackling a complex problem. So
keep this article on your
reading list. From the moment
that you just need to switch
gears in your head a little bit.
jet in that vein has an article
titled shift left testing
approaches. In his article he is
quickly covering what shift less
testing is, and how it helps you
find problems early in the
software development cycle, and
how you can apply it to your
work. by decomposing to the
tiniest, testable part, you can
mock at a granular level,
meaning you are testing more
production code, it's only one
shift left tactic, but it's very
effective. cheered recommends
you to introduce a protocol for
testing at the lowest level
possible. This ensures you limit
the testing protocols that you
are introducing, as opposed to
say introducing the testing
protocol at every level in your
stack. He also has a counter
argument that running more
production code inside unit
tests will probably slow down
your testing. But it's a trade
off, you're testing more
thoroughly, you keep the
complexity lower, and your total
software development cycle will
be shorter. There are plenty of
benefits, you know earlier that
things break, and you can rely a
bit less on integration tests to
be confident. And if you catch a
bug on your local machine, then
you reduce the need to inform
others or wait for the CI
pipeline to tell you. And you
can mitigate slow unit test by
only running specific tests.
I've linked to articles
detailing the defer statement
before but this time Gabriel has
an article on the same topic.
And it's it's a nice reminder of
what the defer statement in
Swift is and why it is useful.
There's a number of examples in
the article by Gabriel which
clearly defined what defer can
do for you in your code. There
is not much you really need to
know about the defer statement
is fifth in the few examples
that Gabriel presents in this
article. In any case, it's not
difficult to understand how
defer works. And if you had not
been using it in your
implementations, you might want
to consider start doing so. And
those were the articles for this
week. So let's move on to
Danny's Monday morning tweets.
That's an interesting fact
actually about today that you
should know about Donnie today's
his birthday. I think he turned
32 today, so congrats to you,
Donnie and so many more years to
come. Now let's look at this
Monday morning suites. Josh
mentioned studies volunteering
at a program a completion for
high school kids hosted by the
college he graduated from. He
attended this completion back in
2005, which introduced him to
this college and software
engineering so he got back every
year to help them out. 10 Steph
is saying good morning in Tim
Cook's voice and he finally
released his biggest video yet,
which covers all the main topic
is with concurrency and futures.
A shout out to Danny walls.
McKenna cut on is working
through a freelance project and
she's hoping to make a good
progress this week. Also
learning UI testing at work.
neath Ben Porat is the first
time using Swift UI in
production. And he needs to
Google up everything which is
quite normal. If you learn a new
API, right? Ryan mentions that
he's starting to experiment with
Apple cash family as an
allowance platform. And he wrote
some words about that. As am
sharp is releasing a brand new
course on testing in iOS. Ben
Nolan is planning to launch his
Twitter followers app Flocker
iOS currently festival of
preorder, and he's curious to
see how many of the pre orders
currently tune the 60 actually
installed and we'll use the app.
The nice new polling is
mentioned in Good morning. And
last week she finally absorbed
all the WWDC videos about async
await and actors. So this week,
it's time to get hands on and
get dirty with all these async
things. Show me Sally is
wrapping up figma support for
prism and he was having a blast
and a lot of fun refactoring and
rethinking the process. Key
outside Javelin toon is joining
a new team working on an amazing
project and refactoring it to RX
based API's. The only drawback
is that they use storyboards. So
he's dealing with the conflicts
and a lot of patients to
actually open them up. polinoame
has been pushing updates to
their polinoame app. They're
improving the Mac OS experience
and there was also it was also
posted on product hands, hoping
more people will stumble across
it. Marina is planning to share
what he's working on later
today. He mentioned that Donnie
always asked to early in the
morning for marine to actually
have a solid reply at Marcus
Tanaka is mentioning and Happy
Monday to Donnie. And he's
working on a new app that
integrates with reminders to
plan and manage multiple
projects. Then is from earlier
shipped his first app to the App
Store. Pomodoro is now live on
Apple Watch. Take a look at the
product page. And Desperado is
forgetting a binary tree
traverse graph search and sort
algorithms and work on something
AR kits related.
This is preparing the final
notes for NS pain conference.
And Frank saalfeld is starting
his iOS job today. And Michelle
is busy with interviews But
she's also journaling her
technical interview
preparations. So all know a lot
of people are launching new
products and people are
preparing themselves for
interesting steps in their
career. So I wish everybody a
lot of good luck with launches
and switching and just getting a
job. And I hope to talk to you
again next week. If you have any
feedback, just let me know on
Twitter, DM me at app Force One,
and we will be in touch and I
will most definitely reply to
your message. Talk to you again
next
Unknown: week.