+ All Categories
Home > Documents > A virtuous cycle for Programming Principles Su White and Teresa Binks, University of Southampton.

A virtuous cycle for Programming Principles Su White and Teresa Binks, University of Southampton.

Date post: 24-Dec-2015
Category:
Upload: ethelbert-dickerson
View: 213 times
Download: 1 times
Share this document with a friend
Popular Tags:
24
A virtuous cycle for Programming Principles Su White and Teresa Binks, University of Southampton
Transcript

A virtuous cycle for Programming Principles

Su White and Teresa Binks,University of Southampton

What’s coming up?

• Intro and Background• Inspirations and what we did with them• Stats and Evaluation• What the future holds• Personal observations

Intro and Background

• We have been here before…• Regular review/enhancement• Constrained

– had to keep structure and teaching practices

– changed teaching content – ?? Student learning

People

Hello!

• Teresa Binks• Computer Science• 2nd year (repeated my first year)• My very first workshop!

And I woke up with a frog in my throat and that is why I’m croaking today

InspirationsMaria Montessori

Independence

Self Correction

Repetition

Extension

Real Life

Head First Java

Light Hearted

Metaphors

Visual

Conversational

BlueJ

Manipulable

Beginner Focused

What we changed

In this lesson we

will be studying…

.

.

.

What I did on my summer

holidays

By Teresa Binks

The Big Picture

Primitives Objects

defined in Java defined in classes

stored in variables directly

references stored in variables

Pass a copy Pass a reference

Cups

• A variable is a space in memory that the computer uses to store a value

• It’s like a cup

int myNumber;myNumber = 7;

• A primitive ‘fits into’ a cup

myNumber

int

7

The Big Picture

Primitives Objects

defined in Java defined in classes

stored in variables directly

references stored in variables

Pass a copy Pass a reference

Objects and cups• An object does not fit into a cup...

Elephant nellie;nellie = new Elephant();

• So what does Java do?

nellie

Elephant?!?!

OO

Remote controls

• Java leaves the elephant object in memory somewhere...

• And references it – like using a remote control

Memory

nellie

Elephant

Elephant nellie;

nellie = new Elephant();

nellie.eat();Eat

Sleep

Trumpet

NOM

NOM

NOM

Primitive types vs. object types

32

object type

primitive type

SomeObject obj;

int i;

Objects First with Java - A Practical Introduction using BlueJ, © David J. Barnes, Michael Kölling

Primitive types vs. object types

32

ObjectType a;

int a;

ObjectType b;

32

int b;

b = a;

Objects First with Java - A Practical Introduction using BlueJ, © David J. Barnes, Michael Kölling

FeedbackThe module was intellectually challenging and stimulating

Overall, how would you rate this module?

What were the best features of this module?

Interesting courseworks and

assignmentsSpace Cadets

Lectures werevery easy to

follow and to understand

Being able to practise the code

presented in lectures within labs

Integrative Adventure

game

Study Groups Pre-Labs,

Pre Lectures

Personnel

Rikki Prince:

Lead Demonstrator

Lab mark schemes

Wiki

Self Streaming

The wiki allowed us a dynamicism in the way we presented material to the students. Rather than relying on the busy course leaders to update the course page it could be done by the "teachers on the ground" (post grads) on the students themselves, allowing better personalisation.

“The biggest issue of the course was our teaching of 'static', which I think was triggered by mentioning it as 'magic' at the beginning, but mostly caused by god-awful compiler error messages that say something like "cannot do this from a non-static context", so lots of people just ended up making their methods unnecessarily 'static'.”

I think the use of The delaying of teaching objects for a few weeks also helped the students understand what could be done inside the objects, rather than expecting them to blindly believe!

Personnel

Eric Cooke:

Module Leader

Lectures

LabsStudents enjoyed the presentations. The laughed at the funny parts and the fact that they were laughing means they were listening!

Personnel

Teresa Binks:

Precocious undergrad

Lectures

Labs

Notes

Programming doesn’t have to be traditional, boring and intimidating

We don’t need to target stronger students in these lectures so long as there is something for them elsewhere

Thanks

Any Questions?

Book Slides Labs? Wiki?Survey

Programming Principles


Recommended