Leo Dion (host): all right.
Swift ui what are we on year four and a half now?
No, it was 19.
It was
Donny Wals (guest): Yeah, I was say, I think five.
Yeah.
Leo Dion (host): What where are we?
Donny Wals (guest): I haven't written UI kit, code like from scratch in
probably three years now, maybe four.
So sore at a good spot.
I think.
I think for a lot of the apps that I work on, they're usually smaller.
If they're new switch wise is perfectly fine.
Like the new navigation model that we got, I think in I was 16, is
pretty good, like navigation path.
I don't know that everybody loves it, but I think it's
much better than it was before.
There's still some components like image picker.
I still drop down to UI kit for that.
I think social has a builtin one right now that I tried.
I didn't like it, so I decided to do the bridging thing.
And I.
Yeah, in client projects, like existing client projects, that's the only place
where I still do UI kit pretty much.
Leo Dion (host): Are they are clients, are you seeing clients wanting
to move from UI kit to Swift ui?
Yeah, this is getting a pain in the butt.
Can you just move it to Swift ui?
'cause we
Donny Wals (guest): Yeah.
I don't think I've seen any client that said, oh no, we're fine with UI kit.
We intend to stay there.
They've all said We want to move to Swift ui, we want new
stuff to be done in Swift July.
A lot of concerns around navigation, 'cause a lot of
them will use like a coordinator pattern or something like that.
And that seems to be like, it's not a fully figured out
problem with Swift UI yet.
There's some takes on it.
But yeah, UI Kit has a specific way of doing that.
So if you.
If you have your UI kit app it can be pretty much non-trivial to migrate
that into the switch UI world.
So a lot of people will keep their like UI kit view controller and that just
presents a full screen SWIFT UI view.
That's a pattern that I've seen a lot and still see today
Leo Dion (host): When do you dip into UI kit you said?
Donny Wals (guest): for image picker is one that I did recently.
Leo Dion (host): Okay.
Yeah, we talked recently in a previous episode, I think it was with Nathan,
about contacts and event stuff that still needs UI kit and then like
for me it's mostly with bushel.
It's been app kit stuff doing, dealing with Windows directly.
Donny Wals (guest): Yeah.
Leo Dion (host): I can only do with Ns, window delegate and things like
Donny Wals (guest): Yeah, I think for the Mac there's been
more rough edges than for iOS
Also hover API, so I dunno if those are fixed, but I dunno.
Hover used to be pretty bad.
Leo Dion (host): the other, well what it seems to me is like iPad is well,
okay, iPhone is the first class citizen.
Obvi is number one, but iPad would be number two, and then
like Mac is number three.
So if they do something with iPad that involves Windows or stuff like
that, then the Mac will get it too.
Donny Wals (guest): Yeah.
It seems like iPad is like the middle thing there, right?
Where iPad gets everything iPhone gets, and then they want to make
iPad better, and it's oh, might as well throw this at the Mac too.
Leo Dion (host): So speaking of, was there anything else
you wanted to mention with 50 y
Donny Wals (guest): no.
Leo Dion (host): Speaking of platforms we had a new platform revealed two
years ago now, year and a half,
Donny Wals (guest): Yeah.
Leo Dion (host): that was gonna revolutionize everything.
And we're talking about the Vision Pro.
You got one, right?
Donny Wals (guest): I don't.
Leo Dion (host): You did it.
Oh my gosh.
So surprised.
Yeah.
Have you done anything with it?
Donny Wals (guest): I've tried it.
It's a cool device.
It feels very high-end, very high quality.
Sensors seem pretty good.
I think what it's mostly suffering from is just, it's great tech,
but it's not necessarily doing something that a Quest cannot do.
Leo Dion (host): Do you have a quest?
Donny Wals (guest): I don't have one.
I borrowed one from a friend for a little while, so I used it a
bit, but it, the Quest did feel a little bit more clunky with
the controllers that one had.
Leo Dion (host): so the quest, did you just play games on it?
Donny Wals (guest): Yeah, a little bit.
Yeah,
Leo Dion (host): I mean, so like the Vision Pro differentiates itself when
it comes to like movies and work, right?
Donny Wals (guest): for sure.
Yeah.
And so that, that's where it's really good, I think for movies.
I don't see myself sitting on a couch and telling my wife like,
Hey, I'm gonna watch a movie.
You go enjoy something else.
And just putting on the vision,
Leo Dion (host): Right, right.
Exactly.
Donny Wals (guest): and right, and like for airplanes, it's great,
but realistically, how much do you actually fly for most people, right?
So there's all these things where it's really good.
I think for productivity and having a big screen while
working, it could be pretty cool.
But then again, for the 4,000 that I would spend on vision, I can
probably get like a pretty, pretty cool setup in the real world, right?
So, and that's where I keep bumping into with vision, it's like, it does
a lot of things really well, but it feels like it, it is just not the one
thing that consumers would really need.
And I think Apple is hoping that with this iteration, developers
would pick it up and they would build that killer app, right?
Remember like when iPhones.
People would buy iPhones, I think just to play Angry Birds.
I know definitely that was a selling point for me where
Angry Birds would be on it.
It would be so cool.
I don't think I think Apple's hoping that vision would get like a handful
of apps where people would be like, and this is why you need vision.
And they didn't really get that.
It seems.
Leo Dion (host): Do you think that's related to the Vision Pro?
Do you think it's related to the app store?
Donny Wals (guest): I think it's probably a bit
Leo Dion (host): think the challenging of building for a device like this.
Donny Wals (guest): I think it's probably a bit of everything.
I think companies that are good at building VR experiences kinda looked
at this and decided, no, we, we'd much rather keep developing for
the platforms that we already have.
I think developers were like, oh, this is really cool, but it's expensive.
So there's only a handful of developers that were like,
I think this is really cool.
I'm gonna build stuff for this.
So they bought it and they built stuff.
But then most vision owners that I know, they're like probably eight outta 10.
They only really use it because it's sitting in their office and they see
it and they're like, I should use that.
And then I put it on.
They're just like, okay, now what do I do?
And there's only a couple that are like, I use it like multiple times a
week for work or for this or for that.
Leo Dion (host): Right, right.
Yeah.
I mean, yeah,
Donny Wals (guest): So it's probably a mix of everything.
And I think the pricing too, right?
It's three and a
Leo Dion (host): Oh, it's definitely price.
Yeah.
Donny Wals (guest): it's it's only attractive to people that are hoping
to make an app for it right now, I don't think and like super rich
people, but I don't think I would be able to recommend to any of my
non-developer friends to get one at
Leo Dion (host): Well, I mean, I wouldn't recommend my developer
friends to get one either.
Donny Wals (guest): Well, if they were interested in making an app for it.
But other than that,
Leo Dion (host): that's, you're never gonna make the money back.
I mean, you better be doing it with, as a hobby and not as a
Donny Wals (guest): Oh yeah.
Oh yeah, for sure.
Leo Dion (host): Yeah.
Yeah.
Okay.
Fair enough.
Yeah, so like I have right here my pro display XDR that I probably
paid, but the same as a Vision Pro.
And guess what?
I like actually use it every day and it has really good quality picture.
And like with the Vision Pro, it's just I know I'm gonna have
52 paper cuts, like dealing with it and just being like, I'm done.
I don't want to deal with this.
I'm just gonna go on my Mac.
So that's part of the problem too that I saw was like, yeah, it's
a great experience when I do the demo, but oh, the wifi doesn't work.
Or, oh, there's a problem with the battery, or, oh, it's just,
I don't wanna deal with it.
I also too am a little bit.
I wouldn't say burnt, but I've gone through this with the Apple Watch, so
I'm like, yeah, like it's gonna take a while even if it does become a success.
So I'd rather wait and see
Donny Wals (guest): Yeah, and I think Apple watch the nice
thing right now, especially, I think it came down in price.
It feels I don't know, but it's not super expensive.
Right.
An Apple watch, I think.
Leo Dion (host): No, it's nowhere near as
Donny Wals (guest): so popular.
I think if they could make a vision headset for a thousand to 1500, like
basically iPad pricing, I think a lot of people would be interested in it.
Leo Dion (host): I mean, you still have to have the app market for it.
Donny Wals (guest): Yeah.
Yeah.
But at least then it would be within reach for more people and Yeah,
it wouldn't be as hard of a sell
Leo Dion (host): Yeah.
I guess for me to spend that kind of money, I better use it like every
Donny Wals (guest): for sure.
For sure.
Leo Dion (host): That's my philosophy, but that's not the consumer market.
So who am I to judge?
Right.
All right, so let's talk about the big thing this year.
Well, it's been a big thing for the last few years, but Apple
finally dipped their toes into ai.
Where are, where's Donnie at with ai?
When can we expect that practical AI book
Donny Wals (guest): A practical AI book.
I don't know if I would be the person to write that to be honest,
but I started the year I've been on a journey with AI this year.
I think I started the year pretty skeptical, basically like
echoing what everybody else says.
Oh, but I can't even ask it to do this.
I very vividly remember a demo from Paul Hudson two years ago what,
yeah, like almost two years ago at iOS g where he said, let's try
to use chat g PT to build a clock.
And he just told it like, write me a Swift app that this display a clock
with moving hands, like a detailed prompt and it kept like messing up.
I'm pretty sure the same demo today would be much better, but
Leo Dion (host): Jordy did that at
Donny Wals (guest): none of that.
That was Paul Hudson a deep as he did something similar kind
Leo Dion (host): No, Jordy did Jordy did it at Deep Dish and it was a success.
It wasn't a clock, it was something else, but
Donny Wals (guest): because with the clock the messy thing was
that it kept messing up, like the angles of the arms and everything.
But I'm pretty sure that if Paul Hudson did the same demo, like today
would be so much better already.
And I think for me, the thing to figure out, and the thing that I learned
throughout the year is, okay, so this AI thing is only getting bigger, right?
And we can keep saying, oh, but it can't even build an app.
Oh, but it can't even do this.
Oh, but I have to do this.
So I was kinda like, so what can we do?
Right?
It's so easy to give it stuff that it can't do.
And then I started just asking for like small bits Hey I want to clip an image.
I have a UI image.
I wanna clip it to be a circle.
How do I do that?
And it just gave me small snippets, small bits and pieces,
and just put them into a project.
And then cursor came out.
And I took that and people were saying like, it's so
great, you can do anything.
So I was just like, okay, let's see.
So I told it like, write me code to make an API call to the most useful
stock market app that's out there.
I was like, well, you can use this one, but you need an API key.
So I was like, I don't have API keys, just gimme anything.
And it just used like some stock market, API, and it would just make a request.
So I'd use documentation, everything, and it actually worked right?
And then I told it like, okay, make a website out of this.
Allow me to do this, allow me to do that.
And I think I actually was able to mess with it for four to five hours,
adding features until something broke.
And I wasn't able to figure out what, 'cause my experiment was, I'm
not going to review the code, right?
I'm just going to tell it what I want.
Accept any suggestion.
But like being able to go over 45 hours before it actually messed up
to a point where I couldn't fix it.
I think it was really cool and I made it, I made a website, right?
It wasn't an app, so it wasn't something I was very comfortable with per se.
And so that's when I learned okay, so if we actually use an AI tool like
this, we can ask it for small bits.
Small pieces.
We still have to break down the problem.
We can ask it to help break down the problem if we want.
We're still breaking down the problem, we're still finding the pieces.
And so now I actually use AI all day long.
I have copilots from GitHub inside of Xcode.
Leo Dion (host): Okay.
Donny Wals (guest): And so one of the complaints people have about that
is it can't do like whole apps or like whole views or stuff like that.
And I actually like it that way.
I like just today I was writing like a function to, to expand
a rectangle into a circle.
So I was like, okay, where's the middle of the rectangle start?
Mid X equals.
It was like, oh, you have a rectangle maybe when you use it's mid X position.
And then I hit enter and it was like.
Maybe you also want to have mid midwives.
Yeah, I want mid y.
And then it just kept like hinting one or two lines at a time.
And that's super nice 'cause it's very easy to digest for me as a developer
and it just saves me keystrokes, right?
Like it's it's reading my mind in terms of what I want to do
and that's where I like it.
Leo Dion (host): What do you think?
You said used copilot.
Did you try using the apple generative AI stuff in Xcode?
Donny Wals (guest): So, so only the Swift Auto Complete thing,
which is complete garbage.
Like I didn't try it.
I think 62 is supposed to be better.
But for me it's I disabled it after I, I wrote dot frame and it suggested
dot frame with colon space, space, space, space, space, biodegradable.
And I was like, that's not even valid.
Swift.
Like, why are you suggesting this?
This is ridiculous.
You're supposed to be, I.
Good at Swift.
That's when I was like, okay, this thing is getting in the
way more than it's being useful,
Leo Dion (host): Yeah.
Donny Wals (guest): but like I said, 16 two is supposed to be better.
So maybe I haven't tried that.
Leo Dion (host): okay.
Okay.
That's supposed to be out probably by the time this
comes out, so yeah, we'll see.
How about AI on the apple and as far as guess intense is the way of
getting at it or any of that stuff.
Have you looked into any of that?
Donny Wals (guest): Only at app intents, but I haven't had
a chance to play with it yet.
Mainly because I don't have I'm in the EU right, in the Netherlands.
So we don't get Apple Intelligence yet.
There are ways around it.
I could probably get around it.
Main issue is that my iPhone 15, is it that, yeah, it's 15.
The one that supports it.
Leo Dion (host): has to be a pro.
Donny Wals (guest): Yeah, it's the 15 pro that I have, but it's my main device
and I tried getting Apple Intelligence on my Mac where it is allowed, but
I had to put Siri in English and all of my HomeKit stuff is in Dutch.
So that kind of broke, like all of, yeah, it, it broke
all of my voice commands.
I was like, okay, fine.
I'll,
Leo Dion (host): there a country.
There's gotta be a country, like one of the Caribbean islands.
A Bermuda Island where they're still their
Donny Wals (guest): yeah, so, so, so the issue is Apple limits this to us English
Leo Dion (host): Oh, right, right.
Okay.
Not even like Canada.
Donny Wals (guest): I think you have to have, I think it's allowed in
Canada as a country, but it's still limited to devices with US English
language or something like that.
Leo Dion (host): That's stupid.
We didn't talk about job market.
Should we cover that before we close out?
Donny Wals (guest): Why not?
Leo Dion (host): How's it been for you?
Donny Wals (guest): So the job market it's, I've never
fully relied on the job market.
Like I always made a point outta that.
So that's been good for me.
And I tend to favor long-term engagements with clients.
And so I had two of those going into the year.
One I got out of around March with no urge to replace that client 'cause
I just had a baby at that point.
So I was like, you know what, it's not too bad having one, one fewer client.
And so towards the end of the year I was thinking maybe I should start thinking
about replacing that client now.
I heard a lot of people say oh, job market is not good
job market is not good.
Luckily I had two people reach out a couple weeks ago, but that said,
those are probably the only two people that I had in my inbox for
eight months or something like that.
So, so I can definitely tell the job market's not great.
I do feel like it's somewhat like picking up, but I'm wondering if it's
companies spending their budget, right?
Because it's end of the year, if you don't spend your budget, you might
not get new budget for the new year.
So maybe they're like,
Leo Dion (host): right, right.
Donny Wals (guest): we should spend that.
So it's always hard to say at the end of the year.
I think it's tough times overall.
I don't hear anybody saying that jobs are just there
Leo Dion (host): Why do you think that is
Donny Wals (guest): I'm not exactly sure.
I think a lot of companies probably spent too much money.
In general, like they have just in general for the past many years, right?
So it's not something new like all the fees, capital and stuff.
It seems like money is infinite in some tech companies.
I do feel like a lot of people are looking forward to super high paying
jobs that you almost only get like at the big five or six companies
that are from the us especially in the Netherlands, there's like only
three or four of them that will pay you like 150 k plus and that's
where people want to be, right?
So I feel like a lot of smaller companies are just struggling to
hire and they're not as visible.
So yeah.
Why is it?
I'm not exactly sure.
I think there's a lot of expectations from developers in terms of pay.
I think there's probably also a lot of companies just trying to cut costs.
I wonder how much the political landscape in the US elections and
stuff, maybe companies were reluctant to spend around that because I do
feel like, that's always a time where a lot can change for companies.
So yeah, maybe they were reluctant to spend for a bit, but it's hard to say.
I dunno if you have any thoughts on that, but I find it hard to say
Leo Dion (host): Okay.
Do you think it's gonna get better in 25?
Donny Wals (guest): maybe, I think in 25 you'll see that AI
knowledge and AI skills will be more important than they are today.
So I wonder if the kind of person that people are looking for will change.
Leo Dion (host): I mean, do you think AI is gonna continue getting
better and better, or do you think there's a ceiling to it?
Donny Wals (guest): I think there will be a ceiling to it.
I don't think we've reached it yet.
Right.
We have these like super broad models that can do a lot of things.
I wonder if we're going to see like more specific models or like
interfaces for more specific stuff,
Leo Dion (host): That's a really good point.
Yeah.
Donny Wals (guest): come up things like rag, I forgot what it stands for, but
what it means is like inserting more and more context into your LLM, right?
So when you have your code base, you give it all the files, you teach it
like what's in your code base, and then from there you're gonna ask questions.
I think it's only going to get better at that.
Yeah.
See, I think
Leo Dion (host): Yeah, I agree a hundred percent.
And I think there's too much of an emphasis on trying to build a sentia
general intelligence and not like an actual tool that's useful to people.
Donny Wals (guest): exactly.
Leo Dion (host): I think what's the, that realization comes in, I think,
yeah, that, that's a really good point.
I hadn't thought of that.
Where like you build a more specific model to do stuff.
Donny Wals (guest): And I, I always say I don't think AI is going to
come for our jobs as developers.
I do think if we ignore AI and we just keep pretending that it's not
going to do anything for us for long enough, I think you'll be out of a
job because there's just going to be like junior developers or other
people running circles around you.
Leo Dion (host): To have developed not before the internet, but like
when it wasn't quite as useful.
And I feel like it's like the internet where it's like now
you could just look up stuff.
You don't
Donny Wals (guest): Yeah.
Maybe.
Leo Dion (host): figure it out on your own or look up a paper manual where
now it's like you can actually just ask ai a question and it does its best.
Donny Wals (guest): it also reminds me of like other transitions, right?
Objective C to Swift, where there were definitely objective C developers
saying, oh, but you should still know how objective C works under the hood.
Otherwise you can't be a great iOS developer.
They were right for a couple years and now it's just who cares what
objectives see Similarly UI kit to Swift ui, but oh, but all these
newcomers, they only learn Swift ui.
They're never going to be able to build like a great app five years later.
Who, who still touches UI Kit?
Like
Leo Dion (host): Right,
Donny Wals (guest): a few people.
Like you can learn Swift UI only and I'm pretty sure AI is going to
be a similar story where people are saying now oh, you don't need it, or
Oh, you still need to know exactly what Dakota is doing under the hood.
There's for sure value in that.
But I think a lot of companies also just care about getting stuff done
rather than, oh, right, there's a better way to write this for Loop.
You should have used that.
I was like, yeah, maybe, but this one works too.
So yeah I think there's going to be like a lot of room for people to do ai
and I'm not saying it's not important to learn how to go code really well.
I think that's extremely important, but I think people that solely
focus on that and not, and don't.
Look at how AI could be enriching their workflow rather than,
fighting it all the time.
I think that's where people are wrong.
Leo Dion (host): Yeah, I agree a hundred percent.
Donnie, thank you so much for coming on the show.
I really appreciate it.
Where can people find you online?
Donny Wals (guest): Also all the social networks these days, right?
Mastered on threads, blue sky X.
But if you actually wanna have a conversation with me, blue
Sky is where I'm mostly at these
Leo Dion (host): Okay, sounds good.
You can find me on all the social networks as well at Leo g Dion.
My company is Bright Digit.
If you really enjoyed this podcast, please and subscribe
and give me a review or if you're watching this on YouTube as well.
I'm trying to think what else I was supposed to mention.
If you haven't had a chance, try out Bushel should be
version two should be released.
So give that a try and I'm trying to think what else I
have to mention on this episode.
Should always have that in my notes, shouldn't I?
If there isn't, I'll probably have had it in the intro.
So thank you again and I look forward to talking to you in the next episode.
Bye everybody.
Donny Wals (guest): Bye.
Thanks for having me, Leo.