Skip to content

Instantly share code, notes, and snippets.

@pgbovine
Forked from amyjko/cer.md
Created June 23, 2016 22:44
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pgbovine/5b0f32efe02607563df8ef983615fb4f to your computer and use it in GitHub Desktop.
Save pgbovine/5b0f32efe02607563df8ef983615fb4f to your computer and use it in GitHub Desktop.

Computing education research (CER) is the study of how people learn computing and the invention of better ways to teach computing. This FAQ will teach you more more about the field and how you might contribute to it.

What is computing education research?

First, CER is not teaching. Teaching is helping people acquire knowledge, skills, attitudes and beliefs. Research is discovering truth and inventing solutions. Teachers teach computing, whereas computing education researchers discover what is true about the teaching and learning of computing, and invent new techniques for teaching and assessing it (some pedagogical, some computational).

It's also important to note that I construe "computing" broadly: it's not just about programming, or even just about computer science, but also about all of the phenomena surrounding computing (including privacy, security, information ethics, software engineering, etc.). This means that computing education and computing education research can and do cover far more than just learning to code.

What are the overarching research questions in CER?

As with any research discipline, research questions can and should be specific. However, there are some major overarching questions in this field that researchers have begun to investigate, including:

  • How do people learn computing?
  • How do teachers teach and assess computing?
  • How can people learn computing more effectively?
  • How can teachers teach computing more effectively?
  • How can access to computing education be improved?
  • How can computing education be delivered equitably to all?
  • How can technology teach computing?
  • How does computing education affect people's lives?
  • What are the costs of computing illiteracy?
  • What does it mean to know computing?
  • What is computing?
  • What can be taught about computing to learners of different ages?

While the "people" in the questions above could be anyone (youth, teens, college students, adults, and even teachers), the history of CER has primarily focused on teaching college students, because the faculty conducting research have found it easier to study the students they are teaching. This is changing as countries around the world begin to incorporate computing into all levels of school, and as private industry begins to create technologies and services that teach computing to all ages. For example, my research has investigated new ways to teach youth from age 8-18, as well as adults.

What are some exciting CER discoveries?

There are so many! Examples include:

  • The envisioning of contextualized computing education, teaching computing through content, media, and domains of relevance to learners.
  • The discovery that the desire to learn computing depends greatly on the culture and identity of learners and teachers and not just the teaching.
  • The many surprising discoveries about why coding is difficult to learn (e.g., it requires design, growth mindset, planning, learning from failure).
  • The many practical guidelines about how to teach computing and programming effectively, including to wide audiences (e.g. online courses) or to younger learners (e.g. turtle graphics, robotics, block based languages).
  • The invention of structured editor "blocks" editors that allow novices to learn the semantics of programming languages before learning their syntax.
  • Subgoal labels in worked examples can greatly improve learning, retention, and transfer.
  • The use of specific instructional design techniques such as pair programming, peer instruction, and subgoal labels to improve learning outcomes.

What kinds of jobs do computing education researchers do?

Most computing education researchers are faculty in universities. Many of these faculty are tenure-track faculty like myself, which means a substantial portion of our time (often 50%) is spent conducting research. However, there are also many instructors (who teach 100% of their time) who find additional time to do research on top of their teaching. Many of the original authors at ICER were once members of the Bootstrapping or Scaffolding groups (led by Fincher, Petre, and Tenenberg), who were CS teachers that started to do research in their own classrooms.

Not all computing education researchers are college faculty. Some work in industry creating educational technologies for teaching computing, applying their expertise to the research and design of educational software. Some work in non-profits, using their expertise to advocate for computing education in schools, while conducting research on factors that affect policy. Some work in school districts, helping to implement computing education curricula in schools, while studying and evaluating the effectiveness of the implementation. Others work in government, facilitating research funding. Others still become teachers themselves, both at universities and other schools.

Tenure-track faculty are in the best position to make advances in the field because a substantial portion of their time is dedicated to research. It is possible to do research in other positions, but it is often outside the scope of a job. Because of this, many non-tenure track faculty focus their research on settings that their job gives them access to, which can restrict which the research questions they can answer.

How do I become a CER researcher?

The most effective route is to get a Ph.D. in computing education research at one of the many Ph.D. granting universities in the world. Ph.D. students learn to conduct research over the course of multiple years (generally 4 to 6) under the supervision of an advisor. Many undergraduates participate in research to help them learn about research, which can also help with admission to Ph.D. programs (especially if you publish, which demonstrates your interest and ability in conducting research).

