In the 21st century, computational thinking is a skill critical for all the world's citizens. Computing and technology is impacting all our lives and everyone needs to know how to formulate problems and express their solutions such that a computer can carry it out.
In this Specialization you will both learn several block-based languages, but using novel approaches designed to make learning programming easier.
Covers most CSTA Algorithms & Programming Standards for Algorithms, Variables, Control, and Modularity: Levels 1-3A.
In this Specialization you will complete four projects to support equity in teaching computing (access & standards adoption, underrepresentation & recruiting, diversity, and culturally responsive teaching) and four projects to support quality pedagogical practices for teaching programming (Pair Programming, Parsons' Problems, Debugging, Creative Programming Projects and Rubrics) .
Additionally you will complete the Advanced Placement Computer Science Principles Create Task and create lesson plans to support your students in preparing to succeed on the Create Task.
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.
What is the refund policy?
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.
Can I just enroll in a single course?
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.
Is financial aid available?
Yes, Coursera provides financial aid to learners who cannot afford the fee. Apply for it by clicking on the Financial Aid link beneath the "Enroll" button on the left. You'll be prompted to complete an application and will be notified if you are approved. You'll need to complete this step for each course in the Specialization, including the Capstone Project. Learn more.
Can I take the course for free?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. If you only want to read and view the course content, you can audit the course for free. If you cannot afford the fee, you can apply for financial aid.
Is this course really 100% online? Do I need to attend any classes in person?
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.
How long does it take to complete the Specialization?
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.
What background knowledge is necessary?
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.
Do I need to take the courses in a specific order?
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.
Will I earn university credit for completing the Specialization?
Yes, you can earn credit from the University of California San Diego for completing this Specialization. To do so you must first successfully complete the full Specialization. Then, you will need to (1) Enroll in an additional UCSD Extension course before completing the capstone ($500) and (2), complete part of the capstone project via an online proctoring service. After this is done, your Specialization course grades will be accumulated and a transcript with your final grade (both letter grade or pass-only supported) will be issued from UCSD with 4 graduate-level units. These are eligible to count towards the California Supplementary Authorization.
What will I be able to do upon completing the Specialization?
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.
Who should take this Specialization?
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.