Simonyi's dissertation was an attempt to describe a more efficient method of organizing programmers to write software... the metaprogrammer was the designer, decision maker, and communication controller in a software development group... individual programmers were allowed to make no design decisions about the project. All they did was write the code as described by the metaprogrammer... A programmer with a problem or a question would take it to the metaprogrammer, who could come up with an answer or transfer the question to another programmer...