CSTA Board of Directors Reminder

I hope everyone had a great holiday break is leaping back into the school year with renewed drive and energy. With all of the chaos of the new year, you might have missed the call for nominations for the CSTA Board of Directors. There is no better way to contribute to CSTA’s mission of empowering and advocating for K-12 CS teachers than to serve on the Board. There are five open positions this year, four representing specific perspectives and a fifth, at-large position.

  • K-8 Representative: A classroom teacher who is currently teaching computer science at the pre-high school level.
  • 9-12 Representative: A classroom teacher who is currently teaching computer science at the high school level.
  • International Representative: An international (outside the United States) classroom teacher who is currently teaching or promoting computer science at the pre-collegiate level.
  • State Department Representative: An educator or administrator who reports to a state department of education and oversees, in some capacity, computer science education.
  • At-Large Representative: An educator with responsibilities for K-12 CS education.

To apply for one of these position, you simply need to submit a resume and a brief application form – details can be found at http://www.csteachers.org/news/379241/Announcing-the-CSTA-Board-of-Directors-Elections–Nominations-Period.htm. The deadline for submissions is January 31 (11:59pm PST), so don’t wait too long. Questions can be directed to nominations@csta-hq.org.

In case you were on the fence about applying for the Board, here are answers to five of the most common questions that potential candidates ask:

Q: How much work is involved in being a Board member?
A: You have probably seen the phrase “the CSTA Board is a working board” in several places. What this means is that members of the Board are expected to help carry out the business of the organization – not just advise or supervise. This includes monthly virtual meetings and two face-to-face board meetings, one held in conjunction with the CSTA Annual Conference and another held in the late fall. While these meetings are packed and productive, most of the Board’s business is conducted throughout the year by committees, with individuals working from home and coordinating via phone conferences. The time commitment can vary by task, e.g., the work conducted by the Elections & Nominations Committee is concentrated around setting up and running the annual elections, and is light during other times of the year. On average, I would guess that the workload averages out to 2-3 hours per week.

Q: Are Board members expected to cover their own travel expenses to meetings?
A: No, expenses for travel are reimbursed (within reason) following CSTA’s travel policy guidelines. This includes travel, hotel, and meals at Board meetings. It also includes expenses related to attending the CSTA Annual Conference, since Board members are expected to attend this event and help out by proctoring sessions and assisting with registration. A copy of the travel policy is provided to all newly elected Board members.

Q: Why are there different positions on the Board, such as 9-12 Representative and International Representative?
A: The mission of CSTA is a broad one, promoting K-12 CS education and supporting the interests and professional development of our 26,000+ members. It is essential that the Board have a diversity of perspectives and experiences to address the issues and challenges that arise in the organization’s business. Each position has requirements to ensure that key perspectives are represented on the Board. For example, the 9-12 Representative is required to be a “9–12 classroom teacher who is currently teaching computer science at the high school level.” Once on the Board, all members are equal in status and welcome to contribute to all initiatives.

Q: If I apply for a position, does that automatically mean I will be on the ballot?
A: Unfortunately, no. According to the CSTA bylaws, the election ballot will list at most two candidates for each open Board position. If more than two qualified candidates submit applications, the Elections & Nominations Committee is charged with selecting the two most outstanding candidates to be placed on the ballot. Committee members independently rank the candidates using a rubric that considers factors such as leadership skills and experience, understanding of core issues in CS education, and alignment of goals to CSTA’s mission. While this model does sometimes mean that highly qualified candidates do not make the ballot, it does allow for us to keep the ballot size manageable while still providing detailed statements from each candidate.

Q: Why should I consider running for the CSTA Board?
A: Serving on the CSTA Board of Directors is an extremely rewarding opportunity to give back to the teaching community. Board members help to set the vision for the organization and work to promote CS education on a global scale. Their work supports and provides professional development for CSTA’s more than 26,000 members worldwide. In addition, working closely with other amazing educators is rewarding in itself.


Dave Reed
Past Chair, CSTA Board of Directors
Chair, Nominations & Elections Committee

Dare To Dream

