This document discusses the development of thermodynamics and its application to small systems and molecular machines. It summarizes that thermodynamics laws have been generalized to account for non-equilibrium states through developments like the fluctuation theorem. The fluctuation theorem allows for negative entropy production along single stochastic trajectories, helping to explain why molecular machines can have higher efficiencies than macroscale machines despite operating in a high noise environment. Further developments are still needed to understand non-equilibrium thermodynamics for biological systems where the Jarzynski equality may not apply.