Disagreements With Grugbrain
Attitude
It is fine to show humility in programming. It is a complex and hard job. However, although played as a joke I have a distaste for programmers willingly pretending to be dumb. It does the profession a lot of damage as a whole that a huge chunk of programming related humor is how dumb programmers are, how no one who shows up at interviews can code, how the programmers that can code still need to directly copy from AI (previously StackOverflow) constantly. I can't imagine how much reputational damage this has done to programming as a profession and displays the childishness of the industry.
Doctors, lawyers, and (real) engineers don't act that way. They take it as a solumn duty to be competent and serve others. Software engineering will never be a mature industry until it can talk about itself like a big boy. Software engineering will never be taken seriously until it acts serious. That means owning being smart, for one.
Type Systems
Grug underplays the role the "big brains" have in advancing the state of the art in software. All good ideas had to be imagined first and coded later. I get the impression Grug's attitude would have been against the creation of the first compilers. A program that defines a completely new language and mechanically translates it to machine code? That seems way too complex, and compilers are some of the most complex software in existence, but the complexity is impotant and often has to be embraced in areas like that.
The primary use of type systems is that it makes it easier for the programmer to reason about the code being written. That is the primary value. You write the types to make explicit the assumptions going into the program. The more sophisticated the type system, the more detail can be specified with the types. This is a great aid in reducing complexity, which Grug should be heavily supportive of. It reduces complexity by drastically limiting which objects can go where which makes things easier for Grug's small brain. A secondary bonus is using type systems gives the computer the ability to check the assumptions stated by the types are consistent with the usage of the interfaces. This offloads complexity from the human mind too the computer.
This is only tangentially related to method suggestion popups, which can be done with or without type systems. To say that is the primary value of type systems is absurd. I'm not really a fan of code suggestions anyway. First they prevent programmers from learning the methods available to them and how they work. It was like an earlier iteration of vibe coding. You pick some things that look right and try to plug them together instead of understanding what you are doing. Second, as a consequence of the first thing, they enable complexity by allowing API producers to have dozens or hundreds of methods and support more complexity than API consumers would otherwise tolerate.
Concurrency
Concurrency is complex, but I believe this is one area where complexity must be embraced. Many languages make concurrency an afterthought and shove it off to the operating system threading interface because it is too complex for the language to handle, but some complexity is unavoidalb and must be taken on. Concurrency fits in this category because the world is highly concurrent. Many things are happening at the same time all the time. If computers can't capture that property, that greatly limits the number of things computers can do. As one example, every serious GUI program needs a separate thread to periodically refresh the graphics. A GUI program that does everything in one thread will be laggy and glitchy whenever it encounters a moderately expensive computation that delays the screen update.
Impostor Syndrome
While Grug is certainly older and more experienced than me, Impostor Syndrome is sometimes a sign of real underlying immaturity. You don't think you belong because you don't. Most people who are truly competent in their field do not get Impostor Syndrome. This ties back into my earlier points about more serious professions like doctors and lawyers. I would bet rates of Impostor Syndrom there are much lower than in software engineering. Part of this is the attitude of the field, but part of this is gatekeeping harder so everyone in a serious position believes they deserve it. Software Engineering should develop similar standards. Once there was an agreed upon set of standards to pass as a software engineer, I bet the rates of Impostor Syndrome would go down a lot. Right now what gives so many Impostor Syndrome is the lack of a good standard.