NoSleepCreative Wiki
  • Welcome to NoSleepCreative
  • After Effects
    • Getting Started with Expressions
    • Expressions & Snippets
      • JSX Cheatsheet
      • Expression Troubleshooting
      • Utilities
      • Shape & Mask
      • Type & Text
    • Cookbook
      • Algorithmic
      • Random properties
      • Harmonic Motion
      • Staggering
      • Tessellation & Tiling
      • Type animators
      • Speed lines
      • Radial Array
      • Orb & Trails
      • Shading & Texturing
      • Responsive
      • Automation
      • Setup & Rigs
    • Getting started with Scripting
    • Scripting
      • Utilities
      • Master Properties
    • ScriptUI
  • Studio Ops
    • Tooling
    • Toolkitting
    • Knowledge Base
    • Naming Convention
    • DAM
  • Cinema 4D
    • Formulas
    • Python Cheat Sheet
      • For Artists
      • Maya Environment
      • Maya snippets
      • VSFX 705
    • Cookbook
  • Info
    • About
    • Portfolio
    • Course
    • YouTube
    • Gumroad
    • GitHub
  • Dev
    • archive
      • Webscraping
      • Google Sheets Formulas
      • SQL
      • Terminal
      • C++
      • Unreal Engine
      • Concert Visualization
      • Dome-projection
      • UI UX
      • Professional Etiquettes
      • Woes
      • How to get better
        • Portfolio / Showreel
        • Design with cooking
      • Media theories
        • Post Cinematic Affect
        • Marxism, Reproduction and Aura
        • Heuristics & Authorship
        • 02 Semiotics
        • 3 Process?
        • 05
        • 06 Technology & Mediation
        • Formalism
        • Simulation
        • The Gaze & Media Critique
        • Import
        • 10-12
      • Recommended books
        • 🔴Things I learned
      • Mac Superuser
        • Applescript
      • InDesign
      • Illustrator
      • Blender
      • Premiere Pro
      • Mathematics
        • Probability
        • Linear Algebra
      • Shader Dev
      • Getting Started with After Effects
        • Best Practices
        • Pimping up AE
        • Environment
      • Houdini
        • Cheatsheet
        • Cookbook
        • Techniques
        • Dynamic
        • Rendering & Lighting
        • Animation
        • Particles
        • Others
          • Modeling
          • Fluids - Pyro & Smoke
          • Rendering
      • REGEX
    • Sandbox
      • Nexrender
        • Terminology
        • Project Files Preparation
Powered by GitBook
On this page
  • Introduction
  • Reference Library
  • Javascript
  • Expressions
  • Industry tools
  • Source cited
  • NoSleepCreative Expression Starter Pack
  • FAQs
  • How do I get started with coding and expressions?
  • Do I need to know Javascript before I get into expressions?
  • Do I need to be good at expressions to be a better Motion Designer?
  • Are there any paid training courses you recommend?
  • Best way to learn expressions
  • Tips
  • Complex expressions ≠ amazing animation
  • Focus on problem solving, not improving at writing expressions

Was this helpful?

  1. After Effects

Getting Started with Expressions

Last update: 19 January 2024

PreviousWelcome to NoSleepCreativeNextExpressions & Snippets

Last updated 1 year ago

Was this helpful?

Introduction

Welcome to my comprehensive guide on JavaScript and After Effects Expressions! This page is designed to be your one-stop resource for learning, enhancing, and mastering the art of JavaScript, particularly in the context of Adobe After Effects.

Reference Library

Javascript

Expressions

  • Documentation

    • (PDF)

  • Tutorials

    • by Dan Ebbert

  • Francois Lefebvre

  • Resources

Industry tools

Source cited

NoSleepCreative Expression Starter Pack

FAQs

How do I get started with coding and expressions?

The key to mastering coding expressions lies in consistent practice within your projects. A fondness for math can be a significant advantage, as coding often resonates with those who enjoy mathematical concepts and organized thinking.

