This document summarizes Chan's optimal output sensitive algorithms for computing convex hulls in 2D and 3D. It begins with basic notions of convex hulls, then describes Jarvis's march and Graham's scan algorithms for 2D convex hulls. It introduces Chan's 2D algorithm, which combines Jarvis's march and Graham's scan to achieve optimal O(n log h) time complexity, where h is the size of the hull. The document then explains how Chan extended this approach to 3D convex hulls by replacing the components with their 3D analogues, resulting in an optimal output sensitive 3D convex hull algorithm.