I highly recommend reading this. VisiCalc is the original spreadsheet and Bricklin details the whole story of its invention. So many gems about how he got around constraints, and added others to make the user experience simple. And spreadsheets still basically behave the same today!