ImperialCollegeLondon / ImperialCollegeLondon/ReCoDE-PythonGUI

Feedback Day 2

Open
#2 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2
Forks
1
PR merge metrics
No merged PRs in 30d

Description

#### General

- [x] There are two text files in the repo `charis4.txt` and `charis4.dat` that should not be there. If they are needed for `day2`, they should live within that folder.
- [x] While this is mean to be taught, the material should be sort of self-explanatory thanks to comments and explanation. Day 1 is pretty good, but this lesson seems to have been rush through...

#### Lesson material

- [x] This lesson is pretty vague. It is OK if most of it will be going through the example code, but there should be some context and clear purpose - not necessarily in the form of learning outcomes, but along those lines.
- [x] For this lesson it is necessary to have `numpy` installed in the virtual environment. This should be explained - and remind people to activate the environment.

#### Code

- [x] The code should be clearly commented, as it was in the code for Day 1, specially the new bits.
- [x] Functions should include docstrings to document them properly, as well as their arguments - it is not just about writing code that works, but also about showing good coding practices.
- [x] Given that you have `numpy` now, create the data using `np.arange` or `np.linspace`
- [x] It is totally unclear what ABP is or why it is created the way it is created (where does 91.5061 comes from?)
- [x] Given that Dearpygui uses tags to identify different elements in the GUI, so they can be updated appropiately, I would define this tags gloibally, so they can be re-used without risk of making typos. For example, define `SERIES_TAG = "series_tag"` and then use everywhere else `SERIES_TAG`.
- [x] While these are meant to show simple scripts to create GUIs, in the spirit of good coding practices I would organise the scripts as:

```python
import ...

# set CONSTANTS here, if any

# define functions here
# the more code you can put within functions with a specific purpose, the better

if __name__ == "__main__":

# put the rest of your script here
# including all the steps required to create and run the dearpygui app
```

[Here](https://medium.com/@ayushpriya10/why-do-we-use-if-name-main-in-python-cb77b95e0ce7) you can find more info about it. As I say, I'm aware these are just simple examples, yet I think it is a useful good approach to adopt ASAP.

Contributor guide

No contributing guide indexed for this repository

Research direction

Review the Day 2 lesson material and the root-level charis4.txt and charis4.dat files first. Check the lesson context, numpy environment guidance, comments, docstrings, data creation, ABP explanation, tag constants, and script structure against the checklist. Done means each listed feedback item is addressed and the lesson remains understandable as a teaching example.

Written by the indexing model from the issue text.

Assessment

Tech stack
numpy, python
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.