The Phoenix MetaLanguage Teaching Programming by Classroom Debate' - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

The Phoenix MetaLanguage Teaching Programming by Classroom Debate'

Description:

5 agreed, 2 neutral, 3 disagreed. 2. I feel I understand the terms: type, ... 2 agreed strongly, 4 agreed, 2 neutral, 2 disagreed. ... – PowerPoint PPT presentation

Number of Views:53
Avg rating:3.0/5.0
Slides: 22
Provided by: bobl150
Category:

less

Transcript and Presenter's Notes

Title: The Phoenix MetaLanguage Teaching Programming by Classroom Debate'


1
The Phoenix Meta-LanguageTeaching Programming
by Classroom Debate.
  • Raymond Flood Bob Lockhart
  • Department for Continuing Education
  • The University of Oxford.
  • 1 Wellington Square
  • Oxford, OX1 2JA
  • Wednesday, September 1st.
  • Fifth annual LTSN-ICS conference
  • University of Ulster, Jordanstown

2
The Programming Debate
  • Programming central to modern computing courses.
  • Poses difficulties as an academic topic.
  • Most people feel it should be taught
    non-passively.
  • Debate centres on which high-level language and
    what support facilities.
  • In this talk, we will discuss our approach.

3
We shall
  • Describe the nature of our courses and students.
  • Outline our approach.
  • Explain the facilities offered by the Phoenix
    tool.
  • Illustrate our use of it in teaching.
  • Present student responses to it.
  • Share some of our resources.

4
One course - two delivery modes
  • Undergraduate diploma in computing.
  • Part time study over two years.
  • 120 CATS points at level two.
  • Twelve topics - basic undergraduate computer
    science.
  • Programming approx 20.
  • Continuous assessment plus an annual examination.
  • No formal admission requirements.

5
Class course
  • Two-hour lecture weekly - October to May.
  • Three weekend schools each year.
  • One exam each year, in June.
  • Single class of 15-20 students.
  • Variety of lecturers.
  • Majority of students have no previous programming
    experience.
  • Possession of a computer is not essential.
  • Limited amount of hands-on computing.

6
Our approach
  • Concepts of low-level programming.
  • Phoenix programming-language generator.
  • The 4 D approach!
  • Debate facilities.
  • Decide what they should be.
  • Discover the consequences!
  • Destination, Java!

7
Bare Bones
  • Brookshears universal language exemplar.
  • ONE of the dialects offered by Phoenix.
  • Stripped-down programming language.
  • Single control structure.
  • Only variable type is non-negative integer.
  • I/O undefined.
  • Many important questions unresolved.

8
Illustration of Bare Bones
  • clear Z
  • while X not 0 do
  • incr Z
  • decr X
  • end

9
The questions
  • Case sensitive?
  • Pre-set variables?
  • Decrementing zero values?
  • Annotation?
  • Students can decide on all these issues.
  • They reach a consensus.
  • We implement their decisions.
  • They discover the consequences.

10
How Phoenix works
  • A language generator written in Java.
  • Particular dialects correspond to settings of
    internal state variables.
  • Students take the decisions but instructors
    implement them.
  • Once variables are set, running Phoenix produces
    this code window which students use to program.

11
The programming interface
12
The student experience
  • Phoenix is only used at the start of the course.
  • First year we have attempted this! Only 11
    students.
  • Reaction obtained by questionnaire and
    observation. (See http//www.conted.ox.ac.uk/cleat
    / for details).
  • Only one student with previous programming
    experience.

13
Questionnaire
  • Only one student did not enjoy programming.
  • Only one reported the programming easy!
  • Mixed signals about preferring Java only!
  • All but two students were positive on Bare Bones.
  • Mixed signals might relate to when the
    questionnaire was administered and the perceived
    utility of Java.

14
Specifics
  • 1. I feel capable of writing a small Java
  • program now.
  • 2. I feel I understand the terms type,
  • declaration, variable, assignment, control
  • structure, loop, procedure, parameter.
  • 3. I feel I understand the terms class, object,
    message constructor, attribute, behaviour,
    function.

15
Specifics
  • 1. I feel capable of writing a small Java
  • program now. 5 agreed, 2 neutral, 3
    disagreed.
  • 2. I feel I understand the terms type,
  • declaration, variable, assignment, control
  • structure, loop, procedure, parameter.
  • 3. I feel I understand the terms class, object,
    message constructor, attribute, behaviour,
    function.

16
Specifics
  • 1. I feel capable of writing a small Java
  • program now. 5 agreed, 2 neutral, 3
    disagreed.
  • 2. I feel I understand the terms type,
  • declaration, variable, assignment, control
  • structure, loop, procedure, parameter.
  • 2 agreed strongly, 4 agreed, 2 neutral, 2
    disagreed.
  • 3. I feel I understand the terms class, object,
    message constructor, attribute, behaviour,
    function.

17
Specifics
  • 1. I feel capable of writing a small Java
  • program now. 5 agreed, 2 neutral, 3
    disagreed.
  • 2. I feel I understand the terms type,
  • declaration, variable, assignment, control
  • structure, loop, procedure, parameter.
  • 2 agreed strongly, 4 agreed, 2 neutral, 2
    disagreed.
  • 3. I feel I understand the terms class, object,
    message constructor, attribute, behaviour,
    function.
  • 6 agreed. 2 neutral, 2 disagreed.

18
Further points
  • Students seemed more confident about concepts
    than had been the case in other years.
  • Students welcomed further programming courses ( 2
    strongly agreed, 4 agreed, 4 neutral)
  • The programming questions were among the most
    popular in their final exam.

19
Future expansion
  • Local variables?
  • Re-use and procedural units?
  • More flexible control structures?
  • Direct interface to instructor settings?
  • Package as an Applet?
  • Comparative studies?
  • Phoenix version 2?

20
Acknowledgements
  • John Axford Course Director, Internet diploma
    in computing.
  • Suzie McMahon, for help with the programming
    questionnaire.
  • Pete Thomas conversations on programming!

21
Thank You!
Raymond Flood
Bob Lockhart
Write a Comment
User Comments (0)
About PowerShow.com