Files
TinyTorch/dev/tito/data.html
2025-11-29 23:47:02 +00:00

1538 lines
74 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en" data-content_root="../" >
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Progress &amp; Data Management &#8212; Tiny🔥Torch</title>
<script data-cfasync="false">
document.documentElement.dataset.mode = localStorage.getItem("mode") || "";
document.documentElement.dataset.theme = localStorage.getItem("theme") || "";
</script>
<!-- Loaded before other Sphinx assets -->
<link href="../_static/styles/theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link href="../_static/styles/bootstrap.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link href="../_static/styles/pydata-sphinx-theme.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link href="../_static/vendor/fontawesome/6.5.2/css/all.min.css?digest=dfe6caa3a7d634c4db9b" rel="stylesheet" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-solid-900.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-brands-400.woff2" />
<link rel="preload" as="font" type="font/woff2" crossorigin href="../_static/vendor/fontawesome/6.5.2/webfonts/fa-regular-400.woff2" />
<link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=03e43079" />
<link rel="stylesheet" type="text/css" href="../_static/styles/sphinx-book-theme.css?v=eba8b062" />
<link rel="stylesheet" type="text/css" href="../_static/togglebutton.css?v=13237357" />
<link rel="stylesheet" type="text/css" href="../_static/copybutton.css?v=76b2166b" />
<link rel="stylesheet" type="text/css" href="../_static/mystnb.8ecb98da25f57f5357bf6f572d296f466b2cfe2517ffebfabe82451661e28f02.css" />
<link rel="stylesheet" type="text/css" href="../_static/sphinx-thebe.css?v=4fa983c6" />
<link rel="stylesheet" type="text/css" href="../_static/sphinx-design.min.css?v=95c83b7e" />
<link rel="stylesheet" type="text/css" href="../_static/custom.css?v=afcf7c3c" />
<!-- Pre-loaded scripts that we'll load fully later -->
<link rel="preload" as="script" href="../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b" />
<link rel="preload" as="script" href="../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b" />
<script src="../_static/vendor/fontawesome/6.5.2/js/all.min.js?digest=dfe6caa3a7d634c4db9b"></script>
<script src="../_static/documentation_options.js?v=9eb32ce0"></script>
<script src="../_static/doctools.js?v=9a2dae69"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../_static/clipboard.min.js?v=a7894cd8"></script>
<script src="../_static/copybutton.js?v=f281be69"></script>
<script src="../_static/scripts/sphinx-book-theme.js?v=887ef09a"></script>
<script>let toggleHintShow = 'Click to show';</script>
<script>let toggleHintHide = 'Click to hide';</script>
<script>let toggleOpenOnPrint = 'true';</script>
<script src="../_static/togglebutton.js?v=4a39c7ea"></script>
<script>var togglebuttonSelector = '.toggle, .admonition.dropdown';</script>
<script src="../_static/design-tabs.js?v=f930bc37"></script>
<script>const THEBE_JS_URL = "https://unpkg.com/thebe@0.8.2/lib/index.js"; const thebe_selector = ".thebe,.cell"; const thebe_selector_input = "pre"; const thebe_selector_output = ".output, .cell_output"</script>
<script async="async" src="../_static/sphinx-thebe.js?v=c100c467"></script>
<script>var togglebuttonSelector = '.toggle, .admonition.dropdown';</script>
<script>const THEBE_JS_URL = "https://unpkg.com/thebe@0.8.2/lib/index.js"; const thebe_selector = ".thebe,.cell"; const thebe_selector_input = "pre"; const thebe_selector_output = ".output, .cell_output"</script>
<script type="module" src="https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.esm.min.mjs"></script>
<script type="module" src="https://cdn.jsdelivr.net/npm/@mermaid-js/layout-elk@0.2.0/dist/mermaid-layout-elk.esm.min.mjs"></script>
<script type="module">import mermaid from "https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.esm.min.mjs";import elkLayouts from "https://cdn.jsdelivr.net/npm/@mermaid-js/layout-elk@0.2.0/dist/mermaid-layout-elk.esm.min.mjs";mermaid.registerLayoutLoaders(elkLayouts);mermaid.initialize({startOnLoad:false});</script>
<script src="https://cdn.jsdelivr.net/npm/d3@7.9.0/dist/d3.min.js"></script>
<script type="module">import mermaid from "https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.esm.min.mjs";
const defaultStyle = document.createElement('style');
defaultStyle.textContent = `pre.mermaid {
/* Same as .mermaid-container > pre */
display: block;
width: 100%;
}
pre.mermaid > svg {
/* Same as .mermaid-container > pre > svg */
height: 500px;
width: 100%;
max-width: 100% !important;
}
`;
document.head.appendChild(defaultStyle);
const fullscreenStyle = document.createElement('style');
fullscreenStyle.textContent = `.mermaid-container {
display: flex;
flex-direction: row;
width: 100%;
}
.mermaid-container > pre {
display: block;
width: 100%;
}
.mermaid-container > pre > svg {
height: 500px;
width: 100%;
max-width: 100% !important;
}
.mermaid-fullscreen-btn {
width: 28px;
height: 28px;
background: rgba(255, 255, 255, 0.95);
border: 1px solid rgba(0, 0, 0, 0.3);
border-radius: 4px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
font-size: 14px;
line-height: 1;
padding: 0;
color: #333;
}
.mermaid-fullscreen-btn:hover {
opacity: 100% !important;
background: rgba(255, 255, 255, 1);
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
transform: scale(1.1);
}
.mermaid-fullscreen-btn.dark-theme {
background: rgba(50, 50, 50, 0.95);
border: 1px solid rgba(255, 255, 255, 0.3);
color: #e0e0e0;
}
.mermaid-fullscreen-btn.dark-theme:hover {
background: rgba(60, 60, 60, 1);
box-shadow: 0 3px 10px rgba(255, 255, 255, 0.2);
}
.mermaid-fullscreen-modal {
display: none;
position: fixed !important;
top: 0 !important;
left: 0 !important;
width: 95vw;
height: 100vh;
background: rgba(255, 255, 255, 0.98);
z-index: 9999;
padding: 20px;
overflow: auto;
}
.mermaid-fullscreen-modal.dark-theme {
background: rgba(0, 0, 0, 0.98);
}
.mermaid-fullscreen-modal.active {
display: flex;
align-items: center;
justify-content: center;
}
.mermaid-container-fullscreen {
position: relative;
width: 95vw;
height: 90vh;
max-width: 95vw;
max-height: 90vh;
background: white;
border-radius: 8px;
padding: 20px;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
overflow: auto;
display: flex;
align-items: center;
justify-content: center;
}
.mermaid-container-fullscreen.dark-theme {
background: #1a1a1a;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.8);
}
.mermaid-container-fullscreen pre.mermaid {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.mermaid-container-fullscreen .mermaid svg {
height: 100% !important;
width: 100% !important;
cursor: grab;
}
.mermaid-fullscreen-close {
position: fixed !important;
top: 20px !important;
right: 20px !important;
width: 40px;
height: 40px;
background: rgba(255, 255, 255, 0.95);
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 50%;
cursor: pointer;
z-index: 10000;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
transition: all 0.2s;
font-size: 24px;
line-height: 1;
color: #333;
}
.mermaid-fullscreen-close:hover {
background: white;
box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4);
transform: scale(1.1);
}
.mermaid-fullscreen-close.dark-theme {
background: rgba(50, 50, 50, 0.95);
border: 1px solid rgba(255, 255, 255, 0.2);
color: #e0e0e0;
}
.mermaid-fullscreen-close.dark-theme:hover {
background: rgba(60, 60, 60, 1);
box-shadow: 0 6px 16px rgba(255, 255, 255, 0.2);
}
.mermaid-fullscreen-modal .mermaid-fullscreen-btn {
display: none !important;
}`;
document.head.appendChild(fullscreenStyle);
// Detect if page has dark background
const isDarkTheme = () => {
const bgColor = window.getComputedStyle(document.body).backgroundColor;
const match = bgColor.match(/rgb\((\d+),\s*(\d+),\s*(\d+)/);
if (match) {
const r = parseInt(match[1]);
const g = parseInt(match[2]);
const b = parseInt(match[3]);
const brightness = (r * 299 + g * 587 + b * 114) / 1000;
return brightness < 128;
}
return false;
};
const load = async () => {
await mermaid.run();
const all_mermaids = document.querySelectorAll(".mermaid");
const mermaids_processed = document.querySelectorAll(".mermaid[data-processed='true']");
if ("False" === "True") {
const mermaids_to_add_zoom = -1 === -1 ? all_mermaids.length : -1;
if(mermaids_to_add_zoom > 0) {
var svgs = d3.selectAll("");
if(all_mermaids.length !== mermaids_processed.length) {
setTimeout(load, 200);
return;
} else if(svgs.size() !== mermaids_to_add_zoom) {
setTimeout(load, 200);
return;
} else {
svgs.each(function() {
var svg = d3.select(this);
svg.html("<g class='wrapper'>" + svg.html() + "</g>");
var inner = svg.select("g");
var zoom = d3.zoom().on("zoom", function(event) {
inner.attr("transform", event.transform);
});
svg.call(zoom);
});
}
}
} else if(all_mermaids.length !== mermaids_processed.length) {
// Wait for mermaid to process all diagrams
setTimeout(load, 200);
return;
}
const darkTheme = isDarkTheme();
// Stop here if not adding fullscreen capability
if ("True" !== "True") return;
const modal = document.createElement('div');
modal.className = 'mermaid-fullscreen-modal' + (darkTheme ? ' dark-theme' : '');
modal.setAttribute('role', 'dialog');
modal.setAttribute('aria-modal', 'true');
modal.setAttribute('aria-label', 'Fullscreen diagram viewer');
modal.innerHTML = `
<button class="mermaid-fullscreen-close${darkTheme ? ' dark-theme' : ''}" aria-label="Close fullscreen">✕</button>
<div class="mermaid-container-fullscreen${darkTheme ? ' dark-theme' : ''}"></div>
`;
document.body.appendChild(modal);
const modalContent = modal.querySelector('.mermaid-container-fullscreen');
const closeBtn = modal.querySelector('.mermaid-fullscreen-close');
let previousScrollOffset = [window.scrollX, window.scrollY];
const closeModal = () => {
modal.classList.remove('active');
modalContent.innerHTML = '';
document.body.style.overflow = ''
window.scrollTo({left: previousScrollOffset[0], top: previousScrollOffset[1], behavior: 'instant'});
};
closeBtn.addEventListener('click', closeModal);
modal.addEventListener('click', (e) => {
if (e.target === modal) closeModal();
});
document.addEventListener('keydown', (e) => {
if (e.key === 'Escape' && modal.classList.contains('active')) {
closeModal();
}
});
const allButtons = [];
document.querySelectorAll('.mermaid').forEach((mermaidDiv) => {
if (mermaidDiv.parentNode.classList.contains('mermaid-container') ||
mermaidDiv.closest('.mermaid-fullscreen-modal')) {
return;
}
const container = document.createElement('div');
container.className = 'mermaid-container';
mermaidDiv.parentNode.insertBefore(container, mermaidDiv);
container.appendChild(mermaidDiv);
const fullscreenBtn = document.createElement('button');
fullscreenBtn.className = 'mermaid-fullscreen-btn' + (darkTheme ? ' dark-theme' : '');
fullscreenBtn.setAttribute('aria-label', 'View diagram in fullscreen');
fullscreenBtn.textContent = '⛶';
fullscreenBtn.style.opacity = '50%';
// Calculate dynamic position based on diagram's margin and padding
const diagramStyle = window.getComputedStyle(mermaidDiv);
const marginTop = parseFloat(diagramStyle.marginTop) || 0;
const marginRight = parseFloat(diagramStyle.marginRight) || 0;
const paddingTop = parseFloat(diagramStyle.paddingTop) || 0;
const paddingRight = parseFloat(diagramStyle.paddingRight) || 0;
fullscreenBtn.style.top = `${marginTop + paddingTop + 4}px`;
fullscreenBtn.style.right = `${marginRight + paddingRight + 4}px`;
fullscreenBtn.addEventListener('click', () => {
previousScrollOffset = [window.scroll, window.scrollY];
const clone = mermaidDiv.cloneNode(true);
modalContent.innerHTML = '';
modalContent.appendChild(clone);
const svg = clone.querySelector('svg');
if (svg) {
svg.removeAttribute('width');
svg.removeAttribute('height');
svg.style.width = '100%';
svg.style.height = 'auto';
svg.style.maxWidth = '100%';
svg.style.sdisplay = 'block';
if ("False" === "True") {
setTimeout(() => {
const g = svg.querySelector('g');
if (g) {
var svgD3 = d3.select(svg);
svgD3.html("<g class='wrapper'>" + svgD3.html() + "</g>");
var inner = svgD3.select("g");
var zoom = d3.zoom().on("zoom", function(event) {
inner.attr("transform", event.transform);
});
svgD3.call(zoom);
}
}, 100);
}
}
modal.classList.add('active');
document.body.style.overflow = 'hidden';
});
container.appendChild(fullscreenBtn);
allButtons.push(fullscreenBtn);
});
// Update theme classes when theme changes
const updateTheme = () => {
const dark = isDarkTheme();
allButtons.forEach(btn => {
if (dark) {
btn.classList.add('dark-theme');
} else {
btn.classList.remove('dark-theme');
}
});
if (dark) {
modal.classList.add('dark-theme');
modalContent.classList.add('dark-theme');
closeBtn.classList.add('dark-theme');
} else {
modal.classList.remove('dark-theme');
modalContent.classList.remove('dark-theme');
closeBtn.classList.remove('dark-theme');
}
};
// Watch for theme changes
const observer = new MutationObserver(updateTheme);
observer.observe(document.documentElement, {
attributes: true,
attributeFilter: ['class', 'style', 'data-theme']
});
observer.observe(document.body, {
attributes: true,
attributeFilter: ['class', 'style']
});
};
window.addEventListener("load", load);
</script>
<script>DOCUMENTATION_OPTIONS.pagename = 'tito/data';</script>
<script src="../_static/ml-timeline.js?v=76e9b3e3"></script>
<script src="../_static/wip-banner.js?v=5357532b"></script>
<script src="../_static/marimo-badges.js?v=e6289128"></script>
<script src="../_static/sidebar-link.js?v=404b701b"></script>
<script src="../_static/hero-carousel.js?v=10341d2a"></script>
<link rel="icon" href="../_static/favicon.svg"/>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="Troubleshooting Guide" href="troubleshooting.html" />
<link rel="prev" title="Milestone System" href="milestones.html" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="docsearch:language" content="en"/>
</head>
<body data-bs-spy="scroll" data-bs-target=".bd-toc-nav" data-offset="180" data-bs-root-margin="0px 0px -60%" data-default-mode="">
<div id="pst-skip-link" class="skip-link d-print-none"><a href="#main-content">Skip to main content</a></div>
<div id="pst-scroll-pixel-helper"></div>
<button type="button" class="btn rounded-pill" id="pst-back-to-top">
<i class="fa-solid fa-arrow-up"></i>Back to top</button>
<input type="checkbox"
class="sidebar-toggle"
id="pst-primary-sidebar-checkbox"/>
<label class="overlay overlay-primary" for="pst-primary-sidebar-checkbox"></label>
<input type="checkbox"
class="sidebar-toggle"
id="pst-secondary-sidebar-checkbox"/>
<label class="overlay overlay-secondary" for="pst-secondary-sidebar-checkbox"></label>
<div class="search-button__wrapper">
<div class="search-button__overlay"></div>
<div class="search-button__search-container">
<form class="bd-search d-flex align-items-center"
action="../search.html"
method="get">
<i class="fa-solid fa-magnifying-glass"></i>
<input type="search"
class="form-control"
name="q"
id="search-input"
placeholder="Search..."
aria-label="Search..."
autocomplete="off"
autocorrect="off"
autocapitalize="off"
spellcheck="false"/>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd>K</kbd></span>
</form></div>
</div>
<div class="pst-async-banner-revealer d-none">
<aside id="bd-header-version-warning" class="d-none d-print-none" aria-label="Version warning"></aside>
</div>
<header class="bd-header navbar navbar-expand-lg bd-navbar d-print-none">
</header>
<div class="bd-container">
<div class="bd-container__inner bd-page-width">
<div class="bd-sidebar-primary bd-sidebar">
<div class="sidebar-header-items sidebar-primary__section">
</div>
<div class="sidebar-primary-items__start sidebar-primary__section">
<div class="sidebar-primary-item">
<a class="navbar-brand logo" href="../intro.html">
<img src="../_static/logo-tinytorch.png" class="logo__image only-light" alt="Tiny🔥Torch - Home"/>
<script>document.write(`<img src="../_static/logo-tinytorch.png" class="logo__image only-dark" alt="Tiny🔥Torch - Home"/>`);</script>
</a></div>
<div class="sidebar-primary-item">
<script>
document.write(`
<button class="btn search-button-field search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass"></i>
<span class="search-button__default-text">Search</span>
<span class="search-button__kbd-shortcut"><kbd class="kbd-shortcut__modifier">Ctrl</kbd>+<kbd class="kbd-shortcut__modifier">K</kbd></span>
</button>
`);
</script></div>
<div class="sidebar-primary-item"><nav class="bd-links bd-docs-nav" aria-label="Main">
<div class="bd-toc-item navbar-nav active">
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🚀 Getting Started</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../getting-started.html">Complete Guide</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🏗 Foundation Tier (01-07)</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/foundation.html">📖 Tier Overview</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🏛️ Architecture Tier (08-13)</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/architecture.html">📖 Tier Overview</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">⏱️ Optimization Tier (14-19)</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/optimization.html">📖 Tier Overview</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🏅 Capstone Competition</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../tiers/olympics.html">📖 Competition Overview</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🧭 Course Orientation</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../chapters/00-introduction.html">Course Structure</a></li>
<li class="toctree-l1"><a class="reference internal" href="../prerequisites.html">Prerequisites &amp; Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="../chapters/learning-journey.html">Learning Journey</a></li>
<li class="toctree-l1"><a class="reference internal" href="../chapters/milestones.html">Historical Milestones</a></li>
<li class="toctree-l1"><a class="reference internal" href="../faq.html">FAQ</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🛠️ TITO CLI Reference</span></p>
<ul class="current nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="overview.html">Command Overview</a></li>
<li class="toctree-l1"><a class="reference internal" href="modules.html">Module Workflow</a></li>
<li class="toctree-l1"><a class="reference internal" href="milestones.html">Milestone System</a></li>
<li class="toctree-l1 current active"><a class="current reference internal" href="#">Progress &amp; Data</a></li>
<li class="toctree-l1"><a class="reference internal" href="troubleshooting.html">Troubleshooting</a></li>
<li class="toctree-l1"><a class="reference internal" href="../datasets.html">Datasets Guide</a></li>
</ul>
<p aria-level="2" class="caption" role="heading"><span class="caption-text">🤝 Community</span></p>
<ul class="nav bd-sidenav">
<li class="toctree-l1"><a class="reference internal" href="../community.html">Ecosystem</a></li>
<li class="toctree-l1"><a class="reference internal" href="../resources.html">Learning Resources</a></li>
<li class="toctree-l1"><a class="reference internal" href="../credits.html">Credits &amp; Acknowledgments</a></li>
</ul>
</div>
</nav></div>
</div>
<div class="sidebar-primary-items__end sidebar-primary__section">
</div>
<div id="rtd-footer-container"></div>
</div>
<main id="main-content" class="bd-main" role="main">
<div class="sbt-scroll-pixel-helper"></div>
<div class="bd-content">
<div class="bd-article-container">
<div class="bd-header-article d-print-none">
<div class="header-article-items header-article__inner">
<div class="header-article-items__start">
<div class="header-article-item"><button class="sidebar-toggle primary-toggle btn btn-sm" title="Toggle primary sidebar" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="fa-solid fa-bars"></span>
</button></div>
</div>
<div class="header-article-items__end">
<div class="header-article-item">
<div class="article-header-buttons">
<div class="dropdown dropdown-download-buttons">
<button class="btn dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false" aria-label="Download this page">
<i class="fas fa-download"></i>
</button>
<ul class="dropdown-menu">
<li><a href="../_sources/tito/data.md" target="_blank"
class="btn btn-sm btn-download-source-button dropdown-item"
title="Download source file"
data-bs-placement="left" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-file"></i>
</span>
<span class="btn__text-container">.md</span>
</a>
</li>
<li>
<button onclick="window.print()"
class="btn btn-sm btn-download-pdf-button dropdown-item"
title="Print to PDF"
data-bs-placement="left" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-file-pdf"></i>
</span>
<span class="btn__text-container">.pdf</span>
</button>
</li>
</ul>
</div>
<button onclick="toggleFullScreen()"
class="btn btn-sm btn-fullscreen-button"
title="Fullscreen mode"
data-bs-placement="bottom" data-bs-toggle="tooltip"
>
<span class="btn__icon-container">
<i class="fas fa-expand"></i>
</span>
</button>
<script>
document.write(`
<button class="btn btn-sm nav-link pst-navbar-icon theme-switch-button" title="light/dark" aria-label="light/dark" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="theme-switch fa-solid fa-sun fa-lg" data-mode="light"></i>
<i class="theme-switch fa-solid fa-moon fa-lg" data-mode="dark"></i>
<i class="theme-switch fa-solid fa-circle-half-stroke fa-lg" data-mode="auto"></i>
</button>
`);
</script>
<script>
document.write(`
<button class="btn btn-sm pst-navbar-icon search-button search-button__button" title="Search" aria-label="Search" data-bs-placement="bottom" data-bs-toggle="tooltip">
<i class="fa-solid fa-magnifying-glass fa-lg"></i>
</button>
`);
</script>
<button class="sidebar-toggle secondary-toggle btn btn-sm" title="Toggle secondary sidebar" data-bs-placement="bottom" data-bs-toggle="tooltip">
<span class="fa-solid fa-list"></span>
</button>
</div></div>
</div>
</div>
</div>
<div id="jb-print-docs-body" class="onlyprint">
<h1>Progress & Data Management</h1>
<!-- Table of contents -->
<div id="print-main-content">
<div id="jb-print-toc">
<div>
<h2> Contents </h2>
</div>
<nav aria-label="Page">
<ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#your-learning-journey-two-tracking-systems">Your Learning Journey: Two Tracking Systems</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#the-two-systems">The Two Systems</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#where-your-data-lives">Where Your Data Lives</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#understanding-each-file">Understanding Each File</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#unified-progress-view">Unified Progress View</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#see-everything-tito-status">See Everything: <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">status</span></code></a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#data-management-commands">Data Management Commands</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-your-progress">Reset Your Progress</a><ul class="nav section-nav flex-column">
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-everything">Reset Everything</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-module-progress-only">Reset Module Progress Only</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-milestone-achievements-only">Reset Milestone Achievements Only</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#safety-automatic-backups">Safety: Automatic Backups</a></li>
</ul>
</li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#data-safety-recovery">Data Safety &amp; Recovery</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#automatic-backups">Automatic Backups</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#what-if-tito-is-deleted">What If .tito/ Is Deleted?</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#data-health-checks">Data Health Checks</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#verify-data-integrity">Verify Data Integrity</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#best-practices">Best Practices</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#regular-progress-checks">Regular Progress Checks</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#understanding-what-gets-tracked">Understanding What Gets Tracked</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#modules-build-progress">Modules (Build Progress)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#milestones-achievement-progress">Milestones (Achievement Progress)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#whats-not-tracked">Whats NOT Tracked</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#common-data-scenarios">Common Data Scenarios</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-1-i-want-to-start-completely-fresh">Scenario 1: “I want to start completely fresh”</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-2-i-want-to-re-run-milestones-but-keep-module-progress">Scenario 2: “I want to re-run milestones but keep module progress”</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-3-i-accidentally-deleted-tito">Scenario 3: “I accidentally deleted .tito/”</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-4-i-want-to-share-my-progress-with-a-friend">Scenario 4: “I want to share my progress with a friend”</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#faq">FAQ</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-will-resetting-delete-my-code">Q: Will resetting delete my code?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-can-i-manually-edit-progress-json">Q: Can I manually edit progress.json?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-what-if-i-want-to-re-export-a-module">Q: What if I want to re-export a module?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-how-do-i-see-my-completion-dates">Q: How do I see my completion dates?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-can-i-delete-backups">Q: Can I delete backups?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-is-my-data-shared-anywhere">Q: Is my data shared anywhere?</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#next-steps">Next Steps</a></li>
</ul>
</nav>
</div>
</div>
</div>
<div id="searchbox"></div>
<article class="bd-article">
<section id="progress-data-management">
<h1>Progress &amp; Data Management<a class="headerlink" href="#progress-data-management" title="Link to this heading">#</a></h1>
<div style="background: #f8f9fa; padding: 2rem; border-radius: 0.5rem; margin: 2rem 0; text-align: center;">
<h2 style="margin: 0 0 1rem 0; color: #495057;">Track Your Journey</h2>
<p style="margin: 0; font-size: 1.1rem; color: #6c757d;">Understanding progress tracking, data management, and reset commands</p>
</div>
<p><strong>Purpose</strong>: Learn how TinyTorch tracks your progress, where your data lives, and how to manage it effectively.</p>
<section id="your-learning-journey-two-tracking-systems">
<h2>Your Learning Journey: Two Tracking Systems<a class="headerlink" href="#your-learning-journey-two-tracking-systems" title="Link to this heading">#</a></h2>
<p>TinyTorch uses a clean, simple approach to track your ML systems engineering journey:</p>
<pre class="mermaid">
graph LR
A[Build Modules] --&gt; B[Complete 01-20]
B --&gt; C[Export to Package]
C --&gt; D[Unlock Milestones]
D --&gt; E[Achieve 1957-2018]
E --&gt; F[Track Progress]
style A fill:#e3f2fd
style B fill:#fffbeb
style C fill:#f0fdf4
style D fill:#fef3c7
style E fill:#f3e5f5
style F fill:#e8eaf6
</pre><section id="the-two-systems">
<h3>The Two Systems<a class="headerlink" href="#the-two-systems" title="Link to this heading">#</a></h3>
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin: 2rem 0;">
<div style="background: #e3f2fd; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #2196f3;">
<h4 style="margin: 0 0 0.5rem 0; color: #1976d2;">📦 Module Progress</h4>
<p style="margin: 0.5rem 0; font-size: 0.95rem; color: #37474f;">What you BUILD (01-20)</p>
<ul style="margin: 0.5rem 0 0 0; padding-left: 1.5rem; font-size: 0.9rem; color: #546e7a;">
<li>Tensor, Autograd, Optimizers</li>
<li>Layers, Training, DataLoader</li>
<li>Convolutions, Transformers</li>
<li>Your complete ML framework</li>
</ul>
</div>
<div style="background: #f3e5f5; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #9c27b0;">
<h4 style="margin: 0 0 0.5rem 0; color: #7b1fa2;">🏆 Milestone Achievements</h4>
<p style="margin: 0.5rem 0; font-size: 0.95rem; color: #37474f;">What you ACHIEVE (01-06)</p>
<ul style="margin: 0.5rem 0 0 0; padding-left: 1.5rem; font-size: 0.9rem; color: #546e7a;">
<li>Perceptron (1957)</li>
<li>MLP Revival (1986)</li>
<li>CNN Revolution (1998)</li>
<li>AlexNet Era (2012)</li>
<li>Transformer Era (2017)</li>
<li>MLPerf (2018)</li>
</ul>
</div>
</div>
<p><strong>Simple relationship</strong>:</p>
<ul class="simple">
<li><p>Complete modules → Unlock milestones → Achieve historical ML recreations</p></li>
<li><p>Build capabilities → Validate with history → Track achievements</p></li>
</ul>
</section>
</section>
<hr class="docutils" />
<section id="where-your-data-lives">
<h2>Where Your Data Lives<a class="headerlink" href="#where-your-data-lives" title="Link to this heading">#</a></h2>
<p>All your progress is stored in the <code class="docutils literal notranslate"><span class="pre">.tito/</span></code> folder:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>TinyTorch/
├── .tito/ ← Your progress data
│ ├── config.json ← User preferences
│ ├── progress.json ← Module completion (01-20)
│ ├── milestones.json ← Milestone achievements (01-06)
│ └── backups/ ← Automatic safety backups
│ ├── 01_tensor_YYYYMMDD_HHMMSS.py
│ ├── 02_activations_YYYYMMDD_HHMMSS.py
│ └── ...
├── modules/ ← Where you edit
├── tinytorch/ ← Where code exports
└── ...
</pre></div>
</div>
<section id="understanding-each-file">
<h3>Understanding Each File<a class="headerlink" href="#understanding-each-file" title="Link to this heading">#</a></h3>
<div style="background: #f8f9fa; padding: 1.5rem; border: 1px solid #dee2e6; border-radius: 0.5rem; margin: 1.5rem 0;">
<p><strong><code class="docutils literal notranslate"><span class="pre">config.json</span></code></strong> - User Preferences</p>
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="nt">&quot;logo_theme&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;standard&quot;</span>
<span class="p">}</span>
</pre></div>
</div>
<ul class="simple">
<li><p>UI preferences</p></li>
<li><p>Display settings</p></li>
<li><p>Personal configuration</p></li>
</ul>
<p><strong><code class="docutils literal notranslate"><span class="pre">progress.json</span></code></strong> - Module Completion</p>
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="nt">&quot;version&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;1.0&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="nt">&quot;completed_modules&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"> </span><span class="mi">3</span><span class="p">,</span><span class="w"> </span><span class="mi">4</span><span class="p">,</span><span class="w"> </span><span class="mi">5</span><span class="p">,</span><span class="w"> </span><span class="mi">6</span><span class="p">,</span><span class="w"> </span><span class="mi">7</span><span class="p">],</span>
<span class="w"> </span><span class="nt">&quot;completion_dates&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="nt">&quot;1&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;2025-11-16T10:00:00&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="nt">&quot;2&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;2025-11-16T11:00:00&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="err">...</span>
<span class="w"> </span><span class="p">}</span>
<span class="p">}</span>
</pre></div>
</div>
<ul class="simple">
<li><p>Tracks which modules (01-20) youve completed</p></li>
<li><p>Records when you completed each</p></li>
<li><p>Updated by <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">module</span> <span class="pre">complete</span> <span class="pre">XX</span></code></p></li>
</ul>
<p><strong><code class="docutils literal notranslate"><span class="pre">milestones.json</span></code></strong> - Milestone Achievements</p>
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="nt">&quot;version&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;1.0&quot;</span><span class="p">,</span>
<span class="w"> </span><span class="nt">&quot;completed_milestones&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="s2">&quot;03&quot;</span><span class="p">],</span>
<span class="w"> </span><span class="nt">&quot;completion_dates&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="nt">&quot;03&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;2025-11-16T15:00:00&quot;</span>
<span class="w"> </span><span class="p">}</span>
<span class="p">}</span>
</pre></div>
</div>
<ul class="simple">
<li><p>Tracks which milestones (01-06) youve achieved</p></li>
<li><p>Records when you achieved each</p></li>
<li><p>Updated by <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">milestone</span> <span class="pre">run</span> <span class="pre">XX</span></code></p></li>
</ul>
<p><strong><code class="docutils literal notranslate"><span class="pre">backups/</span></code></strong> - Module Backups</p>
<ul class="simple">
<li><p>Automatic backups before operations</p></li>
<li><p>Timestamped copies of your implementations</p></li>
<li><p>Safety net for module development</p></li>
<li><p>Format: <code class="docutils literal notranslate"><span class="pre">XX_name_YYYYMMDD_HHMMSS.py</span></code></p></li>
</ul>
</div>
</section>
</section>
<hr class="docutils" />
<section id="unified-progress-view">
<h2>Unified Progress View<a class="headerlink" href="#unified-progress-view" title="Link to this heading">#</a></h2>
<section id="see-everything-tito-status">
<h3>See Everything: <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">status</span></code><a class="headerlink" href="#see-everything-tito-status" title="Link to this heading">#</a></h3>
<div style="background: #e8eaf6; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #5e35b1; margin: 1.5rem 0;">
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>status
</pre></div>
</div>
<p><strong>Shows your complete learning journey in one view</strong>:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>╭─────────────── 📊 TinyTorch Progress ────────────────╮
│ │
│ 📦 Modules Completed: 7/20 (35%) │
│ 🏆 Milestones Achieved: 1/6 (17%) │
│ 📍 Last Activity: Module 07 (2 hours ago) │
│ │
│ Next Steps: │
│ • Complete modules 08-09 to unlock Milestone 04 │
│ │
╰──────────────────────────────────────────────────────╯
Module Progress:
✅ 01 Tensor
✅ 02 Activations
✅ 03 Layers
✅ 04 Losses
✅ 05 Autograd
✅ 06 Optimizers
✅ 07 Training
🔒 08 DataLoader
🔒 09 Convolutions
🔒 10 Normalization
...
Milestone Achievements:
✅ 03 - MLP Revival (1986)
🎯 04 - CNN Revolution (1998) [Ready after modules 08-09]
🔒 05 - Transformer Era (2017)
🔒 06 - MLPerf (2018)
</pre></div>
</div>
<p><strong>Use this to</strong>:</p>
<ul class="simple">
<li><p>Check overall progress</p></li>
<li><p>See next recommended steps</p></li>
<li><p>Understand milestone prerequisites</p></li>
<li><p>Track your learning journey</p></li>
</ul>
</div>
</section>
</section>
<hr class="docutils" />
<section id="data-management-commands">
<h2>Data Management Commands<a class="headerlink" href="#data-management-commands" title="Link to this heading">#</a></h2>
<section id="reset-your-progress">
<h3>Reset Your Progress<a class="headerlink" href="#reset-your-progress" title="Link to this heading">#</a></h3>
<div style="background: #fff5f5; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #e74c3c; margin: 1.5rem 0;">
<p><strong>Starting fresh?</strong> Reset commands let you start over cleanly.</p>
<section id="reset-everything">
<h4>Reset Everything<a class="headerlink" href="#reset-everything" title="Link to this heading">#</a></h4>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>reset<span class="w"> </span>all
</pre></div>
</div>
<p><strong>What this does</strong>:</p>
<ul class="simple">
<li><p>Clears all module completion</p></li>
<li><p>Clears all milestone achievements</p></li>
<li><p>Resets configuration to defaults</p></li>
<li><p>Keeps your code in <code class="docutils literal notranslate"><span class="pre">modules/</span></code> safe</p></li>
<li><p>Asks for confirmation before proceeding</p></li>
</ul>
<p><strong>Example output</strong>:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>⚠️ Warning: This will reset ALL progress
This will clear:
• Module completion (7 modules)
• Milestone achievements (1 milestone)
• Configuration settings
Your code in modules/ will NOT be deleted.
Continue? [y/N]: y
✅ Creating backup at .tito_backup_20251116_143000/
✅ Clearing module progress
✅ Clearing milestone achievements
✅ Resetting configuration
🔄 Reset Complete!
You&#39;re ready to start fresh.
Run: tito module start 01
</pre></div>
</div>
</section>
<section id="reset-module-progress-only">
<h4>Reset Module Progress Only<a class="headerlink" href="#reset-module-progress-only" title="Link to this heading">#</a></h4>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>reset<span class="w"> </span>progress
</pre></div>
</div>
<p><strong>What this does</strong>:</p>
<ul class="simple">
<li><p>Clears module completion tracking only</p></li>
<li><p>Keeps milestone achievements</p></li>
<li><p>Keeps configuration</p></li>
<li><p>Useful for re-doing module workflow</p></li>
</ul>
</section>
<section id="reset-milestone-achievements-only">
<h4>Reset Milestone Achievements Only<a class="headerlink" href="#reset-milestone-achievements-only" title="Link to this heading">#</a></h4>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>reset<span class="w"> </span>milestones
</pre></div>
</div>
<p><strong>What this does</strong>:</p>
<ul class="simple">
<li><p>Clears milestone achievements only</p></li>
<li><p>Keeps module completion</p></li>
<li><p>Keeps configuration</p></li>
<li><p>Useful for re-running historical recreations</p></li>
</ul>
</section>
<section id="safety-automatic-backups">
<h4>Safety: Automatic Backups<a class="headerlink" href="#safety-automatic-backups" title="Link to this heading">#</a></h4>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create backup before reset</span>
tito<span class="w"> </span>reset<span class="w"> </span>all<span class="w"> </span>--backup
</pre></div>
</div>
<p><strong>What this does</strong>:</p>
<ul class="simple">
<li><p>Creates timestamped backup: <code class="docutils literal notranslate"><span class="pre">.tito_backup_YYYYMMDD_HHMMSS/</span></code></p></li>
<li><p>Contains complete copy of <code class="docutils literal notranslate"><span class="pre">.tito/</span></code> folder</p></li>
<li><p>Allows manual restore if needed</p></li>
<li><p>Automatic before any destructive operation</p></li>
</ul>
</div>
</section>
</section>
</section>
<hr class="docutils" />
<section id="data-safety-recovery">
<h2>Data Safety &amp; Recovery<a class="headerlink" href="#data-safety-recovery" title="Link to this heading">#</a></h2>
<section id="automatic-backups">
<h3>Automatic Backups<a class="headerlink" href="#automatic-backups" title="Link to this heading">#</a></h3>
<p>TinyTorch automatically backs up your work:</p>
<div style="background: #f0fdf4; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #22c55e; margin: 1.5rem 0;">
<p><strong>When backups happen</strong>:</p>
<ol class="arabic simple">
<li><p><strong>Before module start</strong>: Backs up existing work</p></li>
<li><p><strong>Before reset</strong>: Creates full <code class="docutils literal notranslate"><span class="pre">.tito/</span></code> backup</p></li>
<li><p><strong>Before module reset</strong>: Saves current implementation</p></li>
</ol>
<p><strong>Where backups go</strong>:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>.tito/backups/
├── 01_tensor_20251116_100000.py
├── 01_tensor_20251116_143000.py
├── 03_layers_20251115_180000.py
└── ...
</pre></div>
</div>
<p><strong>How to use backups</strong>:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Backups are timestamped - find the one you need</span>
ls<span class="w"> </span>-la<span class="w"> </span>.tito/backups/
<span class="c1"># Manually restore if needed</span>
cp<span class="w"> </span>.tito/backups/03_layers_20251115_180000.py<span class="w"> </span>modules/03_layers/layers_dev.py
</pre></div>
</div>
</div>
</section>
<section id="what-if-tito-is-deleted">
<h3>What If .tito/ Is Deleted?<a class="headerlink" href="#what-if-tito-is-deleted" title="Link to this heading">#</a></h3>
<div style="background: #fffbeb; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #f59e0b; margin: 1.5rem 0;">
<p><strong>No problem!</strong> TinyTorch recovers gracefully:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># If .tito/ is deleted, next command recreates it</span>
tito<span class="w"> </span>system<span class="w"> </span>health
</pre></div>
</div>
<p><strong>What happens</strong>:</p>
<ol class="arabic simple">
<li><p>TinyTorch detects missing <code class="docutils literal notranslate"><span class="pre">.tito/</span></code> folder</p></li>
<li><p>Creates fresh folder structure</p></li>
<li><p>Initializes empty progress tracking</p></li>
<li><p>Your code in <code class="docutils literal notranslate"><span class="pre">modules/</span></code> and <code class="docutils literal notranslate"><span class="pre">tinytorch/</span></code> is safe</p></li>
<li><p>You can continue from where you left off</p></li>
</ol>
<p><strong>Important</strong>: Your actual code (source in <code class="docutils literal notranslate"><span class="pre">src/</span></code>, notebooks in <code class="docutils literal notranslate"><span class="pre">modules/</span></code>, package in <code class="docutils literal notranslate"><span class="pre">tinytorch/</span></code>) is separate from progress tracking (in <code class="docutils literal notranslate"><span class="pre">.tito/</span></code>). Deleting <code class="docutils literal notranslate"><span class="pre">.tito/</span></code> only resets progress tracking, not your implementations.</p>
</div>
</section>
</section>
<hr class="docutils" />
<section id="data-health-checks">
<h2>Data Health Checks<a class="headerlink" href="#data-health-checks" title="Link to this heading">#</a></h2>
<section id="verify-data-integrity">
<h3>Verify Data Integrity<a class="headerlink" href="#verify-data-integrity" title="Link to this heading">#</a></h3>
<div style="background: #e3f2fd; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #2196f3; margin: 1.5rem 0;">
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>system<span class="w"> </span>health
</pre></div>
</div>
<p><strong>Now includes data health checks</strong>:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>╭────────── 🔍 TinyTorch System Check ──────────╮
│ │
│ ✅ Environment setup │
│ ✅ Dependencies installed │
│ ✅ TinyTorch in development mode │
│ ✅ Data files intact │
│ ✓ .tito/progress.json valid │
│ ✓ .tito/milestones.json valid │
│ ✓ .tito/config.json valid │
│ ✅ Backups directory exists │
│ │
╰───────────────────────────────────────────────╯
All systems ready! 🚀
</pre></div>
</div>
<p><strong>If data is corrupted</strong>:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>❌ Data files corrupted
✗ .tito/progress.json is malformed
Fix:
tito reset progress
Or restore from backup:
cp .tito_backup_YYYYMMDD/.tito/progress.json .tito/
</pre></div>
</div>
</div>
</section>
</section>
<hr class="docutils" />
<section id="best-practices">
<h2>Best Practices<a class="headerlink" href="#best-practices" title="Link to this heading">#</a></h2>
<section id="regular-progress-checks">
<h3>Regular Progress Checks<a class="headerlink" href="#regular-progress-checks" title="Link to this heading">#</a></h3>
<div style="background: #f8f9fa; padding: 1.5rem; border: 1px solid #dee2e6; border-radius: 0.5rem; margin: 1.5rem 0;">
<p><strong>Good habits</strong>:</p>
<ol class="arabic">
<li><p><strong>Check status regularly</strong>:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>status
</pre></div>
</div>
<p>See where you are, whats next</p>
</li>
<li><p><strong>Verify environment before work</strong>:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>system<span class="w"> </span>health
</pre></div>
</div>
<p>Catch issues early</p>
</li>
<li><p><strong>Let automatic backups work</strong>:</p>
<ul class="simple">
<li><p>Dont disable them</p></li>
<li><p>Theyre your safety net</p></li>
<li><p>Cleanup happens automatically</p></li>
</ul>
</li>
<li><p><strong>Backup before experiments</strong>:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>tito<span class="w"> </span>reset<span class="w"> </span>all<span class="w"> </span>--backup<span class="w"> </span><span class="c1"># If trying something risky</span>
</pre></div>
</div>
</li>
<li><p><strong>Version control for code</strong>:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>git<span class="w"> </span>commit<span class="w"> </span>-m<span class="w"> </span><span class="s2">&quot;Completed Module 05: Autograd&quot;</span>
</pre></div>
</div>
<p><code class="docutils literal notranslate"><span class="pre">.tito/</span></code> is gitignored - use git for code versions</p>
</li>
</ol>
</div>
</section>
</section>
<hr class="docutils" />
<section id="understanding-what-gets-tracked">
<h2>Understanding What Gets Tracked<a class="headerlink" href="#understanding-what-gets-tracked" title="Link to this heading">#</a></h2>
<section id="modules-build-progress">
<h3>Modules (Build Progress)<a class="headerlink" href="#modules-build-progress" title="Link to this heading">#</a></h3>
<p><strong>Tracked when</strong>: You run <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">module</span> <span class="pre">complete</span> <span class="pre">XX</span></code></p>
<p><strong>Whats recorded</strong>:</p>
<ul class="simple">
<li><p>Module number (1-20)</p></li>
<li><p>Completion timestamp</p></li>
<li><p>Test results (passed/failed)</p></li>
</ul>
<p><strong>Visible in</strong>:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">module</span> <span class="pre">status</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">status</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">.tito/progress.json</span></code></p></li>
</ul>
</section>
<section id="milestones-achievement-progress">
<h3>Milestones (Achievement Progress)<a class="headerlink" href="#milestones-achievement-progress" title="Link to this heading">#</a></h3>
<p><strong>Tracked when</strong>: You run <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">milestone</span> <span class="pre">run</span> <span class="pre">XX</span></code></p>
<p><strong>Whats recorded</strong>:</p>
<ul class="simple">
<li><p>Milestone ID (01-06)</p></li>
<li><p>Achievement timestamp</p></li>
<li><p>Number of attempts (if multiple runs)</p></li>
</ul>
<p><strong>Visible in</strong>:</p>
<ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">milestone</span> <span class="pre">status</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">status</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">.tito/milestones.json</span></code></p></li>
</ul>
</section>
<section id="whats-not-tracked">
<h3>Whats NOT Tracked<a class="headerlink" href="#whats-not-tracked" title="Link to this heading">#</a></h3>
<div style="background: #fffbeb; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #f59e0b; margin: 1.5rem 0;">
<p><strong>TinyTorch does NOT track</strong>:</p>
<ul class="simple">
<li><p>Your actual code implementations (source in <code class="docutils literal notranslate"><span class="pre">src/</span></code>, notebooks in <code class="docutils literal notranslate"><span class="pre">modules/</span></code>, package in <code class="docutils literal notranslate"><span class="pre">tinytorch/</span></code>)</p></li>
<li><p>How long you spent on each module</p></li>
<li><p>How many times you edited files</p></li>
<li><p>Your test scores or grades</p></li>
<li><p>Personal information</p></li>
<li><p>Usage analytics</p></li>
</ul>
<p><strong>Why</strong>: TinyTorch is a local, offline learning tool. Your privacy is protected. All data stays on your machine.</p>
</div>
</section>
</section>
<hr class="docutils" />
<section id="common-data-scenarios">
<h2>Common Data Scenarios<a class="headerlink" href="#common-data-scenarios" title="Link to this heading">#</a></h2>
<section id="scenario-1-i-want-to-start-completely-fresh">
<h3>Scenario 1: “I want to start completely fresh”<a class="headerlink" href="#scenario-1-i-want-to-start-completely-fresh" title="Link to this heading">#</a></h3>
<div style="background: #f8f9fa; padding: 1.5rem; border: 1px solid #dee2e6; border-radius: 0.5rem; margin: 1.5rem 0;">
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create backup first (recommended)</span>
tito<span class="w"> </span>reset<span class="w"> </span>all<span class="w"> </span>--backup
<span class="c1"># Or just reset</span>
tito<span class="w"> </span>reset<span class="w"> </span>all
<span class="c1"># Start from Module 01</span>
tito<span class="w"> </span>module<span class="w"> </span>start<span class="w"> </span><span class="m">01</span>
</pre></div>
</div>
<p><strong>Result</strong>: Clean slate, progress tracking reset, your code untouched</p>
</div>
</section>
<section id="scenario-2-i-want-to-re-run-milestones-but-keep-module-progress">
<h3>Scenario 2: “I want to re-run milestones but keep module progress”<a class="headerlink" href="#scenario-2-i-want-to-re-run-milestones-but-keep-module-progress" title="Link to this heading">#</a></h3>
<div style="background: #f8f9fa; padding: 1.5rem; border: 1px solid #dee2e6; border-radius: 0.5rem; margin: 1.5rem 0;">
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Reset only milestone achievements</span>
tito<span class="w"> </span>reset<span class="w"> </span>milestones
<span class="c1"># Re-run historical recreations</span>
tito<span class="w"> </span>milestone<span class="w"> </span>run<span class="w"> </span><span class="m">03</span>
tito<span class="w"> </span>milestone<span class="w"> </span>run<span class="w"> </span><span class="m">04</span>
</pre></div>
</div>
<p><strong>Result</strong>: Module completion preserved, milestone achievements reset</p>
</div>
</section>
<section id="scenario-3-i-accidentally-deleted-tito">
<h3>Scenario 3: “I accidentally deleted .tito/”<a class="headerlink" href="#scenario-3-i-accidentally-deleted-tito" title="Link to this heading">#</a></h3>
<div style="background: #f8f9fa; padding: 1.5rem; border: 1px solid #dee2e6; border-radius: 0.5rem; margin: 1.5rem 0;">
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Just run any tito command</span>
tito<span class="w"> </span>system<span class="w"> </span>health
<span class="c1"># OR</span>
<span class="c1"># If you have a backup</span>
cp<span class="w"> </span>-r<span class="w"> </span>.tito_backup_YYYYMMDD/<span class="w"> </span>.tito/
</pre></div>
</div>
<p><strong>Result</strong>: <code class="docutils literal notranslate"><span class="pre">.tito/</span></code> folder recreated, either fresh or from backup</p>
</div>
</section>
<section id="scenario-4-i-want-to-share-my-progress-with-a-friend">
<h3>Scenario 4: “I want to share my progress with a friend”<a class="headerlink" href="#scenario-4-i-want-to-share-my-progress-with-a-friend" title="Link to this heading">#</a></h3>
<div style="background: #f8f9fa; padding: 1.5rem; border: 1px solid #dee2e6; border-radius: 0.5rem; margin: 1.5rem 0;">
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Create backup with timestamp</span>
tito<span class="w"> </span>reset<span class="w"> </span>all<span class="w"> </span>--backup<span class="w"> </span><span class="c1"># (then cancel when prompted)</span>
<span class="c1"># Share the backup folder</span>
cp<span class="w"> </span>-r<span class="w"> </span>.tito_backup_YYYYMMDD/<span class="w"> </span>~/Desktop/my-tinytorch-progress/
</pre></div>
</div>
<p><strong>Result</strong>: Friend can see your progress by copying to their <code class="docutils literal notranslate"><span class="pre">.tito/</span></code> folder</p>
</div>
</section>
</section>
<hr class="docutils" />
<section id="faq">
<h2>FAQ<a class="headerlink" href="#faq" title="Link to this heading">#</a></h2>
<section id="q-will-resetting-delete-my-code">
<h3>Q: Will resetting delete my code?<a class="headerlink" href="#q-will-resetting-delete-my-code" title="Link to this heading">#</a></h3>
<p><strong>A</strong>: No! Reset commands only affect progress tracking in <code class="docutils literal notranslate"><span class="pre">.tito/</span></code>. Your source code in <code class="docutils literal notranslate"><span class="pre">src/</span></code>, notebooks in <code class="docutils literal notranslate"><span class="pre">modules/</span></code>, and exported code in <code class="docutils literal notranslate"><span class="pre">tinytorch/</span></code> are never touched.</p>
</section>
<section id="q-can-i-manually-edit-progress-json">
<h3>Q: Can I manually edit progress.json?<a class="headerlink" href="#q-can-i-manually-edit-progress-json" title="Link to this heading">#</a></h3>
<p><strong>A</strong>: Yes, but not recommended. Use <code class="docutils literal notranslate"><span class="pre">tito</span></code> commands instead. Manual edits might break validation.</p>
</section>
<section id="q-what-if-i-want-to-re-export-a-module">
<h3>Q: What if I want to re-export a module?<a class="headerlink" href="#q-what-if-i-want-to-re-export-a-module" title="Link to this heading">#</a></h3>
<p><strong>A</strong>: Just run <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">module</span> <span class="pre">complete</span> <span class="pre">XX</span></code> again. It will re-run tests and re-export. Progress tracking remains unchanged.</p>
</section>
<section id="q-how-do-i-see-my-completion-dates">
<h3>Q: How do I see my completion dates?<a class="headerlink" href="#q-how-do-i-see-my-completion-dates" title="Link to this heading">#</a></h3>
<p><strong>A</strong>: Run <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">status</span></code> for a formatted view, or check <code class="docutils literal notranslate"><span class="pre">.tito/progress.json</span></code> and <code class="docutils literal notranslate"><span class="pre">.tito/milestones.json</span></code> directly.</p>
</section>
<section id="q-can-i-delete-backups">
<h3>Q: Can I delete backups?<a class="headerlink" href="#q-can-i-delete-backups" title="Link to this heading">#</a></h3>
<p><strong>A</strong>: Yes, backups in <code class="docutils literal notranslate"><span class="pre">.tito/backups/</span></code> can be deleted manually. Theyre safety nets, not requirements.</p>
</section>
<section id="q-is-my-data-shared-anywhere">
<h3>Q: Is my data shared anywhere?<a class="headerlink" href="#q-is-my-data-shared-anywhere" title="Link to this heading">#</a></h3>
<p><strong>A</strong>: No. TinyTorch is completely local. No data leaves your machine. No tracking, no analytics, no cloud sync.</p>
</section>
</section>
<hr class="docutils" />
<section id="next-steps">
<h2>Next Steps<a class="headerlink" href="#next-steps" title="Link to this heading">#</a></h2>
<div style="background: #f8f9fa; padding: 2rem; border-radius: 0.5rem; margin: 2rem 0; text-align: center;">
<h3 style="margin: 0 0 1rem 0; color: #495057;">Keep Building!</h3>
<p style="margin: 0 0 1.5rem 0; color: #6c757d;">Now that you understand data management, focus on what matters: building ML systems</p>
<a href="modules.html" style="display: inline-block; background: #007bff; color: white; padding: 0.75rem 1.5rem; border-radius: 0.25rem; text-decoration: none; font-weight: 500; margin-right: 1rem;">Module Workflow →</a>
<a href="milestones.html" style="display: inline-block; background: #9c27b0; color: white; padding: 0.75rem 1.5rem; border-radius: 0.25rem; text-decoration: none; font-weight: 500;">Milestone System →</a>
</div>
<hr class="docutils" />
<p><em>Your progress is tracked, your data is safe, and your journey is yours. TinyTorch keeps track of what youve built and achieved - you focus on learning ML systems engineering.</em></p>
</section>
</section>
<script type="text/x-thebe-config">
{
requestKernel: true,
binderOptions: {
repo: "binder-examples/jupyter-stacks-datascience",
ref: "master",
},
codeMirrorConfig: {
theme: "abcdef",
mode: "python"
},
kernelOptions: {
name: "python3",
path: "./tito"
},
predefinedOutput: true
}
</script>
<script>kernelName = 'python3'</script>
</article>
<footer class="prev-next-footer d-print-none">
<div class="prev-next-area">
<a class="left-prev"
href="milestones.html"
title="previous page">
<i class="fa-solid fa-angle-left"></i>
<div class="prev-next-info">
<p class="prev-next-subtitle">previous</p>
<p class="prev-next-title">Milestone System</p>
</div>
</a>
<a class="right-next"
href="troubleshooting.html"
title="next page">
<div class="prev-next-info">
<p class="prev-next-subtitle">next</p>
<p class="prev-next-title">Troubleshooting Guide</p>
</div>
<i class="fa-solid fa-angle-right"></i>
</a>
</div>
</footer>
</div>
<div class="bd-sidebar-secondary bd-toc"><div class="sidebar-secondary-items sidebar-secondary__inner">
<div class="sidebar-secondary-item">
<div class="page-toc tocsection onthispage">
<i class="fa-solid fa-list"></i> Contents
</div>
<nav class="bd-toc-nav page-toc">
<ul class="visible nav section-nav flex-column">
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#your-learning-journey-two-tracking-systems">Your Learning Journey: Two Tracking Systems</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#the-two-systems">The Two Systems</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#where-your-data-lives">Where Your Data Lives</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#understanding-each-file">Understanding Each File</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#unified-progress-view">Unified Progress View</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#see-everything-tito-status">See Everything: <code class="docutils literal notranslate"><span class="pre">tito</span> <span class="pre">status</span></code></a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#data-management-commands">Data Management Commands</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-your-progress">Reset Your Progress</a><ul class="nav section-nav flex-column">
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-everything">Reset Everything</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-module-progress-only">Reset Module Progress Only</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#reset-milestone-achievements-only">Reset Milestone Achievements Only</a></li>
<li class="toc-h4 nav-item toc-entry"><a class="reference internal nav-link" href="#safety-automatic-backups">Safety: Automatic Backups</a></li>
</ul>
</li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#data-safety-recovery">Data Safety &amp; Recovery</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#automatic-backups">Automatic Backups</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#what-if-tito-is-deleted">What If .tito/ Is Deleted?</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#data-health-checks">Data Health Checks</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#verify-data-integrity">Verify Data Integrity</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#best-practices">Best Practices</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#regular-progress-checks">Regular Progress Checks</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#understanding-what-gets-tracked">Understanding What Gets Tracked</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#modules-build-progress">Modules (Build Progress)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#milestones-achievement-progress">Milestones (Achievement Progress)</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#whats-not-tracked">Whats NOT Tracked</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#common-data-scenarios">Common Data Scenarios</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-1-i-want-to-start-completely-fresh">Scenario 1: “I want to start completely fresh”</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-2-i-want-to-re-run-milestones-but-keep-module-progress">Scenario 2: “I want to re-run milestones but keep module progress”</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-3-i-accidentally-deleted-tito">Scenario 3: “I accidentally deleted .tito/”</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#scenario-4-i-want-to-share-my-progress-with-a-friend">Scenario 4: “I want to share my progress with a friend”</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#faq">FAQ</a><ul class="nav section-nav flex-column">
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-will-resetting-delete-my-code">Q: Will resetting delete my code?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-can-i-manually-edit-progress-json">Q: Can I manually edit progress.json?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-what-if-i-want-to-re-export-a-module">Q: What if I want to re-export a module?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-how-do-i-see-my-completion-dates">Q: How do I see my completion dates?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-can-i-delete-backups">Q: Can I delete backups?</a></li>
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#q-is-my-data-shared-anywhere">Q: Is my data shared anywhere?</a></li>
</ul>
</li>
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#next-steps">Next Steps</a></li>
</ul>
</nav></div>
</div></div>
</div>
<footer class="bd-footer-content">
<div class="bd-footer-content__inner container">
<div class="footer-item">
<p class="component-author">
By Prof. Vijay Janapa Reddi (Harvard University)
</p>
</div>
<div class="footer-item">
<p class="copyright">
© Copyright 2025.
<br/>
</p>
</div>
<div class="footer-item">
</div>
<div class="footer-item">
</div>
</div>
</footer>
</main>
</div>
</div>
<!-- Scripts loaded after <body> so the DOM is not blocked -->
<script src="../_static/scripts/bootstrap.js?digest=dfe6caa3a7d634c4db9b"></script>
<script src="../_static/scripts/pydata-sphinx-theme.js?digest=dfe6caa3a7d634c4db9b"></script>
<footer class="bd-footer">
</footer>
</body>
</html>