Чтение онлайн

на главную

Жанры

Журнал «Компьютерра» № 19 от 22 мая 2007 года
Шрифт:

Из технологий программирования уровня «просто человека, а не разработчика» можно еще вспомнить Flash с его всеохватностью – от мультиков и YouTube-роликов до крутейших игр, а ныне агрессивно продвигаемый еще и как «более красивый и быстрый интерфейс для веб-приложений». Да и встроенный в SecondLife скриптовый язык для «оживления объектов», думается, используют не только (и не столько) профессиональные разработчики.

Это перечисление можно было бы продолжать, но идея уже и так понятна.

Возвращаясь к «платформам для всех», заметим, что к ним можно отнести и современные веб-фреймворки толка Ruby on Rails: точно так же они обеспечивают полный набор основных сервисов и типичных задач; точно так же для разработки простого приложения можно практически не знать Ruby (или Python,

если речь о Django, или Groovy, если о Grails), ориентируясь на простые примеры и руководства для новичков. И даже.Net/JVM до некоторой степени представляет собой такую «платформу» [Тут можно привести в пример проект AnAppADay com, автор которого решил провести эксперимент и написать за тридцать дней тридцать несложных, но полноценных программ на C# 2.0; и действительно, целый месяц раз в день выдавал законченные программы– не слишком примечательные, но сравнимые с теми, что пару лет назад гордые авторы-шароварщики толкали по $19,99].

Представляется, что «десктопная система будущего» – это всего несколько «программ» в старом смысле слова (серьезных систем, написанных на эффективных языках подготовленными командами-«колхозами» профессионалов), населенных бессчетными мелкими «штучками на все случаи жизни» и тесно переплетенных с десятками веб-приложений [Веб при этом может разделиться на два разных «Веба»– старый (тексты, связанные ссылками) и новый (программы, активно работающие и на сервере, и на клиенте). Кое-кто даже предлагает ввести новый протокол HATP (HyperApplication Transfer Protocol в пику HyperText Transfer Protocol)]. К примеру, разработчики из Mozilla такие перспективы внимательно оценили: для Firefox 3 запланирована возможность работы с веб-приложениями при отсутствии подключения к Интернету (то есть «подключились к сайту приложения, загрузили его, отключились, но можем продолжать работать»), что подчеркивает роль этого приложения как платформы, а не просто «смотрелки страничек» [Кстати, каким бы фанатом «Огнелиса» ни выглядел автор, для повседневной работы он таки предпочитает «Оперу»].

О раскулачивании колхозов

В нарисованной утопической картине – «программируют все, никакой квалификации и углубленных софтостроительных знаний не нужно» – «традиционный» разработчик ПО (коим является и автор) ощущает отчетливый депрессивный привкус.

Пока меня не успели обвинить в «отмене программистов как класса», сакцентирую внимание на том, что платформы тоже кто-то должен создавать. И вот здесь хороши именно традиционные способы: внимательное проектирование, интенсивное тестирование на предмет ошибок (а лучше – разработка через тестирование) и проверка удобства пользования; внимание к производительности и безопасности; вообще все то, о чем единоличным авторам «программулек», которые будут работать на создаваемой платформе, хотелось бы забыть, – все это ляжет на плечи коллективов создателей.

Позвольте напоследок привести такую аналогию. Если единственным способом записи текста является кропотливое выбивание значков на камне, то автор текста (писатель) поневоле осваивает профессию выбивателя соответствующих надписей, то есть каменотеса (либо ему придется работать в тесном сотрудничестве с такими специалистами). Но сегодняшний автор может не иметь никакого представления о процессе производства бумаги и чернил – он «просто творит» (совсем уж продвинутый автор может даже не уметь писать на бумаге, а только по клавишкам стучать).

То есть вся неоднородная масса программистов мало-помалу расслаивается, и получаются два несмешивающихся слоя – немногочисленные «колхозы» «производителей бумаги» («толстых» платформ, обеспечивающих все базовые сервисы хранения и передачи данных, безопасности, отображения и т. п.) и бесчисленные «частники» разной степени полезности и гениальности (создающие на этих самых платформах небольшие и чисто-прикладные программы). При этом привычный, современный процесс разработки (профессиональные сплоченные команды, системы контроля версий, эффективное тестирование) остается участью первых – их ошибки критичны, их ответственность велика, но велики и прибыли (главная из которых скорее

морального свойства – принадлежность к «сильным индустрии сей»). Вольный же художник пишет как хочет и что хочет.

Ценны и те и другие. Но жизнь у них – разная.

Платформы и платформочки

Все вышеперечисленные примеры «недо-программ» (написанных недо-программистами?) приведены, естественно, не для того, чтобы поплакаться об упадке профессии и уровня тех, кто в ней подвизается. Напротив – автор смотрит на происходящее со сдержанным оптимизмом.

Что объединяет расширения Firefox, виджеты Google Desktop, Flash-игрушки? Главным образом – доступность. Она достигается за счет «несерьезного подхода к программированию», отталкивающегося от простой (но новой) идеи и красивого дизайна [Большинство пользователей новых виджетов и сервисов относятся к категории early adopters, энтузиастов; но это уже другие early adopters чем те, кто поддерживал ИТ-прогресс, скажем, лет 15 назад. Это уже не опытные технари, а как бы «простые» пользователи, которым не нужно много возможностей, но нужны «фишечки» (они готовы терпеть скорее здоровски прорисованный сервис с единственной функцией, нежели мощный двигатель в уродливом корпусе)]: разметка, стиль, иконки, ну и пара строк кода. Это, конечно, утрировано – штука вроде Firebug содержит несколько больше, чем «пару строчек кода» – но показывает суть: внешнему виду уделяется внимание на ранних этапах разработки, а код максимально «предметен», оставляя все служебные задачи (управление соединениями, контроль безопасности, высвобождение памяти, конвертацию данных) на долю «платформы»[То есть, соответственно, Firefox’а, Google Desktop’а и т. п.]. Входная планка для прото-программиста резко снижается: не нужно особо заботиться ни об ошибках, ни о сохранности пользовательских данных – ничего критичнее «соединение не может быть установлено» «платформа» сделать просто не позволит; не нужно даже глубоко знать и понимать язык разработки, достаточно иметь справку по нескольким необходимым командам.

К «программам-непрограммам», работающим на такой вот «платформе», изменяется и отношение пользователей: программу проще установить (раньше было: «найти сайт производителя, выкачать файл, пройти визард установки, разобраться куда оно установилось», теперь: «зайти на сайт со всеми расширениями, выбрать по названию, клацнуть «Закачать и установить это»); при этом установленная программа внедряется в пользовательскую систему не слишком глубоко, да и «напакостить» особо не может (платформа не даст – ни внедриться, ни напакостить). Так что для домохозяйки, которая таки не хочет ни в чем разбираться, жизнь может даже упроститься.

Обобществленные истины

Автор: Ваннах Михаил

«Это верно, что в руках (у товарища Берии) дирижерская палочка. Прекрасно, но ученый все же должен играть первую скрипку, потому что скрипка его задает тон всему оркестру. Главный недостаток товарища Берии в том, что дирижер должен не только размахивать палочкой, но и понимать что к чему. Именно этого Берии не хватает».

П. Л. Капица, письмо И. В. Сталину от 25 ноября 1945 года

ФАКТ

Национальная лаборатория Эрнста Орландо Лоуренса в Беркли, Калифорния, США, основана в 1931 году и ведет нережимные работы.

Штат – 4000 человек.

Занимаемая территория – 80 га.

Бюджет – $500 млн.

Несмотря на более скромные по сравнению с Лос-Аламосом, из Лоуренсовской лаборатории (ею управляет не правительство, а Калифорнийский университет) вышли одиннадцать нобелевских лауреатов.

Вот слепой Гомер. Вот «Одиссея». Вот и сам благородный царь Итаки, странствующий по свету после разрушения святого Илиона. А вот далеко не полный перечень знаний и умений сына Лаэрта:

Поделиться:
Популярные книги

Огни Аль-Тура. Единственная

Макушева Магда
5. Эйнар
Любовные романы:
любовно-фантастические романы
эро литература
5.00
рейтинг книги
Огни Аль-Тура. Единственная

Идеальный мир для Лекаря 13

Сапфир Олег
13. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 13

Всплеск в тишине

Распопов Дмитрий Викторович
5. Венецианский купец
Фантастика:
попаданцы
альтернативная история
5.33
рейтинг книги
Всплеск в тишине

Сердце Дракона. Том 11

Клеванский Кирилл Сергеевич
11. Сердце дракона
Фантастика:
фэнтези
героическая фантастика
боевая фантастика
6.50
рейтинг книги
Сердце Дракона. Том 11

АН (цикл 11 книг)

Тарс Элиан
Аномальный наследник
Фантастика:
фэнтези
героическая фантастика
попаданцы
аниме
5.00
рейтинг книги
АН (цикл 11 книг)

Совпадений нет

Безрукова Елена
Любовные романы:
любовно-фантастические романы
5.50
рейтинг книги
Совпадений нет

Физрук 2: назад в СССР

Гуров Валерий Александрович
2. Физрук
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Физрук 2: назад в СССР

Возвращение Низвергнутого

Михайлов Дем Алексеевич
5. Изгой
Фантастика:
фэнтези
9.40
рейтинг книги
Возвращение Низвергнутого

6 Секретов мисс Недотроги

Суббота Светлана
2. Мисс Недотрога
Любовные романы:
любовно-фантастические романы
эро литература
7.34
рейтинг книги
6 Секретов мисс Недотроги

Восход. Солнцев. Книга X

Скабер Артемий
10. Голос Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Восход. Солнцев. Книга X

Приручитель женщин-монстров. Том 7

Дорничев Дмитрий
7. Покемоны? Какие покемоны?
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Приручитель женщин-монстров. Том 7

Ваше Сиятельство 2

Моури Эрли
2. Ваше Сиятельство
Фантастика:
фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Ваше Сиятельство 2

Темный Лекарь 5

Токсик Саша
5. Темный Лекарь
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Темный Лекарь 5

Он тебя не любит(?)

Тоцка Тала
Любовные романы:
современные любовные романы
7.46
рейтинг книги
Он тебя не любит(?)