The answer to that question depends really on the context.
At the end of the day the borrow checker is there to help you. If a function takes ownership of a value, like a string, it generally means that it wants exclusive access to the memory and may want to mutate it.
If you are writing a function that doesn’t really need ownership of a value, then make sure you accept references rather than take ownership.
There are cases where ownership rules make it hard to do something you really want to do. One example I run into is using “itertools.group_by_key” - this needs an owner reference, which means I often clone the value.
This isn’t optimal but often this is fine. If the code you are writing isn’t in the hot path, then it’s usually OK to just clone values without much thought.
Basically, if you are new to Rust then try passing a reference via &obj, and if that doesn’t work then try obj.clone(). Is it perfect? No. Is it good? Probably not. Is it good enough to get you moving forward? In most cases yes.
Vertical integration works really well to control quality of your platform if you have the resources to make it happen. You _could_ make the argument that System76 is too small of a company to financially make this work, but the payoff is a better product.
I don't think anyone can claim seriously that PopOS is "tailored" for their PCs any more so than for other PCs.
Ubuntu will probably run equally well on those PCs.
The key is that the QA team validates all kernel updates and other changes on all System76 systems, and provides professional support that you can reach out to that are experienced with providing support for Pop.
I would expect IPC between GUI applications to go the way of iced's Subscriptions + Commands, sending and receiving messages from a central bus or other peripheral components running as daemons.
I use the Vinegar extension for Safari which replaces the YouTube player for a simple HTML5 <video> tag and consequently removes the ads. Don't know if there's alternatives for other browsers, but worth looking into if this is all that's keeping you there.
Multi generational living is also great, and not mutually exclusive of having more stable long term relationships. It's fine to live at home as a couple to save money if your parents are okay with it.