1995 | 1996 | 1997 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | Оглавление текущего номера /161, 1996 г./ | Бонус | Поиск  

Тема номера

Роль Internet в разработке программного обеспечения

Руслан Богатырев


© 2004, Еженедельник «Компьютерра» | http://www.computerra.ru/offline
Этого материала на сайте "Компьютерры", к сожалению, нет

Трудно, пожалуй, найти такую сферу человеческой деятельности, которая в том или ином виде не была бы представлена в мировой сети Internet. Да и сама эта сеть из имени собственного как-то быстро и незаметно превратилась в имя нарицательное, хоть и обозначающее вполне конкретную инфраструктуру системы глобальных телекоммуникаций.

Далеко не последнюю роль в активном вторжении Internet в жизнь всего мирового сообщества сыграли программисты. Да, спору нет, они немало сделали, чтобы хорошая идея стала реальностью. Но невольно напрашиваются вопросы: °А какую пользу сами программисты извлекли из Internet для своей работы? Что же реально дает им их детище в профессиональном смысле? Как обстоит с этим дело в нашей стране и за рубежом?"

Чтобы ответить на эти вопросы, пожалуй, было бы неверным ограничиваться простым перечислением услуг и ресурсов Internet. Проблем здесь немало: начиная от организации труда программистов и кончая сферой их профессиональных интересов. Общественное мнение, сложившееся вокруг этой профессии, особенно в нашей стране, далеко неоднозначно и оказывает серьезное негативное воздействие на формирование квалифицированных профессионалов, способных во многом определить экономический и интеллектуальный потенциал своей родины. Как-то незаметно программистов стали называть сначала разработчиками, а потом и просто пользователями – пользователями инструментальных средств. Другими словами, потребителями продукции крайне небольшого числа фирм.

А ведь сообщество программистов крайне разнородно и по сферам профессиональных интересов, и по отношению к своей деятельности. Для одних это не более чем хобби, возможность расслабиться, уйти от реалий жизни, для других – способ познания нового и еще неизведанного, для третьих -обычная работа, которая дает средства к существованию, для четвертых – все вместе взятое. Мне могут возразить, что, говоря о разработке ПО, понимают прежде всего последние две из этих условных категорий. И все же в рамках данной статьи не хотелось бы искусственно сужать круг программистов. Создание специализированных заказных систем ограниченного тиража и разработка потенциально многотиражных продуктов с прицелом на конкретную нишу регионального или мирового рынка – это далеко не все, чем богат программный мир. Помимо этого существует огромный пласт средств, программ и систем, которые условно можно причислить к продуктам экспериментальной разработки. Студенческие проекты, работы университетов и академических институтов, исследовательских центров и лабораторий, реализация вспомогательных средств и систем, предназначенных только для внутреннего использования, наконец, деятельность просто талантливых самоучек, индивидуалов и стихийно сложившихся команд, – все это создает ту самую питательную среду, в которой произрастают новые программные продукты, технологии и высококвалифицированные кадры. Игнорировать эту подводную часть айсберга было бы неправильно тем более, что идет непрерывная миграция людей как внутри этих двух миров, так и между ними.

Не стоит думать, что первый из этих миров, имеющий подчеркнуто коммерческую направленность, однозначно определяет использование одних лишь промышленных методов разработки. Нет, здесь сплошь и рядом можно встретить следы кустарного производства: недостаточно четкое разделение труда, самостоятельное изготовление "сырья" и подручных средств, осознанный или вынужденный информационный вакуум, отсутствие тесного взаимодействия с внешними разработчиками. Речь, конечно, не идет о том, чтобы превращать труд программиста в кошмарный ад с потогонными методами работы и монотонным конвейером. Но хвалиться тем, что добротная система родилась буквально "на коленках", наверное, не стоит. Это не столько достижение, сколько беда программистов.

 

 С другой стороны, в последние годы можно проследить две четких тенденции, которые в первую очередь обусловлены чисто экономическими причинами. Одна из них -попытка превратить большую часть программистов даже не в программных конструкторов (что не так уж и плохо), а в настройщиков готовых систем. Да, многие видят или подспудно чувствуют, что все многообразие, которое им предлагается обслуживать, не только далеко от совершенство, но подчас и сделано просто бездарно и халтурно. Это бич, с которым пытаются бороться (и не всегда безуспешно!) те, кому претит собственными руками топить дело своей жизни. Я имею в виду прежде всего представителей университетской среды Европы и Америки, а также бесчисленную армию так называемых независимых разработчиков.