I believe the future of Computer Science education is bright. This bright future, however, requires leaders with vision and a continued focus on equity and advocacy. I have been fortunate to work with, and learn from, individuals with such leadership qualities. I remember attending a CSTA K-12 Equity Workshop in 2010 where the need for equity, not equality, was explained to me. I left that training believing that we, the CS community, can change education. A belief that has continued to guide my work. CS has continued to promote the discussion of equity and inclusion in the K-12 classroom, so much so that political leaders are beginning to see CS education as a means to close achievement gaps and address inequities in our society.  I would like to congratulate all the states and organizations that are leading the charge to bring CS to all students, through their commitments of time, effort and money.

CS education has been influential in many ways. CS has enhanced the introduction of new strategies and tools for engaging students in learning and empowering teachers to teach a diverse group of students.  I look at today’s teacher dashboards and the ways we monitor student learning in the CS classroom. Progress such as this causes me to continue to dream of the bright future ahead.  I can very easily manage a diverse group of students in my classroom, where students are working on different activities, because of the resources curriculum providers have made available to us. CS had led to the empowering of teachers and teachers further embrace the concept of lifelong learning. Designations such as Master Teacher, Lead Learner, etc. are now common in our community. Additionally, students now explore CS at their leisure via online resources.  We are evolving to a place where both teachers and students feel empowered, and I believe there will be future structures that encourage both through either a redefinition of the teacher or different modes of online resources.  New models of professional development and skills assessment could also be used to provide teachers more ways to facilitate learning.

I dare to dream of a future where models of student learning and teacher PD developed in the CS classroom affect teaching and learning in all subject areas. Such models of PD would allow teachers to continue to grow, break barriers and be able to meet the needs of a diverse student body.  I dare to dream of school administrators embracing CS, supporting teachers in their development, and using the positive experiences in the CS classroom to affect school culture. To the administrators who are already living this, the CS community thanks you.

In summary, I dare to dream of the boundless progress of CS education. I dare to dream of a future where all students are taught CS. I dare to dream of a future where teacher PD is on demand and easily accessible. I dare to dream of a future where administrators are active contributors to the success of CS education. I dare to dream of a future where the educational system is transformed to benefit all people irrespective of their race, nationality, or area of residence. This future is possible with advances in CS and all the efforts to address the digital divide. Computer Science has the potential to transform all classrooms, students’ experiences, what it means to be a teacher or administrator, and has the ability to transform education and society as we know it.  The progress of the last ten years allows me to dream of a future where all students can realize their full potential. If the CS community continues to elevate ideas of Inclusion, Diversity, Equity and Access, I see a future where this dream can materialize. #CSFORALL #DareToDream.

Chinma Uche 9-12 Representative

CS Education and AI

Last week, I had the interesting experience of giving evidence at a hearing of our House of Lords Artificial Intelligence select committee. The House of Lords is the (entirely unelected) upper house of the UK’s legislature, so for me, this was quite a big deal. Their lordships were interested in the applications of AI to education in general, but they seemed much more interested in the opportunities that England’s computing curriculum would provide for our students to learn about AI.

In terms of the uses of AI in schools, we’re already seeing a fair few applications of machine learning and other aspects, and I think these look set to continue in the short to medium term. I certainly don’t see AIs replacing teachers any time soon, but I think there are plenty of aspects of the teacher’s role where some support from smart machines might be quite welcome, for example in assessment, with marking essays, judging the quality, rather than merely the correctness of a student’s code; in recommending appropriately challenging activities, resources and exercises for students; in carefully monitoring student activity, privacy concerns notwithstanding; and in responding quickly to students’ questions or requests for help.

If teaching can be reduced merely to setting work and marking work, then I would fear for the long term future of the profession:

‘Any teacher that can be replaced by a machine, should be’,

as Arthur C Clarke famously put it. My Roehampton students think there’s much more to teaching than this though: teaching students how to be a person, how to get on with other people, and inspiring them to learn things that they’re not already interested in, to give just three examples. I don’t see the machines taking over these responsibilities any time soon.

More interesting are the opportunities to teach students about AI as part of CS education, or the broader school curriculum. The English programmes of study for computing are phrased broadly enough to allow, or perhaps even encourage, students to develop a grasp of how AI, and particularly machine learning, works, in age-appropriate ways from age five to eighteen. CSTA’s new standards allow scope for students to learn about machine learning too: between 3rd and 10th grade students should be able to use data to highlight or propose cause and-effect relationships and predict outcomes; refine computational models based on the data they have generated; and create computational models that represent the relationships among different elements of data collected.

