About this Specialization
100% online courses

100% online courses

Start instantly and learn at your own schedule.
Flexible Schedule

Flexible Schedule

Set and maintain flexible deadlines.
Beginner Level

Beginner Level

Available languages

English

Subtitles: English...
100% online courses

100% online courses

Start instantly and learn at your own schedule.
Flexible Schedule

Flexible Schedule

Set and maintain flexible deadlines.
Beginner Level

Beginner Level

Available languages

English

Subtitles: English...

How the Specialization Works

Take Courses

A Coursera Specialization is a series of courses that helps you master a skill. To begin, enroll in the Specialization directly, or review its courses and choose the one you'd like to start with. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. It’s okay to complete just one course — you can pause your learning or end your subscription at any time. Visit your learner dashboard to track your course enrollments and your progress.

Hands-on Project

Every Specialization includes a hands-on project. You'll need to successfully finish the project(s) to complete the Specialization and earn your certificate. If the Specialization includes a separate course for the hands-on project, you'll need to finish each of the other courses before you can start it.

Earn a Certificate

When you finish every course and complete the hands-on project, you'll earn a Certificate that you can share with prospective employers and your professional network.

how it works

There are 6 Courses in this Specialization

Course1

Computational Thinking for K-12 Educators: Sequences and Loops

How do we give instructions to a computer? Isn't programming hard? Not really! Whether it's giving someone directions to a nearby store or writing out some dance moves we frequently exhibit aspects of computational thinking in our everyday lives! This class teaches the first key concepts of programming -- sequences of instructions and basic counted repetition of instructions. For each concept, we'll start by helping you connect real-world experiences you are already familiar with to the programming concept you are about to learn. Next, through a cognitively scaffolded process we'll engage you in developing your fluency with problem solving with sequences and repeated instructions in a way that keeps frustration at a minimum. Along the way you will learn about the common challenges or "bugs" students have with these concepts as well as ways to help them find and fix those concepts. You'll also be guided in running classroom discussions to help students develop deeper understanding of these concepts. Finally, you'll learn about a recommended pedagogical practice, Pair Programming, and find out why research recommends teaching block-based programming first....
Course2

Computational Thinking for K-12 Educators: Variables and Nested Loops

How can students learn about abstraction by creating a movie scene? Or make an interactive map using lists? You'll learn (and do it yourself) in this course! This class teaches the concepts of abstraction (methods and parameters) and lists. For each concept, we'll start by helping you connect real-world experiences you are already familiar with to the programming concept you are about to learn. Next, through a cognitively scaffolded process we'll engage you in developing your fluency with problem solving with abstraction and lists in a way that keeps frustration at a minimum. Along the way you will learn about the common challenges or "bugs" students have with these concepts as well as ways to help them find and fix those concepts. You'll also be guided in running classroom discussions to help students develop deeper understanding of these concepts. Finally, you'll learn about the importance and logistics of assigning creative, student-designed programming projects. Additionally, you will create a personal plan for increasing your skills in supporting a culturally responsive learning environment in your classroom....
Course3

Computational Thinking for K-12 Educators: Conditional Loops and If Statements

Want to make a game that ends when you "catch" an object by clicking on it? Or maybe you get points based on how close you came? You'll do that in this class! This class teaches the concepts of conditional loops and if/else statements. For each concept, we'll start by helping you connect real-world experiences you are already familiar with to the programming concept you are about to learn. Next, through a cognitively scaffolded process we'll engage you in developing your fluency with problem solving with repeat until loops, while loops, and if/else statements in a way that keeps frustration at a minimum. Along the way you will learn about the common challenges or "bugs" students have with these concepts as well as ways to help them find and fix those concepts. You'll also be guided in running classroom discussions to help students develop deeper understanding of these concepts. Finally, you'll learn how to support interactive learning experiences among your students with Peer Instruction. Additionally, you will create a resource for your classroom to support an equitable classroom....
Course4

Computational Thinking for K-12 Educators: Nested If Statements and Compound Conditionals

How could you program a complex "choose your own adventure" game? How can your soccer game determine goals, balls out of bounds, and corner kicks? You'll learn to do both of these in this course! This class teaches the concepts of nested if/else statements and compound Boolean conditional expressions. For each concept, we'll start by helping you connect real-world experiences you are already familiar with to the programming concept you are about to learn. Next, through a cognitively scaffolded process we'll engage you in developing your fluency with problem solving with nested if/else statements and compound conditionals in a way that keeps frustration at a minimum. Along the way you will learn about the common challenges or "bugs" students have with these concepts as well as ways to help them find and fix those concepts. You'll also be guided in running classroom discussions to help students develop deeper understanding of these concepts. Finally, you'll prepare classroom resources to help your students to develop debugging skills. Additionally, you will create resources to help educate your students about the impacts of lack of equity in K-12 CS instruction....

Instructor

Avatar

Beth Simon

Teaching Professor
Education Studies

About University of California San Diego

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory....

Frequently Asked Questions

  • Yes! To get started, click the course card that interests you and enroll. You can enroll and complete the course to earn a shareable certificate, or you can audit it to view the course materials for free. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. Visit your learner dashboard to track your progress.

  • This course is completely online, so there’s no need to show up to a classroom in person. You can access your lectures, readings and assignments anytime and anywhere via the web or your mobile device.

  • This Specialization doesn't carry university credit, but some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.

  • There are six courses in this Specialization, each covering 2-3 programming concepts, an equity and a pedagogy module. Each course is built around five weekly modules, which can each be completed in approximately two-four hours. However, completion time is very dependent on each learner and the time you’re able to dedicate to the Specialization each week. There are deadlines to help you complete in a timely manner (targeting completion in 30 weeks), but you can move faster (by taking courses concurrently) or slower as suits your needs.

  • There is no background knowledge, neither in education nor in Computer Science, required to take this Specialization - just an interest in learning core programming concepts and how to best teach those concepts to others.

    Basic proficiency in the use of Googledocs will be needed to complete assignments within the course. Google help documentation will be provided, and with some extra attention, first time use of Googledocs should not be a barrier to successful completion of the course.

  • Each course in the Specialization introduces specific programming concepts which do build upon each other. If you have no prior programming experience it is suggested you take the courses in the indicated order. However, those with prior programming experience should not be overly challenged in doing courses in any order. At minimum, we recommend ending with the Capstone Project course.

  • After completing this Specialization you will be able to:

    Design programs to solve problems in a block-based language using basic storage (i.e. variables and arrays) and common flow of control (sequencing, selection, repetition).

    Utilize techniques in the teaching of programming to increase student success (e.g, Parsons’ problems for reducing cognitive load, Peer Instruction for development of analysis and communication skills, Pair Programming for collaboration and debugging skills).

    Implement personalized plans for supporting equity in access and teaching in classroom of students with diverse backgrounds.

    Complete the AP CS Principles Create Task and apply the Create task rubric to sample student work.

  • This Specialization has been developed primarily to support K-12 teachers in teaching core programming concepts -- specifically as applied to block-based languages. However, this course is valuable to anyone interested in learning the basics of programming with a view of helping others to learn to program which includes, among others, members of the tech community involved in K-12 outreach, parents, and other informal educators.

More questions? Visit the Learner Help Center.