Вторая тенденция – чересчур сильный крен в сторону пользователей-непрофессионалов. Под этим термином обычно подразумевают тех, для кого создание программ – просто вспомогательная деятельность в основной работе. Лозунг "Даешь программирование без программирования!" взят на вооружение почти всеми без исключения компьютерными гигантами. Как это нам близко: "Нажми кнопку и получишь результат!" Интересно, а можно ли думать, не думая? Делать, не делая?

Я не утрирую, посмотрите на при -лавки наших книжных магазинов. Это еще не плохо, что там можно найти авторское переложение какой-нибудь технической документации или книгу специалиста с подробным описанием конкретного коммерческого продукта. Вещь нужная, что и говорить. Но такой наплыв книг из серии "Программирование для чайников", "Программирование для идиотов" и т.п. – это явный перебор. А где все то, что позволяет разобраться в приемах, принципах и методах такой сферы интеллектуальной деятельности, как программирование, причем безотносительно к языку, операционной системе, СУБД? Если вы думаете, что это характерно только для нашей страны, то, скорее всего, ошибаетесь. Внимательно изучите каталоги ведущих мировых издательств, номенклатуру и содержание периодических компьютерных изданий, как печатных, так и электронных. Рынок есть рынок. Он лишь отражает складывающиеся тенденции.

В общественном мнении профессия программиста не только не в почете, но и вообще редко признается как таковая. Едва ли не каждый считает себя программистом.

А и впрямь, ну что же здесь сложного? Романтический ореол, когда-то окружавший программистов, постепенно растворился в дымке последнего десятилетия. Так кто же они? Каста всесильных жрецов или артель обычных трудяг? Известный голландский программист Эдсгар Дейкстра вспоминал, что в далеком 1957 году при регистрации брака он столкнулся с серьезной проблемой: в свидетельстве необходимо было указать свою профессию. Так вот, когда Дейкстра заявил, что он программист, муниципальные власти Амстердама категорически отказались это признавать. По их глубокому убеждению, такой профессии попросту не существует. Пришлось ему регистрироваться под видом физика-теоретика. Интересно, а во многом ли ныне изменилось отношение к людям этой профессии? Вряд ли. Более того, некоторые программисты сами стесняются называть себя таковыми. То ли дело – системный аналитик, менеджер проекта, на худой конец – системный инженер.

 

 

 Но давайте вернемся к теме, вынесенной в заголовок статьи. Быть может, именно Internet в силу своего духа независимости и есть то могучее оружие, которое поможет программистам? Электронная почта была одним из первых и эффективных средств, позволивших программистам наладить общение с своими собратьями, находящимися за сотни и тысячи километров. Сразу же стала отчетливо проявляться важнейшая роль глобальных телекоммуникаций. Появилась возможность советоваться, обсуждать профессиональные проблемы, предостерегать от сетей, капканов и ловушек, столь изощренно расставленных умелыми фирмами-разработчиками. Приватное общение (особенно с шифрованием сообщений для пущей конспирации) – это огромная подмога, но хотелось бы обсуждать проблемы и в более широкой неформальной среде. Появились так называемые телеконференции (news-группы), своеобразные электронные клубы по интересам. И вот вас уже слышат десятки и тысячи ваших коллег. Не хватает оперативности общения, живости беседы? Не беда. Работайте в интерактивном режиме, благо количество подобных "комнат" и даже кафе растет день ото дня. Распланировав время, можно проводить уже виртуальные встречи, "круглые столы". Появление в Internet сетевых файловых серверов (ftp-site) открыло возможность интенсивного обмена огромными объемами информации. Программы, утилиты, драйверы, документация – всего не перечислишь.

