{"componentChunkName":"component---src-templates-blog-post-tsx","path":"/september-19-dvc-heartbeat","result":{"data":{"markdownRemark":{"id":"ed06d905-d6c8-5d64-93f8-4371108220db","excerpt":"<h2>News and links</h2>\n<p>We are super excited to co-host our very first\n<strong><a href=\"https://www.meetup.com/San-Francisco-Machine-Learning-Meetup/events/264846847/\">meetup in San Francisco on October 10</a></strong>!\nWe will gather at the brand new Dropbox…</p>","html":"<h2>News and links</h2>\n<p>We are super excited to co-host our very first\n<strong><a href=\"https://www.meetup.com/San-Francisco-Machine-Learning-Meetup/events/264846847/\">meetup in San Francisco on October 10</a></strong>!\nWe will gather at the brand new Dropbox HQ office at 6:30 pm to discuss\nopen-source tools to version control ML models and experiments.\n<a href=\"https://twitter.com/FullStackML\">Dmitry Petrov</a> is teaming up with\n<a href=\"https://www.linkedin.com/in/daniel-fischetti-4a6592bb/\">Daniel Fischetti</a> from\n<a href=\"https://standard.ai/\">Standard Cognition</a> to discuss best ML practices. Join us\nand save your spot now:</p>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://www.meetup.com/San-Francisco-Machine-Learning-Meetup/events/264846847/\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Open-source tools to version control Machine Learning models and experiments</h4>\n            <div class=\"elp-description\">AI and ML are becoming an essential part of the engineering and data science everyday workflow. ML teams need new tools…</div>\n            <div class=\"elp-link\">meetup.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/open-source-tools-to-version-control.png\" alt=\"Open-source tools to version control Machine Learning models and experiments\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<p>If you are not in SF on this date and happen to be in Europe — don’t miss the\nPyCon DE &#x26; PyData Berlin 2019 joint event on October 9–11. We cannot make it to\nBerlin this year, but we were thrilled to discover 2 independent talks featuring\nDVC by\n<a href=\"https://de.pycon.org/program/pydata-ppgwxl-version-control-for-data-science-alessia-marcolini/\">Alessia Marcolini</a>\nand\n<a href=\"https://de.pycon.org/program/pydata-cwmae7-tools-that-help-you-get-your-experiments-under-control-katharina-rasch/\">Katharina Rasch</a>.</p>\n<p>Some other highlights of the end of summer:</p>\n<ul>\n<li>Our users and contributors keep creating fantastic pieces of content around\nDVC (sharing some links below, but it’s only a fraction of what we have in\nstock — can’t be more happy and humbled about it!).</li>\n<li>We’ve reached 79 contributors to\n<a href=\"https://github.com/iterative/dvc\">DVC core project</a> and 74 contributors to\n<a href=\"https://github.com/iterative/dvc.org\">DVC documentation</a> (and have something\nspecial in mind to celebrate our 100th contributors).</li>\n<li>we enjoyed working with all the talented\n<a href=\"https://developers.google.com/season-of-docs/\">Google Season of docs</a>\napplicants and now moving to the next stage with our chosen tech writer\n<a href=\"http://dashohoxha.fs.al/\">Dashamir Hoxha</a>.</li>\n<li>\n<p>We’ve crossed the 3,000 stars mark on Github\n(<a href=\"https://github.com/iterative/dvc\">over 3,500 now</a>). Thank you for your\nsupport!</p>\n<p><html><head></head><body><blockquote class=\"twitter-tweet\" data-dnt=\"true\"><p lang=\"en\" dir=\"ltr\"><a href=\"https://t.co/vhkN3zWzjT\">https://t.co/vhkN3zWzjT</a> just hit 3000 stars on <a href=\"https://twitter.com/hashtag/Github?src=hash&#x26;ref_src=twsrc%5Etfw\">#Github</a>! <a href=\"https://t.co/AILppwghuu\">https://t.co/AILppwghuu</a> <br>Thank you for your trust, your contributions and your insights🤝<br>We are beyond happy to have you with us on this exciting journey🚀 <a href=\"https://t.co/dwokD2v7t7\">pic.twitter.com/dwokD2v7t7</a></p>— 🦉DVC (@DVCorg) <a href=\"https://twitter.com/DVCorg/status/1147220439472545793\">July 5, 2019</a></blockquote></body></html></p>\n</li>\n<li>\n<p>We’ve had great time at the\n<a href=\"https://events.linuxfoundation.org/events/open-source-summit-north-america-2019/program/\">Open Source Summit</a>\nby Linux foundation in San Diego — speaking on stage, running a booth and\nchatting with all the amazing open-source crowd out there.</p>\n<p><html><head></head><body><blockquote class=\"twitter-tweet\" data-dnt=\"true\"><p lang=\"en\" dir=\"ltr\">Love all <a href=\"https://twitter.com/DVCorg\">@DVCorg</a> booth buzz at <a href=\"https://twitter.com/hashtag/OSSummit?src=hash&#x26;ref_src=twsrc%5Etfw\">#OSSummit</a>! 🎉<br>Stop by and grab some cool swag 🌈and participate in our easy fun contest to win a Jetson Nano, the coolest fuzzy owls and a bunch of other staff! 🤩 <a href=\"https://t.co/MIzfilhrRJ\">pic.twitter.com/MIzfilhrRJ</a></p>— Svetlana Grinchenko (@a142hr) <a href=\"https://twitter.com/a142hr/status/1164256520235675648\">August 21, 2019</a></blockquote></body></html></p>\n</li>\n</ul>\n<p><html><head></head><body><span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto;  max-width: 700px;\">\n      <a class=\"gatsby-resp-image-link\" href=\"/static/ccbbea0b26a9ac64744739bf7a5ee8b5/31ed7/open-source-summit-by-linux-foundation.jpg\" style=\"display: block\" target=\"_blank\" rel=\"noopener\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&#x27;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAwX/xAAVAQEBAAAAAAAAAAAAAAAAAAABAv/aAAwDAQACEAMQAAABgdRirDME/8QAGhAAAgMBAQAAAAAAAAAAAAAAAQMAAhMREv/aAAgBAQABBQJCreLHjdVRXcmnQms//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHBAAAwABBQAAAAAAAAAAAAAAAAERAhIhQWGB/9oACAEBAAY/AuF0zG+wVE2aXtkQ/8QAGRABAAMBAQAAAAAAAAAAAAAAAQARIVFB/9oACAEBAAE/IQ3tFcIx7UXpkauJyNaCwPJsYY02uz//2gAMAwEAAgADAAAAEBTP/8QAGREAAgMBAAAAAAAAAAAAAAAAAAERITFR/9oACAEDAQE/EIiuDV4f/8QAGBEBAQADAAAAAAAAAAAAAAAAAQARIWH/2gAIAQIBAT8QcbYe3//EAB8QAQACAQMFAAAAAAAAAAAAAAEAEUEhMaFhcYHB8P/aAAgBAQABPxA5cMoKx6j0Vtg5dyLDUgC4fXN+hPMrKBemwMiHWoDtBq06ufE//9k=&#x27;); background-size: cover; display: block;\"></span>\n  <picture>\n        <source srcset=\"/static/ccbbea0b26a9ac64744739bf7a5ee8b5/c54d4/open-source-summit-by-linux-foundation.webp 175w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/a3432/open-source-summit-by-linux-foundation.webp 350w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/426ac/open-source-summit-by-linux-foundation.webp 700w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/c139f/open-source-summit-by-linux-foundation.webp 1050w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/7f403/open-source-summit-by-linux-foundation.webp 1400w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/775df/open-source-summit-by-linux-foundation.webp 2600w\" sizes=\"(max-width: 700px) 100vw, 700px\" type=\"image/webp\">\n        <source srcset=\"/static/ccbbea0b26a9ac64744739bf7a5ee8b5/8dc06/open-source-summit-by-linux-foundation.jpg 175w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/f4417/open-source-summit-by-linux-foundation.jpg 350w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/571ad/open-source-summit-by-linux-foundation.jpg 700w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/566e2/open-source-summit-by-linux-foundation.jpg 1050w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/3a5dd/open-source-summit-by-linux-foundation.jpg 1400w, /static/ccbbea0b26a9ac64744739bf7a5ee8b5/31ed7/open-source-summit-by-linux-foundation.jpg 2600w\" sizes=\"(max-width: 700px) 100vw, 700px\" type=\"image/jpeg\">\n        <img class=\"gatsby-resp-image-image\" src=\"/static/ccbbea0b26a9ac64744739bf7a5ee8b5/571ad/open-source-summit-by-linux-foundation.jpg\" alt=\"open source summit by linux foundation\" title=\"open source summit by linux foundation\" loading=\"lazy\" style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\">\n      </picture>\n  </a>\n    </span></body></html></p>\n<html><head></head><body><hr></body></html>\n<p>Here are some of the great pieces of content around DVC and ML ops that we\ndiscovered in July and August:</p>\n<ul>\n<li>\n<p>** Great insightful discussion on Twitter about versioning ML projects started\nby <a href=\"https://medium.com/@NathanBenaich\">Nathan Benaich</a>.**</p>\n<p><html><head></head><body><blockquote class=\"twitter-tweet\" data-dnt=\"true\"><p lang=\"en\" dir=\"ltr\">🙏Question to ML friends: How do you go about version control for your ML projects (data, models, and intermediate steps in your data pipelines)? Have you built your own tools? Are using something open source? Or a SaaS? Or does this come bundled with your ML infra products? Thx!</p>— Nathan Benaich (@NathanBenaich) <a href=\"https://twitter.com/NathanBenaich/status/1151815916512010242\">July 18, 2019</a></blockquote></body></html></p>\n</li>\n<li><strong><a href=\"https://medium.com/ixorthink/our-machine-learning-workflow-dvc-mlflow-and-training-in-docker-containers-5b9c80cdf804\">Our Machine Learning Workflow: DVC, MLFlow and Training in Docker Containers</a>\nby <a href=\"https://medium.com/@ward.vanlaer\">Ward Van Laer</a>.</strong></li>\n</ul>\n<blockquote>\n<p>It is possible to manage your work flow using open-source and free tools.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://medium.com/ixorthink/our-machine-learning-workflow-dvc-mlflow-and-training-in-docker-containers-5b9c80cdf804\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Our Machine Learning Workflow: DVC, MLFlow and Training in Docker Containers</h4>\n            <div class=\"elp-description\">Googling for machine learning frameworks to version data, track python models etc.. I was surprised to see that these…</div>\n            <div class=\"elp-link\">medium.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/our-machine-learning-workflow.jpeg\" alt=\"Our Machine Learning Workflow: DVC, MLFlow and Training in Docker Containers\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://medium.com/qonto-engineering/using-dvc-to-create-an-efficient-version-control-system-for-data-projects-96efd94355fe\">Using DVC to create an efficient version control system for data projects</a>\nby <a href=\"https://medium.com/@basile_16101\">Basile Guerrapin</a>.</strong></li>\n</ul>\n<blockquote>\n<p>DVC brought versioning for inputs, intermediate files and algorithm models to\nthe VAT auto-detection project and this drastically increased our\n<strong>productivity</strong>.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://medium.com/qonto-engineering/using-dvc-to-create-an-efficient-version-control-system-for-data-projects-96efd94355fe\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Using DVC to create an efficient version control system for data projects</h4>\n            <div class=\"elp-description\">At first we were looking for a tool to help us dealing with production data files such as trained machine learning…</div>\n            <div class=\"elp-link\">medium.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/using-dvc-to-create-an-efficient-vcs.png\" alt=\"Using DVC to create an efficient version control system for data projects\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://techsparx.com/software-development/ai/dvc/versioning-example.html\">Managing versioned machine learning datasets in DVC, and easily share ML projects with colleagues</a>\nby <a href=\"https://twitter.com/7genblogger\">David Herron</a>.</strong></li>\n</ul>\n<blockquote>\n<p>In this tutorial we will go over a simple image classifier. We will learn how\nDVC works in a machine learning project, how it optimizes reproducing results\nwhen the project is changed, and how to share the project with colleagues.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://techsparx.com/software-development/ai/dvc/versioning-example.html\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Managing versioned machine learning datasets in DVC, and easily share ML projects with colleagues</h4>\n            <div class=\"elp-description\">Software Development Artificial Intelligence Data Version Control (DVC) Managing versioned machine learning datasets in…</div>\n            <div class=\"elp-link\">techsparx.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/managing-versioned-machine-learning-datasets.jpeg\" alt=\"Managing versioned machine learning datasets in DVC, and easily share ML projects with colleagues\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://towardsdatascience.com/how-to-use-data-version-control-dvc-in-a-machine-learning-project-a78245c0185\">How to use data version control (dvc) in a machine learning project</a>\nby <a href=\"https://towardsdatascience.com/@matthiasbitzer94\">Matthias Bitzer</a>.</strong></li>\n</ul>\n<blockquote>\n<p>To illustrate the use of dvc in a machine learning context, we assume that our\ndata is divided into train, test and validation folders by default, with the\namount of data increasing over time either through an active learning cycle or\nby manually adding new data.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://towardsdatascience.com/how-to-use-data-version-control-dvc-in-a-machine-learning-project-a78245c0185\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">How to use data version control (dvc) in a machine learning project</h4>\n            <div class=\"elp-description\">When working in a productive machine learning project you probably deal with a tone of data and several models. To keep…</div>\n            <div class=\"elp-link\">towardsdatascience.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/how-to-use-data-version-control.jpeg\" alt=\"How to use data version control (dvc) in a machine learning project\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://towardsdatascience.com/version-control-ml-model-4adb2db5f87c\">Version Control ML Model</a>\nby <a href=\"https://towardsdatascience.com/@TianchenW\">Tianchen Wu</a></strong></li>\n</ul>\n<blockquote>\n<p>This post presents a solution to version control machine learning models with\ngit and dvc (<a href=\"https://dvc.org/doc/tutorial\">Data Version Control</a>).</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://towardsdatascience.com/version-control-ml-model-4adb2db5f87c\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Version Control ML Model</h4>\n            <div class=\"elp-description\">Machine Learning operations (let’s call it MLOps under the current buzzword pattern xxOps) are quite different from…</div>\n            <div class=\"elp-link\">towardsdatascience.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/version-control-ml-model.png\" alt=\"Version Control ML Model\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://dev.to/robogeek/reflinks-vs-symlinks-vs-hard-links-and-how-they-can-help-machine-learning-projects-1cj4\">Reflinks vs symlinks vs hard links, and how they can help machine learning projects</a>\nby <a href=\"https://medium.com/@7genblogger\">David Herron</a></strong></li>\n</ul>\n<blockquote>\n<p>In this blog post we’ll go over the details of using links, some cool new\nstuff in modern file systems (reflinks), and an example of how DVC (Data\nVersion Control, <a href=\"https://dvc.org/\">https://dvc.org/</a>) leverages this.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://towardsdatascience.com/version-control-ml-model-4adb2db5f87c\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Reflinks vs symlinks vs hard links, and how they can help machine learning projects</h4>\n            <div class=\"elp-description\">Hard links and symbolic links have been available since time immemorial, and we use them all the time without even…</div>\n            <div class=\"elp-link\">dev.to</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/reflinks-vs-symlinks-vs-hard-links.jpeg\" alt=\"Reflinks vs symlinks vs hard links, and how they can help machine learning projects\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://blog.codecentric.de/en/2019/08/dvc-dependency-management/\">DVC dependency management — a guide</a>\nby <a href=\"https://blog.codecentric.de/en/author/bert-besser/\">Bert Besser</a> and\n<a href=\"https://blog.codecentric.de/en/author/veronika-schindler/\">Veronika Schwan</a>.</strong></li>\n</ul>\n<blockquote>\n<p>This post is a follow-up to\n<a href=\"https://blog.codecentric.de/en/2019/03/walkthrough-dvc/\">A walkthrough of DVC</a>\nthat deals with managing dependencies between DVC projects. In particular,\nthis follow-up is about importing specific versions of an artifact (e.g. a\ntrained model or a dataset) from one DVC project into another.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://blog.codecentric.de/en/2019/08/dvc-dependency-management/\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">DVC dependency management - a guide - codecentric AG Blog</h4>\n            <div class=\"elp-description\">This post is a follow-up to A walkthrough of DVC that deals with managing dependencies between DVC projects. In…</div>\n            <div class=\"elp-link\">blog.codecentric.de</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/dvc-org.png\" alt=\"DVC dependency management - a guide - codecentric AG Blog\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://medium.com/@czeslaw.szubert/effective-ml-teams-lessons-learned-6a6e761bc283\">Effective ML Teams — Lessons Learne</a>\nby <a href=\"https://medium.com/@czeslaw.szubert\">Czeslaw Szubert</a></strong></li>\n</ul>\n<blockquote>\n<p>In this post I’ll present lessons learned on how to setup successful ML teams\nand what you need to devise an effective enterprise ML strategy.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://medium.com/@czeslaw.szubert/effective-ml-teams-lessons-learned-6a6e761bc283\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Effective ML Teams — Lessons Learned</h4>\n            <div class=\"elp-description\">Machine Learning and Artificial Intelligence has entered our everyday lives — from Virtual Assistants built into each…</div>\n            <div class=\"elp-link\">medium.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/effective-ml-teams.jpeg\" alt=\"Effective ML Teams — Lessons Learned\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<ul>\n<li><strong><a href=\"https://www.esentri.com/lessons-learned-from-training-a-german-speech-recognition-model/\">Lessons learned from training a German Speech Recognition model</a>\nby <a href=\"https://www.linkedin.com/in/dschoenleber/\">David Schönleber</a>.</strong></li>\n</ul>\n<blockquote>\n<p>Setting up a documentation-by-design workflow and using appropriate tools\nwhere needed, e.g. <em>MLFlow</em> and <em>dvc,</em> can be a real deal-breaker.</p>\n</blockquote>\n<p><html><head></head><body><html><head></head><body><section class=\"elp-content-holder\">\n      <a href=\"https://medium.com/@czeslaw.szubert/effective-ml-teams-lessons-learned-6a6e761bc283\" class=\"external-link-preview\">\n          <div class=\"elp-description-holder\">\n            <h4 class=\"elp-title\">Lessons Learned from Training a German Speech Recognition Model - esentri AG</h4>\n            <div class=\"elp-description\">This post is the first of a two-part series. In this first part, I address learnings from a recent project in which I…</div>\n            <div class=\"elp-link\">esentri.com</div>\n          </div>\n           <div class=\"elp-image-holder\">\n                <img src=\"/uploads/images/2019-09-26/lessons-learned-from-training.jpeg\" alt=\"Lessons Learned from Training a German Speech Recognition Model - esentri AG\">\n            </div>\n      </a>\n    </section>\n    </body></html></body></html></p>\n<html><head></head><body><hr></body></html>\n<h2>Discord gems</h2>\n<p>There are lots of hidden gems in our Discord community discussions. Sometimes\nthey are scattered all over the channels and hard to track down.</p>\n<p>We are sifting through the issues and discussions and share with you the most\ninteresting takeaways.</p>\n<h3>Q: I’m getting an error message while trying to use AWS S3 storage: <html><head></head><body><code class=\"language-text\">ERROR: failed to push data to the cloud — Unable to locate credentials.</code></body></html> <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/587792932061577218\">Any ideas what’s happening?</a></h3>\n<p>Most likely you haven’t configured your S3 credentials/AWS account yet. Please,\nread the full documentation on the AWS website. The short version of what should\nbe done is the following:</p>\n<ul>\n<li><a href=\"https://portal.aws.amazon.com/gp/aws/developer/registration/index.html\">Create your AWS account.</a></li>\n<li>Log in to your AWS Management Console.</li>\n<li>Click on your user name at the top right of the page.</li>\n<li>Click on the Security Credentials link from the drop-down menu.</li>\n<li>Find the Access Credentials section, and copy the latest <html><head></head><body><code class=\"language-text\">Access Key ID</code></body></html>.</li>\n<li>Click on the Show link in the same row, and copy the <html><head></head><body><code class=\"language-text\">Secret Access Key</code></body></html>.</li>\n</ul>\n<p>Follow\n<a href=\"https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html\">this link</a>\nto setup your environment.</p>\n<h3>Q: I added data with <html><head></head><body><code class=\"language-text\">dvc add</code></body></html> or <html><head></head><body><code class=\"language-text\">dvc run</code></body></html> and see that it takes twice what it was before (with <html><head></head><body><code class=\"language-text\">du</code></body></html> command). <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/595402051203235861\">Does it mean that DVC copies data that is added under its control? How do I prevent this from happening?</a></h3>\n<p>To give a short summary — by default, DVC copies the files from your working\ndirectory to the cache (this is for safety reasons, it is better to duplicate\nthe data). If you have reflinks (copy-on-write) enabled on your file system, DVC\nwill use that method — which is as safe as copying. You can also configure DVC\nto use hardlinks/symlinks to save some space and time, but it will require\nenabling the protected mode (making data files in workspace read-only). Read\nmore details <a href=\"https://dvc.org/doc/user-guide/large-dataset-optimization\">here</a>.</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/599345778703597568\">How concurrent-friendly is the cache? And different remotes? Is it safe to have several containers/nodes fill the same cache at the same time?</a></h3>\n<p>It is safe and a very common use case for DVC to have a shared cache. Please,\ncheck <a href=\"https://discuss.dvc.org/t/share-nas-data-in-server/180/12\">this thread</a>,\nfor example.</p>\n<h3>Q:<a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/603890677176336394\">What is the proper way to exit the ASCII visualization?</a> (when you run <html><head></head><body><code class=\"language-text\">dvc pipeline show</code></body></html> command).</h3>\n<p>See this\n<a href=\"https://dvc.org/doc/commands-reference/pipeline/show#options\">document</a>. To\nnavigate, use arrows or W, A, S, D keys. To exit, press Q.</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/606197026488844338\">Is there an issue if I set my <html><head></head><body><code class=\"language-text\">cache.s3</code></body></html> external cache to my default remote?</a> I don’t quite understand what an external cache is for other than I have to have it for external outputs.</h3>\n<p>Short answer is that we would suggest keeping them separately to avoid possible\nchecksum overlaps. Checksum on S3 might theoretically overlap with our checksums\n(with the content of the file being different), so it could be dangerous. The\nchances of losing data are pretty slim, but we would not risk it. Right now, we\nare working on making sure there are no possible overlapping.</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/606425815139221504\">What’s the right procedure to move a step .dvc file around the project?</a></h3>\n<p>Assuming the file was created with <html><head></head><body><code class=\"language-text\">dvc run</code></body></html>. There are few possible ways.\nObvious one is to delete the file and create a new one with\n<html><head></head><body><code class=\"language-text\">dvc run --no-exec -f file/path/and/name.dvc</code></body></html>. Another possibility is to\nrename/move and then edit manually. See\n<a href=\"https://dvc.org/doc/user-guide/dvc-file-format\">this document</a> that describes\nhow DVC-files are organized. No matter what method you use, you can run\n<html><head></head><body><code class=\"language-text\">dvc commit file.dvc</code></body></html> to save changes without running the command again.</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/606917839688957952\"><html><head></head><body><code class=\"language-text\">dvc status</code></body></html> doesn’t seem to report things that need to be dvc pushed, is that by design?</a></h3>\n<p>You should try with dvc status <html><head></head><body><code class=\"language-text\">--cloud</code></body></html> or <html><head></head><body><code class=\"language-text\">dvc status --remote &#x3C;your-remote></code></body></html>\nto compare your local cache with a remote one, by default it only compares the\n“working directory” with your local cache (to check whether something should be\nreproduced and saved or not).</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/608701494035873792\">What kind of files can you put into <html><head></head><body><code class=\"language-text\">dvc metrics</code></body></html>?</a></h3>\n<p>The file could be in any format, <html><head></head><body><code class=\"language-text\">dvc metric</code></body></html> show will try to interpret the\nformat and output it in the best possible way. Also, if you are using <html><head></head><body><code class=\"language-text\">csv</code></body></html> or\n<html><head></head><body><code class=\"language-text\">json</code></body></html>, you can use the <html><head></head><body><code class=\"language-text\">--xpath</code></body></html> flag to query specific measurements. <strong>In\ngeneral, you can make any file a metric file and put any content into it, DVC is\nnot opinionated about it.</strong> Usually though these are files that measures the\nperformance/accuracy of your model and captures configuration of experiments.\nThe idea is to use <html><head></head><body><code class=\"language-text\">dvc metrics show</code></body></html> to display all your metrics across\nexperiments so you can make decisions of which combination (of features,\nparameters, algorithms, architecture, etc.) works the best.</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/613639458000207902\">Does DVC take into account the timestamp of a file or is the MD5 only depends on the files actual/bits content?</a></h3>\n<p>DVC takes into account only content (bits) of a file to calculate hashes that\nare saved into DVC-files.</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/563406153334128681/616421757808541721\">Similar to <html><head></head><body><code class=\"language-text\">dvc gc</code></body></html> is there a command to garbage collect from the remote?</a></h3>\n<p><html><head></head><body><code class=\"language-text\">dvc gc --remote NAME</code></body></html> is doing this, but you should be extra careful, because\nit will remove everything that is not currently “in use” (by the working\ndirectory). Also, please check this\n<a href=\"https://github.com/iterative/dvc/issues/2325\">issue</a> — semantics of this\ncommand might have changed by the time you read this.</p>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/485596304961962003/591237578209099786\">How do I use and configure remote storage on IBM Cloud Object Storage?</a></h3>\n<p>Since it’s S3 compatible, specifying <html><head></head><body><code class=\"language-text\">endpointurl</code></body></html> (exact URL depends on the\n<a href=\"https://cloud.ibm.com/docs/services/cloud-object-storage?topic=cloud-object-storage-endpoints\">region</a>)\nis the way to go:</p>\n<html><head></head><body><div class=\"gatsby-highlight\" data-language=\"dvc\"><pre class=\"language-dvc\"><code class=\"language-dvc\"><span class=\"token line\"><span class=\"token input\">$ </span><span class=\"token dvc\">dvc remote add</span> -d mybucket s3://path/to/dir\n</span><span class=\"token line\"><span class=\"token input\">$ </span><span class=\"token dvc\">dvc remote modify</span> mybucket <span class=\"token punctuation\">\\</span>\n                    endpointurl <span class=\"token punctuation\">\\</span>\n                    https://s3.eu.cloud-object-storage.appdomain.cloud</span></code></pre></div></body></html>\n<h3>Q: <a href=\"https://discordapp.com/channels/485586884165107732/485596304961962003/592958360903483403\">How can I push data from client to google cloud bucket using DVC?</a>. Just want to know how can i set the credentials.</h3>\n<p>You can do it by setting environment variable pointing to yours credentials\npath, like:</p>\n<html><head></head><body><div class=\"gatsby-highlight\" data-language=\"dvc\"><pre class=\"language-dvc\"><code class=\"language-dvc\"><span class=\"token line\"><span class=\"token input\">$ </span><span class=\"token command\">export</span> <span class=\"token assign-left variable\">GOOGLE_APPLICATION_CREDENTIALS</span><span class=\"token operator\">=</span>path/to/credentials</span></code></pre></div></body></html>\n<p>It is also possible to set this variable via <html><head></head><body><code class=\"language-text\">dvc config</code></body></html>:</p>\n<html><head></head><body><div class=\"gatsby-highlight\" data-language=\"dvc\"><pre class=\"language-dvc\"><code class=\"language-dvc\"><span class=\"token line\"><span class=\"token input\">$ </span><span class=\"token dvc\">dvc remote modify</span> myremote credentialpath /path/to/my/creds</span></code></pre></div></body></html>\n<p>where <html><head></head><body><code class=\"language-text\">myremote</code></body></html> is your remote name.</p>\n<html><head></head><body><hr></body></html>\n<p>If you have any questions, concerns or ideas, let us know in the comments below\nor connect with DVC team <a href=\"https://dvc.org/support\">here</a>. Our\n<a href=\"https://twitter.com/DVCorg\">DMs on Twitter</a> are always open, too.</p>","timeToRead":14,"fields":{"slug":"/september-19-dvc-heartbeat"},"frontmatter":{"title":"September ’19 DVC❤️Heartbeat","date":"September 26, 2019","description":"Announcing our first meetup in San Francisco, kicking off Google Season of\nDocs program, sharing Open Source Summit experience, and more news, links, and\ngems.\n","descriptionLong":"Every month we are sharing here our news, findings, interesting reads,\ncommunity takeaways, and everything along the way.\nSome of those are related to our brainchild DVC and its journey. The others\nare a collection of exciting stories and ideas centered around ML best\npractices and workflow.\n","tags":["Discord Gems","Heartbeat","Meetup","DVC","Open Source Summit"],"commentsUrl":"https://discuss.dvc.org/t/september-19-dvc-heartbeat/287","author":{"childMarkdownRemark":{"frontmatter":{"name":"Svetlana Grinchenko","avatar":{"childImageSharp":{"fixed":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAAMBAAAAAAAAAAAAAAAAAAIDBQT/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAHRz7x3qhnQCoH/xAAaEAACAwEBAAAAAAAAAAAAAAABAgMEMxIU/9oACAEBAAEFArBJZ0aqyN0s+trCvhYchTKzj0SRD//EABQRAQAAAAAAAAAAAAAAAAAAACD/2gAIAQMBAT8BH//EABQRAQAAAAAAAAAAAAAAAAAAACD/2gAIAQIBAT8BH//EAB0QAAICAgMBAAAAAAAAAAAAAAECABExQQMSIVH/2gAIAQEABj8CXiVuvbcDK9jYMDDcRyLBFTHpIixRflQjAHyBVwJ//8QAGxABAAMAAwEAAAAAAAAAAAAAAQARQSExUXH/2gAIAQEAAT8ht1LLoIkF4B6wLgOVH8uRVjiTT5AoqBr2L1odagwijiyf/9oADAMBAAIAAwAAABBjDwD/xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAEDAQE/EB//xAAUEQEAAAAAAAAAAAAAAAAAAAAg/9oACAECAQE/EB//xAAeEAACAwADAAMAAAAAAAAAAAABEQAhMUFRYXGBkf/aAAgBAQABPxCmAzsDr5hIjqwzzzqjPahi5r8IQVrj2MCG47GtJ+o5KCJ7t+zbocIBE8rYP/mqRYTv5EF8QZIHU//Z","width":40,"height":40,"src":"/static/fcc8502faa36f9a989fa0651c3c21653/d83e5/svetlana_grinchenko.jpg","srcSet":"/static/fcc8502faa36f9a989fa0651c3c21653/d83e5/svetlana_grinchenko.jpg 1x,\n/static/fcc8502faa36f9a989fa0651c3c21653/58860/svetlana_grinchenko.jpg 1.5x,\n/static/fcc8502faa36f9a989fa0651c3c21653/90ac5/svetlana_grinchenko.jpg 2x","srcWebp":"/static/fcc8502faa36f9a989fa0651c3c21653/e145b/svetlana_grinchenko.webp","srcSetWebp":"/static/fcc8502faa36f9a989fa0651c3c21653/e145b/svetlana_grinchenko.webp 1x,\n/static/fcc8502faa36f9a989fa0651c3c21653/0d42c/svetlana_grinchenko.webp 1.5x,\n/static/fcc8502faa36f9a989fa0651c3c21653/f46db/svetlana_grinchenko.webp 2x"}}}}}},"picture":{"childImageSharp":{"fluid":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAGAAAAgMAAAAAAAAAAAAAAAAAAAQBAgP/xAAWAQEBAQAAAAAAAAAAAAAAAAADAAH/2gAMAwEAAhADEAAAAYZoCrBkbf/EABoQAAMAAwEAAAAAAAAAAAAAAAABAhESISL/2gAIAQEAAQUCpE6nkrjljdZ//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAGhAAAgIDAAAAAAAAAAAAAAAAACEBQRBRYf/aAAgBAQAGPwJJ4onR0o//xAAaEAEAAwEBAQAAAAAAAAAAAAABABEhMUFR/9oACAEBAAE/ISHg43sIpA+TS5aOpRbYXC30sBD/2gAMAwEAAgADAAAAEKQf/8QAFREBAQAAAAAAAAAAAAAAAAAAECH/2gAIAQMBAT8Qp//EABYRAQEBAAAAAAAAAAAAAAAAABEAAf/aAAgBAgEBPxAxi//EAB4QAQEAAgEFAQAAAAAAAAAAAAERACExQVFhcbHR/9oACAEBAAE/EDFNSdKLxObgFNQLksSMeuF3sE3db9+cK0A1FUX7+4iCh2W0z//Z","aspectRatio":1.3348820586132952,"src":"/static/7295f5ad2835d4b37244b14f890c0e6b/6fdf8/post-image.jpg","srcSet":"/static/7295f5ad2835d4b37244b14f890c0e6b/9fc73/post-image.jpg 213w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/ee221/post-image.jpg 425w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/6fdf8/post-image.jpg 850w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/88a70/post-image.jpg 1275w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/15ae8/post-image.jpg 1700w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/af5a7/post-image.jpg 3735w","srcWebp":"/static/7295f5ad2835d4b37244b14f890c0e6b/5c1d9/post-image.webp","srcSetWebp":"/static/7295f5ad2835d4b37244b14f890c0e6b/99b2d/post-image.webp 213w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/23220/post-image.webp 425w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/5c1d9/post-image.webp 850w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/5e720/post-image.webp 1275w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/35cfd/post-image.webp 1700w,\n/static/7295f5ad2835d4b37244b14f890c0e6b/89ec7/post-image.webp 3735w","sizes":"(max-width: 850px) 100vw, 850px","presentationWidth":850}}},"pictureComment":null}}},"pageContext":{"next":{"fields":{"slug":"/dvc-org-for-hacktoberfest-2019"},"frontmatter":{"title":"DVC.org for Hacktoberfest 2019"}},"previous":{"fields":{"slug":"/july-19-dvc-heartbeat"},"frontmatter":{"title":"July ’19 DVC❤️Heartbeat"}},"currentPage":8,"slug":"/september-19-dvc-heartbeat"}}}