Jeroen Leenarts: Hi, and welcome
to the 73rd episode of my
podcast. My name is new Linus
and I've been developing
software for over 20 years,
developing iOS apps for over 10
years, and I'm running Dutch
Cocottes for over nine years. If
you're an iOS app developer, you
should listen to my podcast
because it will keep you updated
on interesting articles,
conferences and events you might
not have heard about. In this
episode, I'm going to talk about
fetching remote data with async
await and recent and older
system versions, how to
modularize existing iOS projects
using Swift package. Swift org
released the source of their
website, and swift 5.6 has been
released, objective c.io have
updated their advanced swift
book into the fifth edition. And
it's all in scope by Xcode tips.
And panic block. No four has
been updated, which is an
awesome text editor. So let's
get started. So it's been an
interesting week, yet again. So
I think I'm saying that every
week that it's an interesting
week. But yeah, it's just now
full hands on with preparing for
a conference that we'll be doing
in three weeks time from now,
all the other arrangements have
been made. Now we just need to
follow through and make sure
that the presentation is like
100%. So that's the focus of
this week. And also, we need to
keep all the other work going.
So for me, that's like
podcasting, I'm doing a Twitter
space on Wednesday, making sure
that other content is being
updated, just my regular day job
needs to keep on going as well.
And it's going to be an
interesting week for my daughter
as well, because she'll be
having a trial week at a new
school. So really looking
forward to that one. But it's a
lot of driving and bringing and
fetching back and forth for my
wife and I. But hopefully in the
end, it will be all worth it.
And my daughter is hopefully
starting the new school year
after the summer in, in a
classroom with kids that allow
her to better develop herself in
another area. What I'm really
looking forward to is some some
time off in the next couple of
months, we'll have like all
these small weekends that are a
little bit extended with
national holidays here in the
Netherlands. And what's also
going to be interesting is
probably in the next couple of
weeks, I will be meeting some
people who have been working
with for over six months
already. And that's the first
time that I'm actually going to
be meeting them in person. So
really looking forward to that
one. So just a lot of stuff
happening. Let's just keep it
simple this week, because I have
plenty of stuff to do. And make
sure to sign up to my newsletter
to stay updated on anything that
I'm working on as well. For
instance, the tech Rama
conference is also happening.
And they want me to submit my
travel plans with them so that
they can actually make sure that
they have a place to stay. And
that I can actually attend the
conference and be well rested
while I'm presenting there as
well. So very much happening
right now the in person events.
Yeah, it looks like it's going
to be a thing this year. There's
some plans there. And yeah, it's
already feeling a little bit
overwhelming, but in a good way.
So really excited. And it's just
something that needs to happen
right after two years. So the
first article, fetching remote
data with async await and recent
and older system versions
performing asynchronous task has
always been part of the game
when building applications for
Apple systems. Up until not that
long ago. closures and
completion handlers have been
the way to handle asynchronous
calls at definitely better
alternative came with the
arrival of the combined
framework. And it's declarative
API where a series of operations
creating pipelines has been
offering a different approach.
But the real revolution in the
humble opinion of Gabriel
actually occurred in Swift with
the async await pattern, which
lets me transform the way you
write asynchronous calls. The
entire async await concept
introduced in WWE 21 constitutes
a big but relatively easy
chapter that is really worth the
time to study. It's the future
of dealing with asynchronous
work and swift. So adopting it
is not a matter of if but when,
with that in mind, Gabriel is
focusing on quite specific
technique that is described in
his post, how to fetch data from
a remote server
using async await. Well, we've
seen multiple articles on how we
can do this. So what gave to
actually add in his blog post is
how you can deal with async
await codes in older system
versions. And I think that's the
value in his article. So async
await has been back ported to
all the system versions, but
there are some small things you
need to be aware of. And that's
something that Gabriel has
looked into and describes in his
article. If you've been
listening to my podcast for some
time, you probably have heard me
mentioned a tool called Twist,
but to is not the only way that
you can do a certain thing. So
the next article by certain w is
about how to modularize existing
iOS projects using Swift
packages. So modular programming
is a software design technique
that breaks your project into
smaller maintainable modules,
which promotes separation of
concern and reusability. In his
article Salone will show you how
to modularize an iOS app using
the Swift package manager
modularizing your app may sound
technical and complicated, but
in reality, it's just as easy as
grouping your files in a folder.
And you don't need to modernize
everything at the very
beginning. Of course, you can do
it incrementally in his article,
basically certain takes a piece
of code. And in five small
steps, he explains how he can
modularize your app. So first,
you need to create a new Swift
package within your projects,
move the files from the main
project to the newly created
Swift package, configure Swift
package manager to support the
platforms that you need, and add
Swift package back to the main
project, then you can play
around with the access level of
classes and methods like private
and public to make sure that
everything starts compiling
again. And that's pretty much
all you need to do. But what's
nice about saloons article is
that it's really hands on with a
sample of sample codes. And,
yeah, you should definitely
check it out if you want to
investigate using modularizing
your code bases with Swift
package manager, but also make
sure that you
[email protected] and
important announcement made by
the swift.org website is that
their entire website is now open
source. Of course, this
announcement is sort of trumped
by the launch of Swift 5.6 The
day before, but still, make sure
to check out these articles on
the swift.org website, because
there's some interesting bits in
there and a lot of detail and a
lot of stuff you can link to to
make sure that you understand
everything that is new in in
Swift 5.6. And the open sourcing
of the swift.org website is
really cool, because you can
really see how this website is
set up. Because I think it's a
website that receives quite a
number of faces from from Swift
and iOS developers and Mac
developers. So yeah, it's just
interesting to just have a look
at it and see how swift org as a
website has been set up, if you
want to learn more about Swift
5.6 Have a look at objective
c.io and found swift because
they recently updated the book
to be in the fifth edition, and
they have full support, and
they're fully up to date with
the current version of Swift. So
they updated the entire book to
5.6. And if you are an owner of
a previous edition of this book,
you can just download the new
version of this book without
problem and make sure that you
are able and up to date with
Swift 5.6 through their
material. Next topic is Xcode
tips. That's a nice website with
all kinds of Xcode tips that you
can use. It's created by Dominic
Houser, and most recent updates
that he put on his Xcode tips
website is edit all in scope,
there's a nice graphic
representation of what this
actually means to you, and how
you can use this in practice. So
have a look at the expo tips
website because there's plenty
of interesting stuff on there
and a link to his website
before. And so that's already
the final article that I wanted
to mention in my episode. One
thing I did want to mention is
that panic.com have released a
NOFA online, and they have a
nice discounted price on it.
Nowadays, I'm in no way
affiliated with them, but I use
their products myself and I
really love Nova as a text
editor. And the biggest change
that he did to the text editor
is that there's now some sort of
debugging support for a number
of scripting languages. And the
scripting debugging interface
that is in Nova is pluggable. So
hopefully soon we will get some
interesting additions to Nova in
support for other environments
as a runtime debuggable
environment. So check them out,
because I think if you haven't
seen their editor yet, Nova, you
will not regret having a look at
it. So that's already it for
this week, sign up for my
newsletter to stay up to date on
other things that are published.
And if you have any feedback or
questions, please reach out on
Twitter at app Force One. And
I'm always happy to respond to
any questions or suggestions
that you might have feedback or
comments or issues. You might
have read my content, please let
me know because I'm always
looking for feedback and an
interaction with people
listening to my podcast. Talk to
you again next week.