Erik, you aren't really trying to understand what my objections were. I was not defending Java. I was criticizing your argument on the topic. I have been using Java since v0.96, before JavaSoft (Sun) released v1.0 in January of 1996. At the request of a customer, I was evaluating Java as a replacement for Visual Basic as a scripting language with their software products. As much as I loathe Visual Basic, I recommended that they not switch to Java at that time. To me Java is just a tool. I always have, and will continue to, seek out the best tools for the job. I still write code in C when that is the best tool for a task and I'll use Rust when that is the best tool.
I began GUI programming with the advent of the original Macintosh 128k. It was the first commercially viable graphical user interface I had seen. The possibilities certainly caught my attention. State of the art for the independent software vendor for whom I worked was screen formatting on an interactive IBM 3270 terminal, which I had just introduced to their batch processing only world.
We used Object Pascal to program the Mac. Later, after starting my own company, we switched to Symantec's THINKC. One feature of the new product we created was a GUI screen painter that enabled users to layout their application screens, assign behaviors to the graphical objects on the screen, and connect them to databases. Our customer demo let a customer build a small but functional Mac application, press a button and generate the THINKC code and an Oracle database, build the app - and then try it out - in 1990.
Even then, my focus was on GUI applications that interacted with databases on networks - not just local data. I've used most of the GUI building techniques available with Java: AWT, Swing, Eclipse SWT, GWT (my favorite) and a few lesser known toolkits whose names escape me. Alan Kay and the team at PARC essentially invented the modern GUI and for good reason chose the OOP model when implementing it. The underlying main event loop and event messaging are still at work even with JavaScript on browsers. For my purposes, I now build only browser-based GUIs. The capabilities of HTML5, CSS, and the modern JavaScript frameworks like ReactJS have so far provided all the tools I need - and after all these years I'm still building GUI layout tools and generating code from behavioral specifications. I do not write GUIs with Java.
I'm not going to try to defend Java or the Java programmers that you choose to attack. I've seen the generally low standards, from my perspective, of the majority of programmers. What I do challenge is the viewpoint from which you attack them. By your own admission, you chose not to reach beyond basically single-program mobile apps. Certainly a choice that you have every right to make. The tools with which you choose to build those apps are your own business as long as the applications meet your customers' expectations, and you have every right to share what you've learned and the opinions that you've formed.
However, what you have learned while plying your trade has little or no applicability in the far larger world of distributed and cloud-based application development. The arguments you use to support your criticisms emphasize how little you understand about the challenges of that other world. Your world can afford the lone craftsman striving for perfection. My world cannot. The ugly reality is that we have too much to do and too little time or money to do it. We have to be architects and engineers, not artists. Give us a break until you've walked a mile in our shoes.