О сайте

Этот сайт - домашняя страничка Храброва Дмитрия, также известного как DeXPeriX. Однако сайт уже давно перестал быть просто "страничкой" (коих на сайте насчитывается около 1000 штук).

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

Идея создания сайта появилась в 2005 году - куда то нужно было выкладывать свои программные наработки, зачатки статей, иходники. Для этого в феврале 2005 года была предпринята 1 попытка - а именно, прочтение книжки Аллеловой Натальи "HTML для начинающих". После этого стало понятно, что сайты делать не так то и просто, да и учёба наступала на пятки.

Повторная попытка создать сайт всё-таки завершилась успехом. Уже осенью-зимой 2005 появился первый "движок" на РНР. Тогда каждая страничка имела вид: "include 'header'; echo 'content'; include 'footer'" :) Однако уже это было достижением, т.к. уже можно было делать дизайн сайта глобальным. А позже и сменным в режиме онлайн.

Следующий движок сайта также был на РНР. Теперь данные уже хранились в массивах, выводились в цикле, странички стали с параметрами. Постепенно добавлялись различные системы (комментариев, голосования, обратной связи и т.п.). Количество содержимого сайта также росло. Параметров адресной строки стало слишком много, стало тяжело добавлять новые возможности.

Так был написан очередной движок на РНР. Последний движок на РНР умел много. Даже слишком много. Собирал статистику, показывал различные данные, все делал в режиме онлайн и ... страшно тормозил :) Время генерации доходило до 4 секунд. И разобрать в коде что-либо было крайне сложно - движок был сделан на файлах. А много данных в них аккуратно хранить сложно.

Также во время написания последнего РНР движка было словлено много специфических РНР-граблей. А именно: области видимости переменных, сложная отладка, перекрытие имён переменных. Теперь РНР уже не кажется мне таким лёгким и понятным ;) И чтобы написать на нём реально большое и мощное приложение нужно быть максимально аккуратным, следить за собой. Стиль написания "как на коленке" для таких приложений не годится.

В 2007-2008 году С++ казался мне языком-идеалом. Поэтому было принято решение переписать сайт именно на С++. Было встречено очень много сложностей, которые с трудом удалось преодолеть. Сказывались непривычка и не слишком хорошее знание С++.

Сейчас на сайте используется последний C++ движок. Он формирует из чистых данных HTML-код и сохраняет его в файлы, которые уже и видит пользователь. Это даёт свои плюсы. Например, нулевая скорость генерации, т.е. скорость загрузки страницы ограничена лишь каналом пользователя и каналом хостинг-сервера. Также именно компилируемость сайта дала возможность сделать его скачиваемым одним архивом. Обновлять этот архив нужно лишь после определённых действий. Например, после добавления комментария. После того, как комментарий пройдёт премодерацию, он будет физически добавлен на нужные страницы, а архив сайта обновляется.

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

Сайт постоянно дорабатывается, перестраивается, изменяется. Это приносит не только новый функционал, но и некоторые неприятные неожиданности. Например, ссылки внутри сайта изменяются. Так что если хотите поставить ссылки на стороннем сайте - старайтесь следить за их жизнеспособностью. Хотя я и всячески стараюсь поддерживать совместимось, но за всем уследить невозможно...

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

Сайт будет развиваться по этому пути и далее: ничего лишнего, никакой копирующей из сети информации и так далее.

Вы всегда можете поддержать развитие сайта. Для этого свяжитесь с его автором.

Всё содержание сайта, а также сам сайт (его коды, графика) лицензированы под GPL 2, если не оговорено иное. Сайт Вы можете скачать тут.