1 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Strategies for Developing and Teaching Programming Courses at KFUPM Sahalu Junaidu, PhD Information.

Slides:



Advertisements
Similar presentations
Stephanie Burba, Noyce Graduate Tyler Ghee, Noyce Scholar Shelby Overstreet, Noyce Scholar Kathryn Crawford, Noyce Graduate Hope Marchionda, PhD Using.
Advertisements

Evaluation of Special Education Teachers
Research and Impact The WaterBotics ® evaluation and research studies include two synergistic, but distinct, domains: educational impact and scale-up/sustainability.
Warren Hills Regional School District State Assessment Results October 2013 Presenters Jaclyn Russo Director of Guidance Kimberly Unangst Director of Special.
Jason Powell The University of North Texas.  Traditional instruction separates knowing from doing.  Knowledge is abstract and decontextualized.  Activity.
Mathematics Curriculum Proposal Transitioning to Iowa Core.
1 Alignment of Alternate Assessments to Grade-level Content Standards Brian Gong National Center for the Improvement of Educational Assessment Claudia.
1 SESSION 3 FORMAL ASSESSMENT TASKS CAT and IT FORMS OF ASSESSMENT.
Online Simulations and Role-plays: Work in Progress Margaret Bearman and Laura Dean Health Informatics Education Monash Institute of Health Services Research.
Barry Spencer A Transformation Case Study Barry Spencer.
University of Delaware Experience It Yourself: An Introduction to Problem-Based Learning Institute for Transforming Undergraduate Education George Watson.
New Hampshire Enhanced Assessment Initiative: Technical Documentation for Alternate Assessments Alignment Inclusive Assessment Seminar Brian Gong Claudia.
Building Student-Centered Curricula: Problem-Based Learning and Cooperative Learning.
1 The Teaching and Learning Strategy, including Projects Roy Crole Department of Computer Science University of Leicester.
Clara Fowler University of Texas M.D. Anderson Cancer Center, Houston
STEP: Teaching Pedagogy 1 David J. Shook, Ph.D. Coordinator, TA Development Programs, CETL Associate Professor of Spanish.
A COURSE IN ENGLISH LANGUAGE TEACHING Unit 12 Integrated Skills Aims of the Unit: 1.to know the necessity of integrating the four language skills in ELT.
STRATEGIES FOR ONLINE LEARNING IN A GLOBAL NETWORK UNIVERSITY INTED 2013 Annette Smith, Kristopher Moore, Erica Osher Reifer New York University.
 A set of objectives or student learning outcomes for a course or a set of courses.  Specifies the set of concepts and skills that the student must.
