DS 208 · Graduate · UP Cebu

Welcome to Programming for Data Science

Code that runs once and gives you a number is not worth much. We are after code someone else can run next year and get the same number.

12 weeksBasics to project
SaturdaysThree hours
Fully onlineSlides stay up
Start at zeroNo experience needed

The whole plan is on the next slide. Nothing on it is a surprise later.

Noel Jeffrey Pinton · Department of Computer Science

The plan

Twelve weeks, four stretches

The first month is the steepest. After that you are mostly learning libraries — bundles of ready-made code other people wrote, which you load into your own work — and that is much easier than learning to program.

Most names on this slide (NumPy, pandas, SQL, Git…) are tools you have not met yet. You do not need to know any of them today — each one is explained in the week it arrives.

Weeks 1–4

The language itself

Setting up Python, then types, control flow, functions, data structures and files. Week 4 is where code stops being one long script — objects, errors, and how to organise a project.

Weeks 5–8

The libraries you will actually use

NumPy for arrays, then two weeks of pandas because it earns them — grouping, merging, reshaping. Then matplotlib and seaborn, so the result is something you can show a person.

Weeks 9–11

Data that lives somewhere else

Reading from files, SQL and APIs. Regular expressions for text that refuses to be tidy. Then Git, environments and debugging — the habits that make Week 12 survivable.

Week 12

Your turn

One project that uses most of the above, and you present it.

What this course is

Programming as analysis, not computer science

You are not here to become a software engineer. You are here because a spreadsheet eventually stops being enough, and code is what comes next.

What you leave with

What you should be able to do by Week 12

Not “know Python”. That phrase means nothing. These four are checkable.

New words on this slide

pandas
a Python library for working with tables of data (Weeks 6–7)
dependency
another library your code needs in order to run
pinned
written down with its exact version number, so everyone installs the same one
README
a short text file that tells a stranger what a project does and how to run it
How we work

Fully online — and that changes the rules

We meet on Saturdays for three contact hours. Everything around that is yours to schedule.

How to use these slides

Every weekly deck works the same way

Learn the layout once and you can study any week on your own, at your own speed.

Treat each deck like a textbook chapter you can click through: read, predict, reveal, and stop at the dark slides.

Running code yourself

The ▶ Run button, and the weekly lab

From Week 2 on, you can run Python right inside the slides and the labs — nothing to install. Python is downloaded into your web browser the first time.

The slides show you an idea; the Run button lets you poke at it; the lab asks you to use it. A red error message in either place is normal — read its last line, change something, and run again.

Who is in the room

Zero programming experience is fine

There are no prerequisites beyond graduate standing. We begin at types and control flow in Week 2 — genuinely from the start.

Doing well here

Four habits that decide how this goes

Programming is learned by hand. There is no version of this where you watch and absorb it.

Before our first session

Get Python running — the easy way first

Start in the browser. Nothing to install, nothing to break, and it works the same on every machine.

New words on this slide

notebook
a document made of boxes that mix text and code you can run, one box at a time
cell
one box in a notebook; Shift+Enter runs it and the result appears underneath
print("hello")
tells Python to display the text hello — the quotes mark it as text
Anaconda
a free installer that puts Python and the course libraries on your own computer
Words for Week 1

Eight words you will hear in Week 1

No need to memorise them now — Week 1 explains each one again, with examples. This is just so none of them is a surprise.

code

Written instructions, in a programming language, that the computer carries out exactly.

e.g. print("hello") is one line of code

Python

The programming language this course uses — popular because it reads almost like English.

e.g. 1 + 1 is valid Python; it gives 2

notebook

A document of boxes that mix text and runnable code. Colab and Jupyter show notebooks.

e.g. the file you open in Colab on the previous slide

cell

One box in a notebook. Run it with Shift+Enter; its result appears underneath.

e.g. a cell containing 1 + 1 shows 2 below it

library

A bundle of ready-made code someone else wrote, which you load into your own work.

e.g. pandas, a library for tables

variable

A name that holds a value, like a labelled box you can look inside later.

e.g. price = 100 puts 100 in a box labelled price

error

Python stopping to tell you it could not do what a line asked. Normal, and fixable.

e.g. misspelling a name gives a NameError

traceback

The report Python prints with an error. Read its last line first: it says what went wrong.

e.g. NameError: name 'pirce' is not defined

Next

Week 1 · Python & the Data Science Toolkit

We start where the spreadsheet gives up, sort out which library does what, and spend real time on error messages. You will read a lot of those this semester, so you may as well stop fearing them in week one.

Week 1 slides are already on the course page. Read ahead if you want to.