Weeknotes 2024.24

It’s WWDC time, so we can check whether last week’s rumours came true. Yes, AI took center stage, but Apple was careful to take their own spin, emphasising on trust. I’ve been knee-deep in Astro, almost done with the site rewrite—let’s just say, configuration hell is real. Those return-to-office mandates are driving top talent away and Agile is taking a beating lately. Plus, DuckDB hit 1.0, and Mastodon’s surprising DDoS feature. Enjoy the read!

It’s WWDC week, so last week all kinds of rumours were floating and by now we know which became true. The beauty of the Tuesday schedule revealed itself.

Last week was, I got into the weeds with Astro for a rewrite of this very site. The rewrite is almost feature equivalent to the current site, only a few bits missing. The typical last 20%, you know…

It also showed me what is desperately missing in Next.js, SvelteKit and similar frameworks: a built-in “content awareness” or at least a much simpler way of adding it. Astro has Content Collections, Eleventy has Collections and the Data Cascade, Contentlayer seemed to be the missing piece, but seems to be dead.

Astro is currently the best all-around solution, if you want to build something content centric that doesn’t warrant going full CMS, although its magic gave me some headaches as well.

The composability of each of this frameworks and tools also comes with a major downside: configuration hell. I’m not sure whether I have some weird requirements, but all of them required some tweaking of their tooling configuration at which point you easily have half a dozen of *.config.js or equivalent files open in your editor — instead of the files you really want to work on.

The final verdict: Astro will serve as a stop-gap for this site, Next.js as a stop gap for BackstageWorks’ site, but the medium- to longterm, we will focus on Svelte and SvelteKit. We just need the ecosystem to settle a bit more around Svelte 5 and while that happens, we can ponder what content collections for SvelteKit could look like.

WWDC

It’s new versions time! As usual we got all platforms as developer betas immediately. I have installed any of those yet, there is little chance I will be able to test any of the systems before their release with the exception of macOS in a VM. I won’t mention all the announcements, that’s what The Verge, Ars and others are for. I link to them at the end of the WWDC section.

Apple Intelligence

Unsurprisingly AI took over a significant portion of the keynote, where Apple repeatedly reassured the audience of the privacy built into the processing, even going as far as extending the privacy border into the cloud. Private Cloud Compute is not a new concept, but it’s applied in a new-ish way. Your privacy context is extended to the cloud, a kind of beefed-up virtual private network for a single user. Conceptually it gets my 👍, we need to see how it pans out in day-to-day usage.

Generative Images

This was interesting for a single reason: analysing Apple’s approach. They did not create generative image AI capable of creating images in any style under the sun and of the styles supported, all three are far from realistic. I think this is by choice and design: Apple didn’t want to hit the news with an AI capable of generating knock-offs and fake news. All styles are somewhat original and distinctive, with a little Apple feel to it. After a while everyone will spot them and know it was Apple Intelligence generated. That’s better than watermarking.

Finally

The keynote was chock-full of “finally” and apps being sherlocked. The calculator for iPad announcement even emphasised the “finally” with some lighthearted self criticism about the time it took Apple to add it to iPadOS, only to really turn up: the really made iPad app, not just a port of the known iPhone or Mac app

Further Reading

Self-inflicted Talent Pain

Just take in the following headlines (and articles) that came over the last few weeks:

Now, nothing in those articles points to a causality, but that should not keep us from analysing probable patterns and adjusting actions accordingly:

Agile takes a beating again

To be frank, I only skimmed over the articles, because reading them would be frustrating. Most of the methodologies have the problem that they are applied without understanding the core principles behind them, which leads to wrong applications where some rules are “overdone”.

Overdone methodologies happen, when someone with dangerous partial knowledge is thinking “if X is more, then we should probably do more of X to get even more” and you find yourself at the point where things go sideways, because you either don’t do enough or do too much. The original promise of Agile was to find the sweet spot for a given team and context, not to follow a prescriptive recipe.

Ignorance is only one factor. The other is that since Scrum and other agile methodologies have been “invented”, a lot of the context has changed: the way we build software, the way we run software, technologies in general and requirements moved around in the Kano model to become base needs.

My advice: get back to principles, design the methodology around it for your context, but don’t overspecialise things, design for resiliency. For what it’s worth, Scrum is a good baseline, if the team doesn’t know each other and you need commonly known ruleset for collaboration, but don’t be afraid to switch a few knobs around over time.

Other things of note