HN user

sudo_chmod777

21 karma
Posts0
Comments18
View on HN
No posts found.

If you write dev facing projects, unless your volume is that high, your commit history can absolutely be your change log using conventional commits.

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.

Is it even possible on macOS? I don't know about Undo but iirc rr needs access to perf counters to achieve deterministic interrupt delivery or something, which macOS doesn't allow. Now I basically have a sidekick Linux machine at work cos my company only offers Macs.

Does Undo use different techniques?

I also use Vim.

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`

However, the issue this brings up about structs / types not explicitly declaring which interfaces they implement is a real and unaddressed problem, especially in large codebases. The only tool that I'm aware of that finds implementations is GoLand, at steep JetBrains prices.

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.

This. And actually only up until a while ago did my co-workers still think using Vim was just some weird flex. Then a live coding session which was not about Vim at all I did somehow showcased how fast I was able to be in Vim, now everyone is interested in obtaining the superpower.

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.

It's a bit of a dilemma if we are talking about landing a job here.

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.

Define 'specific change'.

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.