Where can I get a Ph.D. in CER?

You need to find a university that grants Ph.D.'s and has tenure-track faculty who do research in CER on a topic that you're interested in. The alphabetical list below contains some of the many faculty who advise Ph.D. students on computing education research. Find them online and see what kind of research they're doing. (This list may be out of date, as faculty sometimes move universities, retire, go to industry, or change research areas, so be sure to check their website for the latest information):

Name Unit University Country
Erik Barendsen Computing and Information Sciences Open University Netherlands
Tiffany Barnes Computer Science North Carolina State University USA
Brett Becker Computer Science University College Dublin Ireland
Tim Bell Computer Science University of Canterbury New Zealand
Matthew Berland Curriculum & Instruction
Computer Science
University of Wisconsin-Madison USA
Paulo Blikstein Graduate School of Education Stanford University USA
Karen Brennan Graduate School of Education Harvard USA
Steve Cooper Computer Science & Engineering University of Nebraska, Lincoln USA
Betsy DiSalvo School of Interactive Computing Georgia Tech USA
Brian Dorn Department of Computer Science University of Nebraska, Omaha USA
Katrina Falkner School of Computer Science University of Adelaide Australia
Sally Fincher School of Computing University of Kent UK
Kathi Fisler Computer Science Worcester Polytechnic Institute USA
Philip Guo Computer Science University of Rochester USA
Mark Guzdial School of Interactive Computing Georgia Institute of Technology USA
Geoffrey Herman Computer Science University of Illinois, Urbana-Champaign USA
Peter Hubwieser Computer Science TU Munich Germany
Chris Hundhausen Computer Science Washington State University USA
Yasmin Kafai Graduate School of Education University of Pennsylvania USA
Caitlin Kelleher Computer Science Washington University in St. Louis USA
Scott Klemmer Cognitive Science University of California, San Diego USA
Andrew J. Ko The Information School
Computer Science & Engineering
University of Washington, Seattle USA
Shriram Krishnamurthi Computer Science Brown University USA
Celine Latulipe Software and Information Systems UNC Charlotte USA
Michael Lee Information Systems New Jersey Institute of Technology USA
Raymond Lister School of Software University of Technology, Sydney Australia
Lauri Malmi Computer Science Aalto University Finland
Briana Morrison Computer Science University of Nebraska, Omaha USA
Tapan Parikh School of Information University of California, Berkeley USA
Anthony Robins Computer Science University of Otago New Zealand
Carsten Schulte Computer Science Freie Universität Germany
Ben Shapiro ATLAS Institute
Computer Science
University of Colorado USA
Andreas Stefik Computer Science University of Nevada, Las Vegas USA
Roy Pea Education and Learning Sciences Stanford USA
Arnold Pears Department of Information Technology Uppsala University Sweden
Erin Walker Computing, Informatics, and Decision Systems Arizona State University USA
Uri Wilensky Learning Sciences Northwestern University USA
Aman Yadav Educational Psychology Michigan State University USA

Can I get funding to do CER?

Yes! In the U.S., Ph.D. students are generally funded by the research grants their advisors obtain, and can also receive NSF Graduate Research Fellowships, which cover three years of tuition and stipend. Undergraduates can participate in NSF-sponsored Research Experience for Undergraduate projects that faculty sponsor. CER faculty can also apply for NSF CAREER grants on computing education research, or an NSF Research Initiation Initiative for new faculty. Most Ph.D. granting institutions also offer teaching assistantships. In the United States, there are also regularly programs that fund CER. This changes frequently, but here is a current snapshot as of 2016:

  • NSF STEM+C. Funds a variety of research and implementation projects, some focused on the integration of computing into STEM subjects, and some on basic computing education research.
  • NSF IUSE. Funds programs that improve the quality of and access to STEM education in undergraduate programs. Does not directly fund basic research.
  • NSF ITEST. Funds programs that broaden participation in STEM. Does not directly fund basic research.
  • NSF DRK-12. Funds projects that enhance the quality of and access to STEM education in K-12, including basic research.
  • NSF Cyberlearning. Funds projects that enhance how learning occurs in technology-rich environments, including intelligent tutors, computer-based instruction, computational tools for learning, etc.
  • NSF EHR CORE Research. Funds basic education research. Not CS specific, but it has separate tracks within its reviewing structure for CS and engineering.
  • NSF IIS Cyber-Human Systems. Funds HCI research. Not CS specific, but is very supportive of educational technologies that advance the capabilities of human expression.

