Catalog

Ninety courses. Six benches.

Interface, JavaScript, TypeScript, React, and delivery are the frontend work. Practice is how you scope it, price it, and run it inside an LLC. Every course includes one call a week. Nothing is charged until after that first conversation.

90 courses · 6 benches

15 courses in JavaScript

  • BR-02 · JavaScript · Beginner

    JavaScript, in the Browser

    Run your first script and see what the browser actually does with it.

    Fundamentals · Values · Control flow · Browser

    Read the brief

    Values, types, and control flow, written as small scripts that change a page. You finish able to read a tutorial without skipping the parts that look like noise.

    • Run JavaScript in the browser and from a file
    • Explain a value, a type, and a variable
    • Read a short script and predict what it does

    $9.99

    3 weeks · 3 calls

  • BR-02 · JavaScript · Beginner

    Values, Scope, and Functions

    Where a name is visible, and what a function remembers about the place it was made.

    Functions · Scope · Parameters · Returns

    Read the brief

    Scope, parameters, and return values, practiced until you can point at a variable and say what it holds. Closures get a proper course later; this is the ground they stand on.

    • Predict what a name refers to at any line
    • Write a function with a clear input and output
    • Find a variable that leaked out of its block

    Before this: JavaScript, in the Browser

    $14.90

    4 weeks · 4 calls

  • BR-02 · JavaScript · Intermediate

    Objects, Arrays, and Methods

    Shape data so the rest of the program stops fighting you.

    Objects · Arrays · Destructuring · Methods

    Read the brief

    Objects, arrays, destructuring, and the methods that replace most loops. You will reshape a tangled script into something you can read aloud.

    • Choose between an array, an object, and a Map
    • Replace most loops with map, filter, and reduce
    • Pull nested values out without a long chain

    Before this: Values, Scope, and Functions

    $19.90

    4 weeks · 4 calls

  • BR-02 · JavaScript · Beginner

    The DOM, No Framework

    Select, create, and update nodes with nothing but the platform.

    DOM · Nodes · Updates · No dependencies

    Read the brief

    A small interactive page and no dependencies. You will see the work a framework is doing for you, which makes the framework less mysterious later.

    • Build an interactive page with no framework
    • Create and update nodes without innerHTML soup
    • Explain what a framework saves you from doing by hand

    Before this: Objects, Arrays, and Methods

    $29.90

    5 weeks · 5 calls

  • BR-02 · JavaScript · Intermediate

    Events, and Who Handles Them

    Clicks, input, and delegation, so you are not attaching a listener to every row.

    Events · Delegation · Bubbling · Input

    Read the brief

    Bubbling, the event target, and one listener that serves a whole list. You will stop leaking listeners as a list grows.

    • Use one listener for a list that changes
    • Tell target from currentTarget
    • Remove a listener when the node goes away

    Before this: The DOM, No Framework

    $39.90

    5 weeks · 5 calls

  • BR-02 · JavaScript · Intermediate

    Promises and async/await

    Compose asynchronous work, and handle every failure on purpose.

    Promises · async/await · Errors · Concurrency

    Read the brief

    You will build a small promise so you can see what await is hiding, then add timeout, retry, and a rejection path that does not vanish.

    • Run async work in parallel when it is safe
    • Handle rejection, timeout, and cancellation
    • Explain what await is waiting on

    Before this: Events, and Who Handles Them

    $49.90

    6 weeks · 6 calls

  • BR-02 · JavaScript · Advanced

    The Event Loop, Slowly

    Why the log lines come out in that order, until it stops surprising you.

    Event loop · Microtasks · Timers · Runtime

    Read the brief

    Call stack, tasks, microtasks, and timers. Advanced, because you will hand-trace mixed snippets and check yourself in the browser until the surprises stop.

    • Predict the order of timers and promises mixed together
    • Explain why a long loop freezes the page
    • Break blocking work into chunks that keep the UI alive

    Before this: Promises and async/await

    $59.90

    6 weeks · 6 calls

  • BR-02 · JavaScript · Intermediate

    Modules and What You Ship

    ES modules, and enough of the build step to know which knob you turned.

    ES modules · Bundling · Splitting · Tooling

    Read the brief

    Imports, the module graph, and a bundle that got too big. You will split the first load without treating the bundler as weather.

    • Explain how a bundler resolves an import
    • Split a bundle so the first page stays small
    • Debug a build that produced the wrong file

    Before this: Objects, Arrays, and Methods

    $69.90

    7 weeks · 7 calls

  • BR-02 · JavaScript · Intermediate

    HTTP from the Page

    Fetch data for an interface, and show the failure when the request does not work.

    fetch · HTTP · JSON · Errors

    Read the brief

    Status codes, JSON, loading, and the empty response. You will stop treating the network as a function that always returns an array.

    • Read a status code and decide what the UI should do
    • Show loading and failure as designed states
    • Cancel a request when the person navigates away

    Before this: Promises and async/await

    $79.90

    8 weeks · 8 calls

  • BR-02 · JavaScript · Advanced

    Forms and the Platform

    Constraint validation, FormData, and a submit that does not depend on a library.

    Forms · FormData · Validation · Submit

    Read the brief

    Advanced, because the platform already does more than most forms use. You will build one that works before any script runs, then improve it.

    • Read a form with FormData
    • Use constraint validation before custom script
    • Submit without losing the person's input on failure

    Before this: Events, and Who Handles Them

    $89.90

    8 weeks · 8 calls

  • BR-02 · JavaScript · Intermediate

    Tests that Watch Behavior

    Tests that click, type, and assert, so a refactor of the internals does not break them.

    Testing · Behavior · Queries · Mocking

    Read the brief

    You will test an interface the way a person uses it, and learn what not to mock. A test that fails for a useless reason is treated as a bug.

    • Write a test that survives an internal refactor
    • Query the UI the way a person finds a control
    • Diagnose a flaky test instead of retrying it

    Before this: Promises and async/await

    $99.90

    9 weeks · 9 calls

  • BR-02 · JavaScript · Intermediate

    Closures, this, and Prototypes

    Where methods come from, and why this changes when you pass a function around.

    Closures · Prototypes · this · Classes

    Read the brief

    The prototype chain, classes, and the three ways to pin this. You will break it on purpose so the fix is a choice, not a superstition.

    • Trace a property lookup up the prototype chain
    • Say what this refers to at a call site
    • Choose a class, a factory, or a plain object

    Before this: Values, Scope, and Functions

    $109.90

    10 weeks · 10 calls

  • BR-02 · JavaScript · Intermediate

    A UI with No Framework

    A multi-screen interface built from the DOM, modules, and fetch. Nothing else.

    DOM · State · Routing · Rendering

    Read the brief

    Routing by hand, state in one place, and a render you can point at. The point is to feel the cost, so a framework later is a trade you understand.

    • Hold UI state in one place you can name
    • Render a view from that state
    • Move between two screens without a framework router

    Before this: The DOM, No Framework

    $119.90

    11 weeks · 11 calls

  • BR-02 · JavaScript · Intermediate

    Main-Thread Performance

    Find the JavaScript that makes a page feel stuck, and move it.

    Performance · Long tasks · Profiling · Scheduling

    Read the brief

    Long tasks, the performance panel, and work that does not belong on the thread painting the page. You will measure before you rewrite.

    • Find a long task in the performance panel
    • Split work so input stays responsive
    • Justify a change with a before-and-after trace

    Before this: The Event Loop, Slowly

    $129.90

    12 weeks · 12 calls

  • BR-02 · JavaScript · Advanced

    Capstone: Framework-Free UI

    One small product in the browser, with tests, failure states, and no framework.

    Capstone · DOM · Testing · Fetch

    Read the brief

    You pick the product. We cut scope until it ships: events, fetch, a form, and tests that describe what a person can do.

    • Ship an interface with no UI framework
    • Cover the critical path with behavior tests
    • Show loading and failure without a blank screen

    Before this: A UI with No Framework

    $147.90

    12 weeks · 12 calls