Main.TeachingPhilosophy History

Show minor edits - Show changes to output

Added line 1:
\\
Deleted lines 0-5:

How is this for inspiring?

* MIT professor and Web star [[http://potw.news.yahoo.com/s/potw/63302/high-wire-act | Walter Lewin]] swings from pendulums and faces down wrecking balls to show students the zany beauty of science.

----
Changed line 32 from:
# I am currently exploring ''inquiry-based learning'' in the classroom.
to:
# I am exploring ''inquiry-based learning'' in the classroom.
Added line 1:
Deleted line 0:
Added lines 5-6:
----
Changed lines 6-7 from:
I taught my first CS class in 1984. Since then my teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2008. These views are dynamic—they will change and adapt as I grow and learn more about teaching and learning:
to:
I taught my first CS class in 1984. Since then my teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2008. These views are dynamic—they change and adapt as I grow and learn more about teaching and learning:
Changed lines 2-3 from:
Have you seen this?
to:
How is this for inspiring?
Added lines 2-5:
Have you seen this?

* MIT professor and Web star [[http://potw.news.yahoo.com/s/potw/63302/high-wire-act | Walter Lewin]] swings from pendulums and faces down wrecking balls to show students the zany beauty of science.
Deleted lines 40-43:

!!Inspiring Teachers

* MIT professor and Web star [[http://potw.news.yahoo.com/s/potw/63302/high-wire-act | Walter Lewin]] swings from pendulums and faces down wrecking balls to show students the zany beauty of science.
Changed lines 36-37 from:
What makes my work as a teacher meaningful over the years is the hope that my colleagues and I (through our unique teaching styles) are all helping produce competent computer scientists—individuals who are valuable contributors to the profession and society. Given that computing permeates and shapes society, this hope is not a small thing.
to:
What makes my work as a teacher meaningful over the years is the hope that my colleagues and I (through our individual and perhaps complimentary teaching styles) are helping produce competent computer scientists—individuals who are valuable contributors to the profession and society. Given that computing permeates and shapes society, this hope is not a small thing.
Added line 1:
Added line 4:
Added line 6:
Changed lines 13-14 from:
# I am a strong advocate of collaborative learning.
to:
# I am a strong advocate of collaborative learning.
Added line 16:
Added line 18:
Added line 20:
Added line 22:
Changed lines 25-26 from:
# I am currently exploring ''inquiry-based learning'' in the classroom.
to:
# I am currently exploring ''inquiry-based learning'' in the classroom.
Deleted line 0:
Changed lines 21-24 from:
# I try to be sensitive to the background and preparation of my students. This is especially important in introductory courses where students have varying degrees of academic preparation. Given that our society is diverse and multicultural, retention of underrepresented students—ethnic minorities and women—is one of CS education's main challenges.

# Finally, I believe that CS educators should try to incorporate results from their scholarship into the classroom
, whenever possible, through lecture, assignments, special project courses, and curriculum development. This makes them look relevant to their students and can be very motivating - it shows that, after all these years, teachers are still learners themselves [-(see item 1 above)-].
to:
# I believe that CS educators should try to incorporate results from their scholarship into the classroom, whenever possible, through lecture, assignments, special project courses, and curriculum development. This makes them look relevant to their students and can be very motivating - it shows that, after all these years, teachers are still learners themselves [-(see item 1 above)-].

# I make myself available on campus during office hours and beyond
, as well as via email communication. I provide needed support to all students. Sometimes I use the Socratic approach—I ask questions to help students find the answers they seek. Manytimes, they are surprised to see that they already knew the answer, they just had to piece it together - the "Aha!" moment.
Deleted lines 26-27:
I make myself available on campus during office hours and beyond, as well as via email communication. I provide needed support to all students. Sometimes I use the Socratic approach—I ask questions to help students find the answers they seek. Manytimes, they are surprised to see that they already knew the answer, they just had to piece it together - the "Aha!" moment.
Changed lines 1-2 from:
\\
to:
Changed lines 12-13 from:
# I am a strong advocate of collaborative learning. [-(The following quote captures part of my inspiration:)-] "For collaborative learning to be effective, the instructor must view teaching as a process of developing and enhancing students' ability to learn. The instructor's role is not to transmit information, but to serve as a facilitator for learning. This involves creating and managing meaningful learning experiences and stimulating students' thinking through real world problems." [-(from A.A. Gokhale, "[[http://www.youthlearn.org/learning/activities/howto.asp | Collaborative Learning Enhances Critical Thinking]]," Journal of Technology Education 7(1), Fall 1995.)-]
to:
# I am a strong advocate of collaborative learning.
** [-(The following quote captures part of the inspiration:)-] "For collaborative learning to be effective, the instructor must view teaching as a process of developing and enhancing students' ability to learn. The instructor's role is not to transmit information, but to serve as a facilitator for learning. This involves creating and managing meaningful learning experiences and stimulating students' thinking through real world problems." [-(from A.A. Gokhale, "[[http://www.youthlearn.org/learning/activities/howto.asp | Collaborative Learning Enhances Critical Thinking]]," Journal of Technology Education 7(1), Fall 1995.)-]
Changed lines 19-20 from:
# I am currently experimenting with ''inquiry-based learning'' in the classroom. [-(The following quote captures some of my inspiration:)-] "Will you ever just walk into class and ask, 'Okay, what do you want to study today?' Of course not. Inquiry-based learning is founded on students taking the lead in their own learning, but it still requires considerable planning on your part. Projects must fit into your larger program structure, goals and plans, but the students will be actively involved in planning the projects with you and asking the questions that launch their individual inquiries." [-(from "[[http://www.youthlearn.org/learning/activities/howto.asp | How to Develop an Inquiry-based Project]]", EDC YouthLearn Initiative.)-]
to:
# I am currently exploring ''inquiry-based learning'' in the classroom.
** [-(The following quote captures some of the inspiration:)-] "Will you ever just walk into class and ask, 'Okay, what do you want to study today?' Of course not. Inquiry-based learning is founded on students taking the lead in their own learning, but it still requires considerable planning on your part. Projects must fit into your larger program structure, goals and plans, but the students will be actively involved in planning the projects with you and asking the questions that launch their individual inquiries." [-(from "[[http://www.youthlearn.org/learning/activities/howto.asp | How to Develop an Inquiry-based Project]]", EDC YouthLearn Initiative.)-]
Changed lines 30-34 from:
What makes my work as a teacher meaningful over the years is the hope that my colleagues and I (through our unique teaching styles) are all helping produce competent computer scientists—individuals who are valuable contributors to the profession and society. Given that computing permeates and shapes society, this hope is not a small thing.
to:
What makes my work as a teacher meaningful over the years is the hope that my colleagues and I (through our unique teaching styles) are all helping produce competent computer scientists—individuals who are valuable contributors to the profession and society. Given that computing permeates and shapes society, this hope is not a small thing.

!!Inspiring Teachers

* MIT professor and Web star [[http://potw.news.yahoo.com/s/potw/63302/high-wire-act | Walter Lewin]] swings from pendulums and faces down wrecking balls to show students the zany beauty of science
.
Changed lines 3-4 from:
I taught my first CS class in 1984. Since then my teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. [-(The following are my thoughts on teaching CS as of March 2008.)-]
to:
I taught my first CS class in 1984. Since then my teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2008. These views are dynamic—they will change and adapt as I grow and learn more about teaching and learning:
Changed lines 3-4 from:
I taught my first CS class in 1984. Since then my teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following are my thoughts on teaching CS as of March 2008:
to:
I taught my first CS class in 1984. Since then my teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. [-(The following are my thoughts on teaching CS as of March 2008.)-]
Changed lines 3-5 from:
I taught my first CS class in 1984. Since then I have had a variety of teaching experiences. My teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2008. These views are dynamic—they change and adapt as I grow and learn more about teaching and learning:

# I believe that computer scientists should be prepared for change. Our field evolves very fast compared to other disciplines—it practically "redefines" itself every 5-10 years, in terms of development paradigms, programming languages, hardware, and software. This belief implies the following
:
to:
I taught my first CS class in 1984. Since then my teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following are my thoughts on teaching CS as of March 2008:

# I believe that computer scientists should be prepared for change. Our field evolves very fast compared to other disciplines—it practically "redefines" itself every 5-10 years, in terms of development paradigms, programming languages, hardware,
and software. This has implications for both teachers and students:
Changed lines 19-20 from:
# I am currently experimenting with ''inquiry-based learning'' in the classroom. [-(The following quote captures some of my inspiration:)-] "Will you ever just walk into class and ask, 'Okay, what do you want to study today?' Of course not. Inquiry-based learning is founded on students taking the lead in their own learning, but it still requires considerable planning on your part. Projects must fit into your larger program structure, goals and plans, but the students will be actively involved in planning the projects with you and asking the questions that launch their individual inquiries." [-(from "[[http://www.youthlearn.org/learning/activities/howto.asp | How to Develop an Inquiry-based Project]]", YouthLearn Initiative, Education Development Center.)-]
to:
# I am currently experimenting with ''inquiry-based learning'' in the classroom. [-(The following quote captures some of my inspiration:)-] "Will you ever just walk into class and ask, 'Okay, what do you want to study today?' Of course not. Inquiry-based learning is founded on students taking the lead in their own learning, but it still requires considerable planning on your part. Projects must fit into your larger program structure, goals and plans, but the students will be actively involved in planning the projects with you and asking the questions that launch their individual inquiries." [-(from "[[http://www.youthlearn.org/learning/activities/howto.asp | How to Develop an Inquiry-based Project]]", EDC YouthLearn Initiative.)-]
Changed lines 5-8 from:
# I believe that computer scientists should be prepared for change. Our field evolves very fast compared to other disciplines—it practically “redefines” itself every 5-10 years, in terms of development paradigms, programming languages, hardware, and software. This belief implies the following:
** Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. '''A teacher is a ''scholar'''''.
** Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum and progressive challenges. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. '''A student is an ''apprentice scholar'''''.
to:
# I believe that computer scientists should be prepared for change. Our field evolves very fast compared to other disciplines—it practically "redefines" itself every 5-10 years, in terms of development paradigms, programming languages, hardware, and software. This belief implies the following:
** Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. ''A teacher is a scholar''.
** Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum and progressive challenges. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. ''A student is an apprentice scholar''.
Changed line 13 from:
# I am a strong advocate of collaborative learning. [-(The following quote captures ppart of my inspiration:)-] "For collaborative learning to be effective, the instructor must view teaching as a process of developing and enhancing students' ability to learn. The instructor's role is not to transmit information, but to serve as a facilitator for learning. This involves creating and managing meaningful learning experiences and stimulating students' thinking through real world problems." [-(from A.A. Gokhale, "[[http://www.youthlearn.org/learning/activities/howto.asp | Collaborative Learning Enhances Critical Thinking]]," Journal of Technology Education 7(1), Fall 1995.)-]
to:
# I am a strong advocate of collaborative learning. [-(The following quote captures part of my inspiration:)-] "For collaborative learning to be effective, the instructor must view teaching as a process of developing and enhancing students' ability to learn. The instructor's role is not to transmit information, but to serve as a facilitator for learning. This involves creating and managing meaningful learning experiences and stimulating students' thinking through real world problems." [-(from A.A. Gokhale, "[[http://www.youthlearn.org/learning/activities/howto.asp | Collaborative Learning Enhances Critical Thinking]]," Journal of Technology Education 7(1), Fall 1995.)-]
Changed lines 23-24 from:
# Finally, I believe that CS educators should try to incorporate results from their scholarship into the classroom, whenever possible, through lecture, assignments, special project courses, and curriculum development. This makes them look relevant to their students and can be very motivating - it shows that, after all these years, teachers are still learners themselves [-(also, see item 1 above)-].
to:
# Finally, I believe that CS educators should try to incorporate results from their scholarship into the classroom, whenever possible, through lecture, assignments, special project courses, and curriculum development. This makes them look relevant to their students and can be very motivating - it shows that, after all these years, teachers are still learners themselves [-(see item 1 above)-].
Changed line 13 from:
# I am a strong advocate of collaborative learning. The days of the lone-wolf programmer are long gone.
to:
# I am a strong advocate of collaborative learning. [-(The following quote captures ppart of my inspiration:)-] "For collaborative learning to be effective, the instructor must view teaching as a process of developing and enhancing students' ability to learn. The instructor's role is not to transmit information, but to serve as a facilitator for learning. This involves creating and managing meaningful learning experiences and stimulating students' thinking through real world problems." [-(from A.A. Gokhale, "[[http://www.youthlearn.org/learning/activities/howto.asp | Collaborative Learning Enhances Critical Thinking]]," Journal of Technology Education 7(1), Fall 1995.)-]
Changed line 14 from:
** Collaborative learning should be done carefully and progressively, as students must develop their own skills and be protected from the “leader-follower” syndrome. Otherwise, weaker students tend to follow the ideas of one or two stronger students without really thinking (and learning) for themselves.
to:
** Collaborative learning should be done carefully and progressively, as students must develop their own skills and be protected from the "leader-follower" syndrome. Otherwise, weaker students tend to follow the ideas of one or two stronger students without really thinking (and learning) for themselves.
Changed lines 23-24 from:
# Finally, I believe that CS educators should try to incorporate results from their scholarship into the classroom, whenever possible, through lecture, assignments, special project courses, and curriculum development. This makes them look relevant to their students eyes and can be very motivating - it shows that, after all these years, you are still a learner yourself.
to:
# Finally, I believe that CS educators should try to incorporate results from their scholarship into the classroom, whenever possible, through lecture, assignments, special project courses, and curriculum development. This makes them look relevant to their students and can be very motivating - it shows that, after all these years, teachers are still learners themselves [-(also, see item 1 above)-].
Changed line 29 from:
I would like to hope that my teaching efforts have helped and continue to help produce competent computer scientists—individuals who are valuable contributors to the profession and society.
to:
What makes my work as a teacher meaningful over the years is the hope that my colleagues and I (through our unique teaching styles) are all helping produce competent computer scientists—individuals who are valuable contributors to the profession and society. Given that computing permeates and shapes society, this hope is not a small thing.
Changed lines 17-18 from:
** Starting in the first programming course, I like to introduce pair-programming exercises to expose students to group dynamics and help improve communication and people skills. [-(also see Laurie Williams, "[[http://portal.acm.org/ft_gateway.cfm?id=1345420&type=pdf&coll=ACM&dl=ACM&CFID=15151515&CFTOKEN=6184618 | Lessons learned from seven years of pair programming]]", ACM SIGCSE Bulletin 39(4), Dec. 2007.)-]
to:
** Starting in the first programming course, I like to introduce pair-programming exercises to expose students to group dynamics and help improve communication and people skills [-(e.g., see Laurie Williams, "[[http://portal.acm.org/ft_gateway.cfm?id=1345420&type=pdf&coll=ACM&dl=ACM&CFID=15151515&CFTOKEN=6184618 | Lessons learned from seven years of pair programming]]", ACM SIGCSE Bulletin 39(4), Dec. 2007.)-]
Changed lines 3-4 from:
I taught my first CS class in 1984. Since then I have had a variety of teaching experiences. My teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2008. These views are obviously dynamic—they will grow and adapt as I grow and learn more about teaching and learning:
to:
I taught my first CS class in 1984. Since then I have had a variety of teaching experiences. My teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2008. These views are dynamic—they change and adapt as I grow and learn more about teaching and learning:
Deleted line 5:
Deleted line 6:
Changed lines 13-14 from:
# I am a strong advocate of collaborative learning. This should be done carefully and progressively, as students must develop their own skills and be protected from the “leader-follower” syndrome. Otherwise, weaker students tend to follow the ideas of one or two stronger students without really thinking (and learning) for themselves. I assign in-class collaborative exercises in all my courses. I ask students to work in groups of two or three towards a common goal, such as tracing a challenging algorithm, or commenting on a reading assignment. I find that this helps students master new concepts better than if they worked on their own. Collaborative learning improves retention of underrepresented students since such experiences break down communication barriers and introduce mutual respect and camaraderie. Starting in the first programming course, I like to introduce pair-programming exercises to expose students to group dynamics and help improve communication and people skills.
to:
# I am a strong advocate of collaborative learning. The days of the lone-wolf programmer are long gone.
** Collaborative learning should
be done carefully and progressively, as students must develop their own skills and be protected from the “leader-follower” syndrome. Otherwise, weaker students tend to follow the ideas of one or two stronger students without really thinking (and learning) for themselves.
** I assign
in-class collaborative exercises in all my courses. I ask students to work in groups of two or three towards a common goal, such as tracing a challenging algorithm, or commenting on a reading assignment. I find that this helps students master new concepts better than if they worked on their own.
** Collaborative learning improves retention of underrepresented students since such experiences break down communication barriers and introduce mutual respect and camaraderie.
** Starting in the first programming course, I like to introduce pair-programming exercises to expose students to group dynamics and help improve communication and people
skills. [-(also see Laurie Williams, "[[http://portal.acm.org/ft_gateway.cfm?id=1345420&type=pdf&coll=ACM&dl=ACM&CFID=15151515&CFTOKEN=6184618 | Lessons learned from seven years of pair programming]]", ACM SIGCSE Bulletin 39(4), Dec. 2007.)-]
Changed lines 27-28 from:
I make myself available on campus during office hours and beyond, as well as via email communication. I provide needed support to all students, especially the ones that demonstrate an honest effort towards an objective. Sometimes I use the Socratic approach—I ask questions to help students find the answers they seek. Manytimes, they are surprised to see that they already knew the answer, they just had to piece it together - the "Aha!" moment.
to:
I make myself available on campus during office hours and beyond, as well as via email communication. I provide needed support to all students. Sometimes I use the Socratic approach—I ask questions to help students find the answers they seek. Manytimes, they are surprised to see that they already knew the answer, they just had to piece it together - the "Aha!" moment.
Changed lines 7-10 from:
** Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. '''A teacher is a ''scholar'' '''.

** Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum and progressive challenges. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. '''A student is an ''apprentice scholar'' '''.
to:
** Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. '''A teacher is a ''scholar'''''.

** Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum and progressive challenges. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. '''A student is an ''apprentice scholar'''''.
Changed lines 7-10 from:
## Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. '''A teacher is a ''scholar'' '''.

## Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum and progressive challenges. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. '''A student is an ''apprentice scholar'' '''.
to:
** Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. '''A teacher is a ''scholar'' '''.

** Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum and progressive challenges. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. '''A student is an ''apprentice scholar'' '''.
Changed lines 25-26 from:
I make myself available on campus during office hours and beyond, as well as via email communication. I provide needed support to all students, especially the ones that demonstrate an honest effort towards an objective. Sometimes I use the Socratic approach—I ask questions to help students navigate through the knowledge they already have accumulated. This helps them make needed connections—the “Aha!” experience. Students eventually realize how to do this themselves, thus becoming more empowered learners.
to:
I make myself available on campus during office hours and beyond, as well as via email communication. I provide needed support to all students, especially the ones that demonstrate an honest effort towards an objective. Sometimes I use the Socratic approach—I ask questions to help students find the answers they seek. Manytimes, they are surprised to see that they already knew the answer, they just had to piece it together - the "Aha!" moment.
Added lines 1-2:
\\
Changed lines 5-6 from:
# I believe that computer scientists should be prepared for change. Our field evolves very fast compared to other disciplines—it practically “redefines” itself every 5-10 years, in terms of development paradigms, programming languages, hardware, and software. This has significant implications for both teachers and students:
to:
# I believe that computer scientists should be prepared for change. Our field evolves very fast compared to other disciplines—it practically “redefines” itself every 5-10 years, in terms of development paradigms, programming languages, hardware, and software. This belief implies the following:
Changed lines 11-24 from:
# CS educators have an ethical obligation to produce competent professionals—professionals with a strong technical foundation who can deal with the complexity of today’s software development. Graduates need to know how to pay attention to detail and be able to deal with all aspects of software development—specification, design, implementation, testing, documentation, and maintenance.

# CS educators should aim to teach long-term concepts as opposed to the programming languages and technology ''du jour''. Although students should be exposed to state-of-the-art tools, this should be done in the context of theoretical concepts. Tools become obsolete within a few years, but concepts last a lifetime.

# Teachers need to be sensitive to the background and preparation of their students. This can be especially challenging in introductory courses where students have varying degrees of academic preparation. Retention of underrepresented students—ethnic minorities and women—is important, as our society is diverse and multicultural.

# CS educators need to invest in the power of
collaborative learning. This should be done carefully and progressively, as students must develop their own skills and be protected from the “leader-follower” syndrome. Otherwise, weaker students tend to follow the ideas of one or two stronger students without really thinking (and learning) for themselves. I assign in-class collaborative exercises in all my courses. I ask students to work in groups of two or three towards a common goal, such as tracing a challenging algorithm, or commenting on a reading assignment. I find that this helps students master new concepts better than if they worked on their own. Collaborative learning improves retention of underrepresented students since such experiences break down communication barriers and introduce mutual respect and camaraderie. Starting in the first programming course, I like to introduce pair-programming exercises to expose students to group dynamics and help improve communication and people skills.

# Educators need to invest in positive reinforcement whenever possible. One example is the policy I use for late assignments. Students are awarded four "late" days for
the whole semester for their programming assignments. Once they use up these days, no late assignments are accepted. However, incomplete solutions that compile and are submitted on time receive partial credit. At the end of the semester, students that have not used any of their late days earn 2.5 bonus points towards their course grade.

# Finally, CS educators should aim to incorporate research results into the classroom through lecture, assignments
, special project courses, and curriculum development.

In closing, I
maintain high standards for my students. I try to challenge them in ways that benefit and provide a sense of accomplishment. It takes very little time to develop trivial or impossible assignments—good assignments require creativity, sensitivity to student capabilities, and observance of learning objectives as identified in the course syllabus.
to:
# I believe CS educators have an ethical obligation to produce competent professionals—professionals with a strong technical foundation who can deal with the complexity of today’s software development. Our graduates need to know how to pay attention to detail and be able to deal with all aspects of software development—specification, design, implementation, testing, documentation, and maintenance.

# I aim to teach long-term concepts as opposed to the programming languages and technology ''du jour''. Although students should be exposed to state-of-the-art tools, this should be done in the context of theoretical concepts. Tools become obsolete within a few years, but concepts last a lifetime.

# I am a strong advocate of collaborative learning. This should be done carefully and progressively, as students must develop their own skills and be protected from the “leader-follower” syndrome. Otherwise, weaker students tend to follow the ideas of one or two stronger students without really thinking (and learning) for themselves. I assign in-class collaborative exercises in all my courses. I ask students to work in groups of two or three towards a common goal, such as tracing a challenging algorithm, or commenting on a reading assignment. I find that this helps students master new concepts better than if they worked on their own. Collaborative learning improves retention of underrepresented students since such experiences break down communication barriers and introduce mutual respect and camaraderie. Starting in the first programming course, I like to introduce pair-programming exercises to expose students to group dynamics and help improve communication and people skills.

# I am currently experimenting with ''inquiry-based learning'' in the classroom. [-(The following quote captures some of my inspiration:)-] "Will you ever just walk into class and ask
, 'Okay, what do you want to study today?' Of course not. Inquiry-based learning is founded on students taking the lead in their own learning, but it still requires considerable planning on your part. Projects must fit into your larger program structure, goals and plans, but the students will be actively involved in planning the projects with you and asking the questions that launch their individual inquiries." [-(from "[[http://www.youthlearn.org/learning/activities/howto.asp | How to Develop an Inquiry-based Project]]", YouthLearn Initiative, Education Development Center.)-]

# I try to be sensitive to the background and preparation
of my students. This is especially important in introductory courses where students have varying degrees of academic preparation. Given that our society is diverse and multicultural, retention of underrepresented students—ethnic minorities and women—is one of CS education's main challenges.

# Finally, I believe that CS educators should try to incorporate results from their scholarship into the classroom, whenever possible, through lecture, assignments, special project courses, and curriculum development. This makes them look relevant to their students eyes and can be very motivating - it shows that, after all these years, you are still a learner yourself.

In closing, I try to
maintain high standards for my students. I try to challenge them in ways that benefit and provide a sense of accomplishment. It takes very little time to develop trivial or impossible assignments—good assignments require creativity, sensitivity to student capabilities, and observance of learning objectives as identified in the course syllabus.
Changed lines 1-3 from:

I taught my first CS class in 1984. Since then I have had a variety of teaching experiences and responsibilities. My teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2007. These views are obviously dynamic—they will grow and adapt as I grow and learn more about teaching and learning:
to:
I taught my first CS class in 1984. Since then I have had a variety of teaching experiences. My teaching has slowly transitioned from a "sage on the stage" to a "guide on the side" approach. The following is a snapshot of my views, on how to be an effective CS educator, as of March 2008. These views are obviously dynamic—they will grow and adapt as I grow and learn more about teaching and learning:
Changed lines 5-8 from:
## Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. A teacher is a ''scholar''.

##
Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. A student is an ''apprentice scholar''.
to:
## Teachers should prepare their students for life-long learning. This is difficult to do if teachers do not practice life-long learning themselves. Therefore, CS educators should stay current, possibly by attending conferences, reading professional journals, or contributing to the field’s evolution—through research, scholarship, and service. '''A teacher is a ''scholar'' '''.

##
Students should learn how to learn. This cannot be taught directly. It has to be acquired experientially, hopefully through exposure to a well-designed curriculum and progressive challenges. Students have to be self-motivated and hard-working. Moreover, they must understand that when a teacher challenges, it is not for challenge's sake, but to help them reach their potential. '''A student is an ''apprentice scholar'' '''.
Changed lines 11-14 from:
# CS educators should aim to teach long-term concepts as opposed to the programming languages and technology ''du jour''. Although students should be exposed to state-of-the-art tools, this should be done in the context of theoretical concepts. Tools become obsolete within a few years, but concepts last a lifetime. Over time, I have used this principle to expose students to various tools, including Java, Python, C++, Tcl/tk, Visual Basic, LISP, Lex, Yacc, Polka/Samba, HTML, and CGI-programming.

# Teachers need to be sensitive to the background
and preparation of their students. This can be especially challenging in introductory courses where students have varying degrees of academic preparation. Retention of underrepresented students—ethnic minorities and women—is important, as our society is diverse and multicultural. In many cases, such students need to be supported and challenged differently from the average student. It is very rewarding to see such students flourish and in many cases outperform mainstream students.
to:
# CS educators should aim to teach long-term concepts as opposed to the programming languages and technology ''du jour''. Although students should be exposed to state-of-the-art tools, this should be done in the context of theoretical concepts. Tools become obsolete within a few years, but concepts last a lifetime.

# Teachers need to be sensitive to the background and preparation of their students. This can be especially challenging in introductory courses where students have varying degrees of academic preparation. Retention of underrepresented students—ethnic minorities
and women—is important, as our society is diverse and multicultural.
Changed lines 19-20 from:
# Finally, CS educators should aim to incorporate research results into the classroom through lecture, assignments, special project courses, and curriculum development. My research interests lie in the intersection between artificial intelligence and human-computer interaction. In the three-course intro sequence, I have exposed students to assignments on [[http://www.cs.cofc.edu/~manaris/index.php/Fall2005/CSCI221Homework4Bonus | computational linguistics]], [[http://www.cs.cofc.edu/~manaris/index.php/Fall2005/CSCI221Homework1 | biosignal sonification]], data visualization, and [[http://www.cs.cofc.edu/~manaris/spring05/cs221.html | computer-aided music composition]]. In the Artificial Intelligence course, I have exposed students to natural language user interfaces, [[http://www.cs.cofc.edu/~manaris/fall04/cs470/hmwk3.html | intelligent Web exploration]], [[http://www.cs.cofc.edu/~manaris/fall04/cs470/hmwk2.html | robotics]], [[http://www.cs.cofc.edu/~manaris/fall04/cs470/hmwk5.html | neural networks]], and [[http://www.cs.cofc.edu/~manaris/fall04/cs470/hmwk4.html | genetic algorithms]]. My interest in user interface design contributed to the development of a senior/graduate-level course in [[http://www.cs.cofc.edu/~manaris/index.php/Fall2006/CSIS672 | Human-Computer Interaction]] and a course in [[http://www.cs.cofc.edu/~manaris/index.php/Fall2006/CSCI299 | Game Programming]]. Better students tend to continue their work through [[http://www.cs.cofc.edu/~manaris/index.php/Fall2006/Seminar | special projects]]. Such projects usually result in research publications, which may provide new content to incorporate into the classroom—thus forming a stable (self-sustaining) feedback loop.
to:
# Finally, CS educators should aim to incorporate research results into the classroom through lecture, assignments, special project courses, and curriculum development.
Changed line 26 from:
I would like to hope that my teaching efforts have helped and continue to help produce competent computer scientists—individuals who are valuable contributors to the profession and society.
to:
I would like to hope that my teaching efforts have helped and continue to help produce competent computer scientists—individuals who are valuable contributors to the profession and society.
Changed lines 26-38 from:
I would like to hope that my teaching efforts have helped and continue to help produce competent computer scientists—individuals who are valuable contributors to the profession and society.

!!!Inspiring Quotes Related to Teaching

* True greatness is measured by how much freedom you give to others, not by how much you can coerce others to do what you want. (Larry Wall, Creator of Perl)

* What we want is to see the child in pursuit of knowledge, and not knowledge in pursuit of the child. (George Bernard Shaw)

* How not to get lost in the complexities of our own making is still computing's core challenge. (Edsger Dijkstra)

* Things should be made as simple as possible, but not simpler. (Albert Einstein)

* Simplicity is the ultimate sophistication. (Leonardo da Vinci)
to:
I would like to hope that my teaching efforts have helped and continue to help produce competent computer scientists—individuals who are valuable contributors to the profession and society.
Added line 1:
Deleted line 0:
Changed lines 27-28 from:
!!!Inspiring Quotes
to:
!!!Inspiring Quotes Related to Teaching