I don't understand the idea to make everything terminal-centric. It should be one component of all the tools available to the programmer.
All text editors worth using have a way to open a terminal for that one time you need it, everything else should be a GUI (with all the advantages that come with it).
For me it's because it's because most things are faster, easier, and don't change (what you learn retains it's value, and doesn't become worthless when the new hotness arrives). So for me it's the other way around; everything should be in the terminal, with a GUI for that one time you need it (`open .` on Mac to open Finder).
GUIs are often mouse-centric, resource-hungry.
TUIs and CLIs are often keyboard centric only use as many resources as it takes to do the task, and then minimal resources to draw the text. Most CLIs also follow the Unix philosophy of doing one thing well, so you can get an output from a CLI and then pipe it into another.
At work I literally use the same workflow at home across two different operating systems because they both share a terminal. I don't even know how to switch workspace on a Mac because I don't need to, tmux sessions fulfil the same task.
It's quite often useful to have multiple tabs or panes in your terminal. Zellij does this. It's a terminal multiplexer, like tmux. Mostly just a bit more beginner-friendly and polished.
So obviously it's terminal-centric.
The author's father agrees with you, which is pretty funny.
Keyboards are higher bandwidth man-machine interfaces than mouse + GUI unless what you're exchanging is spatial information, which is typically not the case for writing software.
There is a higher learning curve, and we can argue about the tradeoffs you make, but some powerful tools can be difficult to learn to use. Complexity != bad design; sometimes you're just exposing an underlying problem space that can't be simplified without being cut off from part of the solution space.
Extremes are on both ends. Some people want to use a terminal for all, some don't want a terminal at all.
I'm a terminal guy because most UI I use is just unintuitive and requires a lot of mouse clicking - using mouse is just inconvenient to me. And often there are no tools for what I want to do, or rather, I'd need to open many tools to do something simple like change a file on a remote machine.
But I like a nice IDE, I use DB explorers, I use cloud code to write GUI for data processing and reporting visuals. Terminal is just a "killer app" that's useful for almost everything. So, if you're using regardless, why not make the experience better?