Homework Task
Implement a classical electrodynamics function (e.g. calculating the resistance of a wire) as a python function and use this function as an argument in another function:
use at least 2 of the following functions / concepts of functional programming (https://docs.python.org/3/howto/functional.html):
For this you have to complete the following steps:
- Discuss in this repository using issus which function you want to implement. Everyone (but the maintainer) has to implement another function. Each homework task is a function that includes algorithm, docstrings (including module docstring with a description of the physics) and unit test.
- Each function should be its own module with a descriptive filename.
- Discuss who should be the maintainer for the repository. The maintainer does not have to implement a function but is reponsible for merging pull requests.
- Discuss and generate milestones for your function to optimize the timeline of your project
- Fork this repository
- Generate the necessary files for your task and commit them. Commmit not just the final result but also intermediate steps. However Commits should be significant changes and have to contain a meaningful commit message so that the maintainer and reviewer understands what was changed.
- create only one pull requests for your work. The deadline for the PR is two days before the homework deaadline to allow for enough time to review. If you miss this deadline your PR will not be reviewed and you loose the chance for fixing it.
Also use discord for discussing solutions to any issues popping up.
Tasks for algortihm, documentation, unit test
- pay attention to add references to all code you use from somewhere else
- each function should be its own (module) file (https://docs.python.org/3/tutorial/modules.html)
- the unit test should use the assert statement (https://docs.python.org/3/library/unittest.html)
- reviewer checklist:
- does the PR title and description is meaningful and does the commits correspond to them
- does the PR include docstrings
- does the PR include unit tests
- does the PR include the algorithm
- does the code follow the guidelines given in the homework description
- test the code and unit tests to see if it runs succesfully
Grading
Homework Points |
|
|
|
|
|
|
|
Interaction on project |
|
|
|
Category |
min per person |
point factor |
max points |
Commits |
1 |
1 |
1 |
Pull requests |
1 |
3 |
3 |
PR Accepted |
1 |
4 |
4 |
Other PR reviewed |
1 |
3 |
3 |
Issues |
5 |
1/5 |
1 |
Closed Issues |
5 |
1/5 |
1 |
# Conversations |
25 |
1/5 |
5 |
|
|
|
|
Total |
|
|
18 |
|
|
|
|
Shared project points |
|
|
|
# Milestones |
15 |
1/5 |
3 |
|
|
|
|
Total |
|
|
21 |
|
|
|
|
|
|
|
|
Result |
|
|
|
Task completion |
|
|
21 |
|
|
|
|
Sum |
|
|
42 |