I firmly believe that creating software is a craft discipline. Like other craft disciplines it draws on scientific and engineering knowledge, but reaches its greatest heights when it marries that with details about human ergonomics or aesthetic flourishes intended purely to delight.