Identifying the Elements of Programming
Background
I think that it is important for us to have a clear idea about what it is we are teaching. This is a class on Teaching and Learning PROGRAMMING. You previously took a class on Programing. But did you ever REALLY stop to think about what it was that you were learning and how those pieces might fit together? In this activity I ask you to revisit what you did "last semester" when you took FOP and begin to identify the things you learned.
Reflect
For this reflection I want to look back at your Fundamentals of Programming course and think about what it is that you actually learned - both in explicitly defined content and in things that sort of "came along for the ride."
Question 1 - What were the elements of programming that you learned in your FOP course?
At first, you may be tempted to rush through this question and only address the five or six main and explicit topics that you were taught and tested over when you studied Scratch and Python. While I DO want you to include this I want you to also go beyond this. Think back carefully to both Scratch and Python. In addition to those explicit and specific topics that we studied, what else did you learn about programming. This can include very easily definable programming topics that just didn't happen to be in our explicit list of six topics. But it also can include a variety of other things. To make this easier to read, consider some of the following things
- What were the six key topics/concepts we studied?
- What were the other topics/concepts that you learned about?
- How did you make connections between what you already knew [or subjects you currently teach] and what you were learning about programming?
- Make a list of all the vocabulary words you can think of from the entire course.
Don't think about this bulleted list as a set of questions you must answer. Instead, use them as thinking points to help you write a moderately detailed response to the main question above.
Question 2 - What are the skills needed in programming?
Programming is a skill. (I tend to believe that all instruction should be skill-based. For those things we often think of as knowledge, what you "do" with the knowledge matters, otherwise the knowledge is useful only for trivia.) A primary goal is for you (and later, your group) to reflect on and identify the components of programming skill—what students of programming need to be able to do as a result of instruction about programming.
Related to question 1, this includes things like:
- What were the things you learned about the general process of programming?
- What were the things you learned about your process of programming?