From 900195c90c103320bf0426fdab02602ce2536300 Mon Sep 17 00:00:00 2001 From: Dashamir Hoxha Date: Thu, 3 Oct 2019 07:29:37 +0200 Subject: [PATCH] Simplify the index page and reorganize the interactive tutorials --- server.js | 4 +- src/Documentation/sidebar.json | 10 ++-- static/docs/tutorials/basics.md | 22 -------- static/docs/tutorials/community.md | 23 ++++++++ static/docs/tutorials/index.md | 80 +++++----------------------- static/docs/tutorials/interactive.md | 49 +++++++++++++---- 6 files changed, 82 insertions(+), 106 deletions(-) delete mode 100644 static/docs/tutorials/basics.md create mode 100644 static/docs/tutorials/community.md diff --git a/server.js b/server.js index 2530d48e7d..77c08b6166 100644 --- a/server.js +++ b/server.js @@ -56,9 +56,9 @@ app.prepare().then(() => { }) res.end() } else if (pathname == '/doc/tutorial') { - // TMP: path /doc/tutorial -> /doc/tutorials/tutorial + // path /doc/tutorial -> /doc/tutorials res.writeHead(302, { - Location: req.url.replace('/doc/tutorial', '/doc/tutorials/tutorial') + Location: req.url.replace('/doc/tutorial', '/doc/tutorials') }) res.end() } else if (/^\/doc.*/i.test(pathname)) { diff --git a/src/Documentation/sidebar.json b/src/Documentation/sidebar.json index 82de898e2f..a50bc90ddd 100644 --- a/src/Documentation/sidebar.json +++ b/src/Documentation/sidebar.json @@ -31,13 +31,9 @@ "slug": "tutorials", "source": "tutorials/index.md", "children": [ - { - "slug": "basics", - "label": "Interactive: Basics" - }, { "slug": "interactive", - "label": "Interactive: Tutorials" + "label": "Interactive Tutorials" }, { "slug": "versioning", @@ -60,6 +56,10 @@ "reproducibility", "sharing-data" ] + }, + { + "slug": "community", + "label": "Community Tutorials" } ] }, diff --git a/static/docs/tutorials/basics.md b/static/docs/tutorials/basics.md deleted file mode 100644 index 323e69c651..0000000000 --- a/static/docs/tutorials/basics.md +++ /dev/null @@ -1,22 +0,0 @@ -# Basic Concepts - -Learn basic concepts and features of DVC with interactive lessons: - -1. [Data Management](https://katacoda.com/dvc/courses/basics/data)
The - core function of DVC is data tracking and management. Let's see how to do it. - -2. [Getting the Best Performance](https://katacoda.com/dvc/courses/basics/performance) -
It is important to optimize the DVC setup for having the best - performance with handling big data files. - -3. [Tracking Data Versions](https://katacoda.com/dvc/courses/basics/versioning) -
DVC takes advantage of GIT's versioning features to keep track of the - data versions. - -4. [Sharing Data](https://katacoda.com/dvc/courses/basics/sharing)
DVC - facilitates sharing of data between different people that work on the same - project. - -5. [Stages And Pipelines](https://katacoda.com/dvc/courses/basics/pipelines) -
DVC has a built-in way to connect ML steps into a DAG and run the full - pipeline end-to-end. diff --git a/static/docs/tutorials/community.md b/static/docs/tutorials/community.md new file mode 100644 index 0000000000..daf65519a2 --- /dev/null +++ b/static/docs/tutorials/community.md @@ -0,0 +1,23 @@ +# Community Tutorials + +Blog posts from the community which show how they use DVC in their ML scenarios: + +- [Data Version Control Tutorial](https://blog.dataversioncontrol.com/data-version-control-tutorial-9146715eda46) + +- [Creating an awesome project using DVC and DAGsHub](https://dagshub.com/docs/overview/) + +- [Using DVC to create an efficient version control system for data projects](https://medium.com/qonto-engineering/using-dvc-to-create-an-efficient-version-control-system-for-data-projects-96efd94355fe) + +- [Introduction to using DVC to manage machine learning project datasets](https://techsparx.com/software-development/ai/dvc/simple-example.html) + +- [Managing versioned machine learning datasets in DVC, and easily share ML projects with colleagues](https://techsparx.com/software-development/ai/dvc/versioning-example.html) + +- [A walkthrough of DVC](https://blog.codecentric.de/en/2019/03/walkthrough-dvc/) + +- [DVC dependency management](https://blog.codecentric.de/en/2019/08/dvc-dependency-management/) + +- [How to use data version control (dvc) in a machine learning project](https://towardsdatascience.com/how-to-use-data-version-control-dvc-in-a-machine-learning-project-a78245c0185) + +- [My first try at DVC](https://stdiff.net/MB2019051301.html) + +- [Effective Management of your Machine Learning Laboratory](https://www.linkedin.com/pulse/effective-management-your-machine-learning-laboratory-ulaganathan/) diff --git a/static/docs/tutorials/index.md b/static/docs/tutorials/index.md index 88f09b8c11..f992f7bc7e 100644 --- a/static/docs/tutorials/index.md +++ b/static/docs/tutorials/index.md @@ -1,74 +1,18 @@ # Tutorials -## Basic Concepts +- [Interactive Tutorials](/docs/tutorials/interactive)
Interactive lessons + and tutorials on [Katacoda](https://katacoda.com/dvc) that explain the basic + concepts of DVC and show how to use it in simple ML scenarios. -Learn basic concepts and features of DVC with interactive lessons: +- [Data Versioning](/docs/tutorials/versioning)
Using DVC commands to work + with multiple versions of datasets and ML models. -1. [Data Management](https://katacoda.com/dvc/courses/basics/data)
The - core function of DVC is data tracking and management. Let's see how to do it. +- [Stages and Pipelines](/docs/tutorials/pipelines)
Using DVC commands to + build a simple ML pipeline. -2. [Getting the Best Performance](https://katacoda.com/dvc/courses/basics/performance) -
It is important to optimize the DVC setup for having the best - performance with handling big data files. +- [Longer Tutorial](/docs/tutorials/tutorial)
Introduces DVC step-by-step, + while additionally explaining in great detail the motivation and what's + happening internally. -3. [Tracking Data Versions](https://katacoda.com/dvc/courses/basics/versioning) -
DVC takes advantage of GIT's versioning features to keep track of the - data versions. - -4. [Sharing Data](https://katacoda.com/dvc/courses/basics/sharing)
DVC - facilitates sharing of data between different people that work on the same - project. - -5. [Stages And Pipelines](https://katacoda.com/dvc/courses/basics/pipelines) -
DVC has a built-in way to connect ML steps into a DAG and run the full - pipeline end-to-end. - -## Interactive Tutorials - -Learn how DVC can be used in simple ML scenarios: - -1. [Data Versioning](https://katacoda.com/dvc/courses/tutorials/versioning) -
Using DVC commands to work with multiple versions of datasets and ML - models. - -2. [Stages and Pipelines](https://katacoda.com/dvc/courses/tutorials/pipelines) -
Using DVC commands to build a simple ML pipeline. - -3. [dvc fetch](https://katacoda.com/dvc/courses/examples)
We will use an - example project with some data, code, ML models, pipeline stages, as well as - a few Git tags. Then we will see what happens with dvc fetch as we switch - from tag to tag. - -## Native Tutorials - -1. [Data Versioning](/docs/tutorials/versioning)
Using DVC commands to - work with multiple versions of datasets and ML models. - -2. [Stages and Pipelines](/docs/tutorials/pipelines)
Using DVC commands to - build a simple ML pipeline. - -3. [Longer Tutorial](/docs/tutorials/tutorial)
Introduces DVC - step-by-step, while additionally explaining in great detail the motivation - and what's happening internally. - -## Community Tutorials - -- [Data Version Control Tutorial](https://blog.dataversioncontrol.com/data-version-control-tutorial-9146715eda46) - -- [Creating an awesome project using DVC and DAGsHub](https://dagshub.com/docs/overview/) - -- [Using DVC to create an efficient version control system for data projects](https://medium.com/qonto-engineering/using-dvc-to-create-an-efficient-version-control-system-for-data-projects-96efd94355fe) - -- [Introduction to using DVC to manage machine learning project datasets](https://techsparx.com/software-development/ai/dvc/simple-example.html) - -- [Managing versioned machine learning datasets in DVC, and easily share ML projects with colleagues](https://techsparx.com/software-development/ai/dvc/versioning-example.html) - -- [A walkthrough of DVC](https://blog.codecentric.de/en/2019/03/walkthrough-dvc/) - -- [DVC dependency management](https://blog.codecentric.de/en/2019/08/dvc-dependency-management/) - -- [How to use data version control (dvc) in a machine learning project](https://towardsdatascience.com/how-to-use-data-version-control-dvc-in-a-machine-learning-project-a78245c0185) - -- [My first try at DVC](https://stdiff.net/MB2019051301.html) - -- [Effective Management of your Machine Learning Laboratory](https://www.linkedin.com/pulse/effective-management-your-machine-learning-laboratory-ulaganathan/) +- [Community Tutorials](/docs/tutorials/community)
Blog posts from the + community which show how they use DVC in their ML scenarios. diff --git a/static/docs/tutorials/interactive.md b/static/docs/tutorials/interactive.md index 7097bb5414..a3c89c7883 100644 --- a/static/docs/tutorials/interactive.md +++ b/static/docs/tutorials/interactive.md @@ -1,15 +1,46 @@ # Interactive Tutorials +Interactive lessons and tutorials on [Katacoda](https://katacoda.com/dvc) that +explain the basic concepts of DVC and show how to use it in simple ML scenarios. + +## Basic Concepts + +Learn basic concepts and features of DVC with interactive lessons: + +1. [Data Management](https://katacoda.com/dvc/courses/basics/data)
The + core function of DVC is data tracking and management. Let's see how to do it. + +2. [Getting the Best Performance](https://katacoda.com/dvc/courses/basics/performance) +
It is important to optimize the DVC setup for having the best + performance with handling big data files. + +3. [Tracking Data Versions](https://katacoda.com/dvc/courses/basics/versioning) +
DVC takes advantage of GIT's versioning features to keep track of the + data versions. + +4. [Sharing Data](https://katacoda.com/dvc/courses/basics/sharing)
DVC + facilitates sharing of data between different people that work on the same + project. + +5. [Stages And Pipelines](https://katacoda.com/dvc/courses/basics/pipelines) +
DVC has a built-in way to connect ML steps into a DAG and run the full + pipeline end-to-end. + +## Simple ML Scenarios + Learn how DVC can be used in simple ML scenarios: -1. [Data Versioning](https://katacoda.com/dvc/courses/tutorials/versioning) -
Using DVC commands to work with multiple versions of datasets and ML - models. +- [Data Versioning](https://katacoda.com/dvc/courses/tutorials/versioning)
+ Using DVC commands to work with multiple versions of datasets and ML models. + +- [Stages and Pipelines](https://katacoda.com/dvc/courses/tutorials/pipelines) +
Using DVC commands to build a simple ML pipeline. + +## Examples -2. [Stages and Pipelines](https://katacoda.com/dvc/courses/tutorials/pipelines) -
Using DVC commands to build a simple ML pipeline. +Interactive examples about using DVC commands and other features of DVC. -3. [dvc fetch](https://katacoda.com/dvc/courses/examples)
We will use an - example project with some data, code, ML models, pipeline stages, as well as - a few Git tags. Then we will see what happens with dvc fetch as we switch - from tag to tag. +- [dvc fetch](https://katacoda.com/dvc/courses/examples/fetch)
We will use + an example project with some data, code, ML models, pipeline stages, as well + as a few Git tags. Then we will see what happens with dvc fetch as we switch + from tag to tag.