There are some great tools out there to make this accessible to students, from Google’s teachablemachine, through Dale Lane’s fabulous, IBM Watson powered, machinelearningforkids, to building machine learning classifiers in Mathematica (easy!) and Python (more tricky, but really not out of the question), as well as the fun that can be had building simple chatbots in Scratch or Python, and hacking Google Assistant using the Raspberry Pi Foundation’s AIY kit.

Great as these opportunities are, I am concerned that we’re not doing enough in schools to get students thinking through the ethical implications for individuals, society and civilisation of AI. Worryingly, England’s education ministers removed the wider ethical references from the computing curriculum the British Computer Society and Royal Academy of Engineering panel had developed. Machine learning algorithms already make life-changing decisions for many of us, and the impact of these technologies on our lives seems likely only to increase over our students’ lives.

Education is, at least in part, about preparing our students for the opportunities, experiences and responsibilities of their later lives, and I’m not sure we can do justice to this if we’re not teaching them how AI works, and to think through some of the big questions about how AI should be used.

Miles Berry, International Representative

What’s It Like To Serve On A Board?

Throughout my professional career—academia, industry, government, I’ve been involved with many boards. Most of my experiences have be positive; most of them were part of loving, respectful, inclusive communities. I’ve served on boards that focus on teaching in higher education, boards that are charged with the welfare of a community, boards that are responsible for specific events, boards that are strictly oversight or advisory and others that are active doers.

I have recently been lucky enough to join the CSTA Board of Directors. Based on my early experience, the CSTA Board is a hybrid of doers and overseers. It’s a wonderful mix of high school teachers, higher education faculty, state and local K-12 administrators and industry representatives.

When you attend the CSTA Annual Conference, or participate in one of the many activities offered from the chapters or other members of the CSTA community, all of these people, ideas and activities have somehow, someway passed by the attention of the CSTA Board. Board members are active participants in all areas of the organization and execution of the Annual Conference, aiding the conference chairs with whatever and helping keep the Board posted on all of the great ideas and activities. The Chapters as well are encouraged by the Board, which always welcomes their creative ideas. Board members live to be enablers!

In addition, at my first (and currently only) face to face meeting, we dealt with more serious issues like the budget and strategic plans. I was impressed with the many ideas and differing perspectives offered by all of the members of the Board—this isn’t a shy group! I was also happy to see how respectful and seriously everyone reacted to divergent opinions. We’re all trying to do our best for CSTA. It’s amazing how much business gets covered in this one-day meeting. To keep up to date and keep moving forward, we also have monthly video and conference calls with full agendas, too. I appreciate well-run meetings where people do get a chance to visit and catch up but where the focus still on getting the business done. Fred Martin (CSTA Board Chair) is a master!

We all know that it’s really fun, useful and professionally stimulating to be a member of CSTA and that its members (YOU) are what make it the GREAT organization it is today. But if anything about being on a board intrigues you, if you’re interested in seeing how the behind the scenes stuff works and you have the time to invest, the CSTA Board is a pretty amazing place!

Jane Prey
ACM Representative

Why You Should Care About CS Policy

If you’re reading this, it means that you are a dedicated teacher who cares about CS education.  You might not think about policy very much, but it can have a big impact in broadening participation in CS in your state.  Here are a few reasons why policy matters.

Establishing CS as a Core K-12 Subject Area.  

NH and many other states have MS and HS technology program requirements.  These programs are a mixed bag – many are primarily digital literacy, but a lot of schools are incorporating coding, makerspaces, robotics, and other experiences that are very much a part of CS education.

At the HS level, there are Career / Technical Education (CTE) programs in the Engineering and Information Technology clusters that are related to CS.  These are good programs, but they are for 11th and 12th grade students who already plan to go into IT or Engineering.  We know that this is too late for equity.  

Establishing K-12 Computer Science standards that are distinct from CTE program standards signals that CS is a core subject for ALL students, and helps tie the CS-related experiences mentioned above into a cohesive whole.   Core K-12 CS provides a pathway into the CTE programs above and others, for example: Business / Financial Operations; Healthcare Technology; and more.  

Getting Reliable Data and Using it to Make Improvements

In NH, certification, standards, and funding are all linked.  Each certification area has a linked set of academic standards.  This is how courses are identified in our state information systems.  Since our K-12 standards and certification are brand new, we have a big push to recertify current CS teachers and reclassify courses.  This will give us a new lens into CS education across the state.  

