The Calculus of Apple's Elastic Scrolling

Reverse-engineering the "rubber band" effect

Introduction

Those who use Apple products often find the experience agreeable. The user interface behaves naturally thanks to its patented algorithms. One of these is the so-called “elastic” or “rubber band” scrolling. This effect, often taken for granted, occurs when the user scrolls beyond the edge of the page. The page keeps moving and “bounces” back before coming to a rest. This deceptively simple animation actually involves some interesting mathematics. Inspired by a computer scientist’s blog post, I will attempt to reverse-engineer the elastic scrolling effect using calculus methods.

Read the rest