Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Collaborative Learning and Programming Practices

Similar presentations


Presentation on theme: "Introduction to Collaborative Learning and Programming Practices"— Presentation transcript:

1 Introduction to Collaborative Learning and Programming Practices
CS 110: Introduction to Computer Science Introduction to Collaborative Learning and Programming Practices

2 Collaborative Learning
Term given for a variety of approaches in teaching that involves joint intellectual effort by students and teachers. A shift from the ordinary lecture centered environment in college classrooms. Educational term that addresses “student-centered” learning in a classroom Useful for concept learning, problem solving and designing Enlivens and enriches the learning process More realistic social contexts Increasing the effectiveness Help sustain student interest Fellow students advise, motivate, criticize, compete and direct the student toward a better understanding of the subject matter

3 Collaborative Learning
The ability to work effectively and efficiently with others as well as the ability to develop interpersonal skills requires a special knowledge. (Davis, Bryant, Liu, Tedrow, & Say, 2003) The information technology environment requires its professionals to have the ability to work successfully with people from different cultural backgrounds.

4 Collaborative Learning
Collaborative learning classrooms place more emphasis on student discussion and interaction and less emphasis on listening and note taking. The focus is on “soft skills,” such as communication, interpersonal relationships, teamwork, and working with diverse coworkers. Goals: Focus on active learning Development of written and oral communication Accommodation of various learning styles Explicitly place the responsibility for learning with the students Clarify the role of the teacher as facilitator and mentor Desire to cover the same material better – or more material Develop of self confidence and independence in students Inclusion of a team-work experience Encourage peer review ---- of errors, efficiency …

5 Pair Programming A style of programming where two programmers are working together on one workstation. One person serves as the driver and the other as the navigator. In traditional introductory courses, students work individually on programming assignments, and teaming up with another student would be considered cheating. Pair programming, in contrast, brings students together in pairs, both working at the same computer to tackle problems as a team. "My response is to consider what happens to the weaker students in traditional programs. Either they struggle on their own or they find someone who can help them, which is what pair programming gives them. So I don't think we've introduced any new problems," McDowell said. "Some weak students will learn more, some will continue to flail, but I don't think a weak student is harmed by pair programming. They have someone they can talk to, they get to see a working solution, and they can learn from that," McDowell said. Students who pair in their introductory programming course are more confident, have greater course completion and pass rates in that course

6 Pair Partners Driver In control of the mouse and the keyboard or in charge of writing down the design. Navigator Observes the driver; looks for errors in the program; the strategic, long range thinker in the pair. The programmers regularly trade roles while pairing. What is pair programming? WO programmers working side-by-side, collaborating on the same design, algorithm, code or test. One programmer, the driver, has control of the keyboard/mouse and actively implements the program. The other programmer, the observer, continuously observes the work of the driver to identify tactical (syntactic, spelling, etc.) defects and also thinks strategically about the direction of the work. On demand, the two programmers can brainstorm any challenging problem. Because the two programmers periodically switch roles, they work together as equals to develop software.

7 Role Swapping Swapping roles allows students to share the work load given in the laboratory session. The professor or lab assistant in charge of your lab will facilitate the swaps.

8 Pair Selection Pair will be assigned by the faculty.
Higher quality code without significant increases in time/cost. Superior results on graded assignments, increased satisfaction/reduced frustration format he students, increased confidence from student on their project results. Tutoring – where the less capable are guided by the more capable Cooperation where learners work on different parts of the task Collaboration – where learners work jointly on almost all parts of the task. You will see this in calculus classes.

9 Myths of Pair Programming
“The navigator finds only syntax mistakes. How boring is that!” “It will only be effective with the right partner.” “I’ll never get credit for doing anything. I’ll have to share all the recognition with my partner.” Compilers can do a better job! Bad partners - excess ego - my way or the highway - expert paired with a novice – expert must become mentor There will be peer evaluation

10 Benefits of Pair Programming
Increased discipline Increased team cohesion Opportunities for mentoring Better code Improved communication skills More enjoyment from programming Greater confidence Quality – pairs produce code with fewer errors Time – better code – half the time Morale – they are happier Trust and Teamwork – get to know each other better Knowledge transfer – know more about the overall system Enhanced learning – learn by watching how someone else approaches a task – learn new language capabilities – how to learn development tools Both share the same goal - complete the task Each brings their own set of skills, abilities and outlook Approach the problem with alternatives to attack it They must negotiate how to solve it Pick a solution Then celebrate a job well done

11 Rules Share Play fair Hold hands and stay together Say you’re sorry
Take a nap Don’t hit people


Download ppt "Introduction to Collaborative Learning and Programming Practices"

Similar presentations


Ads by Google