Some things that could improve about verbose mode:
Currently, verbose execution of algorithms displays a sequence of unspecified values. Verbose mode should either display a “table header” at the beginning of the execution, or a field name next to each value on each line.
The logging frequency is customizable but fixed (ie print every 10 or 100 or however many iterations). One way to “let the frequency scale” with the algorithm convergence speed is to use “logarithmic” logging: display progress every iteration until the 10th, then every 10 iterations until the 100th, then every 100 iterations until the 1000th, and so on.
Some things that could improve about verbose mode:
@printf
macro for printing, but one could use logging facilities instead, see https://docs.julialang.org/en/v1/stdlib/Logging/#Logging