Crack robotics, one program at a time.
Write Python and watch the arm run it, in a MuJoCo physics simulation right here in your browser. You pass when the robot does the job, not when your code looks right.
1from robot import arm, gripper, world, phase2 3ball = world.ball("red")4cup = world.cup5 6phase("pre-grasp")7arm.move_to(ball.position + [0, 0, 0.10])8gripper.open()9phase("approach")10arm.move_to(ball.position)11phase("grasp")12gripper.close()13phase("lift")14arm.move_to(ball.position + [0, 0, 0.20])15phase("transit")16arm.move_to(cup.position + [0, 0, 0.20])17phase("place")18arm.move_to(cup.position + [0, 0, cup.height + 0.05])19phase("release")20gripper.open()21phase("retreat")22arm.move_to(cup.position + [0, 0, 0.20])- Grasped the red ball
- Gripper released the ball
- The red ball is resting in the cup
Step 4 of Pick & Place, replayed. You write this program yourself, one phase at a time.
Start with Pick & Place
Free in full, about an hour, and no robotics background needed.
- 1Joints, targets & PD controlCommand joint angles, let physics run, and meet the PD controller behind every industrial arm.
- 2Forward kinematicsPredict exactly where the gripper is from the joint angles, using nothing but trigonometry.
- 3Inverse kinematics & straight-line motionTurn positions into joint angles, then move the gripper along straight lines with smooth, jerk-free timing.
- 4Your first pick & placeChain the classic manipulation phases into a program that moves the red ball into the cup.
- 5Clear the tableGeneralise your program: perceive every ball, pick each one, verify, retry, and survive a new layout on every run.
- ★Bonus: build your own IKReplace the black box. Derive the analytic inverse kinematics with the law of cosines and run a full pick with it.
Then keep going
Each lesson uses the same arm and the same Python API, so what you learn in one carries into the next.

Jacobians & Velocity Control
Control the gripper's velocity instead of its position: Jacobians, resolved-rate control and numerical IK.

Trajectory Generation
Plan how the arm moves over time: polynomials, velocity limits and smooth paths through waypoints.

Motion Planning
Get around obstacles: configuration space, collision checking, RRT and roadmaps.

Seeing with a Camera
Replace perfect knowledge with a camera: project, segment, back-project, then pick what you see.

Noisy Sensors & Kalman Filters
Real sensors lie a little. Average, fuse and track, then catch a ball that won't sit still.
Rather practise one algorithm at a time? Try the 22 problems, from forward kinematics to policy gradients.
Pick & Place is free, with no account. Pro unlocks every other lesson for $39 a month.
Start Pick & Place, free