Personally, I would never hire anyone who sides with the painting aspect.<p>Why?<p>Software development needs structure, and it needs it to guarantee maintainability, quality, testabiliy, readability. Art doesn't need any structure, it is subject to interpretation, personal interpretation which is horrible to read, understand and maintain.<p>Regarding the example in the article, what 'Andy' does is good solutions engineering by asking the right question (why?), but not software development.<p>So the example premise that Andy managed to realize (not: develop) a requirement in 20min instead of two weeks does not support any conclusion about anything in software development.
This doesn't even make sense. Andy's insight was nothing to do with programming or software development - he identified a flaw in the proposed design and suggested a better solution. That's not coding, and it's not specifically related to software development either. 'Software Development' is rarely done in isolation, and often requires teams of people with different skill-sets. Some will be excellent at estimating effort, others will be great at identifying product flaws and fixing them.<p>Look at it this way - I wouldn't want to walk over a bridge built by somebody who has no engineering skills but can paint.<p>Oh, and my 2 cents - programming is part science, part art. It's neither one or the other.
Building a bridge requires creative as there are many different forms a bridge can take. Similarly with coding, there is an aspect of both engineering and creativity. If I had to choose between the two, building a bridge seems like the obvious answer because the end goal (generally) is not to create art and provoke imagination, but to engineer a certain task. Building anything, such as a chair, requires some level of creativity, and in the case of woodworking, is often considered art. I would say 80% engineering and 20% creativity when it comes to code.
it feels more like being a cathedral or a ship builder from the 15th century. A mix of art and technique following requirement and plan much more loosely that today's precise construction of ship and bridges.