Last week was a very busy week! A lot got done and I am happy to report I have a really good group of students. I am looking forward to a good year.
To continue the discussion with the performance based assessments, I am going to reflect on the Internet PBT. Looking back and pondering over how the Internet PBT fared, I realize that I should have been a lot more technical. I should have talked more about the design of the Internet and how the network as a whole functions.
I focused more on the impact and the cyber security aspects of the Internet. I asked students to work in pairs. They had to pick an area of impact and make a presentation using any sort of technology. After that they were asked to write a research paper on their findings. They had to cite their sources – the articles, websites, and documents they found regarding their topic. I worked with the students on their research papers. We focused extensively on impact of the Internet on specific fields, and somewhat on the cyber-security aspects of the Internet. However, the research lacked depth of knowledge.
What I realized is that students did not understand the true impact the Internet had on society. They had not focused on how the Internet – the connection of millions of computers – has impacted everything that we do. The Internet has changed the way society functions. What was the underlying design that made this happen? What is the real long-term impact of this sort of invention? These were questions my students had not researched or comprehended.
This year I am going to give this PBT a complete new makeover! I am going to focus on the design aspect of the Internet – its architecture, design decisions and impact. I will also focus on cyber security issues involved with the Internet. I am excited about teaching this content to my students; it will be interesting to see how the students learn this content.
This post will discuss my experiences with the Big Data PBT, the program that has brought the most amount of success to my course. My students love data analysis – and in fact, I do as well. At this time last year, the only PBT I was concerned about implementing was the Data component. I was constantly working on deciding what needed to be taught in the classroom, and how to teach it.
I spent a lot of time thinking and reading about data mining. I understood the concept of finding patterns in large data sets. Making these patterns into visualizations was also not difficult. The challenge, however, was figuring out what the visualizations should convey. For a given data set, what patterns were I looking for? I realized that the amount of relevant information collected depends on the types of questions that are applied to the data sets. These questions are fairly complex – you can’t find answers by simply scanning through one data field.
The other challenge is teaching this concept of data analysis. On a basic level, the concept is quite easy – taking simple surveys among a group of people is gathering data. The survey responses are a raw set of data that has been collected around the questions. This eliminates the problem of finding valid questions. However there is the challenge of trying to teach students the idea of finding patterns in data sets.There is also the challenge of finding visualizations that accurately map the results. Students need to be taught how to use the various computing and visualization tools to manipulate and analyze the collected data.
These are my challenges. I worked to solve them last year, and I am still working to improve my methods.
A big part of my responsibilities as a CS Principles pilot last year was to pilot three portfolios, aka performance based assessments in my classroom. As Owen Astrachan put it in our meeting, making the portfolios work was where the rubber met the road. We needed to see what worked and what did not. Can we actually give students a set of specifications / requirements and have them turn in projects – programs, research papers, visualizations, etc. – that we can then use to assess their understanding of the material.
Let me start with examining the presumably easiest of all three tasks, programming. This PBT does not specify which programming tool should be used. A set of general specifications are provided, detailing what programming components a project should have. Students are expected to work collaboratively and independently. They can develop a program or a collection of programs using any programming tool of their choice. They have to collaboratively come up with a topic of interest and build their programs on that topic – a lot of fun!!! The only problem I found last year was that students wanted to design only games; I met with a lot of resistance when I tried to steer them toward other projects. Regardless, it was very popular with all kinds of male students of various backgrounds. The other points open for discussion are the key components every program or set of programs should have.
For girls, the PBT is certainly successful. Girls like the project based learning. I find consistently that girls seem to approach a problem differently from boys. For example, given the same tool (eg Scratch) and the same backdrop, a boy and a girl would tend to make the characters behave differently! Game design does not seem to appeal to girls as much
The PBT: Programming work started with me assigning students in groups of two. I talked to individual students and tried to match up their interests. It worked quite nicely. In a couple of cases, an unexpected benefit was that the younger / less experienced students learned a lot from their partners. It was not unusual to see a student and ask his / her partner for advice on the individual portion of the PBT. At no point were there feelings of isolation or frustration in the classroom
A final deliverable was a reflection component. Students were required to write about their experience creating the program and their experiences while working on the project - both individually and collaboratively.
I am interested in seeing how the pilot progresses this year. It should be a good exercise comparing my experience last year to this year’s.
Keep an eye out for the next PBT analysis a few days from now.
Wow! What a summer this has been. As I am trying to enjoy my last week of summer before I go back to school, I look at June and July with wonder. Where has the time gone? What did I do?
Computer Science education. That is where I have spent all my time. It has been interesting to watch the momentum to increase awareness on the need for computer science education in the K-12 sector, grow over the years. This summer saw the AP Annual conference (APAC 2013) opening plenary speaker be focussed on computer science. I was truly fortunate to be there along with 50 or so other educators who plan on teaching CS Principles in the classroom the upcoming year. Collegeboard has officially announced AP CS Principles to be offered as a course in the year 2016 – 2017 and an AP exam in May of 2017.
As I worked on various professional development workshops for teachers I had a few thoughts that I am taking away to teach in my classroom.
- There are some amazing teachers out there. I need to collaborate more. I do not have all the answers and the only way I am going to know what works is by working with more and more teachers.
- Hands on activities. The more I have them the more likely am I to keep my students engaged. This may be the key to differential instruction.
- Getting girls and other students from various backgrounds is vital to the growth of this field. Without this we are not going to be able to explore all the possibilities of how computer science can impact our society.
As I progress throughout the year, I will revisit these ideas and blog more on these topics. I have some thoughts on the CS Principles portfolio assessments that are being piloted the upcoming year. I will write about them in my next post.
For a typical teen, creativity seems to mean only one thing: write a program which is some sort of game. I had an interesting experience this week.
We are currently working on designing programming projects using Scratch. I introduced them to BYOB and a quick tour on Scratch fundamentals. Most of the students have had some training on Scratch, so they are now ready to take up a slightly harder assignment. Based on the interviews with my students, I paired them up with students who have similar interests. I gave them the rubric and asked them to choose a topic of interest. They were asked to come up with an idea and have me approve their concept.
Almost all of the first round of ideas could be easily classified into two groups: games using missiles & guns or sports based games. I had one group which absolutely refused to think beyond entertainment. They refused to think of a field that this would expand upon or try and serve some other purpose than pure entertainment. Trying to convince them to think from a different perspective was hard. What made the situation harder was that students thought of it as I shot their idea down.
It has taken couple of days to convince them to think of alternatives and come up with a good project to work on. This has led me to wonder, how do we encourage creativity and different thinking from the norm?
As an effort to get my students to pick project topics that interest them, I decided to do a one on one interview. I enjoyed this. Students were quite open in discussing their interests and passions. The three questions I asked them were:
- What course do you like the most outside of this class?
- What are your interests? (What do you do for fun?)
- Which programming tool do you like best? (I tried not to give any suggestions or hints. But waited to see what their choices were)
I received some really nice answers. One student has an ear for music. In fact, when he designed his Scratch project, he wrote code that played drums with a lovely rhythm to it. There are many artists in the classroom. Maybe they will bring out some interesting artistic projects.
I am going to utilize this information starting tomorrow. The class will start a long term project in teams of two. I am going to guide them to pick topics of interest and suggest partners based on their interests. I will report results next week. After almost a month of just trying to play catch up, I think I am back to blog steadily for this year.
The 1st week was great! Lightbots 2.0 is definitely a lot of fun. Students got into a lot of discussions on using functions and functions calling functions. Before they began to design their own levels, I asked them to make a quick presentation to the class, about their point of view on the relevance of using Lightbots in a CS Principles course. They also had to add a feature to the software… a Lightbots 3.0!!!
We have started recording reflections consistently. Rich Kick used Google docs last pilot year and found it to be very useful. I am trying to use it in my class this year. So far, the reading has been interesting. Nothing to quote yet, but I am sure the best is yet to come!
In my search for adding more technical information to the content, one area I can easily do that is data – Boolean algebra and the Internet. I am doing research on this as I write this. I will blog more in future. I am also wondering about how I could use Visual Basic as my programming language after Scratch.
I have a new research assistant. Angela Park. Great student!!! I am truly excited and looking forward to working with her. Emily was great as my RA last year. She is now pursuing computer science at Georgia Tech. Angela is a Junior and is in my AP Computer Science class. She is a very promising student.
School starts tomorrow. Last week was orientation. I am excited about the students I met during orientation. I have some really bright students and some really hard working ones. Most students seem to be excited to be back. I have an amazing course load this year. I have two sections of CS Principles (the course name for this is Game Design using CS Principles), two sections of AP Computer Science and one section of App Inventor / Java Programming. My class size for CS Principles grew from 30 to 54! Wish I had more time to celebrate.
My focus is to fine tune the curriculum. I am interested to see how much of last year’s curriculum I reuse and be successful. For example I know I am starting CS Principles again this year with Lightbots. I am going to have the students go through the tutorials, analyze the games and rebuild their own levels. I want to increase the technical level of the project by Friday and isolate as to which learning objectives / Big Ideas I am covering in this project. Perhaps it will be a good idea to have students rate the difficulty level from easy to hard and see what their perception is.
Last week I made short 30 minute presentation about CS Principles at Georgia Tech. Barbara Ericson from Georgia Tech was conducting a computer programming course workshop for teachers and gave me a 30 minute slot to talk about my pilot experiences. There were teachers from all over Georgia as well as some from a few neighboring states.
In Georgia we have a computing pathway with three courses: Computing In the Modern World, Beginning Programming and AP Computer Science. I piloted the CS Principles course with my Beginning Programming students. I mapped the Georgia standards with the CS Principles learning objectives. Last year I covered the curriculum for both standards. As I spoke about this, one of the teachers raised a question that if CS Principles is a breadth rather than depth course, is it more suitable as a first CS course for high schools?
High school students need one course that introduces them to computing: Hardware, software, networking, image editing, web design and graphic design, etc. CS Principles is more focused towards the computer science aspect of computing. It is about problem solving and logic development. It is about using tools to create a software product than learning to use a software tool. There has to be one course before CS Principles that lets students get a broad tour of computing including the parts of the computer, usage of various computer applications and get a glimpse into the world of computer science. CS Principles / AP CS Principles can then be the next course after Computing In the Modern World.
On a final note, I am excited to announce that I have been selected to pilot the portfolio assessment for CS Principles. Fun times ahead!
A quite week with no professional obligations provides time to reflect on the past year. Academic year 2011-2012 has been an interesting year and one with tremendous growth.
Teaching CS Principles has been a paradigm shift for me and I have grown a lot both as a teacher as well as a computer science student. I had created several types of tests and quizzes for my class. Given that my course was extensively project based most of my tests were around projects. Every project had a rubric that the students followed as a guide. However, for our mid-semester and end of the year finals I was required to create multiple choice questions.
I created about 40 multiple-choice questions from which I gave about 20 during the finals. It was hard creating these! I based them on logic and reasoning and on the CS Principles – Big Ideas. As I reflect I am not so sure about the value of these questions. What purpose do multiple-choice questions serve? In an ideal world probably they are intended to test to see if a student truly understands a concept. So in the context of CS Principles, the questions would test a student’s comprehension of the Big Ideas. I think it should be necessary to add some programming / pseudocode based multiple-choice questions to asses students programming capability.
Aman Yadav has done some good work on creating assessments for computational thinking. Check out his page: http://cs4edu.cs.purdue.edu/comp_think. I am going to use this resource to create some more questions for the upcoming year.
It does look like at the end of my rambling I am inclined to believe that multiple choice questions have to be a part of the CS Principles assessments.