пятница, 24 мая 2013 г.

§ 6. О LabVIEW программистах и их проблемах

Однажды начинающий программист пришёл к Учителю.
"Я написал гениальную программу, — сказал юноша, — но вот не работает она". 
Вы не могли бы посмотреть, в чём моя проблема?
Учитель посмотрел на исходный код и призадумался...

    Просматривая форумы по LabVIEW я всё больше замечаю некую профессиональную деградацию программистов. Вообще программирование в LabVIEW — оно чем-то похоже на магию. Вы соединяете квадратики друг с другом, и чудесным образом программа начинает получать данные, производить некие измерения, выводить графики на экран... Проблемы начинаются тогда, когда что-то перестаёт работать. Начинают раздаваться крики - Виндовс глючит! Лабвью глючит! Вчера всё работало, а сегодня - сломалось! В таком случае мне всегда хочется сказать, печально глядя на нынешнее поколение: компьютер — он ведь тупой до безобразия, там только биты да байты, он делает ровно столько, сколько от него требуют (я не буду брать в расчёт ошибки аппаратные - они редки, да и проявляют себя как правило совсем иначе). Конечно, техника усложняется, и сегодня прикладному программисту, разрабатывающему приложения на высокоуровневом языке, нет особого смысла наизусть знать — сколько регистров у процессора, особенности работы кэш памяти, и так далее. Однако иметь общее представление об архитектуре компьютера, особенностях операционной системы, принципах функционирования приложений и взимодействия их с операционной системой, иметь представление о работе с памятью, программист просто обязан. В этом смысле прежде чем начинать работать на высокоуровневом функциональном языке имеет смысл научиться программировать на языке классическом. Лучше всего начать с Паскаля, затем изучить Си (что будет совсем не лишним для LabVIEW - хотя бы для уверенного использования Formula Node) и лишь затем переходить на следующий уровень. Кроме того имеет смысл воспитать в себе некую "пытливость ума" - ведь у любой проблемы, будь то не найденный файл, или падение программы, всегда есть причина. Сам процесс поиска проблем тоже может оказаться увлекательным путешествием в мир логики. И разобравшись, вы обнаружите, что нет никакой магии, а есть только биты и байты.

— "...Так в чём же моя проблема, Учитель?" — спросил программист?
— "Я полагаю, твоя проблема в хромосомах" — ответил старик.