Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add pixi demo to schedule #8

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

matthewfeickert
Copy link
Contributor

@matthewfeickert
Copy link
Contributor Author

@munkm (who is traveling and out of office so not expecting to see this) and @kyleniemeyer this PR is ready for review.

@kyleniemeyer
Copy link
Contributor

@matthewfeickert one suggestion is to add some instructions about setting up a virtual environment in the README before installing

@kyleniemeyer
Copy link
Contributor

@matthewfeickert oh, now I'm realizing that pixi is in fact a package management system and not a Python package itself. (I missed this presentation!)

@matthewfeickert
Copy link
Contributor Author

matthewfeickert commented Aug 5, 2024

@kyleniemeyer, I think given your second comment you've now seen https://github.com/munkm/urssi-pixi-demo/blob/7f91d2c1fdc6fb0f483ad4f46a62552b71ab4894/README.md#setup which covers the orignal comment. 👍

Also, indeed, pixi is what I like to call a "project dependency management system" and differs from a Python virtual environment manager or a Conda environment manager in that you're not explicitly curating environment states but rather just declaratively stating the requirements. (You can of course drop into the equivalent of the activated virtual environment with pixi shell but you never need to explicitly run an python -m pip install/conda install command as this is covered by pixi add as you're creating the environment or pixi install if you're getting the repository.)

Maybe for posterity I can record a YouTube video of me running through the creation demo of https://github.com/munkm/urssi-pixi-demo from scratch (basically redoing the demo from the school) and then link that to the README later.

@kyleniemeyer
Copy link
Contributor

@matthewfeickert got it- this is a new one for me. Are there any other examples or steps you can include in the README, so that as it stands the link would be a bit more informative as a demo by itself?

@matthewfeickert
Copy link
Contributor Author

Are there any other examples or steps you can include in the README, so that as it stands the link would be a bit more informative as a demo by itself?

The demo was the live demo I did taking people from pixi init to here, and most of the value I think is seeing it happen "live" in the demo, but @munkm and I were thinking that it would still be worth saving the resultant repository over having everything be transient.

At some level pixi is incredibly simple and rather self descriptive just through use. I think this is one of the reasons people seemed so enthused with it at the summer school. pixi install is actually not even necessary, as if the environment hasn't been created when a pixi run command is executed pixi just creates it automatically.

I'm reluctant to add "do X and now do Y" things to the README as it would be more informative to have people just read the already linked docs (the Basic usage example succinctly covers in text what I basically covered in the live demo). Though I could see a use case for adding a bit of an assignment that someone could do after arriving at the existing demo result from seeing a live demo — either through a lecture or video — such as

  1. Add scikit-learn to the pixi environment through the pixi command line interface.
  2. Add <insert a PyPI only commonly used library here that I can't think of at the moment> to the environment by directly editing the pixi.toml.
  3. Create a test environment separate from the base environment.
    ...

Thoughts?

@kyleniemeyer
Copy link
Contributor

I think the first and last would be good things to demonstrate for sure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants