- Fork or clone this repository into your own github account.
- All your work will be done in your repository.
- Inspect the code and understand what it's doing.
- When going through the steps below, create git commits, making a history of changes that can be inspected later on.
- At the end of the exercise you will have to push your code. You can also push regularly before that if you want.
- Both functions in the
object_analysis
module have a problem. - Write a test for each function that demonstrates the problem.
- Fix the function and ensure the test passes.
- Both functions' performance can be improved for performance and readability
- Describe how you would go about increasing the performance. What steps would you take? How do you determine what to improve?
- Try to increase the performance of both functions. Use only built-in python modules and types, don't bother trying to use external packages or writing code in lower-level languages.
- Try to improve the readibility of the functions.
- The
object_analysis
module contains not only functions but also some little examples/mini-tests. Can you re-organise this? - The code has no comments nor descriptions. Add as appropriate.
- Create a GitHub Action (or any other CI script) that runs automatic tasks after each commit. Add the tasks you think are relevant.