I am of the opinion that this for instance might be the biggest singular reason nodejs has been successful without people even realizing it. Since “full stack” development is so in demand/popular this really limits the context overhead of switching languages and semantics between front end and back end in such a way that it can keep productivity high.
(Yes nodejs has other strengths too and to be fair weaknesses but I wouldn’t discredit this as A much factor off hand at least)
I've likened it has having to pack up one set of tools, before I can unpack the other one.
The brains of mammals work very differently from the machines we create. We don't understand exactly how, but they are substantially more complex. Just look at how much work goes into writing a machine that can classify photos as cats or dogs; or software that can drive an autonomous vehicle.
It's similar to growing a coprocessor designed to do this task, load on CPU is reduced and you may also get a small cache to buffer it for a while without losing context even if interrupted.
It has limitations, too complex tasks are hard for brain to make automatically facile.
I think his point was that, obvious or not, many knowledge workers organize their work that way and this will actively cause psychological harm.
I wasn't fond of his technology metaphors either, but I think the point he wanted to make was a valid one.
Though, using the metaphors as a tool of argumentation might also make sense because do use terms like "multitasking" a lot when describing situations where you have to switch around between different activities a lot (and implicitly justifying it because the activity is also seen as simple and basic - because computers do it all the time)
So it might be useful to drill down on those metaphors and show how incorrect they actually are.
(If you want to nitpick on the metaphors, I think he had threads in computers come off too easily: As probably every kernel developer can tell you, OS context switch absolutely do involve a complicated machinery of instructions - and as every application developer knows, having multiple threads can absolutely lead to chaos if you have no strategy how to manage them)
ok maybe not: https://xkcd.com/224/
You are what you think. I have no idea how or why... but I know this is so.
Given the evidence that conscious thought, self-awareness and "free will" are post-hoc effects, emerging after decisions are made by the brain at a subconscious level, it's more likely that that you are what thinks you.
I do, however, appreciate your splendid and witty statement and shall reward you with an upvote :-)
But I thought I was a racer from age 6... and now I are one.
Can they walk and chew gum?
How many lines of code though? :D
In which case, sure, it makes sense that each thought blocks the main thread and that's why thought-loops are particularly annoying.
In terms of I/O though, I certainly try to optimize the main thread with concurrent patterns when the input queue gets hit with high traffic. Even if I'm recurrently mulling over something for days, hoping for a break-through or insight or whatever, it's not like I'm incapacitated and can't perform / prioritize other thoughtful tasks on the event loop.
If we look at the brain like a computer that interacts with the world as well as interacted with, I like to imagine that the brain is very complex and running many parallel processes. Like a computer, it has many parts of the interface to the world. Eyes are the screen, ears are the speakers, muscles are the mouse and keyboard, etc. I like to think of attention as the cursor; sort of a single process that directs what the user is interacting with.
I'm positive that is much too simple of an analogy because it still leaves the question: why can't consciousness control multiple attention cursors simultaneously? In many ways, it does in which consciousness can pass things off to automatic processing, like triggering muscle memory and other previously strengthened pathways. But, I think the why there's not multiple attention processes running is still a big question yet to be answered. I think neuroscience still has a lot to be understood before we'll be able to answer it sufficiently.
This is why we often get much better task performance when we allow our gut feelings (which come from subconscious parts of the brain) to inform our reasoning.
Deliberative reasoning in the human brain has a very limited capacity.
See: https://en.wikipedia.org/wiki/Working_memory and https://en.wikipedia.org/wiki/The_Magical_Number_Seven,_Plus...
Synapses are parallel, but so are various operations in a single threaded CPU, even just the ALU (carry look ahead addition e.g.). Vice versa, hyperthreading switches context when the single threaded cpu is stalled by memory look-ups.
While its notable how many ideas can converge, or how you remember that name out of the blue that you couldn't figure out minutes or days before is surely interesting. But attention is pretty much directed, so to speak. Just doing a different motion with each hand at the same time requires a certain ammount of orchestration. This requires planning and training.
The brain is a super scalar architecture, sure, but you cant do taxes with one hand, paint a picture with the other, and explain quick sort to your mom over the phone while you get your ... nippeles pinched (the classic Password Swordfish situation). Or more simply speaking, you can't be angry (at the taxes), elated (because of the forms and colors) and aroused (the nipple pinching throws various interrupts, whether arrousel or panic) at the same time while remaining pleasently calm towards your mum. Well, that does not sound like a good study design, but because of the health hazzard. Come on, if you stress a metaphor, I want too.
Mixing behavioral ideas and whatever-else-accurately-describes knowledge of cpus (systemic?) is a bad idea, over all. That's not reductive and breaks the deductive argument.
[1] listen to? Parse? Hear? I’m not sure what the right word is in this context.