Content from Jupyter Notebook
Last updated on 2026-03-04 | Edit this page
Introduction to Jupyter Notebooks
A Beginner’s Guide for New Data Scientists (Python)
1. What Is a Jupyter Notebook?
A Jupyter Notebook is an interactive computing environment that allows you to combine:
- Code (Python)
- Text explanations
- Mathematical equations
- Tables and visualizations
- Results and outputs
All in a single document.
Jupyter Notebooks are especially useful for:
- Data exploration and analysis
- Teaching and learning Python
- Prototyping models
- Sharing reproducible research
Instead of writing a script and running it all at once, you work in small, executable blocks called cells.
2. Why Data Scientists Use Jupyter Notebooks
Jupyter Notebooks support an iterative workflow:
- Write a few lines of code
- Run them immediately
- Inspect the output
- Modify and rerun as needed
3. Getting Started: Opening a Notebook
You can use Jupyter Notebooks in several ways:
Through Anaconda Navigator. Install the application, create an account, and launch Jupyter Notebook.
Through Google Collab. You would need a google account for this. Then create a new notebook in Drive.
Quick Start in Google Colab (easiest for beginners)
- Go to https://colab.research.google.com
- Click File → New notebook
- You’re ready! No installation needed.
Colab runs in the cloud → you only need a Google account and internet.
Tip: The interface looks almost identical to classic Jupyter.
4. Understanding Cells
A Jupyter Notebook is composed of cells. Each cell performs a specific role.
5. Running Cells
You can execute cells using keyboard shortcuts:
Shift + Enter→ Run cell and move to nextCtrl + Enter→ Run cell and stay in placeAlt + Enter→ Run cell and insert a new one below
Important: Cells do not need to be run from top to bottom, but execution order matters.
6. The Notebook Kernel
The kernel is the computational engine that runs your code.
For Python notebooks, the kernel:
Executes Python code
Stores variables in memory
Can be restarted or interrupted
7. Variables and Statefulness – The Most Important Concept
Jupyter remembers variables across cells as long as the kernel is running.
This is very powerful… but also the source of most beginner frustration.
Demo – run these cells one by one
Cell A
Cell B
Cell C
Challenge
Challenge — Variable Values State
- Create 3 new code cells
- In cell 1:
count = 0 - In cell 2:
count = count + 1; print(count) - In cell 3:
print("Final count:", count) - Run all → should print 1
- Now run only cell 2 five times
- Run cell 3 again → what happened?
→ You just experienced statefulness live!
8. Working with Data in Jupyter
Most data science workflows start by importing libraries and loading data.
9. Visualization Inside Notebooks
Plots are displayed inline, directly below the code cell.
Example:
PYTHON
plt.plot([1, 2, 3, 4], [10, 20, 25, 30])
plt.xlabel("X values")
plt.ylabel("Y values")
plt.title("Simple Line Plot")
plt.show()
This makes exploratory analysis fast and interactive.
10. Using Markdown for Documentation
Well-written notebooks tell a story.
Use Markdown cells to:
- Explain your approach
- Describe datasets
- Interpret results
- Organize sections
11. Common Beginner Mistakes & How to Avoid Them
Running cells out of order
→ Variables get unexpected values
Fix: Kernel → Restart & Run All oftenForgetting to import libraries in a fresh kernel
→ “NameError: name ‘pd’ is not defined”
Fix: Put allimportstatements in the first code cellOne giant code cell with 200 lines
→ Hard to debug, hard to fix mistakes
Fix: Break logic into small cells (one logical step per cell)No Markdown explanations
→ Nobody (including future you) understands what you did
Fix: Add a Markdown cell before/after important code blocksSharing notebook without restarting & running all
→ Collaborator sees missing variables or wrong results
Fix: Always do Kernel → Restart & Run All before sharing/exportingAssuming outputs are permanent
→ Outputs disappear on kernel restart
Fix: Rely on code, not on saved output images
Module Overview
| Lesson | Overview |
|---|---|
| Introduction I | Introduction to Variable Handling in Jupyter Notebook |
| Introduction II | Introduction to Python Coding in Jupyter Notebook |
| Introduction III | Introduction to Python Plotting in Jupyter Notebook |
Content from Carpentry Introduction
Last updated on 2026-03-05 | Edit this page
How to Create Your Own Carpentries-Style Workshop Website Using GitHub
A beginner-friendly guide for instructors, lesson authors, and community members
After this lesson you will be able to:
- Create a professional-looking workshop website using The Carpentries template
- Host it for free on GitHub Pages
- Customize key information (dates, instructors, setup instructions)
- Understand why we avoid forking and use the template instead
Target audience: Anyone planning a Carpentries-style workshop (Software, Data, Library Carpentry) who has a basic GitHub account.
Prerequisites: - A free GitHub account (sign up at github.com if you don’t have one) - A web browser - (Optional but recommended) Basic familiarity with Markdown
Why Use The Carpentries Workshop Template?
The Carpentries provides a ready-made template that:
- Looks professional and consistent with hundreds of Carpentries workshops
- Automatically generates schedule, setup, FAQ, and other standard pages
- Is mobile-friendly
- Is hosted for free via GitHub Pages
- Supports easy customization via one main file
(
_config.yml)
There are two main Carpentries website types:
- Workshop websites → short-term event pages (what this guide covers)
- Lesson websites → long-term curriculum pages (uses The Carpentries Workbench — see notes at end)
Step 1: Create Your Repository from the Template
Important: Do NOT fork the repository — use GitHub’s “Use this template” feature instead.
Click the green Use this template button (top right) → Create a new repository
-
Fill in the details:
- Owner: your GitHub username or an organization
-
Repository name: Use the Carpentries naming
convention:
YYYY-MM-DD-sitename-lessonname
Example:2026-05-15-purdue-python-novice - Description (optional): “Python for Beginners – May 2026, Purdue University”
- Visibility: Public (required for GitHub Pages)
Click Create repository
Tip: If you forget the naming convention, your site will still work — but using the slug format helps The Carpentries index your workshop.
Step 2: Install GitHub Desktop.
After installation, login to the application.
Click on
FilethenClone Repositoryon the top left.Find the newly created repository and save it locally on your desktop.
Go the folder which has the cloned repository.
Any change you make in this folder will reflect on the GitHub desktop application. Make sure to save the changes.
After making the changes, add a summary (this is required), and then
Pushon the top right of the application.
That’s it! Now you can make changes locally to your webpage without having to open GitHub in a browser.
Tip: If you happen to make changes to the webpage
repository from a browser and to make sure you have saved the progress
locally in your desktop, all you have to do is Fetch Origin
in the top right of the application to update your local folder repo of
the changes.
Step 3: Enable GitHub Pages - Create another repository
In this second newly created GitHub repository, you will display whatever content you add to the repo you created in Step 1.
For License choose
GNU General Public Licenseif you wish.Visibility can be changed at anytime but you can choose either to keep it
PublicorPrivate.In this repository, create and open the file called
_config.ymlAdd [Title], [Description] for the
_config.ymlif you want to.Create a file called
index.htmlor whatever name you prefer. This will be the place where you make changes to your webpage. You will need to learn html coding here! Check this out.In our case, we have a repository/webpage name called
spatialturn.github.io. See here. See the changes we made there!** Alternatively, you can also use the template we created here and create your very own html repo.**
Step 4: Adding Content to Webpage.
Open the folder called episodes in repository created using the carpentry template in Step 1.
You should see a file called
introduction.md.This is the file where you can add content for a specific module.
You can always add newer modules by adding newer .md or markdown files within the episodes folder.
Make sure to add that particular file name in
config.yamlfile and save it. It is usually around line 67.By default
config.yamlhas onlyintroduction.mdbut you can more to that if you decide to add more content to it.Check the changes we made when we created our webpages for the Data Analysis module here.
Tip: See the changes we made to
episodes folder and config.yaml file.