The State of K-12 Computer Science Education The instructional practices and assessments discussed or shown are not an endorsement by ACM or the U.S. Department.
Effective Self-directed Learning Malcolm Shepherd Knowles ( )
Presentation by D. McDonald. A Dose of Magic This resource for general education teachers describes 60 strategies for helping learners with special needs.
1 UTeach Professional Development Courses. 2 UTS Step 1 Early exposure to classroom environment (can be as early as a student’s first semester)
Dates:Tuesdays, Jan 7 – Feb 11
Experiences and requirements in teacher professional development: Understanding teacher change Sylvia Linan-Thompson, Ph.D. The University of Texas at.
Pedagogical issues involved in using IT in teaching Student issues Current knowledge about students in transition and their approach to learning Changes.
© 2012 Common Core, Inc. All rights reserved. commoncore.org NYS COMMON CORE MATHEMATICS CURRICULUM A Story of Functions A Close Look at Grade 9 Module.
Best Teaching Practices. Technology Important for success in education Kindergarten through high school Electronic tools to enhance learning Information.
Creating Web-based Learning Activities to Support the Needs of Diverse K-12 Learners.
Common Core State Standards Background and ELA Overview Created By: Penny Plavala, Literacy Specialist.
SOME IMPORTANT FACTORS IN TEACHING SOFTWARE ENGINEERING COURSES Presenter: Jingzhou Li Depart of ECE, University of Calgary,
EDU 385 Education Assessment in the Classroom
Prepared and presented by Reda Saad El-Mahdy Ahmed Bin Hanbal Independent Secondary School for Boys And “SEC Curriculum Standards”
1. Principles Equity Curriculum Teaching 3 Assessment Technology Principles The principles describe particular features of high-quality mathematics programs.
Southern Regional Education Board HSTW A Vision for School Reform A Vision for Reform: Join Academic and Career Studies to Promote Powerful Learning Skills.
Year 1 School Based Training Briefing 2. Have you: developed an understanding of how children learn? developed an understanding of the range and diversity.
Ensuring that Professional Development Leads to Improved Mathematics Teaching & Learning Kristen Malzahn Horizon Research, Inc. TDG Leadership Seminar.
1 Historical Perspective... Historical Perspective... Science Education Reform Efforts Leading to Standards-based Science Education.
Culturally responsive pedagogy is situated in a framework that recognizes the rich and varied cultural wealth, knowledge, and skills that diverse students.
West Virginia’s Adoption of the Common Core State Standards for High School Mathematics Lou Maynus, NBCT Mathematics Coordinator Office of Instruction,
1 Presenter: Jing-Yi Zhao Advisor: Ming-Puu Chen Date: Aug. 19, 2009 Angeli, C. (2005). Transforming a teacher education method course through technology:
Professional Development for High-Poverty Schools Joseph F. Johnson, Jr., Ph.D. MSP Conference January 10, 2007 Phoenix, AZ.
ENGAGING FACULTY IN REFORM / MARCH 4, COMMUNITY COLLEGE RESEARCH CENTER MARCH 4, 2014 Building Buy-in, Supporting Instructional Improvement Susan.
1. Administrators will gain a deeper understanding of the connection between arts, engagement, student success, and college and career readiness. 2. Administrators.
Instructional Strategies Teacher Knowledge, Understanding, and Abilities The online teacher knows and understands the techniques and applications of online.
Session Objectives Analyze the key components and process of PBL Evaluate the potential benefits and limitations of using PBL Prepare a draft plan for.
March E-Learning or E-Teaching? What’s the Difference in Practice? Linda Price and Adrian Kirkwood Programme on Learner Use of Media The Open University.
Problem-based Learning in an Online IT Professional Practice Course Goold, A. (2004). Problem-based learning in an online IT professional practice course.
Welcome Alabama Course of Study Technology Education Workshop.
New Perspectives on Engineering Education and the Job Market: Challenges, Opportunities Dr. Samir AL-Baiyat Dean, College of Engineering Sciences, King.
Programme design and student assessment David Baume 1.
1 Trends in Computer Science Education ABU, Zaria, July 17, 2006 Trends in Computer Science Education Sahalu Junaidu, PhD Information and Computer Science.
2012 Parent Engagement Summit. Common Core State Standards in Mathematics.
Supporting Your Child Through the Transition to Common Core Mathematics What Parents Need to Know.
Part I Educational Technology1 INTRODUCING THE STANDARDS TOOLKIT (Educational Technology) Performance Indicator Progression Scope and Sequence Instructional.
We believe that children's engineering can and should be integrated into the material that is already being taught in the elementary classroom -it does.
CDIO: Overview, Standards, and Processes (Part 2) Doris R. Brodeur, November 2005.
Teaching Content and Problem-Solving Skills By Ted McCain.
REFLECTIVE PRACTICE AND INTERACTIVE TEACHING Mr. Philip Montgomery Academic English Instructor.
Introducing Critical and Creative Thinking. Agenda The importance of Critical and Creative Thinking What is in the curriculum? Questions Planning for.
1 Embracing Math Standards: Our Journey and Beyond 2008.
Casimir Middle School TUSD Transition to the Common Core.
Coding Connections at the Interface of Algebra I and Physical World Concepts Improving Teacher Quality Grant Program Summer 2016.
Equity and Deeper Learning:
What Is This Intentional Learning Thing?
ISBE Mathematics Foundational Services Training
Math for Struggling Learners
We believe that children's engineering can and should be integrated into the material that is already being taught in the elementary classroom -it does.
Designing and delivering a learner centred curriculum
CONSTRUCTIVE ALIGNMENT
Presentation transcript:

1 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Strategies for Developing and Teaching Programming Courses at KFUPM Sahalu Junaidu, PhD Information and Computer Science Department King Fahd University of Petroleum & Minerals P O Box 1136, Dhahran

