Pull to refresh

Долгая и мучительная попытка создания сайта чайником (с философскими отступлениями)

Данный пост является неким анализом попытки сайтопостроения на ровном месте чайником, с точки зрения этого же чайника, также пост содержит небольшой обзор CMSок и дополнен некоторыми философскими размышлениями с плачем Ярославны.
Коротко о себе – (информация приводится чтобы читатель мог примерно оценить имеющиеся умения и потенциальную возможность распространять эти умения на смежные области), научный сотрудник академического института в Москве, область научной деятельности – гидродинамика. А что с опытом непосредственно компьютерным? Тоже кое-какой имеется. Программирование на С/С++ в разных реинкарнациях от TurboC 90-х, до Borland C++ Builder и VC++ (даже был опыт работы в программисткой и консалтинговой фирмах), визуальное программирование на LabView, программирование на ассемблере, рисование в Visio, Corel Draw, Inkscape, диссертация в LaTeX, ну и плюс н-ное количество специфических программ/сред по моделированию гидрогазодинамики. Данный набор умений вполне стандартен для типичного научного сотрудника, которому нужно проводить эксперименты (тут нужен LabView, С, ASM), расчеты (тут нужно умение писать программы вида загрузить данные из файла, долго-долго считать по разным формулам, выгрузить данные в файл – тут подходит С или Фортран, ну может иногда прикрутить простенький интерфейс), готовить статьи – тут нужно уметь рисовать картинки, графики, и т.п. И вот всплыла задача – сделать сайт родного отдела, а я при всем вышеописанном опыте никогда не нырял в пучины сайтостроения.

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

Звонок другу. Как только нарисовалась задача, я сразу позвонил другу, который профессионально занимается web-дизайном. «О!» — сказал друг, после того как я вкратце обрисовал, что мне надо – «Это все очень просто. Сейчас есть таки волшебные штуки – CMS. Скачиваешь шаблон, меняешь его под свои требования – и готово. Попробуй Wordpress». И в трубке раздались короткие гудки. Вдохновленный я ринулся перебирать шаблоны Wordpress.

Достаточно быстро выяснилось, что несмотря на тонны шаблонов для Wordpress – в точности того, что мне надо нет. То, что мне надо – оно конечно очень простое, но с перламутровыми пуговицами. Не проблема, подумал я. Друг сказал же, что его – т.е. шаблон — можно редактировать. Я нашел примерно то, что мне подходило и… выяснилось, что редактировать можно было лишь то… что можно – типа текстов внутри, а например названия разделов – уже фиг. Я опять звоню другу, и тут выясняется, что для редактирования того что мне нужно, надо залезать в код. Странно, подумал я. На дворе 21 век. Неужели не придумано простых инструментов, позволяющих чайнику быстро и без проблем создать свой, простенький сайтик? На чем основывалась эта вера – 90% сайтов состоят из очень простых элементов. Не будем брать всякие магазины, форумы, соцсети, и т.п. Сайт визитка – вот что мне нужно. Главная страница. Вверху картинка – её я могу сделать в графическом редакторе, слева менюшка, за каждым пунктом меню – страничка. Из графики – разные цвета элементов и возможность размещать картинки там где нужно. Странички связаны между собой ссылками. Все. Ах, да. Еще все должно лежать на своем хостинге и иметь адекватное доменное имя типа mysite.ru.
Вдохновленный простотой своей затеи, я ринулся перебирать бесплатные CMS-ки, и столкнулся с рядом проблем.

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

Проблема №2. Подготовьте ваши шаловливые ручки.
Wordpress, Joomla, и даже CMS с завлекающим названием Getsimple требуют ручками влезать в код, причем почти сразу, а для этого надо знать HTML.
Astra – позволяет создать структуру и текстовое наполнение. Чтобы добавить банальные картинки – welcome в код.
Nethouse – почти никаких инструментов редактирования – вот вам бронзовая статуя Чапаева.
И тут я наткнулся на google sites.
О! Это было открытие. Я действительно поверил, что Гугл – корпорация добра. Почему-то предлагаемые инструменты были интуитивно понятны, названия инструментов – адекватны тому что они делают, и вообще – я сходу сделал сайт который меня почти всем устраивал.

