This is a great topic and immediately grabbed my attention. A lot of it has to do with your resources. As an indie developer for the past decade, I've been working on software products in an DevOps environment as the sole employee. It's tough to keep on top of everything. Development, IMHO, is the most important thing as in a way, it's also your best marketing (a continually updated product shows a vested interest). I've been fortunate in that my software targets technical people (for the most part), but corporate environments can also very old-skool and like PDF and "manuals". To that end, I've started to use wiki-like blog postings to help describe UI elements and program functionality. With Wordpress and like products, it's very easy to put together a quick document with images/text and then link them via a "Help" button in the UI.
There's an adage of the "cockpit test", if your software looks like an airplane cockpit, you should look at redesigning the software. There's also "people don't read documentation".. personally, I choose to spend my time in the UI and supplement it with quick documentation. I'm by no means perfect, and I have a stack of things to document via this method; but my hope is that I can stay on top of the UI work and allow that to answer my questions... then again, perhaps I'm old-skool and what I like is perhaps "dated" looking.. I use the hell out of the WinXP graphics pack from Glyfx (https://www.glyfx.com/shop/listings/xp-icon-sets/)