When we talk about software craftsmanship, what exactly does that mean?