YoVDO

The Beauty and Joy of Computing - AP® CS Principles Part 2

Offered By: University of California, Berkeley via edX

Tags

Algorithms and Data Structures Courses Computer Science Courses Artificial Intelligence Courses Programming Courses Complexity Theory Courses

Course Description

Overview

Discover the big ideas and thinking practices in computer science plus learn how to code using one of the friendliest programming languages, Snap! (based on Scratch).

Computing has profoundly changed the world, opening up wonderful new ways for people to connect, design, research, play, create, and express themselves. However, just using a computer is only a small part of the picture. The real transformative and empowering experience comes when one learns how to program the computer, to translate ideas into code.

This course teaches students how to do exactly that, using Snap! (based on Scratch), one of the friendliest programming languages ever invented. It's purely graphical, which means programming involves simply dragging blocks around, and building bigger blocks out of smaller blocks. But this course is far more than just learning to program. We focus on seven big ideas (creativity, abstraction, data and information, algorithms, programming, the Internet, and global impact), and six computational thinking practices (connecting computing, creating computational artifacts, abstracting, analyzing problems and artifacts, communicating, and collaborating). Throughout the course, relevance is emphasized: relevance to the student and to society.

Topics include:

  • Data and Information
  • Complexity Theory
  • Recursion, Lambda and Higher Order Functions
  • Artificial Intelligence
  • Human Computer Interaction
  • Lab-based Topics: Algorithms and Data, Trees and Fractals, Recursion and Higher Order Functions

This fun, introductory course is not just for computer science majors, it’s for everyone… join us!


Taught by

Dan Garcia

Tags

Related Courses

ABC du langage C
Institut Mines-Télécom via France Université Numerique
Abstraction, Problem Decomposition, and Functions
University of Colorado System via Coursera
Advanced Data Structures in Java
University of California, San Diego via Coursera
Advanced React
Meta via Coursera
Testing with Agile
University of Virginia via Coursera