Java has very good refactor support. I use jdt.ls which is eclipse based, but I've heard intellij is even better. I've wished for similar refactor actions in other langs.
I'm right there with you - prefer classic, deterministic tools wherever possible - but there's a limit. E.g. it's easy to rename a single getter from classic enterprise java `Foo getFoo() {..}` to a modern style `Foo foo() {..}` ... but to rename dozens of getters/setters across hundreds of classes is still tedious.
Even harder would be to update your setters from `void setFoo(Foo f) { this.foo = f; }` to fluent-style `Parent foo(Foo f) { this.foo = f; return this; }` - I'd be surprised if there's an LSP action for that at all. (I'd love to be proven wrong though)
Not sure about LSP, but IntelliJ has had a "structural search and replace" feature for many years, and it can easily handle changes like the one in your second paragraph. It's conceptually like a regex search, but it matches language-specific AST subtrees instead of character sequences.
I've found that for super large but simple refactors, codex and Claude struggle and will just quietly stop doing what you asked it if it's a long running task.
I actually had better luck asking codex to write temporary sed scripts based on the requirements then apply them.
Bun getting rewritten in Rust is not really the counter point you think it is. The rust version hasn't shipped yet, so there hasn't even been a chance to see if the code can be maintained. It's an impressive feat no doubt, but until they've maintained it on a months to years timeline, it's also just talk with no evidence.
Sigh. I'm sorry you're scared of AI. I hope you find happiness in your life and something else to replace your identity with once AI completely eclipses your utility in society as a coder.
Right, it's still a datapoint. There's blurry and not completely substantiated datapoints from both sides. We don't have a full picture... we have a blurry picture.
The issue is a lot of people form definitive conclusions from blurry data. I'm challenging that type of bias. For example: How the hell do we know LLMs produce code that LLMs can't maintain? Like did you actually try it? And what about the instances where it worked? I don't think the answer is as clean/cut as yes/no. Even if we had data, most likely the data will be contradictory data in the sense that some AI projects worked, some descended into slop.
I think in the context of containers you're right, there's a level of isolation and secrets are probably fine. But I think under other contexts that lack that isolation (e.g. bare-metal processes, local dev tooling) there are extra concerns.
(inb4: container env-vars are isolated from other containers, not from processes on the host system)
Nobody thought an RPI cluster would ever be competitive, and Geerling never expected anybody would. But it's fun to play "what if" and then make the thing just to see how it stacks up and that's his job. Any implication or suggestion of this being a good idea is just part of the story telling.
How do you expose the service for your SO when away from home? Do you use tailscale/cloudflare tunnel/vpn? public port on your router? I've been trying tailscale for myself, but there's a hair more friction than my SO would accept.
Not op, I use cloudflare tunnel. The Immich mobile app supports "local" and "external" connection settings, so it can connect to the Immich instance directly when on home wifi, and use the tunnel when out and about.
I use Tailscale for this, always connected and Immich pointing at the TS IP. I haven’t yet made the jump to full syncing, so I have a manually curated library of photos that I access anywhere but I am planning on starting to test this feature soon (I take a lot of junk throwaway photos with the phone and don’t want to sync everything). I’ll have to see how it best works for me.
But Immich is a great app, minimal to no fuss setting it up in a container on my NAS. My only potentially unfounded concern is when I upgrade the images. They changed the different component containers images over time, sometime with breaking changes. So I always half expect that an upgrade will screw up the setup and I’ll have to start from scratch with the indexing.
Not OP, Tailscale is easiest, quickest, and free up to 100 devices as of today. It also has a feature to provide a public URL if needed, or can be run with Cloudflare Tunnel at the same time.
As other's have already mentioned, currently I am using Tailscale. But I plan to somewhere in the future change that to something a bit more controlled by myself. Like a self hosted Wireguard VPN on some VPS.
I was also thinking about just reverse proxying my local instance to some public domain. But currently do not trust immich to be safe enough to allow for public exposure.
Maybe, although there are services that will accept your mail and then scan/email it to you. But I believe OP has stated that they live in Germany full-time.
As someone who has a few bank accounts in different countries of which I'm not a resident of, and also a user of the services you mention, its next to impossible to use them for banking purposes.
In US, for example, their addresses are classified as Commercial Mail Receiving Agencies, and have a "Commercial" address designator. USPS has an API for that. If you get a bank to accept this address somehow, then the next trouble comes - they're gonna ask for utility bill for address verification and you can't have any utility bills for it.