> Для обозначения красиво написанного кода студенты МТИ стали использовать слово hack.
Интересно, что сегодня, когда слово hack применяют по отношению к коду, оно, как правило, носит обратный смысл: грубо сработанная "подпорка", заплатка, времянка; эвристика, реализованная не идеологически правильным способом, но, тем не менее, работающая "здесь и сейчас". Иногда даже говорят "dirty hack". Мне кажется, что такая трансформация смысла, хотя теперешний смысл и кажется диаметрально противоположным изначальному, вполне объяснима, ведь такие решения называют хаками потому, что они по своей сути противоположны "правильному" промышленному подходу. Жаль, что в данном случае слово hack утратило изначальный смысл "оригинальное, красивое решение", сохранив только оттенок "нестандартного", который трансформировался в "не соответствующее стандартам, неудовлетворительное, негодное".
Я думаю, что хакером нужно называть Человека, Который Преодолевает Ограничения. Всякого рода. Это не обязательно должны быть административные или юридические ограничения, хотя, увы, есть хакеры, избравшие для себя преодоление именно их. Однако хакера не может быть без борьбы, без преодоления. Если программист пишет на FoxPro приложения для доступа к базам данных, то здесь нет борьбы. Инструментарий соответствует решаемым задачам, а за задачу, для решения которой FoxPro не подходит, программист и не станет браться. Тогда, даже если это программист очень высокой квалификации, и даже если он то и дело находит новые, нестандартные решения, он не хакер. Хакер -- это тот, кто уместит ещё больше кода в оперативную память машины размером 64 килобайта, неважно, делает он это ради самого факта или для решения некой поставленной задачи. Это тот, кто вычленит из колонки цифр фразу "The magic words are squeamish ossifrage" (кто не знает, о чём речь, пусть поищет эти слова в google, сразу станет понятно). Это тот, кто найдёт способ вскрыть невскрываемую систему, потому что твёрдо знает, что невскрываемых систем не существует.
|