You should so some more portfolio reviews! They're super helpful, but some of your old ones are for websites that are no longer available (a couple portfolio sites are spam links now).
Sean, I have a big interview coming up tomorrow, and this was incredible, thank you so much! Would you be open to creating another video in a similar long-form format, that just goes through all of the available UIKit Views and ViewControllers, one-by-one going into detail with how to use them? And likewise, one for SwiftUI and each Views popular viewmodifiers, etc.? That would be super awesome to see all in sequence just like this, because then you can absorb the full context of what is available out of the box in each framework, without needing to get too lost in the docs. Thanks!
Great video! I used this to refresh myself before an iOS interview. One small issue I found is that the the delegate part, you didn't add weak to the delegate example. This could lead to reference cycle in classes (super easy mistake for beginners).
I cannot express enough my gratitude for this video Sean. It is all the information I read over and over in million articles before all my interviews put into one concise video with demonstration that sticks in your mind. Now I don't even need to read my saved links anymore to refresh my mind. This video helped me so much before the interview today. I don't know the results yet but I already felt so much better during it because of the confidence this information gave me. Thank you!
I am glad I found this video in my life! The explanation of all the network calls async & away in one file was the peak! I watched numerous videos with different folders for each of them but the way you explained in on file I was able to understand after a long time.
@@tommytexter4054 Bro you learned iOS swift development so is Mac mini m2 16/256gb enough for hardcore xcode development. I get it in $800 education discount. Can I buy
This is excellent! Just getting my feet wet and had figured out a bunch by typing but this vid really summed up and explained really clearly and efficiently. Good work!
Thanks for being a great teacher and idol Sean. Learned a lot from your vids and landed a job. Working 1+ year and its time for a change so I’m having a technical interview tomorrow for a bigger, better company. So here I am once again learning from you 😁
I am not at all interested in iOS specific programming. I have a big distaste for modern programming languages (swift, rust, etc). Even so, your videos are really high value and full of knowledge to keep a 00’s coder up-to-date with the modern standards and practices. I wish I had access to resources like yours when I started programming in C89 or even C# back in the day. Thank you for teaching the next generation with so much care and detail.
I'm a self-taught developer and to be honest I didn't even called for an interview once because I graduated from Business :) Also, I live in Turkey and there are like 20 job posts and they all look for seniors.
Beautiful! just when I am starting to look for a job again! Thank you Sean! After following you for so long I totally trust your insights on this subject :)
Here's one problem with converting incoming JSON from "snake case" to "camel case": Someone else looking to find where the REST API-based JSON "avatar_url" shows up in your Swift code won't find it and won't know to search for "avatarUrl" - and vice versa. You're converting from one arbitrary readability standard (either Python or JS) to another arbitrary readability standard (Swift). And yes, they are both arbitrary. This becomes a Maintainability issue: After you win Powerball and are never heard from again, someone else is going to have to be able to understand your code without you around to answer questions about it.
Hello Pro, Thank you for your awesome videos; I've learned a lot from them. If you could do us a favor and explain what we should focus on in problem-solving questions during interviews, we would be very thankful.❤❤
Thanks for your content, I'm preparing for applying to english jobs and I find this video very handy. I am not an iOS beginner, I've been working in iOS programing the last five years but your video is being very useful to review some concepts. The only drawback I'd point out is that you speak very fast for me because I'm a non native english speaker and it's dificult keep up with your rhythm. But that is really my fault not yours 🤣 🤣
I've been told I speak fast and I've actually slowed down a lot over the years, lol. It's something I work on but can always improve. Luckily UA-cam has playback speeds. Glad you enjoyed the video!
Everything is great , you really know what you do , thanks for helping us 👌🏾 I have a question , if I want to create an App switcher with SWIFTUI , what knowledge do I need , I’d like to know which course should I study in order to build it , thanks
Me: I should stop wasting time on videos about sports cars and watch some useful tutorial instead Some useful tutorial: Porsche 911 GT3 Thanks for your work, Sean!
Are you sure that lookup complexity for Array is O(n)? It's O(1) in pretty much every language I've learned. In languages that have true arrays (like Java), it's just a memory pointer with total size and a block size. If you look up an element at n, it's address is just (array address + (n * block size)), which is O(1).
Why do we only need to do .users on the $1 in { $0 + $1.users } - what is the magic behind that? It understands that .users is what we’re looking for on the first element, and can’t add the entire object to the property of the second object?
Thank you so much. This is incredibly helpful. I’ve been on the fence about getting an iOS dev job or web dev so I have been learning both (SwiftUI and Next js mainly). There are basically 0 places hiring for either that aren’t government jobs within an hour drive of me so it would have to be remote. Does anyone who has experience with both (remote) have any advice?
Yes, it is possible. More of the jobs will be in UIKit, so it may be a little more difficult at this current time. But over time, SwiftUI will become more and more dominant.
I don't outwardly offer private lessons but if someone asks and my schedule isn't crazy at the time, then I usually do it. Shoot me an email or a DM on twitter and we can discuss.
1:53:22 Now imagine how long this init could be in the real app. This VM also needs details, some actual Model. Also, probably access to some tracking, loggin, etc. services, etc. so then u get a long constructor anti-pattern or whatever it is called -> so you fix it with Builder, so now -> instead of a small class or struct with init with Model accessing some shared services -> you have two classes, one actual and one builder. I mean, it is clear, clean, and good for testing, but bigger, with more lines, files, and classes/structs. More time spent, etc. I mean, sometimes just KISS, guys.
@@seanallen I don't know man. Knowing fundamentals are pretty essential to becoming a better developer. Understanding how computers work or communicate on a high level is necessary.
I didn't say it wasn't necessary. I was pointing out that most people watching this video and learning about network calls in Swift on UA-cam are not fullstack devs with a fundamental knowledge of client/servers.
@@seanallen You are doing a great job here. Love your videos. I'm just saying, if you are talking network calls you can also talk about client/servers. You said network calls are tough. But is that true? No. Will your audience find it tough if they didn't know the basics already? Yes. I don't know wheather you have videos teaching fundamentals but if you don't that's a gap to fill. Most people start by becoming a frameworkers, not engineers. Instead of learning UIkit, SwiftUi, jetpack, flutter, react, express, learn the principles of programming. Become software devs not ios devs.
I have a quick question. It has been 6 months since you posted but i hope you would see this. In the generic example, if i was to use func createName(person1: Name, person2: Name){} ---> and i create a protocol for the type NAMe, will it still work?
"escaping, like who are we running from?" Lol. That's the exact thought I got when I first see the pinky @escaping keyword when I was learning Swift. 😹😹😹
Nice collection of topics. However, I would have added a local storage related topic too. As an interviewer myself, it's a very important topic. (UserDefaults, KeyChain, File System usage and DB basics [coredata or even realm]).
Hey Dom! Hope you enjoy the job interview course! Combine seems to be a framework that Apple is leaving behind so I don't have plans create content about it.
That's an argument label. It just helps with readability of the function at the call site, it's not used inside the function. You can read more about them here -docs.swift.org/swift-book/documentation/the-swift-programming-language/functions/
Go deeper and build apps with my iOS developer courses at seanallen.teachable.com
You should so some more portfolio reviews! They're super helpful, but some of your old ones are for websites that are no longer available (a couple portfolio sites are spam links now).
Sean, I have a big interview coming up tomorrow, and this was incredible, thank you so much!
Would you be open to creating another video in a similar long-form format, that just goes through all of the available UIKit Views and ViewControllers, one-by-one going into detail with how to use them? And likewise, one for SwiftUI and each Views popular viewmodifiers, etc.?
That would be super awesome to see all in sequence just like this, because then you can absorb the full context of what is available out of the box in each framework, without needing to get too lost in the docs.
Thanks!
As a ex-Facebook iOS engineer and content creator myself, I cannot enough of your videos, man. Succinct, informative, engaging. Keep it up brother!💎
I appreciate that! Glad you enjoy the content 😀
Bro. Does meta use SwiftUI or Objective-c?
@@internationalswic objective-c!
Great video! I used this to refresh myself before an iOS interview. One small issue I found is that the the delegate part, you didn't add weak to the delegate example. This could lead to reference cycle in classes (super easy mistake for beginners).
I cannot express enough my gratitude for this video Sean.
It is all the information I read over and over in million articles before all my interviews put into one concise video with demonstration that sticks in your mind.
Now I don't even need to read my saved links anymore to refresh my mind.
This video helped me so much before the interview today. I don't know the results yet but I already felt so much better during it because of the confidence this information gave me.
Thank you!
Great timing then. Best of luck on the interview!
share your saved links just in case it can be useful to others like me etc
yeah i agree with the same
I am glad I found this video in my life! The explanation of all the network calls async & away in one file was the peak! I watched numerous videos with different folders for each of them but the way you explained in on file I was able to understand after a long time.
Happy to hear it was helpful and you finally understood those network calls!
I am having a iOS dev interview next Monday. I have been watching your videos this entire weekend! Hope I can do great tmr !🎉
Best of luck! Let me know how it goes.
Did it go well bro
@@llegenda-r3c nah, the interviewer was a jerk but i am having another next week
@@tommytexter4054 Bro you learned iOS swift development so is Mac mini m2 16/256gb enough for hardcore xcode development. I get it in $800 education discount. Can I buy
@@tommytexter4054 how were all your interviews going? did you land an ios engineer role?
Nice video. I would add a bit on sync vs async in Concurrency session
Thanks Sean! Keep up the great work!
Wow, I appreciate the generosity! Thanks!
I have an interview coming up and this was exactly what I was looking for! Thank you for this detailed video!
Detailed???
41:06 who are we @escaping from 😂 this made my day 😂
This is excellent! Just getting my feet wet and had figured out a bunch by typing but this vid really summed up and explained really clearly and efficiently. Good work!
Glad it was helpful!
Thanks for being a great teacher and idol Sean. Learned a lot from your vids and landed a job. Working 1+ year and its time for a change so I’m having a technical interview tomorrow for a bigger, better company. So here I am once again learning from you 😁
I appreciate the kind words :). Best of luck in the interview!
You’re the man for putting this together. Thank you!
I am not at all interested in iOS specific programming. I have a big distaste for modern programming languages (swift, rust, etc). Even so, your videos are really high value and full of knowledge to keep a 00’s coder up-to-date with the modern standards and practices.
I wish I had access to resources like yours when I started programming in C89 or even C# back in the day. Thank you for teaching the next generation with so much care and detail.
Happy to hear you enjoy the content even though you aren't into iOS Dev 😀
I'm a Test Engineer, but I'm really interested into the iOS. Thanks!
Happy to help!
Sean subtlety flexing his Porsche 911 in his teachings is iconic 😅
😏
I'm a self-taught developer and to be honest I didn't even called for an interview once because I graduated from Business :) Also, I live in Turkey and there are like 20 job posts and they all look for seniors.
You are awesome man, you explain things so well.
Beautiful! just when I am starting to look for a job again! Thank you Sean! After following you for so long I totally trust your insights on this subject :)
Hey Sean video really helped me to understand the swift concept deeper and really appreciate your hard work for spreading knowledge
Here's one problem with converting incoming JSON from "snake case" to "camel case": Someone else looking to find where the REST API-based JSON "avatar_url" shows up in your Swift code won't find it and won't know to search for "avatarUrl" - and vice versa. You're converting from one arbitrary readability standard (either Python or JS) to another arbitrary readability standard (Swift). And yes, they are both arbitrary. This becomes a Maintainability issue: After you win Powerball and are never heard from again, someone else is going to have to be able to understand your code without you around to answer questions about it.
Thanks Sean, It's helpful!
I am so grateful. thank you, Sean.
You're welcome :)
Hello Pro,
Thank you for your awesome videos; I've learned a lot from them. If you could do us a favor and explain what we should focus on in problem-solving questions during interviews, we would be very thankful.❤❤
Thanks for your content, I'm preparing for applying to english jobs and I find this video very handy. I am not an iOS beginner, I've been working in iOS programing the last five years but your video is being very useful to review some concepts. The only drawback I'd point out is that you speak very fast for me because I'm a non native english speaker and it's dificult keep up with your rhythm. But that is really my fault not yours 🤣 🤣
I've been told I speak fast and I've actually slowed down a lot over the years, lol. It's something I work on but can always improve. Luckily UA-cam has playback speeds. Glad you enjoyed the video!
Everything is great , you really know what you do , thanks for helping us 👌🏾
I have a question , if I want to create an App switcher with SWIFTUI , what knowledge do I need , I’d like to know which course should I study in order to build it , thanks
Amazing resource right here, thanks Sean!
My pleasure!
I miss flat map, but depricated in iOS 18 I guess.
Me: I should stop wasting time on videos about sports cars and watch some useful tutorial instead
Some useful tutorial: Porsche 911 GT3
Thanks for your work, Sean!
Lol, my dream car.
This content is Gold ❤
Thanks for the kind words and I'm glad you enjoy it!
the most awaited video !!
Hope you enjoy!
Are you sure that lookup complexity for Array is O(n)? It's O(1) in pretty much every language I've learned. In languages that have true arrays (like Java), it's just a memory pointer with total size and a block size. If you look up an element at n, it's address is just (array address + (n * block size)), which is O(1).
Oh nm I think I know what you meant: look up by value, not by index.
soooo geateful for creating this compilation
Happy to help!
Why do we only need to do .users on the $1 in { $0 + $1.users } - what is the magic behind that? It understands that .users is what we’re looking for on the first element, and can’t add the entire object to the property of the second object?
While Creating Generic Fetch Data Function, what’s the use of “For” parameter? It was not used inside.
Thank you so much. This is incredibly helpful. I’ve been on the fence about getting an iOS dev job or web dev so I have been learning both (SwiftUI and Next js mainly). There are basically 0 places hiring for either that aren’t government jobs within an hour drive of me so it would have to be remote. Does anyone who has experience with both (remote) have any advice?
Happy to hear it's helpful. Hope you enjoy it!
This is awesome, thank you Sean!
Hope it helps!
Why people keep writing userUrl, this isn't some JS or is it? userURL would have looked much more consistent with Swift
Nice video though
great video, thanks for sharing!!
Looks like a list for interns/juniors if you get rid of generics
That because it is. It’s meant to help people get their first iOS dev job.
@@seanallen that explains it ☺️
Hey Sean, please can you tell us is it possible to get a job today with only SwiftUI or you still have to know UIKit? Please give us an answer 🙏
Yes, it is possible. More of the jobs will be in UIKit, so it may be a little more difficult at this current time. But over time, SwiftUI will become more and more dominant.
@@seanallen Thank you so much for quick response!
DO you offer private lessons or to help prepare for interview?
I don't outwardly offer private lessons but if someone asks and my schedule isn't crazy at the time, then I usually do it. Shoot me an email or a DM on twitter and we can discuss.
Just learn both, swiftui is super unstable for big projects it has a lot of bugs and it’s partly UIKit under the hood
@@Денис-ж3ф5р спасибо Денис 💪
how long until prompting becomes an important part of coding interviews?
1:53:22 Now imagine how long this init could be in the real app. This VM also needs details, some actual Model. Also, probably access to some tracking, loggin, etc. services, etc.
so then u get a long constructor anti-pattern or whatever it is called -> so you fix it with Builder, so now ->
instead of a small class or struct with init with Model accessing some shared services -> you have two classes, one actual and one builder.
I mean, it is clear, clean, and good for testing, but bigger, with more lines, files, and classes/structs. More time spent, etc.
I mean, sometimes just KISS, guys.
Network calls are very intuitive if you have fundamental knowledge of how client server works. Its a cake walk for fullstack devs.
That's a pretty big "if" tho.
@@seanallen I don't know man. Knowing fundamentals are pretty essential to becoming a better developer. Understanding how computers work or communicate on a high level is necessary.
I didn't say it wasn't necessary. I was pointing out that most people watching this video and learning about network calls in Swift on UA-cam are not fullstack devs with a fundamental knowledge of client/servers.
@@seanallen You are doing a great job here. Love your videos. I'm just saying, if you are talking network calls you can also talk about client/servers. You said network calls are tough. But is that true? No. Will your audience find it tough if they didn't know the basics already? Yes. I don't know wheather you have videos teaching fundamentals but if you don't that's a gap to fill.
Most people start by becoming a frameworkers, not engineers. Instead of learning UIkit, SwiftUi, jetpack, flutter, react, express, learn the principles of programming. Become software devs not ios devs.
Man Sean!!! dude thank you!!
Happy to help!
Thanks, Sean. 👍🏼
I have a quick question. It has been 6 months since you posted but i hope you would see this. In the generic example, if i was to use func createName(person1: Name, person2: Name){} ---> and i create a protocol for the type NAMe, will it still
work?
this is gold!!! thnks!!!
Glad you liked it!
super helpful stuff!!!
Nice vidio❤ thank you very much!
Glad you liked it!
Why does a network call take so many lines of code
Do you think CI/CD, jenkins, etc is needed? or a plus
A huge plus for a senior, even though it depends on a team you work on.
Thanks Sean! ❤
You're welcome!
its now a ioS dev interview preparations , these are trivial tutorials
Disagree. These are fundamental topics & concepts that are always asked about in Jr. iOS dev interviews.
great video
Thanks!
This is amazing
Glad you liked it!
God bless you bro🙏
Glad you liked it :)
"escaping, like who are we running from?" Lol. That's the exact thought I got when I first see the pinky @escaping keyword when I was learning Swift. 😹😹😹
Nice collection of topics. However, I would have added a local storage related topic too. As an interviewer myself, it's a very important topic. (UserDefaults, KeyChain, File System usage and DB basics [coredata or even realm]).
Just wow! 👏🏻
Glad you liked it :)
Combine videos please🙏🏼Edit: Buying interview course next week
Hey Dom! Hope you enjoy the job interview course! Combine seems to be a framework that Apple is leaving behind so I don't have plans create content about it.
@@seanallen good to know thanks!
@@seanallen why do you think that they are leaving it behind??? SwiftUI uses it a lot. It’s faster than RXSwift. I don’t think they are leaving it.
the BOSS
great
1k . like is from me.
To be honest, these are so simple that nobody even asks in China.
What do they ask in China?
Agree.
such as, the source code of runtime(gdc, weak reference...), crash report, memory monitor, system design @@link123triFoRce
agree, primitive questions. useless for real iOS dev interview
excellent video, thank you!
Glad you liked it!
While Creating Generic Fetch Data Function, what’s the use of “For” parameter? It was not used inside.
That's an argument label. It just helps with readability of the function at the call site, it's not used inside the function. You can read more about them here -docs.swift.org/swift-book/documentation/the-swift-programming-language/functions/