Sorry, but I don't see the end of Linux anytime soon
last 5.* have a lot of code-regressions. This must mean something. Starting from "devs" (like AlanCox, and Miller) are tired, to ... nobody is probably no more willing to go ahead with the increased level of complexity stuffed monolithically into the kernel.
When a particular codebase has been around long enough, and has had enough changes made to it over they years, there comes a moment when it is time to rip it up and start again. This applies to anything: accounting software, monolithic os kernels, microkernels, you name it. It has nothing to do with the application at hand, the methodology used or any other similar variable. It's just one of the great unwritten laws of software. The cost of comprehending and maintaining, and the risks of additional changes to, the accumulated cruft outweighs the cost and risks of starting afresh.
There's always a list of reasons, often spurious, why this shouldn't/can't be done - sunk costs, backward compatibility, etc. - but every competent developer knows that all codebases eventually reach the point where it's time to take it around the back of the barn with a shotgun and get a new codebase.
Whether the linux kernel has reached this point is another question; but it's a question of when, not if, it becomes true.
I googled that, and see what I stumbled upon
One thing that I forgot to mention, but which is critical to the success of Linux, is that there really is no such thing as monolithic "Linux." Linux is highly modular and can be trimmed down/beefed up to fit a wide variety of applications...on the developers' terms, not Red Hat's, Novell's, Canonical's, etc.
So, unlike Windows, which can only be what Microsoft dictates, Linux can truly be all things to all people, as "fat" or as "skinny" as the developer wants it to be. Ubuntu is obese compared to sub-100 KB uClinux distributions, for example. Both serve different, and useful, purposes.
https://www.cnet.com/news/linus-torvalds-linux-is-bloated/
I think you're misinterpreting that. To me that reads as talking about a complete linux distribution/implementation, not just the kernel.
Changing tack:
I would not characterise the linux kernel as modular. Yes, it has some modules, but that's not the same thing as being properly modular.
Can you do a build of the current kernel and remove all individual arbitrary features to loadable modules or eliminate then entirely? If you can then that feature is modular, if you can't and it has spread its tentacles into other features, then it is not modular. Unless you can do with with
all features I don't think you can characterise it as properly modular, just as having (some) modules.
Whether the distinction (fully modular/has modules) is a useful distinction depends on where something is on the scale between monolithic...has modules...fully modular and what you're doing with it.
In particular, can you exclude all the features that you're not going to be using from a particular kernel build? If you can't, and you end up with a kernel that is, for your purposes, carrying unwanted baggage then it is a useful distinction.
Again, if you're developing a kernel feature, then the ability to exclude all other features is a useful distinction, as it allows you to test your code in as much isolation as possible, or in controlled combination with other features, one at a time, to see what breaks what.
If you're trying to shoehorn a minimal kernel onto a microcontroller where every extra useless byte of code is an imposition then it clearly is a useful distinction.
If you're using the kernel on a general purpose computer for general purpose uses then it's probably not a useful distinction. There I think you'll be perfectly happy with sufficient modularity that the kernel doesn't get bloated with device drivers for devices you don't have.