When we have opportunities to utilize state and federal funds to advance our objectives, we rely on this data to target our programs and achieve the greatest impact.  We need to define CS and identify CS so that we can be smart about expanding and broadening participation.

Growing the Pool of CS Teachers

Our certification rules are linked with the program approval standards for teacher preparation programs.  This means that with our new K-12 CS certification we now have the opportunity to establish programs that lead to certification as a CS teacher.

The rules are also a guideline for teachers who teach some CS, to take the plunge and become a “full-fledged” CS teacher.  Our certification program is competency-based, so educators can acquire the necessary skills and knowledge through a number of means.

You Can Help

Is there a line of communication between your CSTA chapter and your State Education Agency?  Find out what they’re up to and what you can do to help.  We all need to work together to make CS for All a reality.

Check out the CSTA Advocacy Menu for some ideas for CS Education Week, Dec. 4-10, 2017:

For more information on state-level K-12 CS policy, please check out these documents:

 

David Benedetto
At-Large Representative

Reading Stories in Computer Science Class

Stories are an entertaining way to introduce or reinforce computer science concepts and help students to understand abstract concepts in a more concrete way. Do you read picture books, chapter books, or short stories to your students in computer science classes? I do. The easiest way to get started is with books that are specifically written to teach CS concepts.
For 5-8-year-olds, Hello Ruby: Adventures in Coding by Linda Liukas is a wonderful place to start. Written to introduce young children to computing, it is a picture book about a “small girl with a huge imagination.” As Ruby goes on adventures, students learn about planning, sequences, algorithms, collaboration, conditionals, loops, and more. The book includes activities that go along with the story, and the official website has resources for educators. Linda Liukas has also written a second book, Hello Ruby: Journey Inside the Computer, which includes activities about the internal parts of a computer.
A graphic novel for 8-12-year-olds that covers multiple CS concepts is Secret Coders by Gene Luen Yang and Mike Holmes. It is the first in a series of books that combine logic puzzles and coding (in Logo) wrapped up in a mystery storyline. The official website has downloadable activities and Logo instruction videos so your students can code along with the characters if desired. Check out the excerpt on the website for a fun introduction to binary. The concepts in the book can easily be applied to any programming language you are using with your students.

The comic book, The Cynja, by Chase Cunningham,‎ Heather C. Dahl, and Shirow Di Rosso was written for younger children, but I like it for introducing Networks and Cybersecurity for Middle School students. The Cynja is a story of a battle between the evil forces of cyberspace and the Cynsei and his apprentice, the Cynja. Code of the Cynja, the second comic in the series, has a female lead character. These are difficult to get in print, but digital versions are available on Amazon and in the Google Play Store.

Don’t limit yourself just to books written about computer science concepts. Working on decomposition skills? Read a “Choose Your Own Adventure” book. Then work with students to decompose it and build a decision tree. Talk about how conditionals allow it to work and have students create their own “Choose Your Own Adventure” program. The Fly on the Ceiling by Julie Glass is a fun book to introduce the coordinate plane. After reading it, students could create a Scratch project to draw their initials using glide commands with x and y coordinates. Read The Very Hungry Caterpillar by Eric Carle and have students retell the story with Bee-Bot or write a ScratchJr project about the life cycle of the butterfly. Look around and see what books are available at your school and find ways to use them in your computer science classes.

Are you reading stories to students in your computer science classroom? We would love to hear about it!

Vicky Sedgwick K-8 Teacher Representative

Use the SCRIPT to Develop Your District’s Own #CSforAll Plans

Individual teacher and school champions have enabled participation in K-12 computer science education to soar to new highs in recent years. However, true systemic change will occur when school districts across the nation create their own #CSforALL goals and implementation strategies. There is a need for districts across the nation to develop comprehensive and equity-minded plans to ensure that all students across all schools can access and achieve in computer science.

Creating these plans can be daunting, especially at early stages of implementation and when there are important competing priorities. It can be tempting to simply replicate plans that other districts have adopted, yet contexts may vary greatly from one district to another, making a single correct answer difficult. Districts should leverage local strengths and consider their unique contexts when developing their plans.

The CSforALL Consortium, a key partner of the CSTA, recently developed a tool to help with this challenge. The new tool is called the SCRIPT: School CSforALL Resource and Implementation Planning Tool. The SCRIPT engages school districts in reflection, review of examples, and goal setting related to six areas: (1) Leadership, (2) Technology Infrastructure, (3) Teacher Capacity, (4) Curriculum and Materials, Selection and Refinement, (5) Partners, and (6) Community.

