Erfahrene Assembler-Entwickler waren zu Beginn recht skeptisch als die ersten Compiler für eine 3GL-Sprache (COBOL, PASCAL, C) aufkamen. Beim Blick auf den entstehenden Code schreckten sie zurück, da er nicht dem entsprach, wie sie es gewohnt waren (z. B. Speicherung von Variablen im Speicher und nicht in Registern).
Da die ersten Compiler auch noch Fehler in ihren Codegeneratoren hatten, stürzten die Programme nicht selten ab, und man fragte sich als Entwickler jedesmal: "Stammt der Fehler von mir oder liegt er im Compiler?".
Später gab es dann optimierende Compiler, die die Register sehr gut ausnutzten. Auch wurden die Codegeneratoren immer besser, so dass die eben gestellte Frage fast immer mit "der Fehler liegt bei mir" beantwortet werden musste und deshalb heute nur noch selten gestellt wird.
Ähnlich sieht es heute mit den Codegeneratoren für MDA aus. Der Entwickler ist wieder irritiert über den entstandenen Code, da er ein Modell ggf. anders in Code umgesetzt hätte. Programmieren ist auch eine kreative Tätigkeit. Ein Entwurf gibt zwar einen Funktionsrahmen vor, doch kann dieser auf unterschiedliche Art umgesetzt werden.
Auch das Problem mit Fehlern in den Codegeneratoren stellt sich auf neue Weise wieder. Es wird jedoch dadurch potenziert, dass die Generatoren teilweise Code erzeugen, der auf Annahmen basiert, welche die Architekten bei der Entwicklung der Templates für den Codegenerator gemacht haben und die dem Entwickler unbekannt sind. Resultat ist Code, der von den Entwicklern in vielen Fällen noch nicht einmal mehr verstanden wird. Der Entwickler fragt sich deshalb nicht zu Unrecht, ob er dem generierten Code vertrauen soll, den er nicht versteht bzw. den er nicht selbst programmiert hat.
Es wird viel Zeit vergehen müssen, bis die Technologie auch hier weiter fortgeschritten ist, so dass Entwickler den Generatoren vertrauen können. Noch wichtiger als die Technologie ist jedoch hier die projektinterne Kommunikation. Architekten müssen die Gedanken, die sie sich beim Entwickeln der Generator-Templates gemacht haben, regelrecht an die Entwickler "verkaufen".