A good deal of DIMPL's logic occurs within Jupyter notebooks designed to visualize and select intergenic regions for processing. These notebooks have advantages around interactive data visualization, and narrative-style documentation of the pipeline. However, they also have important limitations that can be addressed by moving that programming logic into a python CLI. A rebuilt version of the notebooks can potentially still be maintained for data visualization purposes.
Reasons
Here are the primary reasons for moving to a Python CLI:
Efficiency and Speed: CLI tools are generally faster and more efficient than interactive notebooks. Executing code through a CLI eliminates the overhead of running a full notebook environment, leading to quicker code execution and faster iteration.
Automated Workflows: With a Python CLI, you can automate complex workflows and tasks by creating scripts that can be executed with a single command. This is particularly useful for repetitive or batch processing tasks.
Version Control and Collaboration: Using a CLI allows for easier integration with version control systems.
Reproducibility: CLI scripts offer better reproducibility than notebooks. The command-line approach enforces a linear and sequential execution, reducing the chances of running cells out of order and ensuring consistent results.
Testing and Debugging: CLI scripts can be more easily unit tested and debugged since they are designed to be modular and well-organized. This can lead to more reliable and maintainable code.
Customization and Flexibility: CLI tools provide greater flexibility for integrating with other systems, tools, and pipelines. You can create custom command-line options and arguments to tailor the behavior of your scripts to specific needs.
Description
A good deal of DIMPL's logic occurs within Jupyter notebooks designed to visualize and select intergenic regions for processing. These notebooks have advantages around interactive data visualization, and narrative-style documentation of the pipeline. However, they also have important limitations that can be addressed by moving that programming logic into a python CLI. A rebuilt version of the notebooks can potentially still be maintained for data visualization purposes.
Reasons
Here are the primary reasons for moving to a Python CLI: