<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Paul-Hudson on dev.endevour</title><link>https://devendevour.iankulin.com/tags/paul-hudson/</link><description>Recent content in Paul-Hudson on dev.endevour</description><generator>Hugo</generator><language>en-AU</language><lastBuildDate>Wed, 07 Dec 2022 00:00:00 +0000</lastBuildDate><atom:link href="https://devendevour.iankulin.com/tags/paul-hudson/index.xml" rel="self" type="application/rss+xml"/><item><title>SwiftUI provides</title><link>https://devendevour.iankulin.com/swiftui-provides/</link><pubDate>Wed, 07 Dec 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/swiftui-provides/</guid><description>&lt;p&gt;&lt;img src="https://devendevour.iankulin.com/images/img_3476.png" alt="" class="img-responsive"&gt; &lt;/p&gt;
&lt;p&gt;A few hours after I speculated about pausing work on the tickets app because outputting the tickets was too far out of my expertise, a helpful instance of the &lt;a href="https://en.wikipedia.org/wiki/Frequency_illusion" target="_blank" rel="noopener"&gt;Baader–Meinhof phenomenon&lt;/a&gt; threw up some help in the form of this tweet from &lt;a href="https://twitter.com/flowritescode" target="_blank" rel="noopener"&gt;@FloWritesCode&lt;/a&gt; . It turns out this was an addition in iOS16 announced at WWDC that makes this straightforward.&lt;/p&gt;
&lt;p&gt;As soon as I googled around about it I also found good solutions that wrapped the old code to provide similar functionality. So that&amp;rsquo;s a lesson for me about not assuming something&amp;rsquo;s hard before I&amp;rsquo;ve spent some time investigating it. I took that lesson and applied it to rendering to a PDF, and of course, @twostraws &lt;a href="https://www.hackingwithswift.com/quick-start/swiftui/how-to-render-a-swiftui-view-to-a-pdf" target="_blank" rel="noopener"&gt;has a code example&lt;/a&gt; for that from three days ago!&lt;/p&gt;</description></item><item><title>You Can Take Big Steps When You Feel Safe</title><link>https://devendevour.iankulin.com/you-can-take-big-steps-when-you-feel-safe/</link><pubDate>Wed, 09 Nov 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/you-can-take-big-steps-when-you-feel-safe/</guid><description>&lt;p&gt;&lt;a href="https://www.deviantart.com/jhonair/art/Forest-of-giantess-604262747" target="_blank" rel="noopener"&gt;&lt;img src="https://devendevour.iankulin.com/images/forest-of-giantess-jhonair.png" alt="" title="Forest-of-giantess By JhonAir" class="img-responsive"&gt; &lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.hackingwithswift.com/100/swiftui/58" target="_blank" rel="noopener"&gt;Day 58&lt;/a&gt; of &lt;a href="https://www.hackingwithswift.com/100/swiftui" target="_blank" rel="noopener"&gt;#100Days&lt;/a&gt; feels like complex topics are being dropped in pretty fast. We tackle one:many data relationships and how to set them up in CoreData, using CoreData constraints and setting a merge policy to manage conflicts, and even the underscore to access the actual property inside a wrapped property struct (needed for dynamic filtering in a view).&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve &lt;a href="https://devendevour.iankulin.com/top-four-reasons-why-twostraws-is-a-good-teacher/"&gt;mentioned before&lt;/a&gt; that I think Paul Hudson is an excellent teacher, and an example of this is that even though this was a day with a lot of challenging material, I&amp;rsquo;m not worried. I followed the discussion and tried the code, and more importantly I&amp;rsquo;m anticipating these new skills will be practiced in the next app, and probably shortly after I&amp;rsquo;ll be writing an app using them.&lt;/p&gt;</description></item><item><title>Top Four Reasons why @TwoStraws is a Good Teacher</title><link>https://devendevour.iankulin.com/top-four-reasons-why-twostraws-is-a-good-teacher/</link><pubDate>Tue, 01 Nov 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/top-four-reasons-why-twostraws-is-a-good-teacher/</guid><description>&lt;p&gt;&lt;img src="https://devendevour.iankulin.com/images/screen-shot-2022-10-29-at-1.28.59-pm.png" alt="" class="img-responsive"&gt; &lt;/p&gt;
&lt;h4 id="good-questions"&gt;Good Questions&lt;/h4&gt; &lt;p&gt;At various points in the &lt;a href="https://www.hackingwithswift.com/100/swiftui" target="_blank" rel="noopener"&gt;100 Days of SwiftUI&lt;/a&gt; course, you get asked sets of questions to check you&amp;rsquo;ve understood the preceding material. They&amp;rsquo;re usually presented as two different statements, one of which is true, and the other false. It&amp;rsquo;s actually a really good technique - the student feels like they&amp;rsquo;ve got a couple of opportunities to figure it out, plus they are forced to read both statements and think about them. Paul does a similar thing in the Unwrapped app - there, the questions are often presented as &amp;ldquo;Is this valid Swift code&amp;rdquo; and the user needs to scan through it all looking for mistakes. It&amp;rsquo;s checking your understanding, and making you a thoughtful debugger!&lt;/p&gt;</description></item><item><title>Sean != Erica</title><link>https://devendevour.iankulin.com/sean-erica/</link><pubDate>Sun, 04 Sep 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/sean-erica/</guid><description>&lt;p&gt;When Swift was newer, there was a bunch of podcasts about it - in early episodes of &lt;a href="https://podcasts.apple.com/au/podcast/fireside-swift/id1269435221" target="_blank" rel="noopener"&gt;Fireside Swift&lt;/a&gt; the existence of a Swift Podcast Network is often mentioned, but now it&amp;rsquo;s more of an established language there&amp;rsquo;s a bit less current content to listen to, and what there is, is less focused on learning Swift and more about what&amp;rsquo;s happening in the community.&lt;/p&gt;
&lt;p&gt;Being firmly in the camp of needing to learn more about the language, I&amp;rsquo;ve listen to a number of older podcasts, or even current ones (such as Fireside) but their older episodes. It is sort of an odd experience traveling on several slightly out of sync timelines, but quite a joy to see what happens to predictions - like the occasion when &lt;a href="https://twitter.com/twostraws" target="_blank" rel="noopener"&gt;Paul Hudson&lt;/a&gt; predicts that an &amp;ldquo;Xcode lite&amp;rdquo; on iPad is unlikely to be able to write apps until a more swift like framework for developing interfaces exists.&lt;/p&gt;</description></item><item><title>Uwrap App</title><link>https://devendevour.iankulin.com/uwrap-app/</link><pubDate>Thu, 25 Aug 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/uwrap-app/</guid><description>&lt;p&gt;&lt;img src="https://devendevour.iankulin.com/images/img_2549.png" alt="" class="img-responsive"&gt; &lt;/p&gt;
&lt;p&gt;Part of the &lt;a href="https://twitter.com/twostraws" target="_blank" rel="noopener"&gt;@twostraws&lt;/a&gt; programmatic universe is his Swift learning app, &lt;a href="https://apps.apple.com/us/app/unwrap/id1440611372" target="_blank" rel="noopener"&gt;Unwrap&lt;/a&gt; that I&amp;rsquo;ve included in my learning &lt;a href="https://devendevour.wordpress.com/goals/" target="_blank" rel="noopener"&gt;goals&lt;/a&gt; . It presents little snippets of learning with a 60 second video, and in a written version, then tests the user to check their understanding. It is slightly gamified - you get points for answers, but it&amp;rsquo;s not clear to me how that works beyond the satisfying haptics when your score runs up at the end of a section.&lt;/p&gt;</description></item><item><title>Playgrounds are good</title><link>https://devendevour.iankulin.com/playgrounds-are-good/</link><pubDate>Mon, 22 Aug 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/playgrounds-are-good/</guid><description>&lt;p&gt;&lt;img src="https://devendevour.iankulin.com/images/img_2778.png" alt="" class="img-responsive"&gt; &lt;/p&gt;
&lt;p&gt;A couple of times (&lt;a href="https://devendevour.iankulin.com/protocols/"&gt;Protocols&lt;/a&gt; &amp;amp; &lt;a href="https://devendevour.iankulin.com/named-loops/"&gt;Named Loops&lt;/a&gt; ) in the past few days I&amp;rsquo;ve needed to write and run a couple of tiny C or C++ snippets, and I&amp;rsquo;ve acutely felt the lack of Swift Playgrounds for it. It occurred to me that Playgrounds has been instrumental in my enjoyment of learning Swift - it&amp;rsquo;s just a bit magic to grab the closest device and noodle out an idea or to make sure I&amp;rsquo;ve understood a new concept.&lt;/p&gt;</description></item><item><title>Unwrap</title><link>https://devendevour.iankulin.com/unwrap/</link><pubDate>Sun, 31 Jul 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/unwrap/</guid><description>&lt;p&gt;Unwrap is the Paul Hudson app for Swift learning. It’s good for using those three minute gaps in life to digest a concept. I’ve incorporated it into my &lt;a href="https://devendevour.wordpress.com/goals/" target="_blank" rel="noopener"&gt;goals&lt;/a&gt; , as some days its the only progress I make.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devendevour.iankulin.com/images/fa3cfadd-f6ef-4a05-9131-be5de8f38291.jpeg" alt="" class="img-responsive"&gt; &lt;/p&gt;</description></item><item><title>Swift Over Coffee</title><link>https://devendevour.iankulin.com/swift-over-coffee/</link><pubDate>Fri, 22 Jul 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/swift-over-coffee/</guid><description>&lt;p&gt;&lt;img src="https://devendevour.iankulin.com/images/screenshot-2022-07-17-at-07-44-36-swift-over-coffee-on-apple-podcasts.png" alt="" class="img-responsive"&gt; &lt;/p&gt;
&lt;p&gt;One of the iOS development podcasts in my current rotation is &amp;ldquo;Swift Over Coffee&amp;rdquo;, it&amp;rsquo;s blurb is:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Swift over Coffee is a podcast that helps you keep your Swift skills up to date the easy way, hosted by Paul Hudson and Erica Sadun. Each episode has news, our picks of the week, plus an open ballot where you can share your views on important topics.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;And that is about how it goes. In Season One, it&amp;rsquo;s actually Paul and Sean Allen at the mic, they chat about news and topics related to Swift and iOS development, and each week there&amp;rsquo;s a Twitter question that people have chipped in on and the hosts go over these different views in some detail.&lt;/p&gt;</description></item><item><title>Passing Data</title><link>https://devendevour.iankulin.com/passing-data/</link><pubDate>Wed, 20 Jul 2022 00:00:00 +0000</pubDate><guid>https://devendevour.iankulin.com/passing-data/</guid><description>&lt;p&gt;Sean Allen has come to my notice a couple of times, once where he was mentioned as freelance contractor who is a great contributor to the community (I think perhaps that was on &lt;a href="https://podcasts.apple.com/au/podcast/swiftcoders-interviews-with-swift-developers/id1082937962" target="_blank" rel="noopener"&gt;Swiftcoders Podcast&lt;/a&gt; ), and I&amp;rsquo;ve also bumped into him as co-host (with Paul Hudson) of the early episodes of the &amp;ldquo;&lt;a href="https://podcasts.apple.com/au/podcast/swift-over-coffee/id1435076502" target="_blank" rel="noopener"&gt;Swift over Coffee&lt;/a&gt; &amp;rdquo; podcast.&lt;/p&gt;
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"&gt;
 &lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/HXoVSbwWUIk?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"&gt;&lt;/iframe&gt;
 &lt;/div&gt;

&lt;p&gt;This video I watched last night is a compilation of the first few videos of &lt;a href="https://seanallen.teachable.com/p/swiftui-fundamentals" target="_blank" rel="noopener"&gt;Sean&amp;rsquo;s SwiftUI course&lt;/a&gt; , and it&amp;rsquo;s pretty great. In particular he does a great job of explaining how to start to refactor child views out and call them, and how all the stacks go together to make a pretty interface. What he does not do is vist/explain any of the Swift language fundamentals. If you don&amp;rsquo;t already know what a struc is, and the Swift flavour of them, it may be a challenging place to start.&lt;/p&gt;</description></item></channel></rss>