Archive for the ‘Uncategorized’ Category

Questions to Ask a CS Content Provider

Lately, I’ve had my head down getting the CSforAll Consortium off the ground. One of the first things we did with our members was to do a needs assessment, asking 250 members to complete a form question, and interviewing 150 to get more information.

Larger results coming before too long, but there were many requests for a “dating app” for CS Education – how do schools and other members find each other in order create worthwhile partnerships? Some members suggested a “star” rating for curriculum providers, but I’ve pushed back against that option. First, I don’t want to be an arbiter of quality (or a moderator of comments). Secondly, I think stars are a bad idea. To extend the dating app analogy, what makes someone a good match is a complex set of questions – I’m not sure I would want a dating app that just gave folks stars. Instead you fill out a complex survey to help do a preliminary sort.

I’ve been thinking a lot about what are the right questions that might make up such a questionnaire for CS education. In addition to our current filtering options, I’m considering a standards (all, not just CS) mapping tool, some general pedagogical approaches encouraged by the curriculum, and some technological requirements.

Edsurge put out an article about what questions to ask an EdTech company before purchasing anything. From the article:

School leaders can better understand whether a flashy product matches their needs by asking its creators questions about what research guided the conceptualization of the tool, what data informed its specific attributes, and what quality and volume of research has been conducted regarding its effectiveness. I recommend beginning with six key questions to separate the promises from the proven solutions.

I like the questions and think they apply to CS education too – especially #6 if you are considering purchasing a curriculum. “What training and support will you offer to ensure we implement the solution properly and get the most out of it?”

I especially like the focus on appropriate implementation – too often new or unfamiliar curriculum and pedagogy comes with a key ingredient that makes it successful. For example, the Exploring Computer Science curriculum believes strongly in their culturally relevant approach and the professional development they offer contains pedagogical richness that you cannot get just downloading the curriculum documents. As we move past the early adopter phase of CSforAll, we need to be clear with our partners about what makes for quality CS from the beginning.

Monday, April 24th, 2017

Reductio Ad Absurdum: The danger of lean in philosophies of higher education

There has been a lot of great discussion around “great teaching” and the responsibility of college faculty for supporting students, not with outside interventions, but inside the classroom through good pedagogical approaches.

In some cases, it was suggested that students who were unable to self-learn beyond what professors could offer could perhaps find a better fit at institutions that were not as focused on research. The debate was lively, full of personal anecdotes by current faculty (who most likely were outliers among their students to continue studies and even earn a PhD), and pleas to think of what was “best for the students”.

The nuances to this debate are many. Faculty and educators who engage in the debate may choose their words carefully (or not so much) and understand often the intent behind statements that walk the line between micro-agressions and pragmatism. Administrators and the general public are not always able to read between the lines of our discourse.

Today in my news feed an article appeared about Mt. Saint Mary’s University in Maryland. The president of the University is trying to boost his retention numbers by early identification of students who struggle with the transition to college. His language is absurd, and the comments he makes are ridiculous. However, it is a stark reminder of the danger in fixed mindset and “lean-in” philosophies in higher education.

From the president:

Instead of thinking of students as cuddly bunnies, you just have to drown the bunnies … put a Glock to their heads.

This was his attempt to classify the “weed out” mentality he hoped his faculty would pursue. Inflammatory language – absolutely. What worries me more? The idea that students are pre-determined to succeed or fail based upon their inability to adjust quickly, lean in, and “take” their education.

Thursday, February 11th, 2016

The definition of rigor

I got an email this morning from Ria Galanos asking about the definition of rigor.  I loved the question because it made me consider a term we use quite frequently.  I’m going to share my answer to her below.


Rigor is the intersection of the amount of content covered and the depth to which students understand and are able to apply that content.

A particular time frame of instruction is considered rigorous for three reasons:
1) An appropriate amount of content is covered for the time period.
You could spend an entire semester covering decision structures, students would get a LOT of practice, and be an expert in boolean expressions – but the time period is too long for the general community to accept that outcome as ‘rigorous’.
2) High expectations are communicated and held.
Students must demonstrate mastery of the stated course objectives to achieve decent scores.  A rigorous course includes assessment that measures individual student learning and holds students accountable for stated course objectives.
3) Students develop fluid knowledge.
Students in a rigorous course are expected to do more than memorize and regurgitate.  They should be able to apply the knowledge to new problems and situations, and discuss benefits and tradeoffs between solutions in open ended problems.  This aligns with higher levels of bloom.

What do you think? Does this align with your definition of rigor?

Tuesday, October 27th, 2015

Jumping Back In – Academic Papers all CS Teachers Should Read

I find that my browser tabs often are about 25% active work or feeds (email, google docs I’m working on, twitter, Trello, etc.) and 75% things I am waiting to read.  Right now I’m working on reading some follow up references for ICER, some articles from the CS Education list put together on Twitter by Aman Yadav, and some recently released CS curricula (Like San Francisco).

