But using UML as the only documentation or using UML badly is just terrible and a complete waste of time… and it’s all too easy to use it badly. So UML may not deserve it’s terrible reputation… but it has earned it.
Edit: It’s worth noting that parts of UML are better than others. Lower level stuff like sequence diagrams, activity diagrams and state machine diagrams tends to be used better in my subjective experience. Generally speaking I find the “Behaviour Diagrams” to use the UML terminology, are the most useful parts of UML and the parts I wish people would consider using for the sake of standard easy to work with data exchange. The UML “Structure Diagrams” (the other half of UML) is what I find people are usually thinking of when they talk about UML in general practice and these are the shittier ones that people tend to have the bad memories of hashing out in long boring management meetings and people making unfounded claims about how magic software from IBM and other giant consulting firms will somehow turn these diagrams into code automatically if the diagrams were somehow perfect enough.
[1] https://en.wikipedia.org/wiki/IBM_Rational_Rose_XDE [2] https://en.wikipedia.org/wiki/Design_Patterns [3] https://en.wikipedia.org/wiki/Extreme_programming
Different people use it for different things. It is still a reasonable option to document things, where it provides a slightly better abstraction than just arrows-and-boxes. This was also the real usage I used to see.
The use case of generating code from it, in my opinion, was a disaster. It was much faster to just type the code than to slowly draw the diagrams in not very good drawing tools. Tooling vendors heavily promoted this, and the backlash was probably a big part of the near death of UML.
There were also the UML purists. I got in an argument with an architect who insisted that my diagram was useless, as the user was a slightly different stick figure than the Official UML Stick Figure. I wont repeat my response to him here, as we are in polite company. But that perfect-UML-or-useless attitude was pervasive.
For large projects it quickly becomes very difficult to effectively manage models. Once you use the round-trip-engineering features of some tools, you either improve the code or the diagrams, but there never is enough time to do both well.
As a communications medium it is an extremely specialized jargon. Outsiders, generally, require lots of hand-holding to gain even basic comprehension of what is documented.
Based on the foregoing, UML never was and probably never will be cool, or even particularly useful. Ok, some subsets of UML are effective in larger, complex projects, e.g. modern fly-by-wire avionics.
The only people who ever thought it was cool used white shirts with thin ties.
So, no.