sudo_chmod777
You still need to learn the basics but this lowers the learning curve a lot.
It's hard for phone these days, but my PC's security model is I can easily lock myself out of it permanently.
Otherwise your PM can write change logs basing off of JIRA or something. Your change log generated from commits can still be useful for incident management, etc.
Does Undo use different techniques?
1. Use `:=` whenever you can, so types are inferred by the assignments/allocations 2. Alternatively query all references from `gopls` and put the results into quick fix list, then `:cdo`
So are you trying to find implemented interfaces or interfaces' implementors?
Former: In Vim I can use `:GoImplements`, which internally calls `guru` I guess.
Latter: `gopls` supports this.
I agree it's still a pain that one can not tell directly from code what interfaces a struct implements tho.
That being said I'm still extremely grateful for what Microsoft has done in standardising things like LSP, DAP, etc. It changed the game for Vim, Emacs, Kakoune, not to mention new players like Helix.
With C++ you'll have more offers, but you are more likely to be unsatisfied with your job: in large corps you'll usually have to untangle lots of messy legacy codes; while in start-ups things are more likely to be done quick and dirty and the flexibility C++ provides doesn't make it any better.
With Rust unless you are in the US, it's gonna be extremely difficult for you to find an opportunity; even in the US I gather there are not many chances and I _guess_ recruiters would expect higher proficiency as Rust is known for its steep learning curve.
A change driven by a business decision? Don't see how it won't work.
A change specific to a component? Try conventional commits with scopes.
Code change? You shouldn't use commit messages. Use e.g. `-G`, `-S`, `-L`, etc. instead.
By the way if you are not using fzf already, you should.