The SCRIPT is still under development; however CSforALL has released rubrics for Leadership, Teacher Capacity, and Curriculum & Materials, Selection and Refinement. Recently, I helped facilitate a breakout session at a SCRIPT workshop held at the CSforALL Summit in St. Louis. Based on this experience, I believe the SCRIPT is useful for districts that are just getting started, as well as those that have already implemented their comprehensive plans, as there are many distinct elements and a wide continuum of success. The tools promote excellent reflection and conversation and help guide teams towards meaningful next steps.

Here is a suggestion for how to use the SCRIPT:

  1. Convene a leadership team from your local district to develop or update plans to support #CSforALL. Include teachers, principals, curriculum leaders, and district administration; where possible, include representatives from both early-adopting schools and schools that have yet to begin to implement.
  2. Together, focus on each of the six SCRIPT categories one at a time. Use the rubric to reflect on the current status, identify priority areas, and set goals. Consider setting three goals for each area of the rubric: one 3-month goal, one 6-month goal, and one long-term goal.
  3. Use the tools and examples in the SCRIPT, as well as other CSTA resources and CSforALL members, to help plan how you will meet these goals. Feel free to reach out to your local CSTA chapter to ask for advice and support.
  4. Reconvene periodically to monitor progress and update goals.

Creating meaningful and systemic change certainly does not come easily. Accordingly, you won’t find a list of answers within the SCRIPT. However, you will find many thought-provoking questions and topics for conversation. Use these to consider the big picture and develop plans for rigorous, inclusive, and sustainable K-12 computer science education in your local school district.

SCRIPT Cover

Bryan Twarek
School District Representative

Designing Computer Science Classrooms

Computer science is being taught in all kinds of classrooms across the country, not just in computer labs. As more schools increase their computer science offerings and look to dedicate space to those classes, teachers are faced with the question: What should a computer science classroom look like?

In CS teacher professional development, we discuss how to make sure that all students feel welcome in the classroom, including the physical environment itself. NCWIT has a great resource, How Does the Physical Environment Affect Women’s Entry and Persistence in Computing?, that identifies how underrepresented students are impacted by posters and other images that reinforce stereotypes about computing. For example, images that associate “geek” with CS (Star Trek, a lone coder in the dark, etc.) or that call attention to the need for more women, can have a negative impact. Instead, consider using imagery like the new set of posters from NCWIT and Careers With Code, which show a variety of role models using computer science to pursue a personal passion or change their world. The goal should be to select images that appeal to all students and showcase a variety of people.

Working with K-12 teachers, I’ve had the opportunity to see many different types of CS classrooms. Sometimes the computers line the perimeter of the room, facing the wall but making it difficult for some students to see the teacher and their computer at the same time. Some rooms have rows of computers where it’s easier to see the teacher but often difficult to walk around easily. And some are regular classrooms that rely on a laptop cart. All of them have their advantages and disadvantages; the goal is to have a physical space that supports effective teaching.

The college I teach at is also looking to redesign one of our computer labs dedicated to CS courses, with a focus on supporting student collaboration. As more and more of our teaching relies on collaborative and cooperative learning activities such as pair programming, POGIL, debate team carousels, etc. the traditional classroom with rows of computers does not work well. So, we are examining ways to implement flexible classroom arrangements with tables and chairs on wheels that can be easily switched into another configuration. With these types of activities we move from a “guide on the side” model of teaching to more of a “sage of the stage” model and have less need for a large, central area with whiteboards and projection screen.

These types of considerations for the physical design of CS classrooms also directly support practices described in the CSTA K-12 CS Standards, specifically the practices of Collaborating Around Computing and Fostering an Inclusive Computing Culture. So, what would your ideal classroom to teach computer science in look like? How will it support collaboration and make sure that all students feel like they belong?

Jennifer Rosato


Jennifer Rosato
Teacher Education Representative

CS for All Means All Y’All

Right about now you should be thinking how great it is to be a K-12 CS educator.  If not, let me give you a few reasons.  How terrific it was to hear that President Donald Trump had re-purposed $200 million dollars at the US Department of Education to support STEM Education, including K-12 computer science education programs.  Women, minorities, and students in rural communities will particularly benefit from this presidential memorandum.  That’s exactly what we are talking about when we champion “CSforAll.”  And to sweeten the pot, a coalition of tech businesses including Amazon, Facebook, Google, Microsoft, Lockheed Martin, and many others agreed to give $300 million spread over the next five years to boost K-12 computer science programs.  So, it really is a great time to be a CS educator!

