Machine-coding case studies

Design BookMyShow

Browse shows, pick seats, and book them, where the whole difficulty is concurrency: two users must never book the same seat. An animated lesson where the diagram draws itself as the design grows.

  • Lesson 5 of 6
  • Animated diagrams

Sign in with Google or GitHub and you land straight on this page. DSA comes with the all labs plan and every ChaiCode batch.

6 lessons, each with diagrams that draw themselves.

What you will learn

  • 1. Requirements
  • 2. The classes
  • 3. The crux: a SeatLockProvider
  • 4. Why a naive "isBooked flag" fails
  • 5. Locking options

More low-level design

Watch Design BookMyShow take shape

Sign in and the lesson opens with its diagram ready to play, and the rest of Machine-coding case studies beside it.

DSA comes with the all labs plan and every ChaiCode batch.