🌱 Foundations
For students who have never coded before. Slow, gentle introduction: running code, variables, lists, loops, and basic functions.
A practice space where NAMSSN UI students can learn Python from scratch and use it to explore calculus, sequences and series, random processes, and simple differential equations.
Python here is not for building big software projects. It is a thinking partner for mathematics. You type short pieces of code, run them, look at the output, and adjust — like checking examples and exploring patterns by hand, but with a faster pencil.
Students who stay patient with the modules and keep using Python on real UI problems will very quickly become comfortable designing their own notebooks and experiments.
For students who have never coded before. Slow, gentle introduction: running code, variables, lists, loops, and basic functions.
Dedicated to real analysis: sequences, series, and numerical integrals. Use it alongside your analysis and calculus courses.
Random walks, simple ODEs, and mini projects tied to UI courses and the ODE–Integration Bee. Turn computations into small research-style notes.
Start here if you have never written code before. By the end of this module you should know how to run code, print values, and read error messages without panic.
Python executes your code line by line, top to bottom. We use print(...)
to see results:
print(2 + 3)print(2**5)print("Hello NAMSSN")Goal: feel comfortable typing a few lines, pressing “Run code”, and reading the output.
A variable is just a name attached to a value. You can reuse it many times:
n = 5h = 0.01area = 2 * 3.14 * hErrors look scary at first, but they are extremely useful. Python literally tells you what went wrong and where. In this module you intentionally cause and fix a few simple errors.
Goal: Never think “I am bad at coding”. Think “Python is telling me what to fix.”
Here you learn the basic building blocks: numbers, lists, for-loops, and functions.
These are the tools you will reuse in every later module.
Many experiments start with “take these numbers and compute something for each of them”. Lists are perfect for that:
xs = [0, 0.5, 1, 1.5, 2]import mathprint(math.sin(1), math.exp(1))Loops let you repeat the same action for many values and see patterns quickly:
for n in range(1, 6):
print(n, n**2)
You will generate small tables that look like what you normally compute by hand.
Functions bundle a mathematical rule into a reusable piece of code:
def f(x):
return x**2 + 1
You will write functions that mirror formulas from your UI courses.
This module connects directly to analysis and series courses. You use Python to generate terms, compute partial sums, and approximate integrals numerically.
You generate terms of a sequence and look at what they seem to approach:
def a(n):
return (1 + 1/n)**n
for n in [1, 2, 5, 10, 50, 100, 1000]:
print(n, a(n))
Here you build short scripts that compute partial sums and let you “see” convergence or divergence:
def partial_sums(N):
s = 0.0
for n in range(1, N+1):
s += 1/n**2
return s
You write a simple Riemann-sum style approximation to a definite integral:
import math
def approx_integral(f, a, b, n):
h = (b - a) / n
s = 0.0
for k in range(n):
x = a + (k + 0.5)*h # midpoint rule
s += f(x)
return s * h
Goal: Use Python to build intuition alongside the theorems from class.
Now you start building genuine experiments: simple random walks, basic ODE solvers, and small data collections. The aim is not “perfect numerics” but good intuition.
You simulate a one-dimensional random walk and print a few sample paths:
For a basic ODE like y' = y, you can write a short Euler method and print
the approximate values:
In this final module you are invited to design a small experiment tied to a UI course: series comparison, simple Markov chain, numerical experiment for the ODE–Integration Bee, or anything you are curious about.
Type Python code and run it directly in the browser. Use this pad to test ideas, check patterns, and support your coursework and problem solving.
print(...) to see values. For now, plotting
is not enabled here, but you can copy code into a notebook later for graphs.
Run some code and your output will appear here.
Link with other parts of the hub: you can paste code or results into the Problems hub or write about an experiment in the Student Bulletin.