If you need more proof that it is a great time to be a CS educator, on October 16 and 17, over 170 organizations made new commitments to support CSforAll students.  These pledges were celebrated by a stakeholder community of educators and other supporters at the 2017 CSforAll Summit in St. Louis, Missouri.   You can view those commitments in this pdf Fact Sheet to see how many of our long-time friends and supporters are in the list and how many, many more you might not have known about.  CSTA made a commitment to continue to promote the new CSTA K-12 CS Standards broadly so that all states and school systems have rigorous models for their own standards and to work with 3-5 CSTA chapters to help them establish their CS program while developing state standards and supporting CS teachers.  Did you make a new commitment to support CSforAll students?  If not, why not do one now?  After all, it’s a great time to be a K-12 CS educator!

And, speaking of commitments, have you made a pledge for 2017 CS Education WeekCS Ed Week is December 4 – 10, 2017.  What a great time to champion CS education, celebrate Grace Hopper’s birthday (December 9), and introduce students to computer science.  It’s a great week for elementary/middle school educators to partner with high school students and educators to show the younger students how great CS is and to allow the older students to share their enthusiasm.  This year, CSTA is partnering with Family Code Night to encourage parents to join their children in coding at their local school—another great way to interest younger students in CS education.  Plan to participate in Family Code Night (or even better to help organize Family Code Night events in your community).  After all, it’s a great time to be a K-12 CS educator.  And, as we say in the south, All means All Y’all!

We know you are all doing spectacular work in your own schools, school systems, and CSTA chapters.  We look forward to reading about what you are doing to promote and bring CS education to all students.

Deborah Seehorn , CSTA Interim Executive Director

Learning computing with metaphors

Don’t think of an elephant!

Now what are you thinking about? Of course, it’s an elephant.

This sentence is the title of a book by George Lakoff, a contemporary linguist who makes that case that we frame our thinking with the words and metaphors we use. By consciously recognizing this, we can understand our own thinking better and become more persuasive.

Inspired by Lakoff’s work, Alvaro Videla published an essay Metaphors We Compute By in the October 2017 Communications of the ACM. As a computer scientist and software engineer, Videla recognized the extent to which we make sense of concepts in computing via metaphors. He gives this example:

Say you could program a computer to command other computers to perform tasks, respecting their arrival order. This description is already difficult to understand. On the other hand, you could describe the solution by describing a queue server that assigns jobs to workers based on a first-come, first-served queue discipline.

Consider all the examples from daily life in the description of the solution: A “queue” is something with which all of us are familiar—that’s a “line” for those of us speaking American English! “First-come, first-served” is how most everyday lines operate, “workers” and “jobs” are people and roles from our daily lives.

With this metaphor, it makes sense. The everyday concepts translate into computational artifacts. A worker becomes an operating-systems process. A job becomes an algorithm carried out by that process on some particular data. The line becomes a FIFO queue.

This idea of using metaphors goes back far in our field. Some of the early CS education research focused on how the names of words chosen to be language commands helped (or hindered) students’ understanding. For example, in the 1987 article The Buggy Path to Development of Programming Expertise, Pea, Soloway and Spohrer reported on how students expected parallelism in BASIC code with “IF… THEN” statements. They thought the computer could evaluate any statement as needed, firing when a condition became true—as it might be in daily life.

I’ve used metaphors to explain function application—a concept in functional programming. It’s similar to how parameters or arguments are supplied to C or Java functions. I brought a rubber mallet to class, and described function application as the mallet “pounding the parameters on the head.” So if you have a function increment, which adds one to its parameter, then increment sees a 3, pounds it, and produces a 4. Then “functional mapping” is walking down a list, pounding each parameter in turn. In Scheme: (map increment (list 1 2 3 4)) produces the list (2 3 4 5).

Later during the semester, I could just pretend I was holding the mallet to bring back the idea of function application.

What metaphors have you introduced to your students to help them understand computing concepts? Did they work? Have you changed them over time? Please share with your colleagues!

head shot of Fred Martin, chair of board of directors

Fred Martin, chair of board of directors