Современные попытки сделать роботов дешевле и практичнее также связаны с тем, что их стараются приспособить уже не только для выполнения специфических задач, но и для широкого повседневного использования. Иными словами, из редких футуристических созданий они превращаются в бытовые устройства.
Первыми этот путь проделали роботы-пылесосы. Им не требуется быть гуманоидными, чтобы выполнять качественную уборку, но хотя бы одна рука очень пригодилась бы для повышения самостоятельности. Компания Roomba (выпускающая пылесосы iRobot) работает совместно с Гарвардским и Йельским университетами над созданием трёхпалого манипулятора. Его главным свойством будет возможность универсального применения в быту — от удержания крупных предметов до поднятия упавшей связки ключей.
Ода красивому коду
0 Какой красивый код!
10 Пусть тот, кто устал от этой фразы, первым бросит в меня камень. Это редкая и наверное самая ценная похвала, какой только может удостоиться программист. Деньги? Деньги платят за функционал. Но
20 Красота — понятие размытое. Мы применяем его направо и налево, к живому и неживому, ухитряемся даже сравнивать на конкурсах, но не желаем, а может, и боимся признаться себе, что до конца не понимаем значение этого понятия — быть красивым. «Википедия» определяет красоту как способность объекта вызывать у наблюдателя эстетическое (в смысле — не привязанное к практической пользе) наслаждение. Проблема в том, что в любых двух точках пространственно-временно массива каноны красоты разнятся.
30 Уже древние греки расходились в вопросе, понимать ли красоту непосредственно — визуально, измеряя математически — или считать категорией более высокого, нравственного порядка. И с тех пор «стандарт» переписывали несчётное число раз, добавляя одно и отвергая другое: симметрия, целостность, чистота и так далее, и так далее. Классическим образчиком того, насколько изменчиво понимание красоты, служат эталоны красоты женской: поставьте рядом одну из палеолитических Венер и сегодняшнюю манекенщицу!
40 Короче говоря, определиться даже с пониманием женской красоты мы оказались не в силах. Когда же дошло до машинного кода — субстанции, с которой человек никогда ранее дел не имел (программы для ткацких станков не в счёт), — можно было гарантированно начинать с чистого листа. Опыт цивилизации в этом отношении нулевой. Даже всезнающая «Википедия» молчит и самое близкое, что предлагает, — статью на тему что-токрасоты в математике (откуда мы кое-что почерпнём). Вот так и получается, что наиболее надёжный способ сформулировать критерии красивого кода — спросить людей, которые его пишут. За последние десять лет этот вопрос периодически звучал на просторах Сети то там, то здесь, так что я попытался обобщить — и вот что получилось (дополните или исправьте, если упустил).
50 В первом приближении красота кода — это внешняя эстетика текста программы: хорошо организованная структура, выровненные строки, сгруппированные по смыслу элементы, пригнанные к формату комментарии. Но это вульгарное понимание, родственное попытке приравнять красоту к функциональности. Копните чуть глубже — и выяснится, что ключевую роль здесь играет простота. Похоже, красивый код
60 Простота способствуют скорейшему пониманию программы читающим её. Она гарантирует, что в коде будет минимум ошибок и слабых мест. С высокой вероятностью делает код минимальным по размеру, наименее требовательным к системным ресурсам и максимально быстрым. Наконец, простота почти наверняка означает, что проект не «рос по ходу дела», а был тщательно продуман, спроектирован ещё до того, как автор коснулся клавиатуры. Такая программа сравнительно легко может быть расширена, когда понадобится добавить в неё новый функционал.
70 Не скажу за всех, но лично для меня эталоном простоты, моей «киберпалеолитической Венерой», навсегда останется короткий отрывок на ассемблере Intel 8080. Всего одна команда. Вот она:
XOR A
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии