This is how I generate passwords (and learn C).
$ cd gp/
$ make
$ make install
$ gp -h
gp v1.0
usage: gp [-l <int>] [-n <int>] [-p] [-h][-x digits|uppers|lowers|symbols]
$ gp
cM1@XS06d^Tf*Wpa
$ gp -l 8
x2FXZeW*
$ gp -n 3
6dd3gx+QGCoZ7uyP
$Bw8vkdkc$HOf#3&
75Cyl1V#hWItS3k*
$ gp -x symbols
dPoP8qr8MYYqV9W1
$ gp -p
2661
$ gp -p -l 6
159697