basic programming exercises and concepts