Misc programming challenges