What makes programming hard? -- size of the language -- reading code is hard -- abstraction, design, -- arrays, off by one errors -- looping -- on a = line + 1 -- errors are hard to read