{"version":"https://jsonfeed.org/version/1","title":"Micro.blog - troz","home_page_url":"https://micro.blog","feed_url":"https://micro.blog/posts/troz@mastodon.social","_microblog":{"about":"https://micro.blog/about/api","id":"264827","username":"troz@mastodon.social","bio":"Crazy Mac lady. Mac author & developer. Lover of Apple computers and devices. Swift & SwiftUI enthusiast. Unofficial Mac app dev evangelist.","pronouns":"","is_following":false,"is_you":false,"following_count":1,"discover_count":0},"author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://micro.blog/photos/200/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png"},"items":[{"id":"90260135","content_html":"<p><span class=\"h-card\"><a href=\"https://nileane.fr/@nileane\" class=\"u-url mention\">@<span>nileane</span></a></span> <span class=\"h-card\"><a href=\"https://mastodon.social/@finestructure\" class=\"u-url mention\">@<span>finestructure</span></a></span> <span class=\"h-card\"><a href=\"https://nileane.fr/@tinystartapp\" class=\"u-url mention\">@<span>tinystartapp</span></a></span> Highly recommend. I bought this app and it’s great. Fast, light weight, learns the apps you use frequently.</p>","url":"https://mastodon.social/users/troz/statuses/116580853632193096","date_published":"2026-05-15T22:04:14+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-05-15 22:04","date_timestamp":1778882654,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"90123249","content_html":"<p><span class=\"h-card\"><a href=\"https://bsky.brid.gy/r/https://bsky.app/profile/mackuba.eu\" class=\"u-url mention\">@<span>mackuba.eu</span></a></span> They changed their minds after a while. I wrote this one and macOS by Tutorials for Kodeco. When they decided against books, I got the rights to that and now sell it myself as macOS Apps Step by Step. I was going to get the rights to macOS Apprentice 18 months after initial release but by then, they had reversed their stance on books.</p>","url":"https://mastodon.social/users/troz/statuses/116570091825246415","date_published":"2026-05-14T00:27:22+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-05-14 00:27","date_timestamp":1778718442,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"90122712","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@oskargroth\" class=\"u-url mention\">@<span>oskargroth</span></a></span> Totally agree that all these people deserve the recognition, but I couldn't believe that <span class=\"h-card\"><a href=\"https://iosdev.space/@StewartLynch\" class=\"u-url mention\">@<span>StewartLynch</span></a></span> was not on the list so I have just nominated him. If anyone else would like to add their recommendation to mine, there is a link on the Apple page.</p>","url":"https://mastodon.social/users/troz/statuses/116570047564762894","date_published":"2026-05-14T00:16:06+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-05-14 00:16","date_timestamp":1778717766,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"90122004","content_html":"<p>My macOS Apprentice book has just been updated for macOS 26 and Xcode 26.</p><p>See the details here:<br><a href=\"https://troz.net/post/2026/macos-apprentice-update-3/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/post/2026/macos-appre</span><span class=\"invisible\">ntice-update-3/</span></a></p><p>Buy or update through Kodeco: <a href=\"https://www.kodeco.com/books/macos-apprentice/\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">kodeco.com/books/macos-apprent</span><span class=\"invisible\">ice/</span></a></p><p><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/AppKit\" class=\"mention hashtag\">#<span>AppKit</span></a></p><p><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F116%2F569%2F979%2F458%2F321%2F476%2Foriginal%2F11d5bd055c7ef4c0.png\" alt=\"macOS Apprentice 3rd edition book cover\" loading=\"lazy\"></p>","summary":"","url":"https://mastodon.social/@troz/116569983315921966","date_published":"2026-05-13T23:59:46+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-05-13 23:59","date_timestamp":1778716786,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"90050674","content_html":"<p><span class=\"h-card\"><a href=\"https://xoxo.zone/@robotspacer\" class=\"u-url mention\">@<span>robotspacer</span></a></span> If you add `.frame(minHeight: 400)` after the end of the inspector block, it works as you expect. I notice that the toolbar is inside the inspector block - not sure if that is intentional, but it doesn't stop this fix.</p>","url":"https://mastodon.social/users/troz/statuses/116564415032787344","date_published":"2026-05-13T00:23:41+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-05-13 00:23","date_timestamp":1778631821,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"89836680","content_html":"<p>Just spent the day tutoring for the Girls Programming Network, an awesome organization that tries to redress the imbalance in tech by providing a safe place for girls to learn.</p><p>It was a terrific day with a keen bunch of high schoolers and an awesome bunch of volunteer tutors.</p><p>The workshops happen 4 times a year in most Australian capitals. More info at  <br><a href=\"https://www.girlsprogramming.network\"><span class=\"invisible\">https://www.</span><span>girlsprogramming.network</span><span class=\"invisible\"></span></a></p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/GPN\" class=\"mention hashtag\">#<span>GPN</span></a> <a href=\"https://mastodon.social/tags/WomenInTech\" class=\"mention hashtag\">#<span>WomenInTech</span></a></p>","summary":"","url":"https://mastodon.social/@troz/116543084815885155","date_published":"2026-05-09T05:59:07+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-05-09 05:59","date_timestamp":1778306347,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"89833840","content_html":"<p><span class=\"h-card\"><a href=\"https://iosdev.space/@iosdevweekly\" class=\"u-url mention\">@<span>iosdevweekly</span></a></span> Congratulations! I never miss one of your newsletters and there are always interesting articles. Thank you.</p>","url":"https://mastodon.social/users/troz/statuses/116542441213757602","date_published":"2026-05-09T03:15:27+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-05-09 03:15","date_timestamp":1778296527,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"89147781","content_html":"<p><span class=\"h-card\"><a href=\"https://bsky.brid.gy/r/https://bsky.app/profile/mackuba.eu\" class=\"u-url mention\">@<span>mackuba.eu</span></a></span> I’ve used Bakery for older style Mac icons but with Icon Composer, I prefer Stewart Lynch’s alternative. <a href=\"https://github.com/StewartLynch/IconComposerLite\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">github.com/StewartLynch/IconCo</span><span class=\"invisible\">mposerLite</span></a></p>","url":"https://mastodon.social/users/troz/statuses/116480608339958489","date_published":"2026-04-28T05:10:32+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-28 05:10","date_timestamp":1777353032,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"89068750","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@ambulephabus\" class=\"u-url mention\">@<span>ambulephabus</span></a></span> Its rain forecasts are truly bizarre here in Australia. Oddly, iOS Weather says it gets the data from the Australian Bureau of Meteorology but the BoM app shows completely different data.</p>","url":"https://mastodon.social/users/troz/statuses/116473786580563679","date_published":"2026-04-27T00:15:40+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-27 00:15","date_timestamp":1777248940,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"88191702","content_html":"<p><span class=\"h-card\"><a href=\"https://iosdev.space/@Amy\" class=\"u-url mention\">@<span>Amy</span></a></span> Monorail 🎶</p>","url":"https://mastodon.social/users/troz/statuses/116399602648163010","date_published":"2026-04-13T21:49:43+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-13 21:49","date_timestamp":1776116983,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"88127566","content_html":"<p><span class=\"h-card\"><a href=\"https://iosdev.space/@iosdevweekly\" class=\"u-url mention\">@<span>iosdevweekly</span></a></span> Thanks for the link to my Mac sandbox article and for your very kind remarks.</p>","url":"https://mastodon.social/users/troz/statuses/116394143596582814","date_published":"2026-04-12T22:41:25+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-12 22:41","date_timestamp":1776033685,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"88125459","content_html":"<p><span class=\"h-card\"><a href=\"https://chaos.social/@eugenpirogoff\" class=\"u-url mention\">@<span>eugenpirogoff</span></a></span> I fixed it by turning off Software Update - Automatic Updates - Automatically Install System Files.</p><p>The fine print actually warns you that the system will reserve space for this but nothing mentions it when you get told your storage is full.</p>","url":"https://mastodon.social/users/troz/statuses/116394015022451411","date_published":"2026-04-12T22:08:43+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-12 22:08","date_timestamp":1776031723,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"88083242","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@_holger\" class=\"u-url mention\">@<span>_holger</span></a></span> <span class=\"h-card\"><a href=\"https://iosdev.space/@cdf1982\" class=\"u-url mention\">@<span>cdf1982</span></a></span> Beautiful icon!</p>","url":"https://mastodon.social/users/troz/statuses/116389694787427403","date_published":"2026-04-12T03:50:01+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-12 03:50","date_timestamp":1775965801,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"87869940","content_html":"<p><span class=\"h-card\"><a href=\"https://martianbase.net/@mackuba\" class=\"u-url mention\">@<span>mackuba</span></a></span> 3 or 4</p>","url":"https://mastodon.social/users/troz/statuses/116371386179046386","date_published":"2026-04-08T22:13:54+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-08 22:13","date_timestamp":1775686434,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"87615062","content_html":"<p>I’m not loving iPadOS 26.4.</p><p>It keeps warning me that I’m running out of space but more than half is taken up with iPadOS and System Data.<br>Plus, every app is asking for a rating at least once a day. Not the devs fault - the system is supposed to limit these.</p><p>Anyone running the 26.5 beta? Should I try that?</p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/iPad\" class=\"mention hashtag\">#<span>iPad</span></a> <a href=\"https://mastodon.social/tags/iPadOS\" class=\"mention hashtag\">#<span>iPadOS</span></a></p>","summary":"","url":"https://mastodon.social/@troz/116349139095784990","date_published":"2026-04-04T23:56:11+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-04 23:56","date_timestamp":1775346971,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"87554918","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@appletreats\" class=\"u-url mention\">@<span>appletreats</span></a></span> <span class=\"h-card\"><a href=\"https://mastodon.social/@Deniska\" class=\"u-url mention\">@<span>Deniska</span></a></span> Thanks for including the link to my sandbox article.</p>","url":"https://mastodon.social/users/troz/statuses/116342765054025922","date_published":"2026-04-03T20:55:10+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-04-03 20:55","date_timestamp":1775249710,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"87359103","content_html":"<p>Kodeco is having their spring sale, so if you were thinking of grabbing my macOS Apprentice book, now would be a great time.</p><p>Spoiler alert: there's an update in the final stages of editing, so if you buy now, the update is included in the discounted price.</p><p><a href=\"https://www.kodeco.com/books/macos-apprentice\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">kodeco.com/books/macos-apprent</span><span class=\"invisible\">ice</span></a></p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Kodeco\" class=\"mention hashtag\">#<span>Kodeco</span></a></p>","summary":"","url":"https://mastodon.social/@troz/116326457725711130","date_published":"2026-03-31T23:48:00+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-31 23:48","date_timestamp":1775000880,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"87351851","content_html":"<p><span class=\"h-card\"><a href=\"https://iosdev.space/@dvrzan\" class=\"u-url mention\">@<span>dvrzan</span></a></span> I watch videos and read tech blogs. For something that I want to implement, I much prefer reading.</p>","url":"https://mastodon.social/users/troz/statuses/116326072955180885","date_published":"2026-03-31T22:10:09+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-31 22:10","date_timestamp":1774995009,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"87301865","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@marioguzman\" class=\"u-url mention\">@<span>marioguzman</span></a></span> <span class=\"h-card\"><a href=\"https://hachyderm.io/@carrchr\" class=\"u-url mention\">@<span>carrchr</span></a></span> Great article. Thanks for assembling that all in one place. Just wanted to add that the About box can use Credits.html if you prefer writing HTML to RTF.</p>","url":"https://mastodon.social/users/troz/statuses/116322222499740166","date_published":"2026-03-31T05:50:56+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-31 05:50","date_timestamp":1774936256,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"87288081","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@layoutSubviews\" class=\"u-url mention\">@<span>layoutSubviews</span></a></span> Thanks but my travel plans have been disrupted so many times, that I'm reluctant to commit to anything too far in advance.</p>","url":"https://mastodon.social/users/troz/statuses/116320702480508288","date_published":"2026-03-30T23:24:22+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-30 23:24","date_timestamp":1774913062,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"87288058","content_html":"<p>Over the course of writing my books and apps, I've frequently had to wrestle with the Mac app sandbox.</p><p>I've just published an article tying to gather all the techniques I use, with a sample app on GitHub. I hope Mac developers find this useful.</p><p><a href=\"https://troz.net/post/2026/playing_mac_sandbox/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/post/2026/playing_mac</span><span class=\"invisible\">_sandbox/</span></a></p><p><a href=\"https://github.com/trozware/mac-app-sandbox\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">github.com/trozware/mac-app-sa</span><span class=\"invisible\">ndbox</span></a></p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Sandbox\" class=\"mention hashtag\">#<span>Sandbox</span></a> <a href=\"https://mastodon.social/tags/AppStore\" class=\"mention hashtag\">#<span>AppStore</span></a></p>","summary":"","url":"https://mastodon.social/@troz/116320699374234476","date_published":"2026-03-30T23:23:35+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-30 23:23","date_timestamp":1774913015,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"87287884","content_html":"<p>Thanks to everyone who made suggestions. now I need to work out how much data I think we need - always the tricky bit.</p><p>Given the possibility of the flights being cancelled, I only plan to buy a few days before we leave, so if you sent me a referral, it won't get used immediately.</p>","url":"https://mastodon.social/users/troz/statuses/116320685927374489","date_published":"2026-03-30T23:20:10+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-30 23:20","date_timestamp":1774912810,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"87229150","content_html":"<p>I’m planning a trip to visit family in Ireland, fuel crisis permitting. Does anyone have recommendations for eSIMs or the best way to use my phone while I’m there. I have an iPhone 17 Pro with a physical SIM from my Australian carrier. <a href=\"https://mastodon.social/tags/SIM\" class=\"mention hashtag\">#<span>SIM</span></a> <a href=\"https://mastodon.social/tags/eSIM\" class=\"mention hashtag\">#<span>eSIM</span></a> <a href=\"https://mastodon.social/tags/Travel\" class=\"mention hashtag\">#<span>Travel</span></a> <a href=\"https://mastodon.social/tags/iPhone\" class=\"mention hashtag\">#<span>iPhone</span></a></p>","summary":"","url":"https://mastodon.social/@troz/116316010967811237","date_published":"2026-03-30T03:31:15+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-30 03:31","date_timestamp":1774841475,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"87172768","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@isaiah\" class=\"u-url mention\">@<span>isaiah</span></a></span> For SwiftUI, SceneStorage is like AppStorage only per window. I don’t know how to map this to UserDefaults but there must be a link.</p>","url":"https://mastodon.social/users/troz/statuses/116309967168526618","date_published":"2026-03-29T01:54:14+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-29 01:54","date_timestamp":1774749254,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"86899924","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@kempmullaney\" class=\"u-url mention\">@<span>kempmullaney</span></a></span> And granular delivery and read notifications like in WhatsApp.</p>","url":"https://mastodon.social/users/troz/statuses/116287144132249294","date_published":"2026-03-25T01:10:02+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-25 01:10","date_timestamp":1774401002,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"86892112","content_html":"<p><span class=\"h-card\"><a href=\"https://hachyderm.io/@thomasfuchs\" class=\"u-url mention\">@<span>thomasfuchs</span></a></span> I totally agree with your second point but not its conclusion. I’ve just started using agentic coding and I find I am doing a lot better at planning because I have to think it all out on great detail before asking the AI to do the actual coding.</p>","url":"https://mastodon.social/users/troz/statuses/116286557215972288","date_published":"2026-03-24T22:40:47+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-24 22:40","date_timestamp":1774392047,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"86801881","content_html":"<p>As many commentators have said, with the MacBook Neo selling like crazy, now is a great time to be a Mac app developer.</p><p>If you're an iOS developer who wants to leverage your existing knowledge into Mac apps, check out my macOS Apps Step by Step book. <a href=\"https://troz.net/books/macos_apps_step_by_step/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/books/macos_apps_step</span><span class=\"invisible\">_by_step/</span></a> </p><p>If you're a student or educator, email me at books@troz.net for  an educational  discount.</p><p><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/AppKit\" class=\"mention hashtag\">#<span>AppKit</span></a></p><p><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F116%2F279%2F793%2F701%2F689%2F945%2Foriginal%2F0cc3c0755ebbf1fe.png\" alt=\"macOS Apps Step by Step book cover\" loading=\"lazy\"></p>","summary":"","url":"https://mastodon.social/@troz/116279793863359731","date_published":"2026-03-23T18:00:46+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-23 18:00","date_timestamp":1774288846,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"86776876","content_html":"<p><span class=\"h-card\"><a href=\"https://mastodon.social/@monkeydom\" class=\"u-url mention\">@<span>monkeydom</span></a></span> I once wrote an AppleScript for a client to fix this. I forget the exact details but I think it involved checking the /Volumes directory and “ejecting” the original name that had got stuck. Not a terribly helpful response I know, but it’s worth knowing that there is a workaround.</p>","url":"https://mastodon.social/users/troz/statuses/116278168428276913","date_published":"2026-03-23T11:07:24+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-23 11:07","date_timestamp":1774264044,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"86595020","content_html":"<p><span class=\"h-card\"><a href=\"https://appdot.net/@tewha\" class=\"u-url mention\">@<span>tewha</span></a></span> I’m not at a computer right now but have you tried ToolbarSpacer()?</p>","url":"https://mastodon.social/users/troz/statuses/116261041922452276","date_published":"2026-03-20T10:31:54+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-20 10:31","date_timestamp":1774002714,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"85449059","content_html":"<p><span class=\"h-card\"><a href=\"https://bitbang.social/@vileboss\" class=\"u-url mention\">@<span>vileboss</span></a></span> I only see this on my secondary monitor. It’s very disconcerting.</p>","url":"https://mastodon.social/users/troz/statuses/116167988789563455","date_published":"2026-03-04T00:07:16+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-03-04 00:07","date_timestamp":1772582836,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"84697655","content_html":"<p><span class=\"h-card\"><a href=\"https://hachyderm.io/@kevinrenskers\" class=\"u-url mention\">@<span>kevinrenskers</span></a></span> I do both. If the user has never used the toggle button, I apply the system mode. The toggle allows them to override this.</p>","url":"https://mastodon.social/users/troz/statuses/116105464738700732","date_published":"2026-02-20T23:06:35+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-02-20 23:06","date_timestamp":1771628795,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"84168937","content_html":"<p>I don't really mind that it took 2.5 hours to update my iMac to macOS 26.3. What I resent is that for 2.4 hours, it told me there were 5 minutes remaining. If I'd known it would take 2 hours, I could have made different plans.</p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a></p>","summary":"","url":"https://mastodon.social/@troz/116061311625727343","date_published":"2026-02-13T03:57:52+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-02-13 03:57","date_timestamp":1770955072,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"83627485","content_html":"<p><span class=\"h-card\"><a href=\"https://iosdev.space/@TheSwiftDojo\" class=\"u-url mention\">@<span>TheSwiftDojo</span></a></span> I like to make an extension on Collection that provides ‘isNotEmpty’ by retuning ‘!isEmpty’. It makes for much more readable code.</p>","url":"https://mastodon.social/users/troz/statuses/116017728670005555","date_published":"2026-02-05T11:14:09+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-02-05 11:14","date_timestamp":1770290049,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":true}},{"id":"83453477","content_html":"<p>I came across a strange macOS Tahoe  bug when working on an AppKit app with a table. I managed to find a workaround, but since I was unable to find any solutions online, I thought I would post my discoveries in case they could help others.</p><p>The issue is that the content rows scroll into the header unless the table stretches to the bottom of the content view.</p><p> Full write-up here but one workaround is to add space at the top of the table as well: <a href=\"https://troz.net/post/2026/appkit-table-scroll-bug-in-macos-tahoe/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/post/2026/appkit-tabl</span><span class=\"invisible\">e-scroll-bug-in-macos-tahoe/</span></a></p><p><a href=\"https://mastodon.social/tags/AppKit\" class=\"mention hashtag\">#<span>AppKit</span></a> <a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a></p><p><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F116%2F003%2F837%2F024%2F640%2F065%2Foriginal%2F9dec67c1bb778a9a.png\" alt=\"Table view showing content rows scrolled into header\" loading=\"lazy\"></p>","summary":"","url":"https://mastodon.social/@troz/116003837136599394","date_published":"2026-02-03T00:21:21+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-02-03 00:21","date_timestamp":1770078081,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"82951288","content_html":"<p>It's back to school time here in Australia, so I want to remind people that I offer an educational  discount on my books: macOS Apps Step by Step: <a href=\"https://troz.net/books/macos_apps_step_by_step\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/books/macos_apps_step</span><span class=\"invisible\">_by_step</span></a> and Escape from Tutorial Hell: <a href=\"https://troz.net/books/escape\"><span class=\"invisible\">https://</span><span>troz.net/books/escape</span><span class=\"invisible\"></span></a></p><p>Email me at books@troz.net telling me what &amp; where you study/teach and I'll send you a discount link for both.</p><p>If you're in the education sector, please boost this post.</p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/AppKit\" class=\"mention hashtag\">#<span>AppKit</span></a> <a href=\"https://mastodon.social/tags/TechBooks\" class=\"mention hashtag\">#<span>TechBooks</span></a> <a href=\"https://mastodon.social/tags/Education\" class=\"mention hashtag\">#<span>Education</span></a></p><div class=\"microblog_collection\">\n<img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F115%2F965%2F046%2F655%2F728%2F257%2Foriginal%2F34cdc594f51a633d.png\" alt=\"macOS Apps Step by Step book cover\" loading=\"lazy\"><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F115%2F965%2F046%2F704%2F882%2F756%2Foriginal%2F1ceba80a6be77971.png\" alt=\"Escape from Tutorial Hell book cover\" loading=\"lazy\">\n</div>","summary":"","url":"https://mastodon.social/@troz/115965046854653313","date_published":"2026-01-27T03:56:28+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2026-01-27 03:56","date_timestamp":1769486188,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"80747475","content_html":"<p><span class=\"h-card\"><a href=\"https://masto.es/@FediTree\" class=\"u-url mention\">@<span>FediTree</span></a></span></p>","summary":"","url":"https://mastodon.social/@troz/115782435485541062","date_published":"2025-12-25T21:56:00+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-12-25 21:56","date_timestamp":1766699760,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"79362783","content_html":"<p>I always use my iPhone with CarPlay for navigation as I drive. My iPhone 12 mini was brilliant. My new iPhone 17 Pro has great difficulty working out where I am, so I frequently get shown that I’m driving through buildings or across fields. Has anyone else experienced bad GPS data in one of the new phones? My husband’s iPhone 17 Pro is just as bad as mine, so it’s not just a single bad phone. <a href=\"https://mastodon.social/tags/GPS\" class=\"mention hashtag\">#<span>GPS</span></a> <a href=\"https://mastodon.social/tags/iPhone\" class=\"mention hashtag\">#<span>iPhone</span></a> <a href=\"https://mastodon.social/tags/CarPlay\" class=\"mention hashtag\">#<span>CarPlay</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115664663829535177","date_published":"2025-12-05T02:45:07+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-12-05 02:45","date_timestamp":1764902707,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"79231198","content_html":"<p>Haven’t solved Advent of Code day 3 part 2 yet, so the Mastodon mute button is getting a work out. I’ve also discovered that macOS 26 kills a process that takes 100% CPU for more than a minute or two, so writing an inefficient solution and waiting for it to finish is no longer an option. Boo!</p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/AdventofCode\" class=\"mention hashtag\">#<span>AdventofCode</span></a> <a href=\"https://mastodon.social/tags/adventOfCode2025\" class=\"mention hashtag\">#<span>adventOfCode2025</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115655380721834573","date_published":"2025-12-03T11:24:18+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-12-03 11:24","date_timestamp":1764761058,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"79080255","content_html":"<p>My annual warning for anyone posting about their solutions to Advent of Code: please use a content warning so those of us who haven’t got to it yet do not have the fun spoiled. Thank you. </p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/AdventOfCode\" class=\"mention hashtag\">#<span>AdventOfCode</span></a> <a href=\"https://mastodon.social/tags/AdventOfCode2025\" class=\"mention hashtag\">#<span>AdventOfCode2025</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115643625509476134","date_published":"2025-12-01T09:34:48+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-12-01 09:34","date_timestamp":1764581688,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"79013142","content_html":"<p>Last Black Friday post from me for this year, I promise 😀 </p><p>Discounts are still available for:</p><p>macOS Apps Step by Step book: <a href=\"https://sarahreichelt.gumroad.com/l/oximx/4xfw8q6\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">sarahreichelt.gumroad.com/l/ox</span><span class=\"invisible\">imx/4xfw8q6</span></a></p><p>Escape from Tutorial Hell book: <a href=\"https://sarahreichelt.gumroad.com/l/iqdry/4xfw8q6\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">sarahreichelt.gumroad.com/l/iq</span><span class=\"invisible\">dry/4xfw8q6</span></a></p><p>macOS Apprentice book: <a href=\"https://www.kodeco.com/books/macos-apprentice\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">kodeco.com/books/macos-apprent</span><span class=\"invisible\">ice</span></a></p><p>Man Reader app: <a href=\"https://apps.apple.com/au/app/man-reader/id522583774?mt=12\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">apps.apple.com/au/app/man-read</span><span class=\"invisible\">er/id522583774?mt=12</span></a><br>Man Reader</p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/AppKit\" class=\"mention hashtag\">#<span>AppKit</span></a>  <a href=\"https://mastodon.social/tags/TechBooks\" class=\"mention hashtag\">#<span>TechBooks</span></a> <a href=\"https://mastodon.social/tags/BlackFriday\" class=\"mention hashtag\">#<span>BlackFriday</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115636721386381013","date_published":"2025-11-30T04:18:59+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-30 04:18","date_timestamp":1764476339,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"78815840","content_html":"<p class=\"quote-inline\">RE: <a href=\"https://iosdev.space/@matt1corey/115610936195582430\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">iosdev.space/@matt1corey/11561</span><span class=\"invisible\">0936195582430</span></a></p><p>I can't find my Man Reader app there but it is in the sale. <a href=\"https://troz.net/manreader/\"><span class=\"invisible\">https://</span><span>troz.net/manreader/</span><span class=\"invisible\"></span></a></p><p><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/BlackFriday\" class=\"mention hashtag\">#<span>BlackFriday</span></a> <a href=\"https://mastodon.social/tags/IndieAppSales\" class=\"mention hashtag\">#<span>IndieAppSales</span></a></p><blockquote class=\"quoteback\" data-author=\"matt1corey@iosdev.space\" data-avatar=\"https://cdn.micro.blog/photos/200/https%3A%2F%2Fcdn.masto.host%2Fiosdevspace%2Faccounts%2Favatars%2F109%2F333%2F802%2F206%2F484%2F379%2Foriginal%2F68c6336946fda062.png\">\n<p>This banner is getting full - can you spot your app here?  We're up to 375 apps, with dozens of submissions coming in each day</p>\n<p>Black Friday is only 3 days away - if you haven't submitted your app yet, now's the time!</p>\n<p><a href=\"https://indieappsales.com\"><span class=\"invisible\">https://</span><span>indieappsales.com</span><span class=\"invisible\"></span></a></p>\n<p class=\"microblog_hashtags\"><a href=\"https://iosdev.space/tags/IndieAppSales\" class=\"mention hashtag\">#<span>IndieAppSales</span></a></p>\n<footer>matt1corey@iosdev.space <cite><a href=\"https://iosdev.space/@matt1corey/115610936195582430\" class=\"u-in-reply-to\">iosdev.space/@matt1corey/115610936195582430</a></cite></footer>\n</blockquote>","summary":"","url":"https://mastodon.social/@troz/115618850277175889","date_published":"2025-11-27T00:34:08+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-27 00:34","date_timestamp":1764203648,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"78815811","content_html":"<p>My self-published books are on sale for Black Friday: <a href=\"https://troz.net/post/2025/black_friday_2025/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/post/2025/black_frida</span><span class=\"invisible\">y_2025/</span></a></p><p>All Kodeco books, including my \"macOS Apprentice\" are also now on sale. <a href=\"https://www.kodeco.com/books/macos-apprentice\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">kodeco.com/books/macos-apprent</span><span class=\"invisible\">ice</span></a></p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/TechBooks\" class=\"mention hashtag\">#<span>TechBooks</span></a> <a href=\"https://mastodon.social/tags/BlackFriday\" class=\"mention hashtag\">#<span>BlackFriday</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115618843312674438","date_published":"2025-11-27T00:32:21+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-27 00:32","date_timestamp":1764203541,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"78815732","content_html":"<p>I've always used `Process` for calling Terminal commands in my macOS apps. Now the Swift language team have given us `Subprocess'.</p><p>In this article. I explore how to use `Subprocess` and how it compares to `Process`.</p><p><a href=\"https://troz.net/post/2025/process-subprocess/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/post/2025/process-sub</span><span class=\"invisible\">process/</span></a></p><p>My sample app is on GitHub: <a href=\"https://github.com/trozware/subprocess-tests\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">github.com/trozware/subprocess</span><span class=\"invisible\">-tests</span></a></p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/Terminal\" class=\"mention hashtag\">#<span>Terminal</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115618828476595458","date_published":"2025-11-27T00:28:35+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-27 00:28","date_timestamp":1764203315,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"78599570","content_html":"<p>My books: \"macOS Apps Step by Step\" and \"Escape from Tutorial Hell\" are now on sale for Black Friday.</p><p>Check out all the details here: <a href=\"https://troz.net/post/2025/black_friday_2025/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/post/2025/black_frida</span><span class=\"invisible\">y_2025/</span></a></p><p class=\"microblog_hashtags\"><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/TechBooks\" class=\"mention hashtag\">#<span>TechBooks</span></a> <a href=\"https://mastodon.social/tags/BlackFriday\" class=\"mention hashtag\">#<span>BlackFriday</span></a></p><div class=\"microblog_collection\">\n<img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F115%2F601%2F309%2F247%2F866%2F598%2Foriginal%2F859710661679622c.png\" alt=\"macOS Apps Step by Step book cover\" loading=\"lazy\"><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F115%2F601%2F310%2F009%2F362%2F505%2Foriginal%2F6f9333c5f478632a.png\" alt=\"Escape from Tutorial Hell book cover\" loading=\"lazy\">\n</div>","summary":"","url":"https://mastodon.social/@troz/115601316579462510","date_published":"2025-11-23T22:15:05+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-23 22:15","date_timestamp":1763936105,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"78293755","content_html":"<p>It feels very strange that my first ever conference talk should make a list of “20 Talks &amp; Podcasts Everyone’s Watching This Year”: <a href=\"https://www.techtalksweekly.io/p/tech-talks-weekly-extra-10-20-talks\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">techtalksweekly.io/p/tech-talk</span><span class=\"invisible\">s-weekly-extra-10-20-talks</span></a></p><p>I gave the talk at PyCon AU in September and was based on my book “Escape from Tutorial Hell”. I guess it was a topic that resonated with a lot of people. Here’s a link to the talk on YouTube: <a href=\"https://www.youtube.com/watch?v=dSoxINozBKU&amp;feature=youtu.be\"><span class=\"invisible\">https://www.</span><span class=\"ellipsis\">youtube.com/watch?v=dSoxINozBK</span><span class=\"invisible\">U&amp;feature=youtu.be</span></a> and here are more details about the book: <a href=\"https://troz.net/books/escape/\"><span class=\"invisible\">https://</span><span>troz.net/books/escape/</span><span class=\"invisible\"></span></a></p><p><a href=\"https://mastodon.social/tags/PyconAU\" class=\"mention hashtag\">#<span>PyconAU</span></a> <a href=\"https://mastodon.social/tags/TechBooks\" class=\"mention hashtag\">#<span>TechBooks</span></a> <a href=\"https://getmona.app/rich_text/843491628786\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">getmona.app/rich_text/84349162</span><span class=\"invisible\">8786</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115575163659867600","date_published":"2025-11-19T07:24:03+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-19 07:24","date_timestamp":1763537043,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"77363461","content_html":"<p>I've just published the 4th edition of macOS Apps Step by Step formerly titled macOS by Tutorials.</p><p>Read the details and check out a sample chapter at <a href=\"https://troz.net/books/macos_apps_step_by_step/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/books/macos_apps_step</span><span class=\"invisible\">_by_step/</span></a></p><p><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/AppKit\" class=\"mention hashtag\">#<span>AppKit</span></a> <a href=\"https://mastodon.social/tags/TechBooks\" class=\"mention hashtag\">#<span>TechBooks</span></a></p><p><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F115%2F499%2F823%2F539%2F507%2F648%2Foriginal%2F43f8006f4027d322.png\" alt=\"macOS Apps Step by Step book cover\" loading=\"lazy\"></p>","summary":"","url":"https://mastodon.social/@troz/115499828811293935","date_published":"2025-11-06T00:05:24+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-06 00:05","date_timestamp":1762387524,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"77147266","content_html":"<p>I gave my first ever conference talk at PyCon AU in Sept, based on my book: Escape from Tutorial Hell. It uses Swift and macOS in all its examples, but the principles apply to all languages.</p><p>I offered a 25% discount to all conference goers but not all the QR codes I distributed have been claimed, so I'm opening the offer to the next 19 people who use this link to buy: <a href=\"https://sarahreichelt.gumroad.com/l/iqdry/h9q4gie\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">sarahreichelt.gumroad.com/l/iq</span><span class=\"invisible\">dry/h9q4gie</span></a></p><p>Learn about the book at <a href=\"https://troz.net/books/escape/\"><span class=\"invisible\">https://</span><span>troz.net/books/escape/</span><span class=\"invisible\"></span></a></p><p><a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/Swift\" class=\"mention hashtag\">#<span>Swift</span></a> <a href=\"https://mastodon.social/tags/SwiftUI\" class=\"mention hashtag\">#<span>SwiftUI</span></a> <a href=\"https://mastodon.social/tags/TechBooks\" class=\"mention hashtag\">#<span>TechBooks</span></a> <a href=\"https://mastodon.social/tags/PyconAU\" class=\"mention hashtag\">#<span>PyconAU</span></a></p><p><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F115%2F484%2F089%2F468%2F619%2F849%2Foriginal%2Ffb7e76b8ee18c6c3.png\" alt=\"Escape from Tutorial Hell book cover\" loading=\"lazy\"></p>","summary":"","url":"https://mastodon.social/@troz/115484089613895003","date_published":"2025-11-03T05:22:43+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-11-03 05:22","date_timestamp":1762147363,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"76787349","content_html":"<p>Many of us here have issues with Apple right now. I have assembled my thoughts and, as I see it, there are two main problems.<br><a href=\"https://troz.net/post/2025/apple-has-two-problems/\"><span class=\"invisible\">https://</span><span class=\"ellipsis\">troz.net/post/2025/apple-has-t</span><span class=\"invisible\">wo-problems/</span></a><br><a href=\"https://mastodon.social/tags/Apple\" class=\"mention hashtag\">#<span>Apple</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115449778214564284","date_published":"2025-10-28T03:56:53+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-10-28 03:56","date_timestamp":1761623813,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"76331998","content_html":"<p>When is Apple going to tell Apple about the Apple TV rebrand?</p><p><img src=\"https://cdn.micro.blog/photos/1000x/https%3A%2F%2Ffiles.mastodon.social%2Fmedia_attachments%2Ffiles%2F115%2F415%2F217%2F690%2F803%2F391%2Foriginal%2Fd0c80715dba28522.jpeg\" alt=\"Apple TV+ notification still using the old name.\" loading=\"lazy\"></p>","summary":"","url":"https://mastodon.social/@troz/115415217777610839","date_published":"2025-10-22T01:27:42+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-10-22 01:27","date_timestamp":1761096462,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":false,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}},{"id":"75959974","content_html":"<p>Is anyone getting any crash reports from TestFlight? I’ve deliberately crashed an app multiple times over several days with no reports. Sometimes it takes 1-2 minutes for the crash dialog to appear after the app crashes. This is a Mac app. <a href=\"https://mastodon.social/tags/TestFlight\" class=\"mention hashtag\">#<span>TestFlight</span></a> <a href=\"https://mastodon.social/tags/macOS\" class=\"mention hashtag\">#<span>macOS</span></a> <a href=\"https://mastodon.social/tags/AppleDeveloper\" class=\"mention hashtag\">#<span>AppleDeveloper</span></a></p>","summary":"","url":"https://mastodon.social/@troz/115386636821512874","date_published":"2025-10-17T00:19:11+00:00","author":{"name":"troz","url":"https://mastodon.social/@troz","avatar":"https://cdn.micro.blog/photos/96/https%3A%2F%2Ffiles.mastodon.social%2Faccounts%2Favatars%2F109%2F249%2F585%2F517%2F832%2F898%2Foriginal%2F7e7bfadd9d7381cd.png","_microblog":{"username":"troz@mastodon.social"}},"_microblog":{"date_relative":"2025-10-17 00:19","date_timestamp":1760660351,"is_favorite":false,"is_bookmark":false,"is_deletable":false,"is_conversation":true,"is_linkpost":false,"is_mention":false,"note":"","syndication":[]}}]}