Use a suitable practice environment for the language or tool shown in the recordings. Earlier programming knowledge is useful for topic courses that build on variables, functions or data structures. The recordings use the ProcessingJS drawing environment; practice should follow that environment’s demonstrated functions.
About this course
Learn programming by creating drawings and animation in this free JavaScript course from Khan Academy. All forty-two source recordings cover the building blocks of code alongside visual examples: variables, expressions, conditions, loops, functions, arrays, objects and interaction. The demonstrations use the ProcessingJS learning environment. Following a visual change on screen can help a beginner connect a line of code with its effect and develop a systematic way to investigate unexpected results.
Course at a glance
| Provider / Teaching team | Khan Academy |
|---|---|
| Platform | YouTube · Khan Academy |
| Access | Free Video |
| Level | Beginner |
| Language | English |
| Videos | 42 |
| Video duration | 3h 32m · allow extra time for practice |
| Format | Self-paced recorded training |
| Certificate | Not included with video viewing |
What you’ll learn
- Use drawing commands, text and color to create a small visual program.
- Control behavior with variables, expressions, conditions and logical operators.
- Use loops, functions and parameters to organize repeated work.
- Explore arrays, objects, methods and interaction in the demonstrated environment.
- Read, trace and debug a program before extending it.
Skills you’ll gain
- JavaScript
- ProcessingJS
- Animation
- Programming logic
- Functions and objects
- Debugging
Course Overview
The recorded curriculum introduces programming through visual output, then develops the control and data structures needed to make a program more interesting. Individual recordings explain functions, loop behavior, arrays and object-related concepts, while drawing and interaction demonstrations show how those ideas affect the result. The complete source list also retains documentation, readability and peer-learning recordings. ProcessingJS functions are part of this teaching environment, so practice should use the compatible functions demonstrated in the videos. The general JavaScript reasoning can support later programming study beyond the drawing exercises.
How to study the course
- Videos 1–10: this part of the source list includes “Incrementing shortcuts” through “Modifying Arrays”. State the intended input, operation and result. Keep a brief working note, revisit an unclear explanation and test one example before moving to another part of the material.
- Videos 11–21: this part of the source list includes “Making drawings with code” through “If/Else – Part 2”. Reproduce a demonstration before modifying it. Keep a brief working note, revisit an unclear explanation and test one example before moving to another part of the material.
- Videos 22–31: this part of the source list includes “Intro to Objects” through “If Statements”. Trace behavior and investigate unexpected output. Keep a brief working note, revisit an unclear explanation and test one example before moving to another part of the material.
- Videos 32–42: this part of the source list includes “Terrific Text: Part One” through “Coloring with code”. Check the example with a changed condition. Keep a brief working note, revisit an unclear explanation and test one example before moving to another part of the material.
Who is this for?
This course suits learners studying the specific programming or computing topic. It also provides a recorded reference for revisiting a topic after an earlier lesson or study attempt. Choose examples appropriate to your background and allow time to work through the method instead of judging understanding only by how familiar the terminology sounds.
Before you start
Use a suitable practice environment for the language or tool shown in the recordings. Earlier programming knowledge is useful for topic courses that build on variables, functions or data structures. The recordings use the ProcessingJS drawing environment; practice should follow that environment’s demonstrated functions.
Put the lessons into practice
Create a small animated scene in a compatible ProcessingJS learning environment. Use variables for a position or size, a function for a repeated drawing operation and a condition that changes behavior. Add a loop or collection only after you can explain the simpler version. Test one normal interaction and one boundary condition, such as an object reaching an edge. Trace an unexpected result, correct the cause and describe what changed. Keep the program small enough that every important line has a purpose you can explain.
This optional study activity is provided by WikiFree for independent practice. Keep your working notes and use the relevant classroom recording to check a step, definition or interpretation. It is not an instructor-marked assignment.
Certificate / Assessment
Watching the public videos and using WikiFree completion tracking does not award a certificate, academic credit, an examination voucher or instructor assessment. Use your practice output to review what you can explain and repeat independently. The recorded lessons provide study material; completion tracking records your progress through that material.
Related courses for your next step
- Compare another approachHTML and CSS Web Development: Free Course
Focus: HTML · CSS
Beginner - Explore a higher-level optionCS50’s Web Programming with Python and JavaScript
Focus: Python web development · Django
Intermediate - Compare another approachFree Simplilearn Course: CSS Styling, Grid and Animations
Focus: Selectors · CSS Grid
Beginner
Compare course focus, level and study time
| Course | Level | Focus | Study time |
|---|---|---|---|
| This course — JavaScript Drawing and Animation: Free Course | Beginner | JavaScript · ProcessingJS · Animation | 3h 32m of video; practice time is additional |
| HTML and CSS Web Development: Free Course | Beginner | HTML · CSS · Page structure | 1h 47m of video; practice time is additional |
| CS50’s Web Programming with Python and JavaScript | Intermediate | Python web development · Django · JavaScript | 9 units of material; self-paced |
| Free Simplilearn Course: CSS Styling, Grid and Animations | Beginner | Selectors · CSS Grid · Animations | 2h 54m of video; practice time is additional |
Frequently asked questions
Is this course free to watch?
Yes. The public source videos are available in the WikiFree classroom. Video viewing does not include separately priced tools, hardware, memberships or a credential.
How long does the course take?
The 42 source video occurrences total approximately 3h 32m. Allow additional time for pausing, notes, practice and revisiting an explanation.
What background do I need?
Use a suitable practice environment for the language or tool shown in the recordings. Earlier programming knowledge is useful for topic courses that build on variables, functions or data structures. The recordings use the ProcessingJS drawing environment; practice should follow that environment’s demonstrated functions.
Does completing the videos award a certificate?
No. Video viewing and WikiFree progress tracking do not award a certificate, academic credit or an exam voucher.
Can I study on a phone?
Yes. The classroom supports a responsive player and searchable lesson list. A larger screen or a suitable practice environment can help with detailed calculations, diagrams and software examples.
Provider: Khan Academy. Videos play from the Khan Academy channel on YouTube.
Report a correction
Questions & discussion
Share a useful question or correction. Comments appear after moderation. Please avoid personal or sensitive information.