How I Define Program Size

A small program fits entirely in your head.

A medium program will not, but you can hold the overall structure and one piece in memory. When you need to work on something other than your current section, you know enough about the program on the whole that you know where to look, and can pick up that piece fairly easily.

A large program is like several medium programs mushed together - you know what’s happening overall in your section and specifically what’s happening in your subsection, or you’re some sort of overall architect and are aware of both the individual sections and how they work together, but have no idea about the specifics.