此课程是 100% 在线学习吗？是否需要现场参加课程？
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.
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.