2 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Developing & Teaching Programming  Introduction  Pedagogical Approaches  Pedagogy at KFUPM  Students’ Performance in Programming Courses  Challenges in Learning & Teaching Programming  Strategies for Teaching Programming at KFUPM  Are We Home, Yet? – Advice to Administrators  Summary

3 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Introduction  What are introductory (programming) courses?  These are courses at the introductory phase of the undergraduate CS curriculum  Give students their first college-level exposure to computer science  Most commonly programming-based  Importance of discrete mathematics is emphasized in the introductory curriculum in CC2001  Goals of introductory courses  To introduce students to a set of fundamental computer science concepts  To facilitate the development of cognitive models for these concepts  To develop students’ problem-solving, program design, programming and analysis skills

4 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Pedagogical Approaches (CC2001)  Programming-first  Imperative-first  The most traditional model that introduces programming based on the imperative paradigm  Object-first  Emphasizes early the use of objects and OO design  Functional-first  Introduces algorithmic concepts in a language with simple syntax  Non-programming first  Breadth-first  Begins with a general overview of computer science  Strongly recommended in CC1991  Algorithms-first  Focuses on algorithms (introduced using pseudocode) over syntax of a particular language  Hardware-first  Teaches CS basics beginning at the machine level and building up towards more abstract concepts

5 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 KFUPM’s Selected Pedagogy  New delivery, purely object-first, 2001  Delivery used to be an amalgam of breadth-first and object-first  Why object-first?  Provides a more natural way of modeling computation (as a community of interacting objects)  Becoming increasingly important in both academia and industry  Why NOT object-first?  Many OO languages used in industry (Java and particularly C++) are significantly more complex than classical languages  Steep learning curve: students have more difficulty learning to program in OO style than in other paradigms  Programming-first increases the risk of students viewing theory courses in later part of the curriculum as irrelevant curricular appendage

6 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 KFUPM’s Selected Pedagogy (cont’d)  Two versus three-course sequence?  A vast majority of institutions use a two-course sequence, CS1 and CS2, for several decades  We have been using a three-course sequence at KFUPM  Problems students should solve have become more complex and the tools they must use have become more sophisticated  Vindicated by the CC2001 report  Learn to use versus learn to implement?  School 1: students do not need to re-invent the wheel  Sufficient to use what is available  School 2: students must know what goes under the hood  Students must come up with their own implementations of basic data structures  School 3: a hybrid of 1 and 2

7 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Students’ Performance in Programming Courses Most teachers will be accustomed to the struggles of their first year students as they battle in vain to come to grips with this most basic of skills and many will have seen students in later years carefully choosing options so as to minimise the risk of being asked to undertake any programming. If students struggle to learn something, it follows that this thing is for some reason difficult to learn. If educators hope to teach it effectively, they must understand precisely what it is that makes learning to program so very difficult for so very many students. Tony Jenkins

8 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Students’ Performance in Programming (cont’d)  Many studies show evidence of students struggling in programming classes  Low pass rates, high failure and dropout rates  A study by Beise and others (2003) in a beginning programming class found that  the overall probability of passing CS1 the first time was 40% across all majors, with an initial failure rate of 19.5%, and a withdrawal rate of 40.5%.  Computer Science majors pass the class 55.5% of the time, with 27.5% failure rate  Information Systems majors pass the class 31% of the time, with 16% failure rate  others (mainly math majors) pass the class 33.5% of the time, with 15% failure rate  A recent study by Eckerdal and others (2006) found that majority of the graduating students in their sample cannot design a software system  Over 20% produced nothing  Over 60% communicated no significant progress toward a design  Problems with programming skills seem to be independent of country and educational system,

9 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Challenges Learning & Teaching Programming 1.Programming is problem-solving- and precision-intensive  Requires higher-order thinking skills to design, create and diagnose programs  Other courses require only lower-level skills, such as memorization  A single semi-colon can be the difference between success and failure! 2.Programming is a multi-processes activity  Translate the specification into an algorithm  Ensure correctness and efficiency of the algorithm  Translate the algorithm into program code 3.Programming requires more than one learning style  Both surface and deep learning styles are required to succeed  Surface learning can be useful for remembering syntax, operator precedence etc  Deep learning is required to develop true programming competence

