Did you ever come to a conclusion on the UML thing?
The reason I am asking is that I was recently thinking about it (again). I used to think that UML and strict designs were necessary, and something I would have to learn and implement into my personal process, but this time I came to a different conclusion:
A formal language is a means of recording an idea, but doing so has a price: As all formal languages are limited, anything that is recorded in one will inherit the limitations of the language.
So first recording an idea in UML, and then in the chosen programming language, would deteriorate the idea twice, by applying the limitations of both languages. At least if you also use a strict design.
So instead, I am trying my hand at a different approach with my current project: Iterative development with many loose designs, mostly recorded in plain English, pseudo code, on white board, and scribbled on my table with a pencil.

whatever seems easiest at the time. Formal or informal, whenever possible the rules change to fit the idea, rather than the other way around.
So far it's working out pretty well, and the 3rd implementation is just about complete.