3 ms·
Martin Fowler agrees with you in a post about Agile, https://www.martinfowler.com/articles/newMethodology.html https://www.martinfowler.com/articles/newMethodol
by combatentropy 8y ago
Martin Fowler agrees with you in a post about Agile, https://www.martinfowler.com/articles/newMethodology.html https://www.martinfowler.com/articles/newMethodology.html. He says that the old way of looking at programming was to shape it after civil engineering, where there are architects and construction workers. So companies hired an "architect" or two, but most programmers were seen as the construction workers, with straightforward orders that just had to be done.
Fowler cites Jack Reeves, who said that the parallel to a construction blueprint is not some UML diagram but the source code. Therefore all programmers are designers. Programming has a parallel to construction workers, but they are not people, they are the compiler and linker.
- wpietri 8y agoExactly. In contrast with manufacturing, where the goal is to make the same thing over and over, in software we are supposed to make a different thing each time. Whenever we discover that some labor is repetitive, we either automate it (as with CI, CD, and automated testing) or we generalize it (as with libraries, frameworks, and services). Software would should, as much as possible, be design of novel things. And the only way we know whether something novel really works is to see what happens when people use it. The shorter that feedback loop, the more effective we can be.