Category:

Технический прогресс и его влияние на программирование?

Влияет ли технический прогресс последних лет на развитие "софта"? Попробую объяснить :) Производительность "девайсов" (всего того, что можно запрограммировать) в последнее время значительно выросла, при одновременном удешевлении компонентов--например, можно сравнить производительность последнего флагмана самсунга с нексус-1: за 5 лет при сопоставимой стоимости, полагаю, что разница в производительности увеличилась в разы.

Логично предположить, что более производительное железо *уменьшает* требования к оптимизации софта--уже не нужно выжимать все возможное, чтобы пользователю было достаточно комфортно работать--если мы говорим сейчас о типичных бизнес-средах, понятно, что всякие игрушки и графические среды наверное всегда будут наиболее требовательными к софту в плане оптимизации под конкретные платформы. С другой стороны, за последние годы наверняка были написаны "тонны кода" т.е. стандартных библиотек, алгоритмов, классов и т.п.--то, что может быть массово использовано повторно (я не программист, могу ошибаться в терминах).

Т.о., меняется ли в настоящее время подход к программированию? В моем представлении, программист 90х--это "кодер", который специализируется в конкретном языке, среде и платформе, ну, например, комбо "С++/VS/Intel". Изменилось ли это сейчас--появляются ли новые "универсальные" IDE, можно ли сказать, что современному программисту уже не нужно так много кодить "вручную", как это было раньше, могут ли они сейчас чаще использовать некие "стандартные блоки"? Появляются ли новые языки программирования еще более высокого уровня, чем те же C#/Java, где от программиста будет требоваться меньшее знание непосредственно синтакса конкретного языка или даже библиотек и классов, а можно будет "программировать" на уровне "нужно сделать то-то и то-то", а дальше оно уже все "само"? :) Должен ли современный программист столь же разбираться в алгоритмах, комбинаторике, математике (?) и т.д., как его предшественники?