In this assignment, you will get some practice reading code that other people have written. Understanding code is the first step to building it, so do your best to intuit what each of the programs does without running them. Some of these are extremely arcane and hard to understand, while others are very simple. They are not presented in any particular order, so if something doesn't make sense, skip it and try a different one.
Go to https://github.com/CodeSoftwareComputation/puzzles and look at the .py files. Each file contains a piece of python code that is deliberately obscure. For each file, open it and look at the code. In a response email, tell me what each piece of code does. Then, explain how you know. Describe, using snippets of the code and line numbers, how the different parts of the code work together to accomplish something.
For extra credit, once you've written up your thoughts on a piece of code, use PyCharm to try running it. Some of the programs deliberately won't print anything or seem to do anything, while others will respond with errors. Try to expand the programs so that they print data that demonstrates what they do, and attach your modified files to your response email.
Please email your response to arthurberman94+exp@gmail.com