What do I need to know to be a successful computing education researcher?

First, you need to know some computing yourself. That doesn't mean you need a computer science degree, but it helps to have learned to code. Beyond that, there are many things you'll eventually need to know to make original discoveries, but you can't go wrong by reading these:

  • How People Learn: Brain, Mind, Experience, and School (Bransford, Brown, & Cocking, 1999) provides a strong grounding in learning sciences and education research, which is a must for anyone who wants to advance knowledge in any area of learning.
  • Learner-Centered Design of Computing Education: Research on Computing for Everyone (Mark Guzdial) is a wonderful synthesis of computing education research, with a focus on pedagogy for anyone learning computing, rather than just computer science students.
  • Computer Science Education Research (Fincher & Petre) provides an overview of CER and its different traditions, approaches, and methods.
  • Mindstorms: Children, Computers, and Powerful Ideas (Papert, 1980) is a classic book that claims that children can learn to use computers in a masterful way and that learning to use computers can change the way they learn everything else. It provides a provocative vision for the field.
  • Stuck in the Shallow End (Margolis et al.) studies the racial inequity in computer science, whereas, Unlocking the Clubhouse (Margolis et al.,) studies the gender inequity in computer science. Both are foundational books in understanding structural inequities in computing education.
  • Computational Thinking in K-12 A Review of the State of the Field (Grover & Pea, 2013, Educational Researcher, 42(1)) frames the current state of discourse on computational thinking in K-12 education, identifying gaps in research.
  • A survey of literature on the teaching of introductory programming (Pears et al. 2007). A great overview of CER papers on classroom instruction on programming.
  • Constructing a core literature for computing education research (Pears et al. 2005). This paper has a nice appendix with a list of core papers as of 2005.
  • Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers (Kelleher, C., & Pausch, R. 2005, ACM Computing Surveys, 37(2)) provides a detailed walkthrough of most of the programming languages, environments, and tools that had been invented up until 2005. There have been more since, but before ever inventing one of your own, it's important to know what's been invented already.
  • The State of the Art in End-User Software Engineering (Ko et al., 2011, ACM Computing Surveys, 43(3)) synthesizes of all of the programming languages, environments, and tools that have helped people learn to code while automating a task (which we call "end-user programming").
  • The McCracken Working Group (McCracken et al. 2001, ACM SIGCSE Bulletin, 33(4)) showed that computer science students generally do not know how to program after a sequence of introductory programming courses. A follow up replicated these results (Lister et al., 2004, A multi-national study of reading and tracing skills in novice programmers, ACM SIGCSE Bulletin, 36(4)).
  • Situating Constructionism (Papert, S., & Harel, I. 1991, constructionism, 36), providing a vision of what constructionism is and isn't.
  • Epistemological pluralism: Styles and voices within the computer culture (Turkle, S., & Papert, S. 1990, From Hard Drive to Software: Gender, Computers, and Difference, 16(1)), framing the culture of computing.
  • Changing minds: Computers, learning, and literacy (DiSessa, 2001). Dissects the relationship between computing and literacy.
  • Connected code: Why children need to learn programming (Kafai, Y. B., Burke, Q., & Resnick, M. 2014). Makes the case of computing creativity.

Beyond the works above, it can also be informative to read the proceedings of computing education research conferences and journals to see what kind of research is of active interest. You can find much of this research in the ACM Digital Library (e.g., the ICER proceedings).

Mark Guzdial has also offered a class on computing education research that covers much of this material.

What conferences and journals publish CER?

Most academic fields have exclusively academic venues for publication, with few practitioners participating in or reading the research that researchers produce. The CER community is unique (and I believe quite fortunate) in that practitioners are deeply involved in the academic research community (partly because most faculty conducting research are teachers themselves). Below I note several conferences and journals where you can publish computing education research (see SIGCSE for a broader list). Note that I separate the pure research venues from the venues that combine both research and practice since the combined venues are often dominated by practioners, which can make it hard to have focused research conversations and rigorous peer review.

