2022-06-21: If you’ve ever had to deal with the pain of renewing iOS certificates & profiles, check …

2022-06-17: Got my Playdate today and it’s so adorable! I’m pumped to become a Casual Birder 😀

2022-06-07: I’ve really enjoyed backing Kickstarter projects for WWDC pins the past couple of years. This …

2022-06-06: It looks like Xcode 14 now supports both iOS and Mac deployment from a single target. No more …

2022-05-31: My first post for the Runway blog is up, all about using environments with fastlane! …

2022-05-20: Hanging out with friends is so life giving. Really missed it these past couple of years.

2022-03-11: Week 1 at Adobe in the books. I got my first PR merged today (and managed to break the build with it …

2022-03-10: Baseball is back!!!! twitter.com/JeffPassa…

2022-03-07: Day 1 at Adobe!

2022-01-02: I started my 40th trip around the sun today. My wife got me a gift that I’ve wanted for close to 30 …

2021-12-28: I’m consistently baffled that Green Street Hooligans is not on any streaming service, nor even …

2021-12-28: TIL that you can decorate Swift protocol methods with @MainActor and they’ll run on the main …

2021-12-28: I’ve been building a little HTTP library based on @davedelong’s epic 18-part blog …

2021-12-17: Boosted! 💉💉💉

2021-12-01: Got my Mac Hardware Calendar by @ismh yesterday and put it and the pictures up on my walls today. …

2021-11-18: I finished the excellent regular expression course from execute program and can’t endorse it …

2021-10-14: Learning a new sport has been fun so far. Hockey is super fast and most of the time I have no idea …

2021-09-03: I’ve been working this week on my M1 Mac mini which has just 8GB of RAM. Xcode, Docker, and …

2021-09-02: I oftentimes feel like a dolt when attempting to learn new things (especially when they’re out …

2021-08-31: What are some of your favorite blog designs?

2021-08-31: I get to take the week and learn something new: so I’m going back to the Tailwind CSS projects …

2021-07-23: Finally making headway with Jenkins, and also starting to get the hang of the Jenkinsfile pipeline …

2021-07-22: Our 7.5 year old ripped a hand towel ring out of the wall tonight. It was held in by 2 50-lb …

2021-07-22: 10 years ago today I married my best friend. Time sure flies and there’s no one I’d …

2021-07-21: Been fighting with Jenkins for the last week, trying to migrate our Android test job (which runs an …

2021-06-29: TIL about /dev/null, how it works, and as a bonus what 2> /dev/null really does. Shell scripting …

2021-05-13: 💉💉✅ 2 weeks and I’m all set! Good riddance Covid.

2021-05-13: It’s been a long time since I’ve been as excited about a Mariners game as I am for …

2021-04-19: Typo of the day: UIimage(named:ni:compatibleWith:)

2021-04-19: My laptop’s battery dropped by 50% in 2.5 hours but now my power is back. I’m very excited to …

2021-04-19: Whoa, the power just went out in my building and even at home a mile away. Hope this gets restored …

2021-04-18: This week on my plate is making a workaround for a really weird iOS 12 bug with asset catalogs and …

2021-04-17: I often suck at remembering to give my kids notice that we are going to transition from one thing to …

2021-04-17: The Everlight episode of Mythic Quest that just came out is so so good! Highly recommended.

2021-04-15: Moderna round one complete! #fauciouchie

2021-03-28: Expert Apple analysis from someone who’s been an observer, customer, and can of theirs for a long …

2021-03-23: Today in “what part that I’ve been putting off doing for my new app will I attempt to tackle …

2021-03-12: And just as soon as I posted that feeds weren’t generating… it turns out they were but …

2021-03-12: I started to drink from the keg of glory tonight, as I got my iPad blogging workflow up and running! …

2021-03-11: The upgrade to Homebrew 3 on my M1 Mac mini appears to have gone sideways, especially with oh-my-zsh …

2021-03-08: TIL that iOS apps can handle Shortcuts intents both in an app extension as well as in the app itself …

2021-03-06: I’m starting to play Mario Kart with my 4.5 year old and he hates it when I win. I gotta say – it’s …

2021-03-02: I’ve spent the past few days getting my blog engine & website up and running with Vapor 4 & …

2021-02-22: Today at work I took the tooling I’ve been building up to automate our app release process and …

2021-01-21: Got any questions you’d like to hear answered on the @xcoders podcast? Send ‘em my way! I’ll be …

2021-01-04: Found a fantastically helpful post from Howard Oakley about building and delivering a CLI tool in …

2021-01-04: Currently at the entrance to the “code singning a Mac CLI tool” rabbit hole. We shall see how deep …

2020-12-31: I really enjoyed talking with @twenty3 for the final Xcoders podcast of 2020. Have a happy new year …

2020-12-30: I’m selling my 16” MacBook Pro on Swappa. Check it out if you’re in the market! …

2020-12-27: I love it when I’m watching the Seahawks game on YouTube TV with my Apple TV and I get a …

2020-12-18: TIL that Xcode’s run script build phases have a working directory of the source root. All this time …

2020-12-01: I really enjoyed chatting with @jsavin for the November Xcoders Podcast. We got some good ol’ …

2020-11-30: If you’re in Washington State please please turn on Exposure Notifications on your mobile …

2020-11-25: Adulting achievement unlocked: finally installed a UPS in my “server closet”. Connected my Synology, …

2020-11-19: BB8 approves of his new desk mate.

2020-11-04: I’ve turned the corner on my static library project and am getting near the finish line. This …

2020-11-03: The political news of the day is obviously more important in the big picture, but today the Mariners …

2020-11-02: I’ve been working on a mind-bendingly difficult project for the last couple of weeks at work and I …

2020-11-01: I’m hoping all these inactives for the Seahawks don’t make for a dreary game. At least we’ve still …

2020-10-30: I’m excited to have had a conversation with Rick Wolter about for the October edition of the …

2020-09-21: There was a kind Ziply tech in the area earlier today who saw we had an outage. He came by and …

2020-09-20: We got home this afternoon to a dead FIOS ONT box, so no internet for us. The soonest a tech can …

2020-08-30: Every time I successfully back up our van and hitch up our trailer to it I hear Jack Swigert from …

2020-06-19: I updated the primary branch in my iOS Project Template Repository to use main instead of master. …

2020-06-19: Semi-bold WWDC keynote prediction: While the Mac will make a CPU transition, it will be to Apple …

2020-05-28: Our May episode of the Xcoders podcast is out. We are starting a signal boosting theme where people …

2020-05-21: Typo of the day: pod install —repoo-update

2020-05-21: I was today years old when I learned that UIPickerView is not a UIControl subclass. Also TIL that …

2020-05-10: Deleting @xcoders from my calendar for the week was painful. I miss gathering in person with that …

2020-05-07: I’ve put a few things up for sale. Check out my garage sale page if a Thunderbolt Dock, …

2020-05-01: I needed to update my résumé today. But of course the first thing you do before updating the content …

2020-04-29: I was one of the 17% of layoffs today at Lyft. I learned a ton in my time there and will miss the …

2020-04-23: Okay, I think it’s finally time for me to change my shell from bash (I know, I know I just …

2020-04-22: I’m excited to have tickets to upcoming remote conferences: App Builders and UIKonf. Both …

2020-04-19: I’m really enjoying The Last Dance on ESPN about the 90’s Bulls. I’ve not cared …

2020-03-14: Welp, I should have said “attempting to cancel” our trip. Because I can’t even get …

2020-03-14: Canceling our Spring Break trip to LegoLand California 😭

2020-03-03: I got my W2C today, folded in a nice standard envelope as I’d expect. I opened it up and took the …

2020-03-02: Woke up with a 102 degree fever this morning, probably from the same sickness my boys had together …

2020-03-01: February photo blogging challenge day 30. The prompt is “Vision” – The eyeglasses that let me see …

2020-02-29: February photo blogging challenge day 29. The prompt is “Leap” – I’m hoping my next game takes a big …

2020-02-29: I’m really excited to be backing Codewerks by @aaronvegh. It’s a really cool project …

2020-02-28: February photo blogging challenge day 28. The prompt is “Below” – A new cable emerges from below …

2020-02-27: February photo blogging challenge day 27. The prompt is “Together” – My boys have been home sick …

2020-02-26: February photo blogging challenge day 26. The prompt is “Escape” – Fire escapes in old Seattle. …

2020-02-25: February photo blogging challenge day 25. The prompt is “Hurdle” – I love how I easy it is to vote …

2020-02-24: February photo blogging challenge day 24. The prompt is “Double” – A couple model Autobots in a …

2020-02-23: February photo blogging challenge day 23. The prompt is “Station” – On a family walk to the …

2020-02-22: February photo blogging challenge day 22. The prompt is “Spectacle” – My boys wanted to wear their …

2020-02-21: February photo blogging challenge day 21. The prompt is “Progress” – Reading a book is one of the …

2020-02-21: The photo prompt today is “progress” and I honestly have no idea what to do with it.

2020-02-21: My post from last week about iMac colors made iOS Dev Weekly’s “And Finally” section! …

2020-02-20: February photo blogging challenge day 20. The prompt is “Scale” – Seattle sure has grown over the …

2020-02-19: February photo blogging challenge day 19. The prompt is “Space” – That’s no moon. Oh wait, yes it is …

2020-02-18: February photo blogging challenge day 18. The prompt is “Oppose” – God opposes the proud, but gives …

2020-02-17: February photo blogging challenge day 17. The prompt is “Cool” – The freezer drawer keeping my round …

2020-02-16: February photo blogging challenge day 16. The prompt is “Rest” – Chilling on the couch. #mbfeb

2020-02-15: February photo blogging challenge day 15. The prompt is “Balance” – Finnian on the edge of the play …

2020-02-14: February photo blogging challenge day 14. The prompt is “Warmth” – Our fireplace on a cold winter’s …

2020-02-14: February photo blogging challenge day 13. The prompt is “Rise” – A Belltown high rise. I wanted to …

2020-02-12: February photo blogging challenge day 12. The prompt is “Attachment” – Traffic signs. #mbfeb

2020-02-11: Doing my first podcast edit in Ferrite. Initially the gestures seem to be slowing me down from where …

2020-02-11: February photo blogging challenge day 11. The prompt is “Plain” – The hallway at my office building. …

2020-02-11: This image is feeling incredibly apt to me today.

2020-02-10: Achievement unlocked: Got my first PR submitted to one of my repos by someone else! The reason I …

2020-02-10: February photo blogging challenge day 9. The prompt is “Sign” – The King Street Station sign by …

2020-02-09: February photo blogging challenge day 9. The prompt is “Lull” – Taking a break at the park. #mbfeb

2020-02-09: February photo blogging challenge day 8. The prompt is “Contrast” – Our dark gray and white kitty …

2020-02-08: I’m super curious to see the XFL premiere today. Now that Seattle has a team (go Dragons!) it’s nice …

2020-02-07: February photo blogging challenge day 7. The prompt is “Above” – The light that illuminates our …

2020-02-06: February photo blogging challenge day 6. The prompt is “Plant” – Our kitchen plants with a kitty in …

2020-02-05: I haven’t made an iOS shortcut in a while but did just make a quick one for my February …

2020-02-05: February photo blogging challenge day 5. The prompt is “Hide” – Hiding under cover from the rain. …

2020-02-04: February photo blogging challenge day 4. The prompt is “Spot” – a little spot of Siri. #mbfeb

2020-02-03: February photo blogging challenge day 3. The prompt is “Reflect” – this is the reflected sunset of a …

2020-02-02: February photo blogging challenge day 2. The prompt is “Sight” – on our sunny travels to church. …

2020-02-01: February photo blogging challenge day 1. The prompt is “Open”. #mbfeb

2020-01-22: Pearl Jam has been my favorite band for a long, long time and getting new music from them is always …

2020-01-17: I Viticci’d my AirPods! I’m excited to have better sound and better seal on these already great …

2020-01-11: “I don’t like that sausage. It’s too sausage-y for my mouth.” Finnian Sorge, 3.5 years old

2020-01-10: This won’t be news to anyone who’s been using a 5K screen for any part of the last 5 …

2019-12-26: It’s really great that I can pair my AirPods with my Apple TV. It’s not great, however, …

2019-12-26: Both boys were yelling at their doors for mommy just now. Finnian has the best line to Atticus: “You …

2019-12-24: Adulting achievement unlocked: buying C batteries at 10pm on Christmas Eve.

2019-12-18: I’m selling my 2018 MacBook Pro on Swappa. Check it out if you’re in the market or …

2019-12-14: I “sold” my previous MacBook Pro on an eBay auction that closed on Thursday morning. I still haven’t …

2019-12-08: My kindergartener’s teacher gave me some graphs and input sheets that she’d like to have an app made …

2019-12-07: Oh no! The federal crime and investigation bureau strikes again!

2019-12-05: I love this CS Lewis quote about Jesus from Mere Christianity: “You can shut Him up for a fool, you …

2019-12-04: Yesterday ended pretty crappily. Praying today is better 🙏

2019-12-02: Got a ton of recommendations for YouTube TV. That’s what I’ll be giving a shot after this …

2019-12-02: Hulu Live’s DVR marks advertisements as un-skippable. I never thought a DVR would actively fight …

2019-11-27: I’m taking today off and have the rest of the week off. So yesterday felt like Friday, and …

2019-11-26: The Migration Assistant seems to have gone really smoothly over Thunderbolt 3. Aside from a bunch of …

2019-11-26: It’s here!

2019-11-26: MacBook Pro is on the truck for delivery! Come on DHL, come on! 😆

2019-11-26: Helpful friends are the best.

2019-11-26: Is the only way to customize a menu bar in a Mac Catalyst app via storyboard? I’m not using …

2019-11-25: Got the tracking number for my laptop today! If only the page would update with an estimated …

2019-11-18: I love adding new simple automations. Just added a small script to renew SSL on my site using …

2019-11-18: A much refreshed MacBook Pro order page will not change to shipped. Related: I’m super impatient.

2019-11-14: I’m always excited when it’s Xcoders day, and today is no exception. You should come join us …

2019-11-13: Introducing my boys to Darkwing Duck!

2019-11-13: 16” MacBook Pro ordered. I’m stoked to get this new machine!

2019-11-13: I sent this message to a buddy on Slack yesterday and this morning am feeling incredibly vindicated …

2019-11-12: The Mandalorian episode 1 did not disappoint. No spoilers here but you should definitely check it …

2019-11-12: Got Disney+ set up on the Apple TV and our maiden voyage as picked by Atticus is Super Buddies. I’m …

2019-11-04: One delightful thing about my AirPods Pro (or gen 2 with Siri) is that I can start a workout using …

2019-11-02: Sitting down with my ballot to vote. I always have a difficult time figuring out who & what to …

2019-11-01: I really like using Swift to write scripts. Using a language I already know (while I realize …

2019-11-01: I wrote a new blog post, now I’m attempting to write a script to automate the process of …

2019-10-12: Who can I talk to about this cutting edge device?

2019-10-08: I’m really excited for our Xcoders gathering on Thursday to celebrate 15 years of Xcoders. I …

2019-09-16: Did a fun little project to automate sending an email that my wife would otherwise need to send a …

2019-09-10: It’s time for me to hop aboard the iOS/iPad OS Beta train. 🚉

2019-09-09: Yes Apple Music, I always try to follow up listening to the Beastie Boys with Saint Johnny Cash 😊

2019-09-05: Is it possible to put a footer on a SwiftUI Form? Looking for the equivalent of a …

2019-09-03: I’m on call for one of our apps this week. The worst part of being on call is the temptation …

2019-08-20: I started writing up some of my experiences (and to be honest, big struggles) with learning SwiftUI …

2019-08-11: I need to fix Scorebook’s Settings screen to work with Dark Mode in iOS 13. Great, I thought, …

2019-08-08: I’m really happy with how my Xcode project & XcodeGen Talk went at tonight’s @xcoders. There was …

2019-08-07: I don’t understand traffic going north from Seattle. It used to be that I could take the 413 …

2019-08-07: It’s amazing to wake up to the first new Tool music in 13 years. I’m really excited (and nervous) …

2019-07-31: Got the new @xcoders podcast edited and ready for publishing in the morning. Look for it tomorrow!

2019-07-31: My kingdom for a fast, easy, reliable way to seamlessly get photos from my Sony Alpha 7II to my …

2019-07-26: It’s an extra awful traffic day going south on I-5. We’ll get to Long Beach someday.

2019-07-19: When your 3-year-old sweetly says “I want to play with you”, that’s the moment you know you’re going …

2019-07-17: My podcast studio for recording the @xcoders podcast with @liz tonight. Yep, that’s the passenger …

2019-07-17: Now I can get to work on a Scorebook update to support iOS 13!

2019-07-17: It’s here! Scorebook 2 has landed on the App Store. I’m really excited to get this out …

2019-07-16: Found the issue, got a fix working. Once this build finishes processing I can submit for review!

2019-07-16: Argh, found a crash on launch bug with Scorebook 2.0 on fresh installs. Just when I was ready to …

2019-07-15: I just hit an amazing bug playing Apple’s “new” poker game on my iPhone X. I …

2019-07-08: I’ve yet to have consistent success with Fastlane’s Snapshot tool to capture screenshots …

2019-07-08: OH: I miss the Zune.

2019-07-08: After getting Scorebook’s Core Data testing foundation put in place I was able to find a bug in one …

2019-07-06: Trying to do the right thing and add some unit tests to the data layer of Scorebook. Except now …

2019-07-04: When I do release Scorebook 2.0 I’l be raising the price from $2.99 to $4.99, the first price …

2019-07-04: I’ve been making really good progress on Scorebook 2.0, and the to-do list keeps shrinking …

2019-07-03: I love being able to do work from my iPad. Had to restart my taphouse.io server to renew its SSL …

2019-07-03: Hello summer in Seattle!

2019-07-02: In the wake of WWDC I was tempted to rewrite all of Scorebook using SwiftUI (I’m sure that …

2019-07-01: Got home after a long weekend away with the family at Sun Lakes State Park and found that @manton …

2019-06-26: I’ve been using privacy.com to make purchases using virtual credit/debit cards and it’s …

2019-06-25: Ending the night having gotten my Mac mini set up to build Scorebook using my Fastlane script. I’m …

2019-06-25: Today’s the day I’m going to be a macOS thrill seeker… …by upgrading my Mac mini from …

2019-06-12: I’m doing a lightning talk tomorrow on Xcode 11’s new SwiftPM integration (particularly …

2019-06-10: I still need to do a bunch of testing and add a couple more screens, but I’ve got my Dynamic …

2019-06-06: Hello again Seattle!

2019-06-06: Heading home after a really fun time in San Jose. I’ll write up some thoughts later, but I’m super …

2019-06-04: Good times at the micro.blog meetup

2019-06-03: Xcode is gaining Swift Package Manager support for apps. This is huge!

2019-06-03: I really want to play around with SwiftUI in Scorebook. I’m hoping to learn how it will make my life …

2019-06-03: Watching the WWDC keynote next to the big show, at AltConf. Super excited to see what Apple brings …

2019-06-02: Landed in San Jose! It’s gonna be a super fun, packed week. I’m gonna miss my family like crazy …

2019-05-28: I’m constantly amazed when I put something on the ceiling and it stays there. The first couple of …

2019-05-22: Did the podcast interview this afternoon, and I think it went well! The conversation seemed to go by …

2019-05-21: I got asked to do a podcast the other day and we record tomorrow. Any tips for a first-timer? Im …

2019-05-21: Sketch is one of those apps that I really would like to be good at using (especially for this …

2019-05-13: Whenever I see a Storyboard in Interface Builder that has a super simple interface (like just a …

2019-05-06: I’m rethinking the Scorebook home screen, mostly to figure out a good way to get it up to …

2019-04-24: New outlet installed and up and running. Pandemonium averted in the house as we have restored …

2019-04-24: Turns out our ONT box’s power is out because the main outlet in the garage blew out. So it’s an …

2019-04-24: Woke up to a Frontier FIOS internet outage. Good times!

2019-04-10: The Mariners are 12-2! Truly unreal start to the season.

2019-03-26: These are some blazing fast 5Ge speeds I’m seeing. So glad they decided to rebrand their LTE network …

2019-03-11: I think my second favorite thing about writing my Scorebook 1.6 retrospective was that I …

2019-03-05: The Seattle @xcoders are looking for a speaker for our meeting next Thursday (3/14). Get in touch if …

2019-03-01: Who says you shouldn’t ship an update on a Friday? Scorebook 1.6 is here! This is the sync update …

2019-02-28: Every time I have to “renegotiate” my deal with a telco (in my case it’s Frontier …

2019-02-23: Felt a pop in the center of my lower back this morning, followed by pain and difficulty moving. …

2019-02-22: When I’m procrastinating shipping an app update, I change something or implement something on my …

2019-02-12: I’ve never wished I knew how to cross-country ski and had gear to do so. That changed this …

2019-02-11: It was a super snowy walk into my office this morning. Someone had ridden their snowmobile down the …

2019-02-10: I’ve got one more feature to add to Scorebook 1.6 and then I’ll be ready to ship it. I want to add …

2019-02-10: We got an Orbi wifi pair last week and tried to print to our ancient LaserJet 1300 today but it only …

2019-02-02: Adding some shortcuts to Scorebook, and I can’t for the life figure out why it’s …

2019-01-30: New post from jsorge.net: Scorebook 1.5 Retrospective

2019-01-28: The new version of XcodeGen was released today! I upgraded easily, broke apart my modules into …

2019-01-27: Wow. Started a Swift 5 branch for Scorebook and in < 10 minutes it was building without warnings. …

2019-01-26: Kites over Long Beach.

2019-01-25: Made it to my parents’ beach cabin just in time for the tail end of the sunset.

2019-01-24: I love the old-timey signs that are still on display around downtown Seattle.

2019-01-23: New post from jsorge.net: Mixing Swift and Objective-C in a Framework

2019-01-22: DNS propagated and my site is back up. Huzzah!

2019-01-22: Current status: waiting for DNS to propagate.

2019-01-22: Dang, something screwed up on my site’s server. I’m getting a weird nginx/Docker error …

2019-01-20: Put my 500mm Canon lens on my Sony camera to get some moon shots. It’s not the crispest but gets …

2019-01-18: In what must be a sure sign of maturing, I added 2 PRs that are only integration tests before …

2019-01-17: Scorebook is back! jsorge.net

2019-01-16: Working on a new blog post with some exciting news. Being concise is hard for me, along with …

2019-01-15: I’ve been using Xcodegen from @yonaskolb for generating my Xcode projects and I couldn’t …

2019-01-15: After too long away, I’m back to micro.blog. I think I put too many tooling barriers between …

2018-11-15: Next week I’m giving a talk about being a programmer to my sister’s 6th grade class. The …

2018-11-15: There were a ton of cheesehead Packer fans around downtown Seattle today. It was especially …

2018-10-30: A new Mac mini would come in so handy in encoding this beastly box set. It’s okay though, I’m …

2018-10-30: The new Mac mini looks fantastic! It would be great someday to replace my 2012 version with one of …

2018-10-29: By a stroke of what I can only call the Lord’s providence, we found a TV exactly the same as …

2018-10-29: Is there any decent non-smart TV out there anymore? I’m suddenly in the market for something …