To kickstart your journey, here's a structured learning path I recommend:

  1. Practice Writing Your Functions: Challenge yourself by writing your own functions/code solutions, applying the concepts you've learned.

  2. Refine Your Code: Aim to write cleaner, more efficient code. Practice using advanced array methods like map, reduce, and filter, and familiarize yourself with arrow functions for more concise code.

Do I need to know Javascript before I get into expressions?

Do I need to be good at expressions to be a better Motion Designer?

Are there any paid training courses you recommend?

An alternative course to consider is the School of Motion's Expression course, although I haven't personally taken it. Notably, my improvement in expressions largely came from a scripting course from FXPHD.

Best way to learn expressions

Play

Personally, I really enjoyed Mathematics, it was my strongest and favorite subject in school. I love solving riddle and discovering patterns and that is how I see expressions: They are just are fun riddles. Usually I would get an idea about an expression to animate or design something, and I would spend lots of time and effort figuring it out even if I was not going to use for any current projects. Sometimes, I am unable to sleep because i'm thinking of coding ideas. Hence, fun is an element when it comes to learning!

Make your expression library

There are just way too many expressions to write or remember, that is why I have this wiki site to house everything. I recommend anyone who want to get good at expression to start their own wiki page and curate your own code snippets you found or wrote yourself. You can use Gitbook like me or Google Sheets like JR Canesto/Ordinary Folk.

Just do it

When I first started, I would type out expressions from tutorial and avoid copying and pasting. Even if I do not understand what I am typing, I am building the coding ability into my subconscious.

Tips

Complex expressions ≠ amazing animation

I sensed that people think that writing long lines of complex expression code will yield amazing animation and design. In truth, that is not the case. The adage "Less is More" still applies when it comes to programming and coding. What we should aim for instead when writing expressions (or anything actually) is Profound Simplicity (James Clear) or Informed Simplicity (architect Matthew Frederick) .

Basically, Everything should be made as simple as possible, but no simpler (Albert Einstein).

Focus on problem solving, not improving at writing expressions

, NoSleepCreative

Start with my : This will give you a quick introduction to the basics of expressions.

Dive into : Progress to learning how to implement expressions into your animations in various ways.

Not necessarily, while a foundation in JSX helps, you can easily learn that as you are learning expressions. I often refer to to look the the functions documentation. There are a lot of them but you only need a handful eg. variables, arrays, string, operators, loops, conditional, function, math, or random. If you can understand these concepts, writing expressions can be a breeze.

Absolutely NO. You do not have to be good, you just need to know the important ones (eg. Ignore Scale inheritance from Parent). Most of my (with the exception of Ordinary Folk's ones) uses basic expression to do make things look "complex". Here are some examples:

: uses single expression of valueAtTime

: uses a detailed wiggle function

by Jose Pena 32-36s: uses "Ignore scale rom parent"

Your main goal when learning expressions is not mastery but. Just like learning a foreign language, the goal is not spew out fanciful words but rather to understand and communicate with one another. In our context, we want to be able to read expression code or algorithms, understand their functions, and modify them. You may not necessarily write intricate functions yourselves, but you can at least know how to source expressions online and utilize them for your projects, or communicate to a more code-savvy artist what you are trying to develop.

I do recommend my "" course on Domestika. It offers specialized training in coding within After Effects, tailored for those keen on mastering advanced motion design techniques.

Javascript, w3schools
Javascript ES6, The Coding Train
ECMAScript 6 updates, lukehoban
Adobe User Guide - Expression Basics
Expression guide
Aenhancers — Expressions
Animoplex
Motionscript
Mastering expressions
After Effects Incredible Expressions Challenge
The Power of Expression Book
JR Canesto AE Tricks Google Sheets
Templater
CompsFromSpreadsheet
UI (Window, dialog, palette etc) reference info for AI scripting
https://zacklovatt.com/tutorials
JSX Cheatsheet
Basic Expression Workshop
Expression snippet library
"Advanced After Effects: Coding for Motion Design" Domestika Course
Expression workshop video
Animoplex tutorials
w3schools
master-studies tutorials
Flatwhite Motion wOo video
Flatwhite Motion Aicy Flying Orb
Creativity
fluency and comprehension
Advanced After Effects: Coding for Motion Design