algorithms and code for fun