Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

articles:soft.future [2017/09/05 02:55] (текущий)
Строка 1: Строка 1:
 +====== soft.future ======
 +<​sub>​{{soft.future.odt|Original file}}</​sub>​
 +
 +====== будущее которое мы потеряли ======
 +
 +крис касперски ака мыщъх, FreeBSD@smtp.ru
 +
 +**каким будет программное обеспечение через десять-пятнадцать лет? и будет ли оно вообще?​ вот, например,​ автор считает,​ что оно исчезнет вообще. компьютер преобразиться настолько,​ что потеряет право называться "​компьютеров"​ в привычном для нас понимании. хотите знать почему?​ ответ дает эта статья!**
 +
 +===== введение =====
 +
 +Отрасль программного обеспечения невероятно молода. Одна гораздо моложе мостостроения или автомобилестроения,​ например. Первые персональные компьютеры появились каких-то двадцать-тридцать лет назад (восьми битные машины с полусотней килобайт оперативной памяти при всем моем уважением к ним компьютером все-таки не являются,​ — это радиконструктор для энтузиастов и инженеров). Неудивительно,​ что программное обеспечение постоянно сопровождают разрушительные потрясения,​ а генеральная линия развития движется прямиком к пропасти. Программное обеспечение тяжелеет,​ становится все более запутанным,​ неповоротливым и нефункциональным. Хотите пример?​ Пожалуйста — нарисуйте мне затухающую синусоиду в любом графическом пакете. Хоть в Corel'​e,​ хоть в Photoshop'​e. Что?! Не получается?​ А ведь на ZX Spectrum и прочих древних компьютерах это делалась за пять минут без всяких проблем. Можно, конечно,​ поставить MS Visual Studio/​Visual Basic или даже DELPHI, но и времени на программирование уйдет…
 +
 +Присмотритесь к секретарше,​ набивающий текст в Word'​е. По меньшей мере половину времени она проводит за рутинными операциями,​ которые можно (и нужно!) автоматизировать. Только она не знает как. Поддержка макросов спроектирована так, что отпугивает даже опытных пользователей и программистах,​ не говоря уже о слабом поле в его подавляющем большинстве. И таких примеров можно найти сколько угодно.
 +
 +Человек становится слугой компьютера,​ а компьютер все больше и больше превращается в пылесос. И отнюдь не по легкости управления! Главное отличие пылесоса от компьютера в том, что компьютер позволяет автоматизировать все мыслимые и немыслимые операции,​ которые мы только можем формализовать,​ а пылесосом приходится управлять вручную изо дня в день.
 +
 +Фактически современный компьютер это гибрид навороченного музыкальный центра с игровой приставкой,​ подключенной к Интернет. Если так пойдет и дальше,​ никаких компьютеров вообще не останется…
 +
 +===== графический интерфейс или командная строка =====
 +
 +Существует два типа интерфейсов — ориентированные на простоту обучения и ориентированные на удобно использования. Практически все Windows-приложения принадлежат к первому типу. Они красивые,​ более или менее интуитивные понятные,​ но ужасно непроизводительные. Речь идет отнюдь не о потребляемой мощности (тактовую частоту процессора легко нарастить),​ а о скорости выполнения типовых операций. Вернемся к Word'​у. Вот мы сидим, набиваем текст, возможно даже не глядя ни на экран, ни на клавиатуру (а опытные машинистки именно так и поступают). Теперь файл необходимо сохранить. Мы отрываем руку от клавиатуры,​ нащупываем мышь, резким движением находим курсор,​ подводим его к соответствующей иконке (ее тоже надо найти и попасть!),​ нажимаем. На экране появляется диалоговое окно. Перемешаем мышь, выбираем папку, возвращаемся к клавиатуре,​ даем имя файлу, возвращаемся к мыши, нажимаем "​ОК"​. А вот в FAR'е для этого нажать <​Shift-F4>,​ имя файла с путем <​ENTER>,​ не переключая фокуса внимания и ни на секунду не отрываясь от клавиатуры. Возьмем другой пример:​ нам необходимо напечатать 33 символа звездочки. В Word'​е мы как полные идиоты будем тупо жать звездочку тридцать три раза подряд,​ а потом столько же раз пересчитывать — не сбились ли случайно мы. А вот в vi, как и в любом другом,​ нормальном редакторе достаточно указать последовательность нажатий,​ сказав сколько раз мы хотим ее повторять. Или вот потребовалось нам во всех документах,​ опечатанных за последние три дня заменить Васю Пупкина на Мишу Козлова. Увы, глобальной замены Word не поддерживает. Как и регулярных выражений. А если в следующих версиях и поддержит — это будет вещь в себе. Прикрутить perl к нему наверняка будет нельзя.
 +
 +Уместно провести такую метафору. Командная строка — это язык, позволяющие выражать любые мысли, какие только есть. Команды стоятся из слов, комбинируемых между собой по определенным правилам. Число команд может быть и небольшим,​ количество же их комбинаций — практически бесконечным. Графический интерфейс — это идеология ресторанного меню, перечисляющего все доступные блюда (с рисунками!),​ в которые нужно просто ткнуть пальцем. Тратить время на изучение языка необязательно! Правда и сам выбор ограничен. Например,​ нельзя заказать "​сосиску без зелени и майонеза,​ а кетчупа побольше"​. К тому же чтобы найти эту несчастную сосиску (пускай хотя бы с зеленью и майонезом,​ который я органически не перевариваю),​ необходимо перешерстить все пункты меню, обнаружив сосиску в самом конце. Можно, конечно,​ линейное меню превратить в иерархическое,​ но тогда возникнет куча блюд, которые относятся сразу с к нескольким категориям или же вовсе не поддаются классификации. И чтобы добраться до нижнего уровня вложений,​ придется проделать большую работу даже если мы точно помним,​ где эта сосиска расположена. Горячие клавиши?​ Хорошая вещь, но их всегда не хватает! К тому же они ничего не меняют. Если нам необходимо вывести на печать все файлы с расширением txt, то здесь не горячая клавиша нужна, а последовательность команд в стиле type *.txt > PRN. А попробуйте-ка это сделать при помощи графического интерфейса! То есть сделать это, конечно можно (разработчики просто добавят еще одну кнопку "​групповой вывод файлов на печать"​),​ но… графический интерес представляет собой совокупность готовых инструментов,​ в то время как язык программирования (и язык командной строки в том числе) позволяет создавать эти инструменты самостоятельно,​ что называется "​без отрыва от производства"​. Другая сильная сторона командной строки – автоматизация многократно выполняемых операций с возможностью перенаправления ввода/​вывода. Вместо того, чтобы объяснять знакомому юзеру какие ему кнопки необходимо нажать,​ а какие лучше не трогать,​ достаточно сбросить простейший командный файл, который все сделает сам. Причем,​ явная поддержка макросов со стороны разработчика приложения не требуется!
 +
 +К сожалению,​ командная строка неуклонно отмирает как в мире Windows, так и в мире LINUX. Лет десять-пятнадцать она еще протянет,​ но вот что ждет ее затем… Старые кадры уходят,​ а новые к командной строке не приучены. Они просто не знают, что кроме GUI существует что-то еще и многие повседневные операции можно выполнить намного быстрее и эффективнее. Интерфейс будущего будет непременно графическим и скорее всего трехмерным. Кстати говоря,​ под UNIX все это уже есть. Группа разработчиков в исследовательском центе Пало-Альто фирмы XEROX буквально переполнена идеями,​ многие из которых реализованы в готовых продуктах. Для справки — мышей изобрели тоже они.
 +
 +Кстати говоря,​ в отличии от Windows, в UNIX интерфейс никак не связан с ядром операционной системы. Тот же KDE можно настроить десятком различных способов,​ например,​ под Windows 9x,​ Windows 2000 или Windows XP. В нем уже есть масштабируемые иконки,​ трехмерные элементы управления и куча спец эффекторов. Например,​ прозрачный фон окна, сквозь которых видно… нет, не другое окно, а обои рабочего стола (при необходимости слегка затемненные). Что же до Windows – рабочий стол практическими полностью завешан приложениями и обои реально видны только при загрузке. Согласно собачьей мудрости пса Фафика("​есть колбасу,​ иметь колбасу,​ пахнуть колбасой — три разные вешь"​),​ Windows XP только пахнет обоями. Графический интерфейс в ней продуман очень плохо и упорно не желает улучшаться,​ в результате чего многие пользователи переходят на Mac или LINUX. Вот так графический интерфейс действительно интерфейс!
 +
 +===== второе рождение терминальных систем =====
 +
 +Количество пользователей,​ подключенных к Интернет,​ стремительно растет,​ а вместе с этим растет и популярность сетевых приложений. Уже сегодня можно удаленно провериться на вирусы (www.avp.ru),​ найти неизвестное слово в словаре (www.lingvo.ru) и т. д. Производители софта всячески приветствуют такой подход. Во-первых,​ значительно упрощается борьба с пиратством (весь код программы находится целиком на сервере,​ и даже если его стащить,​ потребуется устанавливать локальный сервер,​ а большинству пользователей это в лом), во-вторых,​ отпадает необходимость в рассылке заплаток — вместо этого происходит непосредственное обновление самой программы,​ благо она существует в единственном экземпляре. В третьих — не нужно портировать свой продукт на множество различных осей. Неважно какая ось стоит у клиента. Важно какая ось стоит на сервере,​ а уж ее всегда можно заменить. В четвертых — вместо регулярного выпуска новых версий,​ теперь можно просто драть деньги за подписку и ни хрена не делать. Все равно деньга сама капает. Так что этот вопрос можно считать решенным. Рано или поздно нас всех пересадят на сетевое программное обеспечение,​ независимо от того, хотим ли мы это или нет.
 +
 +С одной стороны,​ такой подход действительно удобен. Ничего не глючит,​ не занимает место на винчестере,​ доступно из любой точки мира, а зачастую и с любого устройства (например,​ сотового телефона). Но с другой стороны… Острая зависимость от целостности всей инфрастуктуры. Перегрызла где-то крысы кабель и компьютер превращается в бесполезную груду железа… Сиди и жди пока не придет админ и все не починит. Про финансовую сторону я вообще молчу. Для комфортной работы с сетевым приложением необходимо иметь постоянное соединение с Интернет,​ а оно денег стоит. К тому же далеко не все провайдеры предоставляют тарифный план "​трафик"​ (без учета времени,​ проведенного в сети, а постоянно подсоединяться/​отсоединятся — жутко неудобно. Опять-таки,​ это сейчас сетевые приложения бесплатны. Они еще слишком молоды для того, чтобы за них можно было брать деньги. Но вот потом… Впрочем,​ будущее сетевого программного обеспечения — в наших руках. Чем больше мы будем игнорировать его, тем позднее оно придет к власти. К сожалению,​ в том, что оно все-таки придет не приходится сомневаться…
 +
 +===== поприетарность или свобода =====
 +
 +Коммерческие секреты всегда были секретами и просто так их никто и никогда не разглашал. Программное обеспечение — это не тот продукт,​ который создается на чистом энтузиазме. Требуется вовлечение большого количества людей самых различных профессий – архитекторы,​ кодеры,​ художники,​ дизайнеры,​ писатели,​ дистрибьютеры и т.д. Словом,​ требуется финансирование,​ а всякое финансирование неуклонно перерождается в коммерческое предприятие — корпорацию или фирму.
 +
 +Растущая популярность LINUX объясняется отнюдь не ее достоинствами (у нее их гораздо меньше,​ чем, например,​ у Free BSD), а рекламной шумихой и большими денежными вложениями,​ отстегиваемыми IBM и другими компаниями гигантами,​ использующими LINUX как таран против крепости Microsoft. Откройте любой учебник по истории. Все революции начинаются и закачиваются одинакового. Одна группа людей держит власть,​ другая на нее претендует ​ и не желая проливать свою собственную кровь, проливает чужую. Достаточно развести подходящую идеологию и грамотно сориентировать народ. Когда же главный враг побежден,​ идеология немедленно разворачивается на 180 градусов и новый правитель ведет себя точно так же как и старый,​ если еще не хуже. Взять хотя бы "​Скотный двор"​ Оруэала или историю СССР.
 +
 +С открытыми исходными текстами та же самая ситуация. Это сейчас,​ пока они выгодны сильным мира сего, открытые исподники на гребне волне, но лет через десять они будут в глубокой жопе, вернувшись туда, где они были в восьмидесятых. Конечно,​ они не умрут совсем,​ но майнстримом быть перестанут. Печально. Так хочется жить в мире без патентов и авторских прав, но увы… это уже утопия. Раньше сражались за золото и земли, теперь за информационные технологии и добытым добром никто делится не собирается…
 +
 +===== заключение или встраиваемые приложения ​ =====
 +
 +Компьютеры повсюду вокруг нас. Они проникли в телевизоры,​ видеомагнитофоны,​ сотовые телефоны,​ не говоря уже про игровые приставки. Контроллер лифта, кстати говоря,​ тоже компьютер. Микропроцессоры,​ управляющие такими устройствами,​ называются встраиваемыми. От обычных настольных компьютеров их отличает чрезвычайно узкая специализация. DVD-плейер может воспроизводить десятки форматов,​ но с его помощью ни за что не отправить письмо товарищу и не послать SMS. Когда-то,​ на заре компьютерной индустрии,​ встраиваемые компьютеры считались неоправданным расточительством. Универсальный PC представлялся намного более лучшим и дешевым решением,​ но теперь его дни похоже сочтены. В офисах появится давно забытые текстовые процессоры — "​компьютеры",​ ориентированные на работу с MS Office и не умеющие больше ничего. На смену персоналкам придут игровые приставки. Телекоммуникационные функции возьмем на себя видио-телефоны нового поколения. Видео и музыка будет так же проигрываться с помощью специализированных устройств.
 +
 +Настольный компьютер,​ в том виде в котором он известен нам, сохранится разве что у коллекционеров да приверженцев "​ретро",​ примерно так, как некоторые из нас хранят ZX-Spectrum и некоторые другие древние машины.
 +
 +Что поделаешь! Прогресс! Все течет, все меняется. Пытаясь представить себе каким будет программное обеспечение через несколько лет, прежде мы должны разобраться — а будут ли вообще компьютеры в то время? Программное обеспечение просто исчезнет,​ слившись с аппаратной частью в монолитный каркас… А вот вирусы,​ скорее всего, останутся. Потому что ни одно современное устройство без дыр не обходится и не сможет обходится и впредь! Так что хакеры без работы не останутся!
 +
 +