понедельник, 8 сентября 2014 г.

[prog.flame] Интересный критерий

Найдено вот тут. Цитата из Сергея Зефирова (aka thesz):

В языке присутствует/отсутствует некая возможность, позволяющая мне сократить количество ошибок.

Неформальная прикидка - могу ли я программировать на этом языке пьяным. На Хаскеле и тикле могу, на С, C#, C++ - нет. На Хаскеле я могу писать пьяным сложные вещи, типа решателей задач булевской выполнимости, на тикле - простые, типа удалить ^M на линуксе. На C.* - даже простых написать не смогу.

Алкоголь подавляет высшую нервную деятельность, поэтому он является усилителем моих ошибок.

Сопровождать данное наблюдение какими-то ироническими или саркастическими комментариями не буду. Хороший программист смотрит на один из аспектов своей работы вот таким нестандартным способом. Неожиданно, но пусть будет так.

Про себя же отмечу, что вряд ли я лично отнесу программирование "решателей задач булевской выполнимости" к программной инженерии. Тут какая-то тонкая грань между искусством/ремеслом и наукой/инженерией. Разница, наверное, в повторяемости и воспроизводимости. Наверное, людям, которые занимаются улучшением вычислительных методов расчета прочности ленточных фундаментов (вспомнилось из студенческих времен) необходимо разрабатывать ПО. Но это будет штучное ПО для штучной задачи. Возможно, какой-то инструментарий и какие-то методики из индустрии разработки ПО вполне подойдут для этой цели. Но, в целом, индустрия активно отбирает и развивает, либо, напротив, отбраковывает и выбрасывает, инструменты и приемы для другого класса задач.

Комментариев нет: