Programming as an art