Research only venues

  • ICER (the ACM International Computing Education Research conference) is the only academic conference that strictly publishes research. All of the reviewers who peer review submissions are trained researchers with Ph.D.s. ICER tends to focus on theoretically, methodologically, and empirically-rich work, advancing the science of computing education. It is held around the world but is generally in North America every other year.

  • TOCE (the ACM Transactions on Computing Education) publishes research, and is similar in scope to ICER, but in a journal format. Like ICER, the editorial board and reviewers are all trained researchers.

  • CSE (the Journal of Computer Science Education) publishes research and is similar to TOCE and ICER in its reviewing community and similar in research rigor and prestige. However, unlike TOCE and ICER, publications in CSE are generally expected to have more direct implications for teachers.

  • ICLS (the International Conference on Learning Sciences) does not strictly focus on computing education, but publishes high quality research on learning sciences. Accepts both qualitative and quantitative work, especially of mixed methods. Also tends to focus more on K-12 than the venues focusing strictly on CER.

  • JLS (the Journal of Learning Sciences) is one of the top education research journals and expects a strong connection to learning theory and mostly wants empirical work. It is not a journal that publishes HCI, so work must be connected to cognition, sociocultural context, or other theory, and not system design.

  • CSCSL (the International Conference on Computer-Supported Collaborative Learning) focuses on issues related to learning through collaboration and promoting productive collaborative discourse with the help of the computer and other communications technologies.

  • ICSCL (the International Journal of Computer-Supported Collaborative Learning), like CSCL, focuses on learning through collaboration.

  • L@S (the ACM Conference on Learning at Scale) is a computer science conference that focuses on techniques for scaling instruction. Some of the work published here concerns computing education, but many other domains are represented as well. Often focuses on MOOCs and other forms of online learning.

  • RESPECT (the IEEE Conference on Research on Equity and Sustained Participation in Engineering, Computing, and Technology) is a conference focused on engagement, participation, and equity in STEM fields. It has research and experience report tracks, and expects empirical papers grounded in theory.

  • IDC (ACM SIGCHI Interaction Design and Children) is an HCI conference with a focus on children, focusing on design artifacts for kids and enabling kids to be designers, with a special focus on participatory design as a methodology.

  • CHI (ACM SIGCHI Conference on Human Factors in Computing) is an HCI conference with a focus on any aspect of interactions between people and computers, including programming. As one of the largest and broadest ACM conferences, it's easily for research on learning to get lost here, but so does every other topic!

  • AERA (the American Education Research Association conference) has a division for engineering and computing education that publish papers on computational thinking.

  • JEE (the Journal of Engineering Education). High-quality but with few international collaborations (like the MIMN studies in CER). Occasionally has papers related to computing.

Research and practice venues

  • SIGCSE (the SIGCSE Technical Symposium on Computer Science Education) publishes both research and practice papers in a short format, bringing together researchers and teachers. This is the largest conference on computer science education and generally attracts teachers. The focus is primarily on reports of practice, but some research does appear. Generally held in North America.
  • ITiCSE (the Annual Conference on Innovation and Technology in Computer Science Education) publishes both research and practice papers, with a focus on practice. Generally held outside the United States.
  • Koli Calling (International Conference on Computing Education Research), held in Finland every year, publishes research and practice papers with a focus on qualitative research. A small but dedicated community.
  • WiPSCE (Workshop in Primary and Secondary Computing Education) aims to bring together researchers and practitioners, and publishes both research and practice papers. It is generally held in Europe.
  • ACE (the Australasian Computing Education Conference) is a regional conference with a mix of research and practice papers, bringing together education researchers and practitioners. Held in Australia or New Zealand, but welcomes attendees from anywhere.
  • LaTiCE (the International Conference on Learning and Teaching in Computing and Engineering) publishes both research and practice papers. Held primarily in Asia.
  • FIE (the ASEE Frontiers in Education conference) is more broad and more practitioner focused than SIGCSE and occasionally has CER work.

What is SIGCSE?

SIGCSE, like other ACM Special Interest Groups (SIGs), is an organization that focuses on a particular topic within ACM, namely computer science education. It sponsors several ACM conferences (the SIGCSE Technical Symposium, ICER, and WiPSCE) and influences their structure and focus. Note that SIGCSE the group organizes SIGCSE the conference. I know, it's confusing, but aren't you glad you read this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment