Велосипед -- что это в программировании

Под велосипедом ("созданием велосипеда") в программировании подразумевают разработку того, что уже давно изобретено, причем часто в более продуманном и совершенном виде.

Следует помнить, что как и костыль, велосипед это относительное понятие, в теории велосипедом можно назвать и болид Формулы 1 (да, критиканы они такие)).

Примером велосипедов могут служить многочисленные "новые фреймворки" и "собственные CMS", которые очень часто не могут тягаться с проектами написанными "крутыми программистами", обычно по двум причинам:

  1. нехватка опыты у проектировщика велосипеда
  2. элементарно большее число часов вложенное в создание "профессиональных" решений.

Критика велосипедов

Велосипеды, часто справедливо критикуют:

  • за чисто технические недоработки (как было сказано выше, они обычно есть)
  • за то, что силы потрачены зря (а это критично для opensource сообщества)
  • за нежелание вникнуть в то, что уже сделано и, раз есть силы, внести вклад туда.

Польза от велосипедов

  • Все "крутые" проекты начались с построения велосипеда (в том или ином смысле).
  • Создавать велосипеды -- это тоже опыт (в том числе и в проектировании), никто не может вам запретить.

Примеры велосипедов

SimpleMVC по своей сути является именно учебным велосипедом, созданным для упражнений.