Skip to content

GEOS694_ICG peer review #2 - Miaja #3

Description

@miajac

Checklist

  • (partial) Adheres to PEP-8 formatting (or consistent and explained when deviating)
    Most of the formatting follows PEP8 standards, but here are a few things that could be considered: limiting lines to 80 characters, placing all imports together and then placing from statements, and checking spacing between operators and lists.
  • (partial) Commit history that reflects small and frequent commits since project assignment
    There are a few commits in the python script, but committing more frequently would allow users to better understand the reasoning for evolution of the code.
  • [✓ ] Clear installation instructions, installation tested if available
    Yes. I appreciated the comments in the installation script that helped users understand which types of imports are required.
  • (partial) Current version number (note the current version number)
    I didn't see it in the README, but the commit history references version 1.3.0.
  • [✓] Example problem with required data either provided or with a data fetching script
    Yes. Script references how to download data and then run the code with that data.
  • [✓] Appropriate use of functions, tasks are broken into logical chunks
    Yes, there were multiple functions with clear delineation between tasks.
  • (partial) Readability, organization, accessibility: Code is well-commented where necessary, files are organized in a logical manner, naming is intuitive or explanatory
    The files are organized in a logical manner, but there could be a lot more comments. One way to go about this would be to ensure that each function has a docstring at the beginning so that, at a minimum, each function's overall goal is understood.
  • [✓ ] Documentation is explanative of: what, why, how
    Yes. I especially liked the table, where each script was explained in this context.
  • [ ] Task GEOS694 Final Project Review_Saurabh #1 Selected (note which task is selected)
    Parallelization/Concurrency
  • [ ] Task Clean up README formatting and fix path naming #2 Selected (note which task is selected)
    State-saving. I found this part really cool, btw.

Reflection Questions

Please answer these questions based only on what you see in the GitHub repository, or what you can glean through opening issues.
Pretend you are an anonymous reviewer who has been asked to evaluate this repository for publication and open-access considerations.

1. What does this code do?
This code takes distributed acoustic sensing data and compares it with P- and S-wave arrivals. It produces plots of this waveform data and terminal output containing wave amplitude statistics.

2. How does this code do it?
This code accomplishes this task by initiating the datasets, determining if it has been processed before, and then (if processing is required) it uses parallel processing to load DAS data, calculate arrival times, find peaks, and calculate plots, after this parallel processing the data is plotted and saved.

3. What data does this code work with?
This code works with distributed acoustic sensing data.

4. What do you find cool/interesting/unique about this code?
I really liked the state-saving portion of this code and the fact that it can be used to directly generate usable figures.

5. How can this code be improved (e.g., restructuring, optimization, improved examples, clearer explanation? - provide some input into how you could implement that)
I really liked this script, but here are a couple of notes I made that could possibly improve the script. 1. Consider placing all the imports together and then following that with the from statements. 2. Make the PEP8 changes suggested above. 3. Add more comments throughout this script, including docstrings for each function. 4. Explain hardcoded variables further.

Task: Pull Request

  1. Find an error/typo/bug/inconsistency in the code, it can be really minor, this is just to practice making a pull request.
  2. Fork your classmate's repository and clone the repo to your own computer.
  3. Fix the error that you found on your local version and push the change to your forked repository.
  4. Open a pull request in your classmate's repository requesting the change you made be incorporated into their repository.
  5. In the pull request, write a small message describing the change, and any additional information you'd like to include.
  6. Link to your pull request in this issue, and link to this issue in your pull request.

Replaced magic numbers with clearly labeled, commented variables to aid in user comprehensibility
Link to pull request:

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions