Интернет уже стал настолько привычной необходимостью и приобрел черты общедоступности, что процесс его развития вышел за пределы понимания и контроля, подвластные даже самому квалифицированному специалисту.
Количество «компетентных» резко превысило количество квалифицированных, в информационные технологии, создание сайтов, разработка инструментальных средств и все остальное стали развиваться как будто бы сами по себе, если смотреть на картину в целом.
Стохастические процессы
Когда количество переходит в качество по своей воле, не всегда результат работы признанного и опытного специалиста лучше работы новичка. Специалист видит предметы, процессы и их свойства сквозь спектр накопленных знаний и не может допустить ничего, что не соответствует сложившимся правилам и действующим стандартам.
Новичок видит все, у него нет ни фильтров, ни комплексов и знаний, которые утверждают, как делать нельзя. Новичков, как правило, много, и подавляющее большинство ошибаются, но всегда найдется тот или другой, который сделает нечто стоящее, что обратит на себя внимание даже признанных специалистов.
Когда формируется всякая сфера общественных отношений, а интернет - это именно такой случай, признанный законодатель мод - это толпа. Лучшим подтверждением этого являются разнокалиберные браузеры, широкий ассортимент мнений, множество актов рождения и гибели языков и инструментальных средств.
Сфера находится в стадии активного формирования, но в ней уже можно выделить сформировавшиеся информационные технологии, создание сайтов приобрело «промышленный» облик и масштаб.
Квалификационный аспект
Создать сайт может не только студент, но и школьник. Эффект нулевой, но такая технология создания сайтов реально существует, востребована и уходить из своей ниши не планирует. Результатом этой технологии являются отнюдь не сайты, а растущий поток их потребителей (заказчиков, владельцев).
Что делать, не всем и не всегда приходится начинать с приличного уровня, некоторым суждено начать путь с хорошей порции отрицательных эмоций. Но ведь не всегда двоечник хуже отличника. Иной неуспевающий в школе ученик в реальной жизни обойдет дюжину отличников, не слишком напрягаясь, на том простом основании, что в школе он тратил больше сил и времени для достижения результата, но этого никто не замечал и не ценил.
Уважающий себя и свое дело заказчик тщательно выбирает разработчика, а скорее группу разработчиков и длительное время ведет беседы о том, насколько полны и перспективны их представления о функциональности, насколько профессиональны их действия и хороши используемые инструменты.
Очень важный аспект - стабильность коллектива разработчиков, не умение, а реальная слаженная работа в команде и полное отсутствие любых отвлекающих факторов в процессе работы и за ее пределами. Это идеальное требование, но к нему следует стремиться.
Качественный и полнофункциональный интернет-ресурс - это, прежде всего, владелец [автор|идея] + квалифицированная команда, а не набор красиво взаимосвязанных страниц, не аутсорсинг на выезде или корпоративе.
Основные технологические моменты
Современные информационные технологии принято относить к высоким технологиям, что вызывает серьезные сомнения. О достижениях естественного интеллекта в сфере информации лучше не говорить, это не строительство океанских или воздушных лайнеров и не полеты в космос, где есть колоссальный опыт и все можно рассчитать.
Попытки заявить о создании новой технологии создания сайтов уже очень давно не воспринимаются всерьез. Мир интернет-инструментов давно определился с тем, чем работать и как это делать. Квалифицированные специалисты убедились, что после каждой новой блестящей победы в сфере информации и информационных систем эффект затухает вертикально и моментально, то есть нет никакой сколько-нибудь приличной функции затухания, растянутой на промежуток времени, который можно заметить невооруженным глазом.
Основные технологии создания сайтов:
- ручная работа (MS - myself);
- использование систем управления сайтами (CMS).
Оба варианта совмещают использование какого-либо серверного языка и языка браузера, связкой выступает AJAX или собственноручно изготовленный вариант обмена информацией между клиентом (браузером) и сервером.
Результатом любой технологии будет HTML-страница, набор правил CSS и скриптов на JavaScript. В зависимости от сферы применения могут быть и другие файлы.
Классические языки программирования
У каждого языка программирования своя судьба, но в последние годы, чтобы выжить, все они были вынуждены адаптироваться к интернету и предложить разработчикам механизмы создания сайтов в собственной среде.
Насколько это получается удобно, эффективно и жизнеспособно - вопрос времени, но в любом случае технология создания веб-сайтов посредством С++, Delphi (Pascal), C# (C sharp), ... приводит к работающему результату.
Использование классических инструментальных средств дает несомненный эффект в части доступа к ресурсам компьютера и библиотекам системы естественным, давно отлаженным и надежным образом, но также верно, что в части работы в распределенной информационной среде есть и еще будут пробелы.
Важный момент технологий, основанных на таких языках программирования, - управление устройствами в реальном времени, прямой доступ к машинному коду, к управлению как компьютером, так и операционной системой без участия последней. В некоторых приложениях это очень важный аспект, и далеко не каждое современное средство программирования может здесь сравниться с C++ или C#.
Новые инструментальные средства
Мир интернет-технологий развивается настолько стремительно, что многие новые языки программирования так быстро стали привычными, надежными и полнофункциональными, что слово «новые» к ним применимо с известными оговорками.
PHP, Perl, Java, JavaScript и многие другие инструменты уже давно не относятся к категории "новые", но все же это кардинально иной подход, и начало этих языков лежит совсем в другом разрезе, они изначально создавались как средство для интернет-программирования, именно они легли в основные технологии создания сайтов.
В таких инструментальных средствах, наоборот, технология создания интернет-сайта легла в основу, а доступ к базам данных, к специальным серверам, к внешним устройствам и т. д. появился потом, то есть то, что было в программировании в самом начале, здесь появляется в самом конце.
Однако сам факт, что новые инструменты успешно развиваются как вперед, так и в обратном направлении, свидетельствует об их живучести прежде всего. Здесь технология создания сайта: "HTML + CSS > [iN] > WWW", где [iN] - это PHP, Perl, Java ... Иначе говоря, новые инструментальные средства включают в себя как основу стандарты гипертекста и позволяют делать корректный WWW-ресурс.
Базы данных и реляционные отношения
Надо отдать должное электронным таблицам (уровень пользователя) и реляционным базам данных (уровень разработчика) за их колоссальный вклад в развитие информационных технологий и совершенствование сознания массового потребителя информации.
Первоначально интернет «не мог» иметь доступ к обычным базам данных, расположенным в обычных сетях, требовались те или иные примочки. Впрочем, это не стало особенной проблемой, поскольку идеи создать на основе прошлого опыта новые базы данных были востребованы, оправданы и оплачены.
MySQL и ей подобные базы данных прекрасно дополнили PHP, Perl и другие инструменты создания HTML-страниц. Но реляционные отношения сохранились, а язык SQL-запросов просто расширился на массу новых диалектов. Ничего не изменилось по существу.
Если учесть, что идеи объектно-ориентированного программирования (ООП) в семантическом плане ушли не в направлении пользователя информации, а двинулись в сторону разработчика сайтов и информационных систем, то можно понять, почему базы данных не желают менять ориентацию с реляционной на естественную.
Информация и базы данных
Менталитет разработчика и пользователя определяет базу данных как некую информационную сущность, но вырваться за пределы реляционных отношений никак не может. Даже новоиспеченная Doctrine, декларируя новые идеи, основывается на классических представлениях.
Информацию нельзя разложить по полочкам. Это всегда динамика. Библиотеки книг были вчера, но сегодня электронные библиотеки - это все то же вчера. Логика хранения информации по полочкам имеет смысл только до того момента, как все будет разложено, а потом все меняется. Информация - это, прежде всего, динамика, в какой бы сфере она ни рассматривалась.
Примеры баз данных
База данных о сотрудниках. Со временем меняется не только их количество и данные (содержание) по каждому, но и структура нужной информации. Руководитель может легко внести критерий оценки работы сотрудника, определить общие обязанности или отменить тот или иной аспект трудовых отношений.
База данных о фильмах. Все было прекрасно до того момента, пока она создавалась, наполнялась и накапливала потенциальных пользователей, но пользователям мало искать фильмы по названиям, актерам, дате выпуска фильма. Вполне естественно и объяснимо желание потребителя информации найти фильм по сказанной в нем фразе, описанию кадра или сцены.
Электронные библиотеки - это отдельная тема, перенести в интернет логику обычной реальной библиотеки немного стоит. Это просто труд, хотя и востребованный. Но потребителю нужен адекватный поиск не только по авторам, названиям и ключевым словам. Потребитель, например, работая над дипломом, может желать автоматом подтягивать актуальные работы, а не искать самому.
Временной аспект
Крайне существенным представляется временной аспект во всех отношениях. Поисковые системы практически не придают этому значения, но очень важно в поисковой выдаче иметь представление о том, насколько постарела полученная информация.
Анализируя сказанное выше в контексте ООП, легко заметить качественно новый вариант развития баз данных. Если предположить, что объекты сами по себе могут сохраняться в базе данных и восстанавливаться из нее в текущем состоянии. Если допустить, что объект сегодня - это не вчерашний объект, следовательно, база данных будет работать просто как память объектов, а объекты будут развиваться сообразно своей сущности.
В таком контексте ООП меняет лицо баз данных, и реляционные отношения уходят в историю.
Новые технологии создания сайтов
Варианты ООП в современных языках программирования как диалекты естественного языка, а чаще как различные естественные языки, всего лишь подобны в отношении сферы применения, но практически эквивалентны в отношении разработки.
Признавая, что реляционные базы данных достигли апогея своего развития и совершенствуются в скорости и эффективности именно реляционных отношений, что несомненно очень хорошо, можно предположить, что сложившаяся ситуация готовится к кардинальному перевоплощению.
Прежде всего, все привыкли, что сайт - это представления владельца ресурса, реализованные разработчиком. Но почему в этом контуре отсутствует потребитель информации? Одного мнения владельца и соображений разработчика недостаточно для полного удовлетворения интересов потребителя. Если два человека - это практически всегда два мнения по любому вопросу, то почему в отношениях человек-сайт есть мнение только у последнего?
Реляционные представления и базы данных не могут просто так уйти со сцены, прежде всего, они должны преобразиться в новый формат. Вероятно, это будет напоминать, как С/С++, будучи написанный сам на себе, изначально писался на ассемблере. Возможно, но то, что база данных всеми своими таблицами идет к тому, чтобы формализовать информацию, свидетельствует о том, что в конечном итоге эта формализация создаст базовые представления о том, как от обусловленных системой управления базой данных реляционных отношений перейти к отношениям, определяемым содержимым таблиц базы данных.
Современный сайт
Все популярные технологии создания сайтов достойны внимания, не эквивалентны, но приведут к результату. Важна не столько технология, сколько квалифицированный разработчик, а лучше команда таковых.
Только разработчик и его опыт сможет оценить задачу, определить необходимый функционал и обеспечить сайту долгую, безопасную и развивающуюся жизнь. Современный сайт - это вовсе не набор страниц, это реально действующая команда разработчиков. Она не обязательно сопровождает один сайт, но в любом случае сайт живет до тех пор, пока о нем есть кому заботиться.
Наличие интернет-ресурса практически всегда требует применения технологии создания продвижения сайтов. Часто создать сайт мало, нужно сформировать план его продвижения. Как правило, львиная доля новых сайтов подобна уже существующим: это магазины (товары эквивалентные), поисковые системы (алгоритмы поиска, судя по выдаче, с одного сервера), прикладные сайты (области приложения все известны) и пр.
Создание нового сайта требует создания плана его выступления на фоне ему подобных, прежде всего. Технология создания веб-сайтов средствами Google обеспечит новый сайт нужными качествами и инструментами в среде "Гугла", но это не единственная среда. У "Яндекса", "Рамблера", Yahoo не меньшая клиентура.
План продвижения всего нового должен учитывать все составляющие интернет-пространства. Начиная с технологии, положенной в основу создания сайта, через план применения технологий его продвижения.
В настоящее время интернет-пространство переживает этап активного становления, но оно действует и дает шанс всем достигнуть желаемого.