CSC300: How to succeed in CS

Contents [0/10]

Video [1/10]
How to write code [2/10]
Work in pieces [3/10]
Start in the middle [4/10]
Principled debugging [5/10]
Homework [6/10]
Familiarity and Understanding [7/10]
Once is not enough [8/10]
Everyone can program [9/10]
Why is programming fun? [10/10]

(Click here for one slide per page)


Video [1/10]

Open Playlist

I like this TED talk from Eduardo Briceno:

Open Playlist

How to write code [2/10]

The amount of time spent on a function does not amount to much.

If you are not working effectively, you can spend months on a single function and never get it correct.

So how do you work efficiently? Key things:

Work in pieces [3/10]

Don't code everything at once.

Start in the middle [4/10]

For any repetitive process, start in the middle!

Principled debugging [5/10]

When your code does something unexpected:

Homework [6/10]

Getting the homework correct is not enough

Familiarity and Understanding [7/10]

From the Chronicle of Higher Education:

People often mistake familiarity for understanding.

They open the textbook after getting home from a lecture, and they recognize the material.

They think: I get this.

Then they take a test -- and bomb it.

Once is not enough [8/10]

You need to learn patterns of thought

You need to learn patterns of coding

Imagine you are learning tennis

Everyone can program [9/10]

Why is programming fun? [10/10]

An extract from The Mythical Man-Month Fred Brooks, edited slightly:

Why is programming fun? What delights may its practioner expect as their reward?

Programming then is fun because it gratifies creative longings built deep within us and delights sensibilities we have in common with all people.


Revised: 2008/03/17 13:01