Recently I was searching for Python projects on Github for contribution. Every single project I found, had a thing common among them. In every project’s contribution guide, it was asked to set up the virtual environment for the project. What the heck is this virtual environment and how does it work? As a beginner to open source projects, the problem I faced, in the beginning, was how to set up the development environments for the projects I was looking at.