

Take the following with a grain of salt, it depends on your specific setup, environment and preference, but might help you:
Regarding system backups, and depending whether you need to run fedora, check out nixos, which takes a declarative file and builds your system based on that. Declarative immutable system, no moving parts, no breakage. If your system breaks, revert to a prior version and keep using what you’ve had before before retrying. Your backup is a git repo or whatever is keeping your handful of config files. Has been an absolute game changer for me, and the community and ecosystem around it is far beyond the point of quirky esoteric immutable distro.
VSCode has a powerful feature that I’ve yet to see in another editor/IDE - remote development, and it works really, really well. Spin up a VM however you like (I’d recommend checking out Vagrant), and depending on how much you need to do in windows either use the windows box as a remote run target (just running your built artifact in windows), or as a remote development box (running everything in windows and using your Linux VSCode as a “Frontend” for everything else happening in windows). Both methods can be made to work seamlessly in vsc.
Excel - again depending on your usage, you can try wine, you can use a VM, dual boot, M365 in browser, or a remote VM.
“Googling a lot while coding” is not even remotely close to vibe coding, please don’t gaslight yourself into that.
When you read up on things, you know what you’re looking for. You read a potential solution (e.g. part of a documentation, an example, someone else’s solution, a solution to a similar problem), you think about it and transfer that to your own problem, with your own code, with your own thoughts.
Using AI support is totally fine too - it’s a smarter code completion, nothing more. It might spit out something wrong, something partial, something good. You might ignore it as with the regular completion. In the end, it’s still you thinking about it, modifying it until it works, and doing your thing.
“Vibe coding” is basically saying tech jesus take the wheel. And it might go well for someone who cannot code, who managed to create their small game or some website. It will go horribly wrong for any project handling user data, sensitive data, or something that needs to be maintained after. We’ve had more than enough examples of that.