High School Computer Science and Programming Intro Workshop (Udemy.com)

Learn Computer Science and Programming with Snap!

Created by: Hesam Samimi

Produced in 2021

icon
What you will learn

  • In-Depth Understanding of the Fundamental Ideas and Concepts in Computer Science and Programming
  • An Overview and Solid Background in Major Areas of Computer Science
  • Learning Programming in Snap! Programming Tool from UC-Berkeley
  • Learning Programming in Scratch Programming Tool from MIT
  • Background Knowledge and Experience to Start Learning New Programming Languages
  • Improved Ability in Critical Thinking, Logical Reasoning, Modeling, Design, Planning, and Implementation

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 94 / 100

icon
Course Description

Highlights

Introduction toComputer Science and Programming WorkshopDesigned for High School and Junior High StudentsTrains and Encourages Critical Thinking, Logical Reasoning, andTechnology Orientationin Young AdultsWorkshop:
The Majority of Each Class Spent onExercisesDone by the StudentCovers Fundamental Topics in Computer Science and Programming, Major Areas of Computer Science,Including:
Science and EngineeringReal-WorldModelingPhysics SimulationsFrom Model toImplementationReverse Engineering and TinkeringMath and Computer Science TheoryData Structures:
Trees,GraphsAlgorithms:
Shortest PathArtificial IntelligencePropositional LogicNetworksInternet ProtocolsProgramming LanguagesFunctionsObject-Oriented ProgrammingAnd MoreNot a Course about a Programming Language, Rather about Fundamental Ideas in Computer Science and ProgrammingExercises Aid Learning, UsingUC-Berkeley'sSnap! Programming Tool (Designed for Kids andYoung Adults)15-Week Course (26Lectures)8+ Hours of Video Instruction, PlusMany More Hours SpentDoing theExerciseson Your OwnAccompanying Web Page for Each ClassIncludesLectureSlides, Links to Exercises on theWeb PageLearning Fundamental Ideas in Computer Science and Programming Will Set Students up to Go and Learn Any Programming LanguageNo Prior Knowledge or Experience in Computer Science or ProgrammingNecessary

Overview

This newclass is designed specifically for high school and junior high students who want to get a head start learning about what Computer Science and Programming areabout. This course isn't about learning a specific programming tool or language. Rather, it is designed tohelp them strengthen their critical thinking and logical reasoning faculties, as well as give them the depth of understanding infundamental concepts inComputer Science and programming, so that they could later onget started with any programminglanguage or technology project.

A solid overview and key concepts in many areas ofComputer Science are covered by this course, including BigIdeas inScience and Engineering (Real-WorldModeling, Physics Simulations, From Model toImplementation,Reverse Engineering and Tinkering),Computer Science and Math Theory (Lists, Sets, Data Structures such as Dictionaries, Trees,Graphs,Algorithms such asShortest Path), Programming Languages (Functions,Object-Oriented Programming), Artificial Intelligence (Propositional Logic), and Networking (Internet Protocols), and more.

I teach this class to some Living Wisdom School high school students in Nevada City, CA, as an alternate Math course.

This is a 15-week workshopcourse. Each class (week)'s lecture takes about 90-120 min. on average. Each class includes some lecture with slides, but the majority of the time the students will be working onprogramming or designexercises on their own computer.
After each exercise the students can resume the lecture video to check their work against the teacher's.

The majority of theexercises included in each class are done in Snap!--the programming tool from UC-Berkeley. Students can share their work and view programs done by other students around the world.

Perquisites and Requirements

No Prior Knowledge or Experience in Programming NeededExercises Only Require a Computer with Internet Access

Sections

Intro: Introduction to this workshop seriesWeek 1: Lists, SetsWeek 2:
A Snappy Snap! PrimerWeek 3:
Concurrent and Event-Based ProgrammingWeek 4:
Revising the List Example: Under the HoodWeek 5:
Modeling, Design, Implementation: Traffic Light, ATMWeek 6:
Implementing the Traffic Light SimulationWeek 7:
FunctionsWeek 8:
Binary Search TreesWeek 9:
Values, Types, DictionariesWeek 10:
Graphs, An AlgorithmWeek 11:
Implementing a Graph AlgorithmWeek 12:
Propositional Logic, "Have I Lied?" GameWeek 13:
State MachinesWeek 14:
Internet ProtocolsOutro: Next StepsWho this course is for:
High School and Junior High Students Interested in Computer Science and ProgrammingAnyone Interested in Getting an Overview of Computer Science and Programming Ideas Using a Fun Programming ToolEducators who are interested in computer curriculum courses for Middle and High School

icon
Instructor Details

Hesam Samimi

Hesam Samimi is a teacher of Computer Science and Programming, teaching online and at Secondary K-12 schools, since 2017. He has been developing Computer Science and Technology education project-based learning curriculum and content for Secondary K-12 schools. He is also an Android and iOSmobile app developer and instructor.
For seven years during and after his Ph.D. studies at UCLA, he worked as a Programming Languages researcher, focusing on the application of Artificial Intelligence tools in Programming and Software Development.
Hesam is also a Yoga and Meditation teacher, and practices and teacheshow to bring about mind-body-spiritbalance and awareness at home and atwork.

icon
More introduction to computer science courses

The Horse Course: Introduction to Basic Care and Management

Free

Calculus: Single Variable Part 2 - Differentiation

Free

Introduction to Neuroeconomics: How the Brain Makes Decisions

Free

Computer Science 101: Master the Theory Behind Programming

$11.99

Introduction to Neurohacking In R

Free

Introduction to Recommender Systems: Non-Personalized and Content-Based

Free

icon
Reviews

4.7

11 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By Alexander Nimo on 7/20/2020

Yes I say this was a good match for me. The class was very informational and pushed me closer to my goal of being a software engineer.

By Emma Metcalfe on 7/11/2020

I am already learning so much. I had a little trouble with the class 1 programs though. When I clicked the ball it didn't turn into a different color but disappeared completely. I was able yo fix it and doing so made me feel like a real programmer.

By Bethany Mills on 6/8/2020

yes

By Rushil Sajjan on 5/5/2020

Yes, it was interesting and held my attention.

By Salim Al Maqbali on 4/26/2019

nice

By Tara Clancey Edwards on 1/4/2019

As an adult trying to learn coding, I appreciate the meditations before and after! I appreciate the course beginning with "exploration" as it is a gentle introduction.

By Bobbie Smith on 10/15/2018

Excellent course. Very well presented. I learned a lot. Thank you.

By Avirat A Thakor on 7/4/2018

I have only done one lecture, and I feel like I have explored coding quite a bit!

By Abody on 2/27/2018

Amazing

By Abdul Rahman Masoud on 1/25/2018

The instructor is good , but maybe he can isolate the sounds around him and his sound of drinking and so on....
in general he is ok

By Suthaphas Jindawhong on 1/18/2018

so good.