Např. implementace nepožadovaných funkcí. Kromě one-man-show firem není programátor ta správná osoba, která by si měla vymýšlet zadání.
Pokud je tou "funkcí" myšlena nějaká uživatelem viditelná funkčnost programu, pak naprostý souhlas. Pokud to má znamenat funkci nebo metodu v kódu, pak nesouhlasím. A do jakých funkcí je ten program uvnitř rozložený v zadání obvykle nebývá.
"Prozíravý" programátor myslí "dopředu" a zaprasí kód nadbytečným obtížně udržovatelným balastem, aby byl "rozšiřitelný". Až po dlouhé době přijde nový požadavek, nejen že ten balast nic nepomůže, protože programátor není orákulum, ale ještě to zkomplikuje, protože je víc kódu k přepisování.
Prozíravý programátor myslí dopředu hlavně na to, že po něm ten kód bude někdo číst. A ten čtenář bude muset zrekonstruovat spoustu předchozích myšlenkových postupů. Když píšu kód, tak nepíšu jednotlivé funkce ve vakuu. Navrhuju celé třídy. Tady mi dává smysl udělat takovou třídu komplet, ne jenom nezbytné části. Pak čtenář nemusí dedukovat, jestli nějaká metoda nedává smysl, nebo jenom nebyla třeba.
Jak už jsem psal, jde mi o granularitu. Nebudu psát hromadu wrapperů a interfaců jen kvůli budoucí rozlišitelnosti. Ale taky se nebudu bránit přidat pár metod do třídy, kde dávají smysl. A psal jsem to jako reakci na příspěvek, který to bral stylem "Ani jediný setter nazmar". To mi přijde spíš kontraproduktivní.