10 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Challenges Learning Programming (cont’d) 4.Programming is not a body of knowledge, it is a skill requiring practice  Programming is learnt by programming, not from reading books!  The need for practice poses an additional challenge to students 5.The Vehicle – the teaching language problem  Languages used for teaching introductory programming were not designed for teaching  Languages designed for serious use by programmers are hardly suitable for the novice  Language selection should be guided by reasons of pedagogy rather than by reasons of industry use 6.Time factor: programming normally taught in the first year  Students are, typically, in a transition to a university life during the first year  Perhaps living away from home for the first time, etc

11 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Strategies for Teaching Programming at KFUPM 1.Learning and teaching in an authentic context  Concepts etc are taught within the context of a complete object-oriented implementation (i.e., a complete program)  Develop examples in their entirety or develop them step by step  Requires careful collaborative planning to develop course material of high instructional value  Yield high pedagogic dividends 2.Maintain focus while remaining in context  Teach only the syntactic details and programming skills which are needed in the context of the modeled example  Enables the use of new knowledge in the actual context without getting sidetracked by details irrelevant to the problem  Avoid cognitive overload  Requires careful preparation on the part of the instructor

12 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Strategies for Teaching Programming (cont’d) 3.Learning and teaching through gradual progression  Begin from the concrete, informal and progress to the abstract and formal  Begin with familiar examples and increase the level of abstraction using scaffolding 4.Promote student-student collaboration through group work  Breaking barriers between students, learning from each other  Active learning, preparation for the real-world  Creates communities of learners and minimizes the effect of a solo learning experience  Beware of freeloaders, dissipating responsibility 5.Student-student tutoring  Java helpdesk  Basic courses help sessions  Students often better instructors of their peers!

13 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Strategies for Teaching Programming (cont’d) 6.Give students time to grow  Instructor guidance should fade gradually through the curriculum  Enables students to gain deeper understanding through self discovery  Enables students to be better problem solvers and life-long learners 7.Authentic assessment, timely and appropriate feedback  Assessment drives both teaching and learning  If you want to promote learning, use authentic assessment  Ensure assessments align with  Course objective  Teaching and learning activities  Publicize grading rubrics for all assigned tasks

14 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Are We Home, Yet? – Advice to Administrators  Leniency versus strictness in the first course  Where should our sieving point be, if at all?  Standard versus flexible delivery  Should our delivery match international standards?  Are our students’ needs special that they need special treatment?  Close versus loose course coordination  Common exams or per-section exams?  Instructor taste and individuality versus commonality w.r.t. course content and instruction  How do instructors use their creativity within a common framework?  How do we maintain our course contents as instructors come and go?

15 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Are We Home, Yet? – Advice to Administrators  Difficulty and cruciality of teaching programming courses must be recognized  Be prepared to take the blame from instructors of higher-level courses  Instructors more likely to get low students’ evaluation  Programming skills must be nurtured  Programming must be taught by those who can teach programming, not by those who can program!  An armory of experienced instructors must be deployed to teach programming  Programming skills must be used!  Students must find application of their skills in the curriculum and beyond  Higher-level courses must be deliberately designed to exploit these skills  Teaching must be (re)-valued!  Give teaching the recognition/value it deserves

16 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 Summary  Outlined pedagogical approaches to teaching introductory courses  Brief statistics of students’ performance in programming  Difficulties in learning & teaching programming  Strategies adopted at KFUPM to address the problems  Considerations for greater success

17 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 The End Questions / Comments

18 Experience Sharing Workshop, KFU, Al-Hasa June 10, 2006 References 1.ACM & IEEE-CS Joint Task Force on Computing Curricula 2001 (2001). Computing Curricula Association for Computing Machinery and the Computer Society of the Institute of Electrical and Electronics Engineers. Available: 2.Tony Jenkins, On the Difficulty of Learning to Program, School of Computing University of Leeds, UK. Available: Beise, C., Myers, M., VanBrackle, L, & Chevli-Saroq, N. (2003, forthcoming). An examination of age, race, and sex as predictors of success in the first programming course. Journal of Informatics Education and Research. 4.Eckerdal,A., McCartney, R., Mostrom, J.E., Ratcliffe, M., & Zander, C., Can graduating Students Design Software Systems? Conference Proceeding of the 37 th SIGCSE Technical Symposium on Computer Science Education, March 1-5, 2006, Houston Texas, USA.