Ponderings of a Mad Man; focused on the topics of Linux, Java and Software Design Concepts