openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
694 stars 36 forks source link

[REVIEW]: LiGuard: A GUI-powered Python Framework for Processing Point-Cloud Data #6751

Open editorialbot opened 1 month ago

editorialbot commented 1 month ago

Submitting author: !--author-handle-->@m-shahbaz-kharal<!--end-author-handle-- (Muhammad Shahbaz ) Repository: https://github.com/m-shahbaz-kharal/LiGuard-JOSS Branch with paper.md (empty if default branch): main Version: v1.0.0 Editor: !--editor-->@hugoledoux<!--end-editor-- Reviewers: @chenzhaiyu, @tgoelles Archive: Pending

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/f57d8cdafbb47f64891ce84685b4cd05"><img src="https://joss.theoj.org/papers/f57d8cdafbb47f64891ce84685b4cd05/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/f57d8cdafbb47f64891ce84685b4cd05/status.svg)](https://joss.theoj.org/papers/f57d8cdafbb47f64891ce84685b4cd05)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@chenzhaiyu & @tgoelles, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review. First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @hugoledoux know.

✨ Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest ✨

Checklists

πŸ“ Checklist for @chenzhaiyu

πŸ“ Checklist for @tgoelles

editorialbot commented 1 month ago

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf
editorialbot commented 1 month ago

Software report:

github.com/AlDanial/cloc v 1.90  T=0.04 s (1576.2 files/s, 132499.0 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Python                          44            766           1278           1992
reStructuredText                11            162            139            514
Markdown                         5             61              0            365
YAML                             4             25              5            167
TeX                              1             10              0             93
DOS Batch                        1              8              1             26
make                             1              4              7              9
-------------------------------------------------------------------------------
SUM:                            67           1036           1430           3166
-------------------------------------------------------------------------------

Commit count by author:

     1  m-shahbaz-kharal
editorialbot commented 1 month ago

Paper file info:

πŸ“„ Wordcount for paper.md is 806

βœ… The paper includes a Statement of need section

editorialbot commented 1 month ago

License info:

βœ… License found: MIT License (Valid open source OSI approved license)

editorialbot commented 1 month ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

editorialbot commented 1 month ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.21105/joss.03471 is OK
- 10.21105/joss.00990 is OK
- 10.1109/MCSE.2007.55 is OK

MISSING DOIs

- 10.1109/icra.2011.5980567 may be a valid DOI for title: 3D is here: Point Cloud Library (PCL)
- No DOI given, and none found for title: Open3D: A Modern Library for 3D Data Processing
- No DOI given, and none found for title: Laspy
- No DOI given, and none found for title: pyntcloud
- No DOI given, and none found for title: The OpenCV Library
- 10.1177/0278364913491297 may be a valid DOI for title: Vision meets robotics: The kitti dataset
- No DOI given, and none found for title: OpenPCDet: An Open-source Toolbox for 3D Object De...
- No DOI given, and none found for title: MMDetection3D: OpenMMLab next-generation platform ...

INVALID DOIs

- None
chenzhaiyu commented 1 month ago

Review checklist for @chenzhaiyu

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

tgoelles commented 1 month ago

Review checklist for @tgoelles

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

hugoledoux commented 1 week ago

@chenzhaiyu @tgoelles just a small reminder not to forget this review

tgoelles commented 1 week ago

Mine can be found here: https://github.com/m-shahbaz-kharal/LiGuard-JOSS/issues/1 I can not checkoff all the points. See my reasoning in my review there.

chenzhaiyu commented 1 week ago

I will complete my review by next week.

hugoledoux commented 1 week ago

I missed this @tgoelles sorry. I think it's better if the review is here but this is fine.

I agree with most of @tgoelles points, and while the 2nd reviewer will do his review next week, I am interested in hearing about the main point raised:

  1. what is the novelty and also a comparison to PDAL and ROS should be provided
  2. I now notice that the commits are indeed less than optimal. If it was in a private repo, making it public is one click. I am slightly worried that the repo has "-JOSS" in its name. Is it because the "real" repo will stay private?

Actually, the authors recommend "reject" but this is not really how JOSS proceeds. We aim at bringing the submission to a certain standard that we deem accepted, in this case when all the checklists can be checked.

chenzhaiyu commented 1 week ago

The authors present a Python GUI for processing LiDAR data, optionally accompanying imagery. They claim the contribution user-friendly with five sub-modules for IO, configuration, inter-process data sharing, data processing, and visualization.

General Concerns

  1. I am not sure if the magnitude of scholarly contribution is above the bar. This concerns both the commit history and lines of code. In my opinion the code appears to be largely boilerplate on top of existing libraries.
  2. Although the paper does reference Open3D and OpenCV (line 44). It would be more appropriate to state clearly the diference from existing libs (not limited to the two), highlighting the authors' unique contributions rather than making broad claims.

Paper

  1. The authors emphasize multiple times GUI to contrast their contribution from other software. I support @tgoelles's point that it is important to discuss and conceptually compare other GUI-based software to provide context.
  2. I find the claim of extensible (line 28) not sufficiently substantiated as much as the other ones.
  3. Currently, the paper includes only one conceptual figure. Given that the GUI is the primary focus of the software presentation, incorporating visual elements would probably help.

Documentation

  1. The README sections could be made more user-friendly by including self-contained examples. As it stands, one must read through the lengthy documentation to get started with the software. A concise example at the beginning would help. The current example usage is too conceptual and less ideal.
  2. Documentation for modules and functions is incomplete and almost broken in formatting. E.g., https://m-shahbaz-kharal.github.io/LiGuard-JOSS/algo.html.
  3. While automated tests seem to be present, their usage is undocumented.
  4. If example data can be provided, users would be able to quickly test the software. Without such data I could only follow the README until opening-the-pipeline-config-file, and thus could not confirm the functional claims beyond that point.
m-shahbaz-kharal commented 1 week ago

Hi, I believe all the reviews are submitted as the assigned reviewers (@chenzhaiyu and @tgoelles) have submitted their responses; please inform me if that is not correct. In the following the response to the reviews is submitted.

Dear Reviewers,

Thanks for a thorough review. The submitted comments/recommendations/decisions helped us a lot in understanding the process of publication in JOSS more clearly, and more importantly, it has helped us see the potential issues in both the paper and the code/repository. The issues discussed in the reviews primarily included incomprehensive statement-of-need, missing references and comparisons to some similar libraries, broader (than evident) claims, improper tests and documentation, and a lack of enough commit history. Based on the comment from @hugoledoux ("We aim at bringing the submission to a certain standard that we deem accepted, in this case when all the checklists can be checked."), it seems like the submission can be improved and eventually published if it checks all the requirements; please inform us if that is not the case for this submission.

While it may take us sometime before all the raised points/concerns are covered/fixed, some quick comments are provided in the following to answer some of those questions.

Summary of Future Updates

  1. Updates in Paper: Based on the reviews, a major re-writing of the paper is needed. So, although the title and basics of the submission may remain similar, an improved version of the paper.md will be submitted that'll include a comprehensive statement-of-need, missed references, revised claims, novelty statement(s), and comparison to related SOTA packages.

  2. Updates in Repository: Following are the major planned updates to the repo:

    • Quick-Start Guide: A few example datasets and yaml configuration-files will be added to allow quick trying of various features of LiGuard.
    • Documentation Breakdown and Improvements: The documentation will be broken down to multiple sub-docs to allow easy navigation.
    • Installation Package: The software will be bundled as python package to allow easier installation.

Note: The updates will be posted and informed in this thread in the same order as given in Summary of Future Updates above. Please let us know if anything is still missing/unaccounted from our side regarding the review process.

Thanks.