Проблема №3. А где лежит наш сайт?
Но! Хостинг находится на гугле – т.е. классика бесплатного сыра – если Гугл решит, что оно им нафиг не надо или вдруг тематика работ лаборатории будет угрожать демократии на планете – то плакал мой сайтик, в общем, как сказано у классика – «Ваши данные в облаке – это уже не ваши данные» (я здесь слегка переврал Стива Возняка, но так получилось нагляднее), а в целом проблема описана здесь habrahabr.ru/post/216719). И второе – доменное имя получается вида sites.google.com/site/MYSITE. Что как-то громоздко. Да, я слышал про редиректы –но тоже странно когда MYSITE.ru будет перебрасывать на сайт-гугл-сайт-ля-ля-ля.
Итак, я уже понял, что мне надо. И главное – я понял, что такое должно быть в этом мире. Дальше я наткнулся на WIX. Реклама обещала неземное счастье и говорила, что квалификации блондинки будет достаточно для всего. Вдохновленный, я создал эккаунт и приступил… Н-да. Сразу выяснилось, что в плане дружелюбности интерфейса WIX и рядом не лежал с Гуглом. Мне предлагалось делать что-то непонятное, использовать какие-то инструменты названия которых ничего не говорили, и т. п… Промучившись какое-то время, я почитал про WIX – и понял, что это ухудшенный вариант Гугла – хостинг у них же, перенести нельзя, прицепить доменное имя – платно. Гудбай, WIX.
Еще немного погуглив я нашел UMI. Шустренько загрузив шаблон, я убедился, что интерфейс вполне терпимый, хотя могло быть и лучше, но меня заинтересовал пункт «выкуп сайта» — перенос на свой хостинг — там значилось 20 тысяч рублей. И за свои деньги я сам еще и все делаю? Гудбай, UMI.

Здесь сделаем передышку, и займемся философскими обобщениями. Первое что мне скажут люди, которые сделали хоть один сайт – «А что ж ты хотел, сам же говоришь, что ты чайник? Каждая область требует квалификации, опыта, практики, небось тот же С++ ты изучил не за один день». Так-то оно так. Но ответ у меня есть. Надо понимать, что компьютеры, сайты, языки программирования – это в 99.999% случаев некие служебные сущности, которые не нужны в мире эльфов. Вы хотите решить уравнение – пожалуйста – напишите его так как вам удобно, махните на него волшебной палочкой. Прочитайте ответ. Что – неоднозначность в условии? ОК, видим надпись – уточните то-то и то-то. (А не general protection fault или error 1102). Вы хотите сайт? Выбрали доменное имя, нажали ОК, перейти к оплате (надо сказать, это уже есть, причем почти так же просто). Нужен хостинг? Меня как пользователя это не должно волновать – выделение скольких-то мега или гигабайт, создание SQL баз – это все совсем-совсем служебные вещи. Создание самой страницы, что для этого нужно — собственно редактор типа Word – которых в мире написано уже несколько десятков, и графический редактор – которых написано столько же. И некая система установления связей между страницами. Товарищи из Гугл и Wix это поняли, но не довели до логического завершения. Заметим – как-то незаметно высокое искусство сайтостроения я постарался перевести в банальный пользовательский сервис.
(Да, а 0.001% компьютерной индустрии это что? Это произведения искусства! Типа языка программирования Brainfuck, или конкурса на самую непонятную программу на С++).
Так, а что мы говорили про изучение нового? Сделаем шаг назад. Описание CMSок изобилуют забавными общими фразами – пример из описания Астры. «Редактор блоков служит для управления набором блоков. Каждый блок создается на базе одного из установленных типов блоков». Да, при этом есть еще «плагины» и «дополнения». Чтобы понять, что такое блок надо… ЗНАТЬ что это. Да, это типичная проблема освоения чего-то нового – сложность сведения нового материала к уже известному. Но… почему-то одни производители решают эти педагогические проблемы хорошо, а другие не очень. Еще примеров из области программного обеспечения? Их есть у меня.

Секвенсоры. Программное обеспечение для музыкантов позволяющее писать/записывать музыку. Известных программ около десятка – со своими объективными плюсами/минусами в плане возможностей. Cubase, Cakewalk, Nuendo, Reaper, Fruity loops. Но что пишут на всех форумах – с Fruity loops ОЧЕНЬ ТРУДНО СЛЕЗТЬ. Потому, что просто освоить, удобный интерфейс, все под рукой, и т. п. Также, из нотных редакторов была программа Midisoft Studio с которой тоже фиг слезешь, при этом объективная нехватка возможностей – проблема. Наверное в каждой области найдутся такие наборы программ и аналогичные проблемы.

