Why did you do all those things? Did you have to use bash for all that software? Were you concerned about portability? Do you just dislike python?
I have no trouble understanding how complex programs can be written in bash, but I have never understood why.