realpython / realpython/python-guide

Clarification on pipenv and virtualenv

Open
#981 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Batchfile
Stars
29.8k
Forks
5.9k
PR merge metrics
No merged PRs in 30d

Description

In the Virtual Environments document (dev/virtualenvs/) we start off by learning about pipenv but then move on to the lower level virtualenv. It is a little unclear under what circumstances we would be using virtualenv? I mean, I know it can practically be used, but for folks approaching Python for the first time it can be confusing.

I'm not suggesting the virtualenv section should go away, but maybe some additional clarification would be helpful. Something along the lines of:

"pipenv wraps a lower-level virtual environment utility - virtualenv. If you want to learn about using virtualenv, read on. Otherwise you can skip to the next chapter."

Where I personally really started getting confused is under Other Notes. Without scrolling back up the page it is not clear if this section is a part of the virtualenv discussion or if it is meant to be top-level and thus applicable to both pipenv and virtualenv.

Things become murkier when we start throwing additional utilities into the mix - as someone without experience with these utilities it seems to me that together they run somewhat parallel to pipenv.

Thanks for your hard work on this guide!

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Virtual Environments document in dev/virtualenvs/ and read the pipenv, virtualenv, and Other Notes sections together. Clarify how pipenv relates to virtualenv, indicate when readers may skip the virtualenv material, and make clear which notes apply to each utility; done means a first-time Python reader can follow the section without confusion.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.