NEW: For a prettier blog interface, see the Wordpress version!
Tasks
| B1 | C | Come up with personal policies for the syllabus {{Tasks:944}} (2004.05.11) |
| B2 | C | Write lecture notes for three of the slide sets (2004.05.26) |
| A1 | X | Actually write the ticket machine class {{Tasks:161}} (2003.11.30) |
| A2 | X | Create a sample NimGame class {{Tasks:172}} (2003.12.03) |
| A3 | X | Prepare CS21A array activity {{Tasks:473}} (2004.02.17) |
| A4 | X | Provide feedback for CS21A students' lightson exercise {{Tasks:460}} (2004.02.17) |
| A5 | X | Teach one-dimensional arrays {{Tasks:470}} (2004.02.18) |
| A6 | X | Give array exercise {{Tasks:483}} (2004.02.20) |
| A7 | X | Teach ArrayList {{Tasks:472}} (2004.02.23) |
| A8 | X | Prepare finals for Jim {{Tasks:484}} (2004.02.26) |
| A9 | X | Make exam questions for CS21A {{Tasks:748}} (2004.03.19) |
| A10 | X | Add more top-level descriptions of exercises to each topic {{Tasks:981}} (2004.04.28) |
| A11 | X | Prepare presentation for objects-first approach in introductory computer science {{Tasks:986}} (2004.05.05) |
| A12 | X | ../proj/javacd/notes/cs21a-L0-Intro-draft.pdf (nil) |
| B3 | X | Prepare overview for CS21A {{Tasks:931}} {{Schedule:13:30-15:00}} (2004.04.22) |
| B4 | X | Make a list of topics that CS21A should cover {{Tasks:942}} (2004.04.22) |
| B5 | X | For each concept, expand it into measurable output {{Tasks:943}} {{Schedule:20:00-21:00}} (2004.04.23) |
| B6 | X | Prepare list of assigments and exercises {{Tasks:932}} {{Schedule:21:00-22:00}} (2004.04.27) |
| B7 | X | Write up the first lab experiment: using the computer to compute {{Tasks:972}} (2004.04.27) |
| B8 | X | Archive stuff from CS21A {{Tasks:1016}} (2004.05.03) |
| B9 | X | Present exercises for introductory computer science {{Tasks:985}} {{Schedule:20:00-23:00}} (2004.05.05) |
Thoughts
- The greatest predictor of success with computers is prior exposure: mucking about, playing around, experimenting (Bernstein, 1991) Comfort and Experience with Computing: Are they the same for women and men? SIGCSE Bulletin (Special Interest Group on Computer Science Education of the ACM), 23(3) (1991): 57-60.
Notes
4. Met with Dr. Sarmenta
We talked about CS21A. He's enthusiastic about the objects-first
approach suggested by BlueJ. I need to prepare the exercises and other
materials so that we can distribute them during the first week of
classes.
We talked about CS21A. He's enthusiastic about the objects-first approach suggested by BlueJ. I need to prepare the exercises and other materials so that we can distribute them during the first week of classes.
3. Themes
Specificity. Start with the four to six broad concepts, principles, or themes for the semester, then write specific objectives for each. These will be useful for planning the course, evaluating student outcomes, and in developing tools for evaluation.
Computing
- Describe the great ideas behind computer science. (The _why_. See previously blogged topic.)
Programming
- Write graphical applications that solve real-world problems using basic programming structures.
- Test, trace and debug programs.
Independent learning
- Develop a plan for learning unknown material.
- Learn new features from documentation.
- Share lessons learned with others.
Design
- Identify the requirements.
- Design an object-oriented system.
- Develop a plan for implementation.
Specificity. Start with the four to six broad concepts, principles, or themes for the semester, then write specific objectives for each. These will be useful for planning the course, evaluating student outcomes, and in developing tools for evaluation.
Computing
- Describe the great ideas behind computer science. (The _why_. See previously blogged topic.)
Programming
- Write graphical applications that solve real-world problems using basic programming structures.
- Test, trace and debug programs.
Independent learning
- Develop a plan for learning unknown material.
- Learn new features from documentation.
- Share lessons learned with others.
Design
- Identify the requirements.
- Design an object-oriented system.
- Develop a plan for implementation.
2. A Brief Summary of the Best Practices in Teaching
Intended to Challenge the Professional Development of All Teachers
Compiled by Tom Drummond North Seattle Community College, 1994, 2002
http://northonline.sccd.ctc.edu/eceprog/bstprac.htm
Intended to Challenge the Professional Development of All Teachers
Compiled by Tom Drummond North Seattle Community College, 1994, 2002
http://northonline.sccd.ctc.edu/eceprog/bstprac.htm
1. Planning for instruction: CS21A
Following tips from http://trc.virginia.edu/Publications/UVaTeaching/I1.htm
What do you expect students to learn?
In CS21A, I expect students to learn how to write graphical Java
applets and applications that use conditionals, control structures,
and collections to solve problems. I also expect them to learn how to
learn new functions and ideas from documentation, and develop the
habit of object-oriented design and decomposition. They should also
master tracing and debugging programs.
How will you correlate what you expect students to learn with assignments and evaluations of their work?
To measure their ability to learn independently by referring to
documentation and experimenting with programs, I will give open-ended
laboratory exercises and credit for things learned outside class.
I will also give research-style assignments.
To measure their ability to read and trace through code, I will have
drills and other exercises.
To measure their ability to debug, I will give them programming
exercises where they have to test and debug source code.
To develop their ability to design objects, I will present them with
situations and ask them to identify the objects, methods and
attributes in an assignment that spans several sessions.
What knowledge and skills are prerequisite to success in your course?
Students must know how to move and copy files on the computer in order
to submit their projects. Arithmetic is also required.
How will you know whether students are learning throughout the course?
Self-evaluations, laboratory work, quizzes.
How will you vary your instruction?
Most of my instruction will be in the form of written supplements and
laboratory activities. I will also demonstrate code in class.
How will your syllabus show students the focus of your course and how all assignments are connected to that focus?
The topic outline will be central to the course webpage. Assignments
will highlight which topics they are relevant to, and assignments will
also be cross-referenced with the topics so that students who want to
practice a particular topic can choose among the available exercises.
How many students should you expect?
I expect 20 students in my CS classes and 30 students in my MIS classes.
Is this course for majors and/or minors, or does it attract students from other departments?
Almost all CS students approach this as a relevant major course. MIS
students might not see the relevance of the course to their future
work. I occasionally get non-majors.
How much work can you reasonably assign for each class?
I can assign short homework (~ 15, 30 minutes to complete) for the
lecture days. Most lab work should be done in class. Students are
expected to devote outside time to work on their projects.
Realistically speaking, I should expect no more than 4 hours a week,
preferably set up as two long blocks.
How many of my students will never have written a college-level paper?
Most of my students will need some correction.
How will you budget your time?
I would like to prepare courseware for this. I expect to devote an
average of 2 hours preparing for each class session.
Following tips from http://trc.virginia.edu/Publications/UVaTeaching/I1.htm
What do you expect students to learn?
In CS21A, I expect students to learn how to write graphical Java applets and applications that use conditionals, control structures, and collections to solve problems. I also expect them to learn how to learn new functions and ideas from documentation, and develop the habit of object-oriented design and decomposition. They should also master tracing and debugging programs.
How will you correlate what you expect students to learn with assignments and evaluations of their work?
To measure their ability to learn independently by referring to documentation and experimenting with programs, I will give open-ended laboratory exercises and credit for things learned outside class. I will also give research-style assignments.
To measure their ability to read and trace through code, I will have drills and other exercises.
To measure their ability to debug, I will give them programming exercises where they have to test and debug source code.
To develop their ability to design objects, I will present them with situations and ask them to identify the objects, methods and attributes in an assignment that spans several sessions.
What knowledge and skills are prerequisite to success in your course?
Students must know how to move and copy files on the computer in order to submit their projects. Arithmetic is also required.
How will you know whether students are learning throughout the course?
Self-evaluations, laboratory work, quizzes.
How will you vary your instruction?
Most of my instruction will be in the form of written supplements and laboratory activities. I will also demonstrate code in class.
How will your syllabus show students the focus of your course and how all assignments are connected to that focus?
The topic outline will be central to the course webpage. Assignments will highlight which topics they are relevant to, and assignments will also be cross-referenced with the topics so that students who want to practice a particular topic can choose among the available exercises.
How many students should you expect?
I expect 20 students in my CS classes and 30 students in my MIS classes.
Is this course for majors and/or minors, or does it attract students from other departments?
Almost all CS students approach this as a relevant major course. MIS students might not see the relevance of the course to their future work. I occasionally get non-majors.
How much work can you reasonably assign for each class?
I can assign short homework (~ 15, 30 minutes to complete) for the lecture days. Most lab work should be done in class. Students are expected to devote outside time to work on their projects. Realistically speaking, I should expect no more than 4 hours a week, preferably set up as two long blocks.
How many of my students will never have written a college-level paper?
Most of my students will need some correction.
How will you budget your time?
I would like to prepare courseware for this. I expect to devote an average of 2 hours preparing for each class session.
I'd love to hear about any questions, comments, suggestions or links that you might have. Your comments will not be posted on this website immediately, but will be e-mailed to me first. You can use this form to get in touch with me, or e-mail me at sacha@sachachua.com .