What pushed me past the threshold potential to write this post was an article “Five Academic Papers All Teachers Need to Read“.  In addition to the five papers presented, I thought I would expand upon the list as many teachers and faculty are preparing to return to the classroom for another year of eager young minds, who may (or may not) be waiting for you to educate them. First, I recommend you go and read those 5 papers. (now – seriously – before looking at my list and getting distracted, at least go print them out and add them to your reading pile)

Next, what are the papers that every CS teacher needs to read?

(1) Lister, R., Leaney, J., First Year Programming: Let All the Flowers Bloom (2003) SIGCSE

This paper changed the way that I assess and has formed a cornerstone of the assessment strategy we use at the Academy for Software Engineering.  Although Lister and Leaney are talking about examinations, I apply this to program assignments.  Instead of “Differentiated Instruction”, I am a proponent for “Differentiated Assessment”.  And not just by making our stronger students do *more* work, but deeper and richer work involving higher levels of Bloom’s Taxonomy.  Eric Allatta at AFSE likes to call this “Multiple Exit Points” again flipping the educational jargon of “Multiple Entry Points” on its head. We start every student at the same place, with a requirement 0 that will get them to a passing grade by re-implementing worked examples from notes. (All kinds of good things here – ask and I will share) Requirements 1 and 2 require more thought and reasoning and earn higher grades. An important part of this strategy is that ALL THREE REQUIREMENTS ARE THE SAME ASSIGNMENT. Here’s an example from a scratch project about loops and variables called Font Size.

(2) Lister, R., The Middle Novice Programmer: Reading and Writing Without Abstracting (2007) NACCQ

Yes, I am a fan of Raymond Lister.  This paper is for anyone (college or HS) who teaches programming and thinks that reading and writing code are just two sides of the same skill. They are not. Nope, don’t tell me they are – go and read it and then we can talk.

(3) Institute for Education Sciences, Encouraging Girls in Math and Science (2007)

The practice guide sums up every way CS Educators can easily encourage more girls to persist in their classrooms. Recommendations such as providing clear feedback, highlighting role models, and connecting to real-world applications are connected to specific examples.  The practice guides written by IES are awesome and targeted to educators so they are actionable.

(4) Institute for Education Sciences, Organizing Instruction and Study to Improve Student Learning (2007)

What can I say, IES was on a roll in 2007 for generalizable educational practices. Again written for teachers but research driven, this is another staple for my Introduction to CS Education class I taught at CMU.

(5) Mark Guzdial’s Blog

Let’s face it, new research comes out every day (or few months as the research cycle goes). Rather than point to one more paper, I would recommend Mark’s blog for updates, shameless student paper promotions, and careful thoughts. Lively discussions in the comments too!




Monday, August 24th, 2015

Progressive Education and the Promises of CS Education

I just finished reading “Loving Learning: How Progressive Education can Save America’s Schools” by Little and Ellison.  Its been in my reading queue since Amazon recommended it to me, and it came up in library request roulette.

Throughout the book it surprised me how the ‘features’ of progressive education often align with the features of computer science education that is often touted to the media such as open ended projects, just in time learning, real world scenarios and issues, and sparking that interest in students who were other dissatisfied with school.

While I am on the fence about ‘progressive education’ vs. traditional education, especially in high schools where students have been acculturated into one or the other for years before arriving at our doors, I see many parallels between the lessons of progressive education and the attempts to bring computer science to the mainstream and incorporate the maker movement.

First, there is an ongoing conversation among instructors of early courses between content and student interest, skills and open ended projects. At AFSE we constantly have that conversation – how do you find the balance between student interest, self directed projects, and student choice and the need to cover specific curricular elements? Identifying the appropriate mastery goals for students (what every student should know or be able to do at 100% before moving to the next course) and including instruction and practice in those goals is important. How do you tailor instruction in a classroom of 30+ students (twice the size of what progressive education argues should be the max), provide appropriate individualized feedback at two levels – micro for the assignment and macro for the overall progression through the course, and tailor assessments? It’s a monumental job and requires a balance between outcomes and student choice.

Apparently traditional progressive education is actually high standards, just through alternative assessment.  From the book:

Over the past century, progressive schools have put a lot of effort and attention into developing effective alternative forms of assessments. Instead of the one-size-fits-all standardized exam .. we have always favored the sorts of evaluations supported by research and described in the landmark NRC report How People Learn, as those that “provide students with opportunities to revise and improve their thinking, help students see their own progress over the course of weeks or months, and help teachers identify problems that need to be remedied.”

This seems to fit well with the iterative nature of programming assignments as the move on the CollegeBoard to portfolio assessment for the CS Principles course.

Sean Stern, Eric Allatta and I  wrote a paper for the Every Child a Coder workshop in Boston this June.  I will post more about the workshop with a link to our paper when it becomes available, but the themes in the paper address our balance between content and rigor, assessment, and finding meaningful experiences for students.

More to come, but I’m curious what others see.

Sunday, April 26th, 2015