И вот грянула WWW-революция! Сетевой гипертекст с возможностью поиска нужных серверов, файлов, сообщений дал в руки программистам могучий инструмент познания. Хотите узнать, где нужны ваши знания и руки, найти по душе интересную работу? Дерзайте. Электронные биржи труда вовсю развернули свою бурную деятельность. И это еще не все: Java-технология и родственные ей решения ныне создают условия для ведения поистине распределенной работы над совместным проектом. Нужно попробовать программу на более мощном компьютере? Не раскрывая исходных текстов, потестировать в сети программный блок? И это теперь становится реальностью.

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

Первыми к пониманию этой тенденции пришли как раз-таки представители этого слоя. Именно они гораздо раньше самих фирм-разработчиков обратили свой взор на эффективность телекоммуникаций в деле информационной и технологической поддержки пользователей-разработчиков и в освоении ими новых технологий. Именно они ринулись осваивать эту нишу, прорубая в джунглях дорогу, которую только сейчас начали асфальтировать фирмы-разработчики. Институты, подобные созданному в США

Software Engineering Institute (SEI), которые ставят своей целью прежде всего передачу и внедрение новых технологий в производство программного обеспечения, ныне нужны нам как воздух. Центр информационных технологий, организованный при МГУ им. М.В.Ломоносова, быть может, станет одним из первых успешных начинаний в этом деле.

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

  

 Интересно, а знаете ли вы, что из себя представляет, скажем, такой стандарт, как ISO 12207? Это стандарт, в котором определяются все процессы, затрагивающие жизненный цикл программного обеспечения. Что и говорить, вещь, конечно же, важная, да только где его найти и изучить? А известно ли вам, что, например, в рамках заочной сетевой академии GNA (Globewide Network Academy) можно под руководством знающих специалистов изучить объектно-ориентированное программирование, бесплатно, да еще и с ориентацией на C++? Нет ничего проще. Попробуйте обратиться в GNA (http://info.desy.de:80/gna/html/cc/index.html).

Да, у наших программистов пока нет профессиональных ассоциаций, хоть немного приближающихся к тому, что есть на Западе. И сообщения, вроде того, что 4 июня в Нью-Йорке был избран новый президент АСМ – крупнейшей всемирной ассоциации программистов-профессионалов, воспринимаются как-то отрешенно. Но маленький свет в окошке все-таки уже забрезжил – весной этого года был образован Региональный общественный центр Интернет-технологий (РОЦИТ), объединивший многих авторитетных специалистов. Дай Бог, чтобы это начинание не погибло в наших жестоких реалиях. На московской выставке Windows Expo, которая в этом году по традиции пройдет в середине сентября, выйдет первый номер нового журнала со звучным названием "Планета Internet'. Все больше и больше у нас появляется хороших журналов для профессионалов. Не буду перечислять, чтобы кого-нибудь невольно не обидеть. Короче говоря, не все так уж и плохо. Хотелось бы верить, что свое детище – Internet -программисты смогут обратить на пользу, и не столько себе, сколько своему делу, имя которому – программирование.

 

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

 

 

{НАЧАЛО ВРЕЗКИ}

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

{КОНЕЦ ВРЕЗКИ}

 

 

{НАЧАЛО ВРЕЗКИ}

Быть может, именно Internet в силу своего духа независимости и есть то могучее оружие, которое поможет программистам? Возможность советоваться, обсуждать профессиональные проблемы, предостерегать от сетей, капканов и ловушек, столь изощренно расставленных умелыми фирмами-разработчиками, распределенная работа над совместным проектом... С другой стороны, Internet, по большому счету, не более чем еще одно средство обмена информацией, знаниями и технологиями, – пусть и необычайно эффективное и универсальное.

{КОНЕЦ ВРЕЗКИ}

 


1995 | 1996 | 1997 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | Оглавление текущего номера /161, 1996 г./ | Бонус | Поиск  

© 2004, Издательский дом «Компьютерра» | http://www.computerra.ru
Телефон редакции: (095) 232-22-61
E-mail редакции: inform@computerra.ru