1. Speaking of Safari, I actually ended up restoring compact tabs since I prefer them over the old design. My only qualm with Safari during the beta was the adaptive toolbar color but that’s gone now.

  2. As a heavy Safari and Notes user, Tab Groups and Quick Notes in Monterey have been a great boon for my productivity. And for all the Twitter drama the Safari 15 redesign generated, it’s been a solid release for me so far.

  3. This weekend I hesitantly started migrating my 11k LOC server-side Swift project to use async/await, and I’ve been having a blast. I still have ways to go, but the code is easier to read and reason about, which conveniently highlights areas that can be refactored out to streamline the codebase even further.

  4. I really want to keep liking Gatsby.js, but the distasteful npm ecosystem, the forced client-side JavaScript, and my complete lack of use for client-side hydration—the process of turning static pages into interactive ones using JS—have been standing in the way as of late.

  5. This easter break I built my first command line utility in Swift using the Argument Parser library. My main motivation was to automate some of the tasks I have been doing manually in one of my unannounced projects. The result is a kickass CLI with all the bells and whistles such as help, auto-completion, etc. Shoutout to Nate Cook over at Apple for this awesome library!

  6. 風任せ

    風任せ(かぜまかせ) (kaze-makase)

    • Literal meaning: leaving it to the wind.
    • Figurative meaning: being worry-free, going with the flow, leaving things to the course of events.
    • Example: (ふね)()任せ(まかせ)()(かぜ)任せ(まかせ)
  7. Open-source maintainers: README files should not replace proper reference documentation.

  8. I noticed that I consistently, and mistakenly, name the first closure parameter in Swift functions with multiple trailing closures. My two cents on SE-297 now that the dust has settled: ignoring this specific feedback point was not a programmer-centric decision.

  9. “No one gives a shit what programming language you use.” A harsh but forthright rant by George Stocker.

    There’s nothing wrong with preferring one language over another, as long as it is not the only deciding factor. I was tempted to use Swift for building static sites, but I decided against that because JavaScript and its ecosystem, warts and all, is still better suited for Web development.

  10. I love the indie Web concept of POSSE, but it’s not universally practical given how the platform and the format actively shape the content. Many of my micro-posts fit poorly in the context of Twitter/Mastodon, which prompted me to come up with creative hacky workarounds to remedy that—entirely defeating the purpose of POSSE. Going forward, all content posted here will be syndicated to a dedicated account, @WideGamutFeed, leaving me the freedom to retweet or quote tweet using the main account for additional context or commentary.

  11. With the Gatsby 3.0 migration complete, I took some time to try out Gatsby Cloud. The onboarding was smooth and the build times were almost twice as fast as what I saw on Netlify for the same build. I moved this site there already and will follow up with the others in the coming weeks.

  12. Sylvain Kerkour writes about the high churn rate in the Rust language:

    Unfortunately, there is one thing that makes me anxious about its future: the 6-week development cycles. It’s, I believe, one of the causes of an unhealthy problem: feature bloat. It’s also the cause, in my opinion, of another problem: the immaturity of the ecosystem.

    I share some of these feelings with regards to Swift. On the flip side, seeing a language grow and evolve right before your eyes can be a unique educational experience. I genuinely can’t wait for the concurrency work to land and make all my code obsolete overnight.

  13. Good to see both Rust and Kotlin move to a foundation-based governance model. I’m not holding my breath for Swift, but I think it’s an important step towards making it a truly general purpose language.

  14. Open-sourcing Kroma

    Today I open-sourced Kroma, a collection of color helpers for SwiftUI. While it’s not feature-complete, it might be already useful in a handful of situations, such as determining if a given color is perceived as light or dark. This will likely end up being split into 2 packages down the line as I add more framework-agnostic color manipulation and conversion helpers. In the meantime, give it a try and let me know what you think!

  15. Santa came late this year, but he at least made it just in time for my birthday!

    PlayStation 5

  16. In preparation of the beta launch of one of my yet-to-be-announced projects, I have spent some time devising a plan for server-side caching using Redis. This led me to read about some common caching strategies such as cache-aside and write-through (link). I was never fluent in backend development jargon, but it’s never late to fix that!

  17. In software, there is room for specialists, generalists, and everything in between. Enough with gatekeeping already.