Writing is a good thinking tool.
But, to the claim of how to think in the age of LLMs, I think it’s worth contrasting the other approach, which is a dialog with the LLM; two things are needed IMO to keep things honest:
First, you need to keep asking the LLM to explain things, until you understand what it did. Lots of angles here; have the LLM make a design/product doc, write one-off architecture explainers, write throwaway data-viz tools to explain the data distribution. Then ask a fresh copy to adversarially review the core concepts. Try asking a different frontier model too.
Second, you need to push for “proof”, in other words, ask for demos and try it yourself. Imagine yourself a CEO or VC; how do you know if the output of an entire org is vaporware? One thing to beware is launching into a field where you don’t have expertise and can’t actually validate the output. This takes time of course, but for example if you write a stress test script and get CPU/QPS numbers, these complex validators are IME quite reliable when you apply the same rigor from 1) above to their construction.
Instead of asking the LLM to explain things, you can use it as a pen.
Let it organize and work with your thoughts, as you say, how you say, as you do it.
Once that is clear, it can then better create those other artifacts.
I'd been a software engineer for 25 years before language models came into the scene. There were so many parts of the engineering world I had no idea about: Large cloud data processing, lower level device / GPUs, UI frameworks and design.
I kept my to my niche.
Now I can build anything, but as I'm building it, I try to understand at least how it works. So I'm constantly asking questions. In the process, I think of my prior engineering skill as somewhat childlike. As I thought I was a decent engineer, I now see that I was decent at some things, but far from the kind of breadth that the wide engineering world has.
I think the takeaway is that you should always be curious and build things. Whether it's writing or discussing with an language model, writing software by hand, or creating software with a model and understanding it, I think you have the same effect.