И какой урод придумал всю эту динамическую типизацию а-ля питон с яваскриптом? Руки бы пообрывал. На нормальных языках (java, c#) кусок кода приличного качества можно накидать даже не заглядывая в документацию, пользуясь одним лишь автодополнением среды разработки и здравым смыслом. Даже если нифига не знаешь библиотек и фреймворков, используемых в проекте - можно быстро что-то разобрть и поправить. А в этом говне вместо написания кода сидишь часам в гугле и дебагере - чтобы разобраться что же тебе прилетает, что за фигню надо в функции передавать итд.
Надо на работе ввести правило - если проект вылезает за рамки ровно одного скрипта - переписываем к черту на нормальный язык!