This guide provides examples and common workflows for using the Data Science for Beginners curriculum.
- How to Use This Curriculum
- Working with Lessons
- Working with Jupyter Notebooks
- Using the Quiz Application
- Common Workflows
- Tips for Self-Learners
- Tips for Teachers
This curriculum is designed to be flexible and can be used in multiple ways:
- Self-paced learning: Work through lessons independently at your own speed
- Classroom instruction: Use as a structured course with guided instruction
- Study groups: Learn collaboratively with peers
- Workshop format: Intensive short-term learning sessions
Each lesson follows a consistent structure to maximize learning:
- Pre-lesson Quiz: Test your existing knowledge
- Sketchnote (Optional): Visual summary of key concepts
- Video (Optional): Supplemental video content
- Written Lesson: Core concepts and explanations
- Jupyter Notebook: Hands-on coding exercises
- Assignment: Practice what you've learned
- Post-lesson Quiz: Reinforce your understanding
# 1. Navigate to the lesson directory
cd 1-Introduction/01-defining-data-science
# 2. Read the README.md
# Open README.md in your browser or editor
# 3. Take the pre-lesson quiz
# Click the quiz link in the README
# 4. Open the Jupyter notebook (if available)
jupyter notebook
# 5. Complete the exercises in the notebook
# 6. Work on the assignment
# 7. Take the post-lesson quiz# Activate your virtual environment
source venv/bin/activate # On macOS/Linux
# OR
venv\Scripts\activate # On Windows
# Start Jupyter from the repository root
jupyter notebook- Execute a cell: Press
Shift + Enteror click the "Run" button - Execute all cells: Select "Cell" → "Run All" from the menu
- Restart kernel: Select "Kernel" → "Restart" if you encounter issues
# Import required libraries
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# Load a dataset
df = pd.read_csv('data/sample.csv')
# Explore the data
df.head()
df.info()
df.describe()
# Create a visualization
plt.figure(figsize=(10, 6))
plt.plot(df['column_name'])
plt.title('Sample Visualization')
plt.xlabel('X-axis Label')
plt.ylabel('Y-axis Label')
plt.show()- Jupyter auto-saves periodically
- Manually save: Press
Ctrl + S(orCmd + Son macOS) - Your progress is saved in the
.ipynbfile
# Navigate to quiz app directory
cd quiz-app
# Start the development server
npm run serve
# Access at http://localhost:8080- Pre-lesson quizzes are linked at the top of each lesson
- Post-lesson quizzes are linked at the bottom of each lesson
- Each quiz has 3 questions
- Quizzes are designed to reinforce learning, not to test exhaustively
- Quizzes are numbered 0-39 (40 total quizzes)
- Each lesson typically has a pre and post quiz
- Quiz URLs include the quiz number:
https://ff-quizzes.netlify.app/en/ds/quiz/0
# 1. Set up your environment (see INSTALLATION.md)
# 2. Start with Lesson 1
cd 1-Introduction/01-defining-data-science
# 3. For each lesson:
# - Take pre-lesson quiz
# - Read the lesson content
# - Work through the notebook
# - Complete the assignment
# - Take post-lesson quiz
# 4. Progress through all 20 lessons sequentiallyIf you're interested in a specific topic:
# Example: Focus on Data Visualization
cd 3-Data-Visualization
# Explore lessons 9-13:
# - Lesson 9: Visualizing Quantities
# - Lesson 10: Visualizing Distributions
# - Lesson 11: Visualizing Proportions
# - Lesson 12: Visualizing Relationships
# - Lesson 13: Meaningful Visualizations# 1. Review the Data Science Lifecycle lessons (14-16)
cd 4-Data-Science-Lifecycle
# 2. Work through a real-world example (Lesson 20)
cd ../6-Data-Science-In-Wild/20-Real-World-Examples
# 3. Apply concepts to your own project# Learn about cloud data science (Lessons 17-19)
cd 5-Data-Science-In-Cloud
# 17: Introduction to Cloud Data Science
# 18: Low-Code ML Tools
# 19: Azure Machine Learning Studio# Create a learning journal
mkdir my-learning-journal
# For each lesson, create notes
echo "# Lesson 1 Notes" > my-learning-journal/lesson-01-notes.md- Set aside dedicated time each day or week
- Complete at least one lesson per week
- Review previous lessons periodically
- Join the Discord community
- Participate in #Data-Science-for-Beginners Channel in Discord Discord Discussions
- Share your progress and ask questions
After completing lessons, apply concepts to personal projects:
# Example: Analyze your own dataset
import pandas as pd
# Load your own data
my_data = pd.read_csv('my-project/data.csv')
# Apply techniques learned
# - Data cleaning (Lesson 8)
# - Exploratory data analysis (Lesson 7)
# - Visualization (Lessons 9-13)
# - Analysis (Lesson 15)- Review for-teachers.md for detailed guidance
- Set up a shared environment (GitHub Classroom or Codespaces)
- Establish a communication channel (Discord, Slack, or Teams)
Suggested 10-Week Schedule:
- Week 1-2: Introduction (Lessons 1-4)
- Week 3-4: Working with Data (Lessons 5-8)
- Week 5-6: Data Visualization (Lessons 9-13)
- Week 7-8: Data Science Lifecycle (Lessons 14-16)
- Week 9: Cloud Data Science (Lessons 17-19)
- Week 10: Real-World Applications & Final Projects (Lesson 20)
# Serve documentation locally for classroom use
docsify serve
# Students can access at localhost:3000
# No internet required after initial setup- Review student notebooks for completed exercises
- Check for understanding through quiz scores
- Evaluate final projects using data science lifecycle principles
# Example custom assignment template
"""
Assignment: [Topic]
Objective: [Learning goal]
Dataset: [Provide or have students find one]
Tasks:
1. Load and explore the dataset
2. Clean and prepare the data
3. Create at least 3 visualizations
4. Perform analysis
5. Communicate findings
Deliverables:
- Jupyter notebook with code and explanations
- Written summary of findings
"""# Clone the entire repository
git clone https://github.com/microsoft/Data-Science-For-Beginners.git
# Download datasets in advance
# Most datasets are included in the repository# Serve with Docsify
docsify serve
# Access at localhost:3000cd quiz-app
npm run serveTranslations are available in 40+ languages:
# Access translated lessons
cd translations/fr # French
cd translations/es # Spanish
cd translations/de # German
# ... and many moreEach translation maintains the same structure as the English version.
- Microsoft Learn - Additional learning paths
- Student Hub - Resources for students
- Azure AI Foundry - Community forum
- Check TROUBLESHOOTING.md for common issues
- Search GitHub Issues
- Join our Discord
- Review CONTRIBUTING.md to report issues or contribute