Amazing how far they've got since, in just two years. As others have pointed out, it's already "boring" software in that it just works. And that's no small feat because this kind of tool requires all kinds of low-level hackery to make work, and make work fast. Hats off!
You mean what Docker for Desktop can't do? It does have a few unique features (for example automatic HTTPS for containers) but that's not the point. The point is that it's much faster, the fan runs quieter, the battery drains less, memory gets hogged less, it crashes less, the UI is smoother, the updates actually work, and it keeps improving at a steady pace. The fundamentals just work a lot better.
I second this. We switched everyone at Instacart over from Docker Desktop to OrbStack because it was so much faster, easier on the battery, and simple to use. It was particularly noticeable on our older Intel MacBooks. Simply running Docker Desktop at all left mine noticeably hot and fans would regularly spin up for simple containers.
The difference is much less stark on Apple Silicon, but last time I checked OrbStack was still dramatically faster across multiple metrics.
Our local dev process was pretty heavy though. If you're doing simple, small containers and not copying a ton of things in, then you probably won't notice a difference. It's nice that the GUI app is not bloated and slow though.
Right, but fetching rows along with a bunch of related rows from other tables isn't niche, it's literally the _raison d'etre_ of GraphQL (simplifying a bit because GraphQL types don't necessarily map onto db tables.)
Static-language clients need to create a class (or collection of classes) for each GraphQL query, or forgo type safety (typically just null-safety, but I suppose you could treat each result as a dictionary type). Creating just the schema-level types, with relationships modeled separately, does throw out some of the benefits ("just the data you need") but simplifies the client, moreso if the client may perform multiple complex queries on the same data.
$ wget https://repo1.maven.org/maven2/com/google/javascript/closure-compiler/v20230502/closure-compiler-v20230502.jar
[…]
$ java -jar closure-compiler-v20230502.jar
The compiler is waiting for input via stdin.
The Closure Compiler still is a Java project. It just gets primarily distributed via NPM these days.
Reminds me of Hand Cheese (Handkäse), a regional specialty popular around the Frankfurt area. It's delicious, quite pungent but with a deep flavor. It gets its name because it was traditionally formed by hand (from Quark, a harmless dairy product similar to cottage cheese). Around these parts one can expect clean hands as well, so there really is nothing untoward about the final product -- except perhaps for its name. Give it a try if you happen to be passing through!
With all due respect for julian37, I suggest caution. I might amend "quite pungent" to "good God what the hell" and "deep flavor" to "tastes like it smells."
Perhaps I am betraying my American lack of culinary flexibility. Perhaps julian37 is just joshing us.
I very much miss living in Frankfurt, a wonderful city. However, I suspect that the local practice of recommending Handkäse to visitors is an inside joke and a harmless and amusing example of German humor.
From a quick google ‘Raclette’s most distinguishing feature is its aroma, which might charitably be described as pungent. (Actually, it smells like something left to rot for a few months in a gym locker filled with dirty sweat clothes.)’
Good point. I don’t know what 1Password could do to prevent the telemetry from issuing control commands to the rest of the app outside of trying to prevent malicious code from being checked in and deployed.