This document discusses lean software development principles. It begins with background on the origins of lean thinking in Toyota's production model and principles like eliminating waste, continuous flow, and pursuing perfection. Lean software development aims to eliminate waste, increase feedback, delay commitment, deliver fast, build integrity in, empower teams, and see the whole system. Examples of waste in software include partially done work, extra processes, extra features, and task switching. Kanban and information radiators are discussed as ways to visualize workflow. Lean focuses more on fundamentals like why while Scrum provides more detailed practices, but both aim to optimize value delivery.