I try to make programs for the technical challenge as well as their final purpose (I'm also rather inexperienced in many areas)