It is the blueprints (the detailed design, plans sections etc) that is analogous to code, not bricks. Software designers (compared to building designers) are lucky that the process of turning design (code) into artifact (running software) is virtually free in terms of cost and time. However software designers are unlucky that what they do is so misunderstood - not least by them themselves.
I think this is a good point. But just as we see in the real world the execution of the architect's solution is often sub par, so the "debugging" involves both architectural specs as well as builder's execution.
I think that in programming we will still have to understand the builder's execution, which should remain deterministic, hopefully not at the level of assembly.
It is the blueprints (the detailed design, plans sections etc) that is analogous to code, not bricks. Software designers (compared to building designers) are lucky that the process of turning design (code) into artifact (running software) is virtually free in terms of cost and time. However software designers are unlucky that what they do is so misunderstood - not least by them themselves.
I think this is a good point. But just as we see in the real world the execution of the architect's solution is often sub par, so the "debugging" involves both architectural specs as well as builder's execution.
I think that in programming we will still have to understand the builder's execution, which should remain deterministic, hopefully not at the level of assembly.