I don't know which I appreciate the most. The thorough lessons? The inclusion of thinking process and mistakes, so I don't feel so bad when it happens to me? Or the fact that we have a slightly different design taste so every lesson then allows me a chance to revise things for my own aesthetic? Which is not to say that I don't like yours, but the old architect in me has some... proclivities. :) In any case, this is on my agenda after I finish the books project this week. And this one starts with version control. Woot!
@olyphotographer
Ай бұрын
Top, another video where I was able to learn a lot. Many thanks!
@mehmetbaykar701
Ай бұрын
Another great video!Thank you so much Steward!
@StewartLynch
Ай бұрын
Glad you enjoyed it
@andrejkling3886
Ай бұрын
Thank you so much Stewart…
@laurentbennis
Ай бұрын
Very nice work here Ta much, for sharing your knowledge Sir. :)
@dibjr
2 ай бұрын
Great video, Stewart, as per usual! I just learned something I have been doing the hard way for a long time. Double-click a left brace, the entire closure is highlighted. Right arrow ( or control-f if you are emacs oriented ) and the cursor is at the end of the closure. When I feel the need to investigate, I'd like a 'select the next closure' keyboard shortcut.
@StewartLynch
2 ай бұрын
Thanks for sharing!
@abdorizak
Ай бұрын
Thank i learned something from you channel ❤
@StewartLynch
Ай бұрын
You’re welcome 😊
@jairmoreno5244
Ай бұрын
The best teacher out there! Thanks for creating this content 🫰
@StewartLynch
Ай бұрын
Thanks ☺️
@swiftodyssey
Ай бұрын
Thanks Stewart! This is perfect for weekend learning 😊
@AndrewDChristie
Ай бұрын
Thanks!
@StewartLynch
Ай бұрын
Thank you very much
@holycrosscv
2 ай бұрын
Brilliant Stewart. Thanks so much. Blessings, --Mark PS: Your Gist link is missing from the description.
@StewartLynch
2 ай бұрын
Thanks Mark. I have added it now.
Ай бұрын
Thank you for the tutorial.
@danielcrompton7818
Ай бұрын
Hey Stewart, another 5 star production!!! I have a question related to another of your courses though… your Tic Tac Toe course made for CWC+. I’m sure you can remember that in that course you used the Multipeer connectivity framework to display a list of available players, however when running on a real device and simulator at the same time and the tic tac toe game type set to challenge a friend, the simulator showed the real device in the list of available players but not vice versa. Do you have any idea why? Thanks again!
@StewartLynch
Ай бұрын
I dont’ think that a device can detect a simulator
@richardhasson265
Ай бұрын
When testing peer-to-peer functionality, I've found it best to work on two real devices rather than using a simulator.
@StewartLynch
Ай бұрын
I agree.
@WattsnabbAB
24 күн бұрын
Hi Is it possible to use this as a logout timer if the user don’t interact with the app he will be logged out? Would you the just check in every view if the remaining time where 0 and the just called logout func or would you use something else?
@StewartLynch
23 күн бұрын
Probably not the best application for this
@WattsnabbAB
22 күн бұрын
@@StewartLynchany suggestions what I should search for?
@davesmif
Ай бұрын
Thanks a lot for this! GOAT material as always :) Have a project with a timer functionality that I'm updating/refactoring for iOS18/Swift 6 and will draw some inspiration from this as it's a very elegant solution. Any chance of an update or some info on that? If updated to Swift 6 Complete concurrency checking the starttimer function is complaining about included types not being sendable and wrapping the class in a @Mainactor creates multiple actor isolation issues that I find it hard to wrap my head around :) Would love to hear your thoughts!
@StewartLynch
Ай бұрын
Unfortunately, I have not gone down that path myself yet.
@davesmif
Ай бұрын
@@StewartLynch it does seem like a somewhat lonely and perhaps dark path at the moment. Looking forward to you brighten it up eventually! And if I find any solutions applicable to this I will share :)
@davesmif
Ай бұрын
@@StewartLynch Just wanted to mention that I have found a solution. Perhaps not the most elegant though and I'm sure there are better ways to do it. In your example project making the observable struct @MainActor as well as the start and stop functions, while also having the timer updating in a task (again clarifying @MainActor) will alleviate the errors. There are also a few explicit self adjustments needed which xcode will guide well. So not one but four @MainActor sprinkled through the TimerObject struct to ensure that it is super clear for the compiler that everything happens in the main thread. Of course, another way is to just do unchecked @Sendable on everything. But that would miss the point of safety :)
@StewartLynch
Ай бұрын
@davesmif Thanks for following up. Much appreciated
Пікірлер: 31