Archive for the ‘#CS4All’ Category

A Clear Definition of Computational Thinking and Related Topics

One of the most frequently asked questions in meetings about CS is “What is Computational Thinking? What does it mean for schools?” People often cite Jeannette Wing saying it is “ the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information processing agent”.

Unfortunately, while that definition translates well to computer scientists, teachers, curriculum writers and administrators are often left unsure of what that looks like in a classroom, how to prepare students to engage in that kind of thinking, and what it means for assessment.

Recently, Computing at School, the UK movement for CS Education, released Computational Thinking: A guide for teachers. It is the best translation of computational thinking for K12 educators I have yet seen.  Is it perfect? no. But provides enough definitions – both of CT itself and the surrounding vocabulary, to help clarify in conversations. I highly recommend adding it to your reading queue if you work in or around schools.

Friday, February 12th, 2016

References and Resources

This morning the SIGCSE list shifted to a positive light with folks thinking about how to reflect on practice. I offered the following as some references and resources that I thought would be great to share here. From my email:

Thanks for shifting this to a positive frame! I’d also like to contribute some resources to folks who are thinking about questioning their practice and looking for references.

While we know about some CS specific pedagogical approaches (through SIGCSE publications, ICER, and Mark Guzdial’s blog) there are also some more general resources people may not be aware of.

The Institute for Education Sciences (IES), which is the US DOE research division, has a couple of practice guides that may be of interest to this community.

Organizing Instruction and Study to Improve Student Learning

Encouraging Girls in Math and Science

In addition to those two guides, you may also be interested in applying some of the research-backed recommendations from these guides as well:

Using Student Achievement Data to Support Instructional Decision Making

Improving Mathematical Problem Solving Grades 4-8

Teaching Strategies for Improving Algebra Knowledge for Middle and High School Students

Although the last two are specific to mathematics, the struggles students have with abstraction and algebraic representation are mirrored in novices attempts to learn to program.  Substitute code problems and worked examples for the algebraic ones discussed and you have some interesting pedagogical practices that may impact your students.  Much of the research indicates the more students are able to discuss with each other (similar to the Peer Instruction work in CS, or the Think-Pair-Share protocol) the more they will learn and retain.

A quick note: even though some recommendations are marked with “low” evidence, I can assure you that does not mean “low” in the way you are thinking. Low indicates quasi-experimental design with results for a few studies. Few SIGCSE studies would meet IES’s standard for review, let alone be qualified as any level of evidence (as most lack a control group). This statement is not made to judge SIGCSE work, but instead communicate the rigor IES is using for evaluation.

I would also recommend the Teach Like a Champion series.  It is a great collection of pedagogical approaches that help clarify the power moves a teacher can make in real-time in a classroom to engage students in deeper learning. Not all of the suggestions are for everyone, but choosing a few can start you thinking about pedagogy in your class in a way that doesn’t feel like “more work” or taking time away from your research (except for the initial reading).

Without the option to have a faculty specific methods course for all – these resources (and recommending them to grad students and new faculty) can also be impactful. At CMU I taught a course – Introduction to CS Education which involved opportunities for microteaching, as well as readings from the practice guides above.  Grad students who took the course shared with me that they wrote better teaching statements, and made better research presentations after completing the course.

Thank you all for hanging in through this long message.

Tuesday, February 9th, 2016

Do Different Teaching Methods Change Rigor?

Consider this:

Imagine I could create a ‘perfect’ assessment for whatever content knowledge you care about. Two students took the test and both achieved the same score under the same conditions. If the assessment is not flawed, is could one student be more ‘rigorous’ than the other?

When we talk about the increase in diversity in educational settings, we often jump to the conclusion that a lack of rigor is what opens the door for new populations to attain graduation, entrance, and prior success that differs from historical data.

I can tell you that here in NYC, some of the ways the numbers are changing is not from a decrease in rigor, but an improvement in instruction.  Teachers are using more active learning techniques, and as we understand the mechanisms of student learning and cognition better, they are using teaching strategies that take advantage of student strengths, as opposed to drilling them to correct for weakness.

I’ve heard college faculty discussing how they are afraid they will have to “water down” or reduce the rigor of courses to prepare for this flood of diverse students.

Mark Guzdial recently has been discussing the reform of teaching practices at the college level. Is a class with reformed teaching practices less rigorous?

Maybe, but maybe not for the rigor of the content we actually care about. If you are measuring whether students can learn on their own, or absorb material from a lecture – then yes, traditional college instructional practice is more rigorous.  But in terms of the CS content?

We need to be careful that our self reflection of our learning process does not conflate good (r bad) instructional practice with rigor.

Inspired by: “Professors Shouldn’t Teach to Younger Versions of Themselves

Monday, October 26th, 2015

Who will teach #CS4All?

Today I responded on Facebook to a post in the CS Education Discussion Forum about who are the teachers in the #CS4All initiative in NY. Just in case you are a first time visitor and have not heard, #CS4All will bring computer science to all of NYC public schools in a 10 year period.

The post on Facebook questions who will teach this subject? and offers some challenges for implementation.  #CS4All is set to prepare 5,000 teachers over the next 10 years (along with other things) for the challenge of teaching computer science in K-12. The blog post that was shared contains a number of links to other articles and highlights some of the challenges in NYC.  My response is here:

Thanks Nathaniel for commenting! Adam, I work with CSNYC so perhaps I can help answer your question. Yes, we are retraining a large number of excellent teachers to ALSO teach computer science in addition to their primary subject of certification. No, a majority of CS teachers in the city will not have a full degree in CS, and we will not be actively recruiting a large number of professionals to change careers to teaching (although a few of our programs rely on volunteers as a part of the model to supplement or improve teacher knowledge).

We are in a chicken and egg situation. The announcement came out and there are not a lot of details, except in our 2 years of experience with specific programs (although the announcement does not explicitly state those programs will be used in the new initiative, we are absolutely including them in our considerations). Now that the announcement has been made, and $$ committed – we can begin the hard work of implementation, which of course starts with planning. Planning for curriculum, planning for PD, planning for preservice (to help fill the gaps as teacher retirement and attrition happens), planning for evaluation, and planning for research.

Over the past two years we have worked with programs who have supported teachers of all subjects (Math, History, Art, Science, Technology) as they take the courageous leap to add new skills to their practice, and open themselves to additional topics that will be used to evaluate their performance. Almost all of our programs see the initial PD as a starting point, and almost all of our teachers engage with numerous ongoing opportunities to deepen their knowledge and enrich their understanding of CS. With no direct pipeline of teachers we need to work with both inservice and preservice folks to get the initiative off the ground. But if you look at our programs you will see that all of them believe in ongoing development to build the professionals with deep content knowledge necessary to teach.

I wanted to also post here since CSNYC is getting similar questions from the larger community. Yes, we are planning to primarily train existing teachers. No, that is not a long term sustainable plan which is why we are also working with pre-service programs and will have more news about programs before too long. Yes, we feel its important that teachers get a depth of content knowledge. No, we can’t do that all before their first day of class. Yes, we will continue to encourage programs that provide ongoing support, as well as host some of our own such as the Education and Pedagogy Meetups. (Next two in October – sign up!)

Rest assured the ducks analogy is applying here in NY right now.  Feet paddling furiously under water – much more to come as it gets vetted and approved by all collaborating partners. Sign up to “Get Involved” at the bottom of the #CS4All page to keep informed of news as it happens.

Thursday, September 24th, 2015

Why #CS4All Won’t Be Your Flavor of CS: It will be more

Amazing and exciting to be doing CS Education in NYC right now. In case you are living in a news-free zone, Mayor DeBlasio announced a 10 year initiative to bring CS to every school in NYC, giving every student access to experiences that will engage, teach, and hopefully inspire them. (#CS4All on twitter)

Because this was a policy announcement, there have been lots of questions and some concern. Here’s some of the bare details: CSNYC (the foundation I work for) will be an ongoing partner in this work throughout the 10-year period and is leveraging private sector funding to match the Mayor’s public funding of $40m, bringing the 10 year total to $80m. (See Fred Wilson’s post)

There are lots of people publicly on board, and even more behind the scenes ready to dig in and make the whole thing go. Lots more structural information coming out over the next few months, but this involves the expansion of experts at the city/district level, local support staff for teachers spread around the city, massive teacher professional development initiatives, and a lot of thoughtful curricular and pedagogical work. In addition, there is money set aside for external, independent evaluation to make sure that we do a good job with everyone’s money.

A question I’m getting a lot, and wanted to take some space (not on FB or Twitter) to answer was – What are you teaching them?

Underneath that question is another – what does CS mean for NYC public schools? Theres lots of folks expressing concerns in every direction – responding to key words in the policy address (or previous press) including “coding”, “computational thinking”, “problem solving”, “Java”, “scratch”, “robots”, and “skills”. My answer – Yes. Yes to all of the above, and at the same time, no. No to all of the above.

I know, not helpful (and maybe a little crazy).

But here’s the thing. NYC is not a one size fits all town, and CS doesn’t need to have only one implementation in education to be rigorous.

Let me also set the record straight, we are not simply spreading CS1 out over 13 years of school. (nor CS1 and 2)

College CS1 is exactly that – a college entry level course for students at that institution. K12 computer science should not seek to emulate that. We are the prequel. The algebra and arithmetic to it’s calculus. And that is a good thing.

We get to explore the underlying concepts of computer science in great detail, while also helping kids without daily access to technology catch up. We get to show them how colors work on a computer, how numbers can be used to encode things, why a computer game is no fun without decisions or boolean expressions, and why some things on a computer take longer than others. We want to inspire them to think creatively (and many of our programs explicitly teach design thinking) and prototype (yes sometimes even on paper)! We want them to plan, to debug, to take problems apart and put them back together. We want them to build, to modify, to replicate.

Yes, skills are in there too. They need to be able to read and write code in some fashion. They need to produce digital artifacts that are interactive and not static. And they need to talk or write about those artifacts to communicate why they are a milestone in their learning. Check out the flavors of CS that CSNYC already supports for a starting point. More details to come.

I say that #CS4All won’t be your flavor of CS – although you might find your flavor in some of the programs that eventually fall under the umbrella – but odds are you will find much more.

Friday, September 18th, 2015