add more methods of setting Development Environment
See original GitHub issuehttps://dvc.org/doc/user-guide/contributing
Development environment of DVC can be setup by a number of methods like using Docker for installation, or using pipenv. @shcheklein should be add more methods in our Documentation.
Would you like to work on this? Yes
Issue Analytics
- State:
- Created 4 years ago
- Reactions:2
- Comments:5 (3 by maintainers)
Top Results From Across the Web
Simplifying Software Development Environment Setup
If you want to understand how to set up a dev environment using this simple tool, just follow along with these steps: ·...
Read more >Using Multiple Environments to Improve Your Development ...
After adding a repository, you can then set up your environment. You can have multiple environments to a single repository.
Read more >Use multiple environments in ASP.NET Core | Microsoft Learn
Learn how to control app behavior across multiple environments in ASP.NET Core apps.
Read more >Best Practices Setting up Your Local Development Environment
Setting up your local development environment can be done in many different ways. This post presents different methods and best practices ...
Read more >How to Set Up an Integrated Development Environment (IDE)
To actually do work as a developer, you'll need four main things to set up your integrated development environment: a code editor, command...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

@kurianbenoy I do understand temptation of packing whole development environment into docker. In situations, when you have very complicated environment with lot of dependencies that might come in handy.
I also agree with guys that dvc is relatively simple project in terms of required dependencies, yet situations like https://github.com/iterative/dvc/issues/2008 happen. It is not stricte related to this discussion, but I mention it because even in such simple case as ours, dependency problems might happen.
If someone is interested in setting up environment, running tests and feels like developing in docker, who are we to stop him. Mentioning this in docs should be rather harmless. But there is one thing: before editing docs for such case, we should have separate repository with working build.
My perspective is to stick to the defaults, that means, using pip (and highly recommended, a virtual environment).
Docker could be really complicated (in term of “best practices”), it creates a lot of overhead (more knowledge required to run the project: how to mount a volume, compatibility with IDEs, connecting it with other remote services like SSH, etc.).
Also, Pipenv is really opinionated, I don’t like it, but I understand that some people prefer it. The project, as it is right now, can be used with Pipenv without any additional modification (now, it reads the requirements.txt as a fallback, https://github.com/pypa/pipenv/issues/11#issuecomment-340485890).
In my experience, it is not a good idea to mess up with people’s software development environment, as it is a really opinionated topic (e.g. https://en.wikipedia.org/wiki/Editor_war , OS war, etc.), it is better to stick to the defaults.
Anyways, that’s my opinion, maybe the other maintainers hold another point of view.