«Ну так осваивай!» — скажет мне читатель – а то волшебных палочек не напасешься. Но. Периодически в мире происходят прорывы в плане интерфейса. Нортон Коммандер позволил забыть о командах ДОСа – гудбай copy, makedir и пр. Вы помните текстовые редакторы до эпохи Word 6.0? Да, были Лексикон, Чирайтер, Word 5.5, иногда для текста использовался редактор Turbo C/Pascal — и все эти редакторы не сильно отличались по выдаваемому результату – если результатом считать «красивость» выходного текста. И только восхитительный ТеХ обеспечивал типографское качество. А что было дальше? А дальше появилась связка Windows+Word. И поначалу, многим, первое требовалось только из-за второго, а потом… ну а про потом вы знаете, ибо в нем мы сейчас и живем. Программистов же, интерфейс Windows освободил как минимум от написания собственных элементов интерфейса, типа меню и прочих – я как-то сам написал систему менюшек – не трудно, но громоздко. Визуальное программирование в духе Visual Basic и Borland Builder (а еще раньше был Clarion — для баз данных) – вообще совершило революцию.

Внедрение каждой новой концепции приводило к появлению недовольных, чьи знания оказывались менее востребованными. Я хорошо помню фразы некоторых людей про программирование на Дельфи – типа ЭТО НЕ НАСТОЯЩЕЕ ПРОГРАММИРОВАНИЕ. Наверное это так, если подходить к программированию как к искусству — хотя эстетику можно внести во всё что угодно и найти в чем угодно – даже в программировании на Дельфи. Но программирование – изначально костыль этого мира. Ни один процессор сделанный из кремния не понимает, собака такая, человеческого языка. А нет. Собака хоть чуть-чуть, да понимает.

«Ага!» Опять воскликнет читатель. «Автор недоволен интерфейсом разных программ! Но программисты тоже люди и стараются изо всех сил, чтобы облегчить жизнь конечному пользователю». Ну что я скажу – стараются – но не изо всех сил. Забавный пример. Программист некой консалтинговой конторы приносит мне программу для ввода данных в некую систему. Я читаю документацию, пробую функции, и обнаруживаю, что в одном месте нужно три клика мышкой, а достаточно одного, в двух местах – нужно три клика, а достаточно двух, еще в одном месте – нужно семь кликов мышкой, а достаточно… опять двух. При работе с этой программой по восемь часов в день – на сколько процентов рабочего времени набежит этих лишних кликов? И сколько нервных клеток погибнет у сотрудника, когда он поймет, что изрядная часть его работы заключается в кликаньи?

Еще пример. Как усложнить жизнь пользователю. Например, нам надо провести прямую линию в неком графическом редакторе. Одну, а не семь перпендикулярных. Как нам это сделать? Популярный способ – выбрать инструмент «линия», ткнуть мышкой в точку откуда линия начнется, потянуть мышку, ткнуть там где линия заканчивается. Слишком просто. Давайте сделаем жизнь пользователя повеселее. Программисты некой далеко не русской фирмы предложили такой способ. Диктую по пунктам. Зайти в раздел «точки». Выбрать тип точки. Ввести координаты точки. ОК. Ввести координаты второй точки. ОК. Зайти в раздел «линии». Выбрать ранее введенные точки. Выбрать тип линии. ОК. Уфффф! Поскольку эта программа делает важную вещь – строит сетки для численных расчетов, то толпы людей в мире плачут, колются, но продолжают есть кактус, тьфу пользоваться этой программой. Откуда эти проблемы? Видимо программы пишут одни люди — программисты, а пользуются ими другие – пользователи. А если программист и пользователь одно лицо? Если что-то не очень сложное — тогда программа как правило получается удобной. А если сложное и программа открытая (тут заложен тезис, что открытое ПО пишут люди, которым это ПО лично зачем-то нужно)? А тогда неизвестно. Несмотря на ужасы вышеописанной процедуры построения линии в проприетарной программе, есть аналогичный свободный софт который делает то же самое, только… на порядок неудобней. (У меня есть крамольная мысль, что когда за спиной творца стоит менеджер с палкой – конечный результат получается несколько лучше, чем если творец работает в одиночестве).

«А вывод-то какой?», — спросит читатель. «Давайте писать хорошие интерфейсы, и не писать плохие? Или у автора претензия к этому миру, что ему не дали CMSку которая была бы ему посильна?» Да, именно так. Всё вышеперечисленное вызывает естественную эмоциональную реакцию — в виде сожаления, что революции в web-дизайне пока не случилось, и надежды — революцию ждем с минуты на минуту.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.