Ono je to těžké. Samozřejmě by šlo napsat program dokonale optimalizovaný, který by měl výrazně menší HW nároky. Ale bylo by to daleko pracnější a tedy dražší a trvalo by to daleko déle. Navíc, při dnešní složitosti programů by psát třeba v assembleru znamenalo napsat ohromné množství zdrojového kódu, mnohokrát víc, než ve vyšších jazycích. Mnohokrát víc kódu znamená daleko větší možnost chyb a neoptimálních konstrukcí, což ve výsledku program zpomaluje. Takže by se mohlo stát, že ve finále s daleko vyššími náklady a za daleko větší čas získáme chybovější a "o trošku rychlejší" program.
Zároveň taky víc optimalizovaný program znamená méně univerzální.
Takže se vrátíme do dob, kdy jsme novému zařízení v PC ručně přidělovali přerušení (IRQ) a řešili případné konflikty a při instalaci programu pracujícího se zvukovou kartou nastavovali typ karty, port a IRQ (a pak se modlili aby to fungovalo)... a to jen proto, že další vrstva nad hardwarem (v tomhle případě Plug&Play) by "zbytečně" užírala výkon počítače?