Будущее программного обеспечения.
Эффект масштаба в производстве ПО объясняет распространение пакетных типовых программ, предлагаемых поставщиками и используемых многими компаниями. Однако программное обеспечение также в значительной степени подвержено уже упомянутому «эффекту перелета», который в свою очередь способствует коммодитизации. Как и производители компьютерной техники, компании, разрабатывающие ПО, вынуждены постоянно совершенствовать свои программы, чтобы удовлетворять потребности продвинутых пользователей и опережать конкурентов (или хотя бы не отставать от них). Однако в случае программного обеспечения существуют дополнительные факторы, обусловливающие «эффект перелета». Поскольку ПО не является материальным продуктом, оно «нетленно», то есть не подвержено физическому износу. Это устраняет необходимость его реновации за счет новых закупок. Единственный способ заставить потребителя снова купить программу - это сделать ее лучше, то есть модернизировать. Циклическая модернизация и постоянное совершенствование ПО были важнейшей задачей большинства производителей пакетного ПО, однако они также способствовали «эффекту перелета». Так, в 1980-1990-е годы компания Microsoft выпустила множество эффективных новых версий Microsoft Office. Однако когда появился Microsoft Office 97, оказалось, что рынок принимает его неохотно. Многим пользователям были не нужны новейшие возможности, и скорость модернизации упала. В конце концов недовольные потребители вынудили Microsoft выпустить специальный конвертер, позволявший открывать файлы Office 97 в Office 95, что позволило им продолжать использовать старые программы[52]. Microsoft Office превзошел потребности большинства пользователей. Это и было очевидным проявлением «эффекта перелета».
Как и в случае с эволюцией компьютерной техники, тенденция к опережению предложения по сравнению с потребностями пользователей открывает дорогу дешевым массовым версиям приложений. Это в значительной степени объясняет растущую популярность ПО с открытым исходным кодом. Хотя первые версии подобных программ чаще всего были «неуклюжими», не имели продвинутых пользовательских интерфейсов и часто ломались, число их потребителей стабильно росло по мере развития возможностей таких программ и их унификации. Сейчас основной программой для веб-серверов, использующей открытый код, является Apache. Ее доля на рынке составляет 65%[53]. Объем продаж на рынке операционной системы Linux продолжает расти за счет сокращения доли Windows и других систем разработки, основанных на Unix. На рынке ПО для управления базами данных MySQL отвоевывает позиции у традиционных и дорогих программ Oracle, IBM и Microsoft. В процессе разработки или доработки находятся еще несколько программ с открытым исходным кодом, в том числе такие бесплатные оболочки для офисных приложений, как OpenOffice, файлы которых совместимы с Microsoft Office. Можно не сомневаться, что по мере роста их возможностей многие из этих приложений также начнут вытеснять более дорогие пакетные программы традиционных поставщиков.
В действительности иногда распространение бесплатного ПО активно поощряется известными компаниями, поскольку рассматривается как подрыв позиций конкурентов. Например, когда в 2000 году компания IBM объявила о поддержке Linux, это было сделано прежде всего для того, чтобы переманить пользователей операционных систем главных конкурентов компании - Microsoft и Sun. Такую же цель преследовала компания SAP, когда в 2003-м начала распространение среди своих клиентов MySQL. Этот гигант корпоративного ПО спит и видит, как бы ослабить позиции Oracle, IBM и Microsoft в области конкурирующих программ для работы с базами данных. В свою очередь Sun активно продвигает модификацию OpenOffice (недорогой пакет приложений StarOffice), надеясь подорвать позиции Microsoft на рынке настольных ПК. Поставщики информационных технологий только рады, если продукция их конкурентов становится массовым, ничего не стоящим товаром.
Другим фактором, стимулирующим процесс коммодитизации ПО, является продолжающееся усложнение средств, используемых программистами. В начале 1950-х годов для программирования меинфрейма приходилось писать инструкции в машинном коде - в форме натуральных двоичных чисел, считывавшихся компьютером. В 1960-е появление языков Fortran, Cobol и Basic позволило программистам работать на более высоком уровне, используя более естественные форматы, напоминавшие алгебраические уравнения, а иногда и речевые сигналы. Позднее графические программы, например Microsoft Virtual Basic, и объектно-ориентированные языки, например Java компании Sun, еще более упростили разработку программ, облегчив программистам повторное использование модулей программы, выполняющих конкретные задачи. Стало возможным быстро воспроизводить или совершенствовать функциональные возможности существующих программ. Это делало собственное статичное программное обеспечение еще менее привлекательным.
Упростив разработку ПО, появление новых средств программирования также способствовало постоянному росту количества профессиональных программистов, недостаток которых в прошлом часто становился препятствием для создания или тиражирования программного обеспечения. В 1957 году во всем мире насчитывалось не более 20 тыс. профессиональных программистов. Сегодня их количество оценивается примерно в 9 млн человек[54]. Действительно, важнейшей тенденцией развития ПО стал быстрый перенос производства в страны с дешевой рабочей силой, в первую очередь в Индию. Компания General Electric уже пользуется услугами приблизительно 8 тыс. индийских подрядчиков для написания программ и решения других задач по эксплуатации своих информационных систем. В Индии сегодня разрабатывается около половины всех программ, выпускаемых компанией[55]. Пример General Electric не является исключением. По прогнозам Forrester Research, к 2015 году с целью снижения затрат 500 тыс. рабочих мест в индустрии ИТ США будет переведено в другие страны[56]. Как утверждает газета Financial Times, «Квалификация программистов из Индии, Филиппин, Мексики и других стран не ниже, а иногда и выше квалификации их более высокооплачиваемых коллег из США и Европы, а стоят они иногда на 90% дешевле»[57].
Несомненно, растущее использование дешевого труда программистов из других стран является продолжением известного процесса перевода производственных мощностей за границу. Между этими явлениями можно провести и другие параллели. По мере того как требования компаний к ПО становятся все более стандартными, а программы модульными, разработка ПО перестает быть творческим процессом, постепенно превращаясь в рутинное производство. Так, Ку-мар Махадева (Kumar Mahadeva), руководитель индийской Cognizant, одной из крупнейших аутсорсинговых компаний в сфере ИТ, с гордостью называет свою фирму «заводом». Он утверждает, что жесткие производственные процессы и контроль качества обеспечивают гораздо более высокую эффективность разработки программ по сравнению с традиционными творческими методами работы[58]. Конечно, потребность в творческом начале будет существовать всегда, но в дальнейшем корпоративное ПО, вероятнее всего, будет штамповаться, как обычный товар, безымянными рабочими из разных стран.
Важно отметить, что значительную роль в ускорении процесса коммодитизации ИТ сыграл интернет. Будучи открытой глобальной сетью, он способствовал дальнейшей стандартизации и во многих случаях сделал менее удобным использование проприетарных закрытых систем. Более того, он послужил общим фундаментом для производства и распространения ПО. Интернет дал программистам во всем мире возможность совместно работать в рамках проектов, использующих открытый код, и способствовал привлечению иностранных специалистов к созданию корпоративного программного обеспечения.
Негативно оценивая историческую тенденцию ускорения коммодитизации ПО, в том числе сложнейших бизнес-программ, многие специалисты склонны спорить с очевидным. Придерживаясь традиционного взгляда на программное обеспечение, они утверждают, что новые замечательные программы будут появляться всегда и что гибкость ПО позволяет бесконечно создавать все новые и новые программы. Это верно лишь отчасти. Да, инновации в сфере разработки ПО будут продолжаться, и некоторые из них даже могут получить широкое распространение, но это не означает, что отдельные компании смогут использовать их как собственные, частные корпоративные ресурсы. Тенденции в области разработки нового ПО вовсе не способствуют коммодитизации существующих приложений. Они только обеспечивают быстрое копирование и широкое распространение функциональных возможностей любых новых приложений. Поскольку темпы коммодитизации постоянно растут, привлекательные новые программы (как и привлекательные старые) превратятся в обычную статью затрат на ведение бизнеса.
В конечном итоге программное обеспечение, как и компьютерная техника, может вообще исчезнуть. Вместо запуска определенных программ корпоративные пользователи смогут просто подключаться к сети, мгновенно получая доступ к любым средствам, необходимым в данный момент. В рамках такого видения приложения будут предоставляться через интернет своего рода коммунальными предприятиями на платной основе в зависимости от объема потребления. Конечно, и такое предположение может показаться необоснованным. Однако сочетание широкополосного интернета с программами, которые могут использоваться на любом оборудовании (написанными, к примеру, на языке Java), в некоторых областях уже сделали модель коммунальных услуг в области ИТ реальностью. Например, Salesforce.com за умеренную месячную плату предлагает в интернете приложения для управления отношениями с клиентами (CRM). Пользователям, количество которых уже составляет около 100 тыс., не нужно устанавливать или поддерживать у себя сложные пакеты CRM. Им достаточно только запустить браузер и подключиться к серверам и услугам Salesforce.com. Лозунг компании «Программа успеха, а не успех программы» (Success, Not Software) возвещает о наступлении, может быть, последнего этапа стремительного движения корпоративных программ к коммодитизации - от собственных, частных программ к приложениям, написанным подрядчиками, затем к пакетным решениям и, наконец, к общедоступным платным услугам.