I have the standard internal monologue many people report, but I've never put much stock in the "words are necessary for thought" because while I think a lot in words, I also do a lot of thinking in not-words.
We recently put the project I've been working on for the last year out into the field for the first time. As was fully expected, some bugs emerged. I needed to solve one of them. I designed a system in my head for spawning off child processes based on the parent process to do certain distinct types of work in a way that gives us access to OS process-level controls over the work, and then got about halfway through implementing it. Little to none of this design involved "words". I can't even say it involved much "visualization" either, except maybe in a very loose sense. It's hard to describe in words how I didn't use words but I've been programming for long enough that I pretty much just directly work in system-architecture space for such designs, especially relatively small ones like that that are just a couple day's work.
Things like pattern language advocates aren't wrong that it can still be useful to put such things into words, especially for communication purposes, but I know through direct personal experience that words are not a necessary component of even quite complicated thought.
"Subjective experience reports are always tricky, jerf. How do you know that you aren't fooling yourself about not using words?" A good and reasonable question, to which my answer is, I don't even have words for the sort of design I was doing. Some, from the aforementioned pattern languages, yes, but not in general. So I don't think I was just fooling myself on the grounds that even if I tried to serialize what I did directly into English, a transliteration rather than a translation, I don't think I could. I don't have one.
I'm also not claiming to be special. I don't know the percentages but I'm sure many people do this too.
We recently put the project I've been working on for the last year out into the field for the first time. As was fully expected, some bugs emerged. I needed to solve one of them. I designed a system in my head for spawning off child processes based on the parent process to do certain distinct types of work in a way that gives us access to OS process-level controls over the work, and then got about halfway through implementing it. Little to none of this design involved "words". I can't even say it involved much "visualization" either, except maybe in a very loose sense. It's hard to describe in words how I didn't use words but I've been programming for long enough that I pretty much just directly work in system-architecture space for such designs, especially relatively small ones like that that are just a couple day's work.
Things like pattern language advocates aren't wrong that it can still be useful to put such things into words, especially for communication purposes, but I know through direct personal experience that words are not a necessary component of even quite complicated thought.
"Subjective experience reports are always tricky, jerf. How do you know that you aren't fooling yourself about not using words?" A good and reasonable question, to which my answer is, I don't even have words for the sort of design I was doing. Some, from the aforementioned pattern languages, yes, but not in general. So I don't think I was just fooling myself on the grounds that even if I tried to serialize what I did directly into English, a transliteration rather than a translation, I don't think I could. I don't have one.
I'm also not claiming to be special. I don't know the percentages but I'm sure many people do this too.