The name of the function, what goes in and what goes out in most cases should be enough to get a good idea on what the function does.
It also helps to make a diagram of how everything ties together. Just boxes and arrows is enough.
When writing your own code, it takes a bit of experience to know when to put something in its own function. It’s very obvious when you’re replicating code. It’s also very common to cut things up when a function gets too big. Look for bits of functionality that you can give a good name.
I use copilot on a daily basis for programming. It has made me much more productive and it’s a real pleasure to use it. Nothing overhyped about it.
Curious to see what it will bring for other domains, e.g. for dealing with emails.
I do agree that there’s a lot of filtering happening. Not a huge deal for more applications. Luckily you can run your own models that are not filtered. I can definitely see a future where you run your own models locally. Afaik Apple recently did some stuff around that.