• Какой лучший движок для информационных сайтов?

    paulradzkov
    @paulradzkov
    Дизайнер, верстальщик, начальник отдела UI
    Для информационных сайтов лучше всего подходят генераторы статики.
    Доводы в пользу генераторов статики и против большинства классических CMS для информационных сайтов:

    1) Контент неудобно хранить в базе, как делает большинство CMS.

    Если контент в базе, то его тяжело бэкапить и восстанавливать из бэкапа, неудобно сравнивать версии до изменения и после. Тяжело откатить изменения в конкретной статье, не затронув всё остальное. Для всего этого в CMS должна быть запрограммирована собственная функциональность.

    Если хранить контент в файлах (так делают все генераторы статики), то связка «файлы + GIT» даёт легкий бэкап, сравнение и восстановление контента целиком и отдельным статьям почти с нулевыми затратами.

    2) Редакторы контента в админке (TinyMCE, CKeditor) обычно неудобные и часто выдают посредственный код. А еще тяжело настраиваются. Контент-менеджеры, которые умеют верстать, всё равно тянут код в текстовый редактор, правят там и вставляют обратно.

    Быстрее сразу работать с файлами в любимом редакторе кода. От этого можно получить дополнительные плюшки в виде подсветки измененных строк по сравнению с последним коммитом и некоторые другие.

    3) Markdown поддерживают все генераторы статики, а это самый удобный язык для написания контента. Markdown компилируется в качественный и чистый HTML. При необходимости Markdown можно смешивать с HTML.

    4) С классическими CMS, где контент в БД, разработчику приходится держать localhost и/или dev версию сайта с копией живой базы данных и синхронизировать их между собой. Чаще синхронизация односторонняя (с лайва на локалхост), т.к. мерждить базы сложно и страшно что-то сломать на лайве. А в таких случаях, контентщикам приходится сначала делать все локально, а потом повторять на лайве.

    С генераторами статики в этом так же просто как с файлами: можно нарендерить несколько версий для тестирования, сделать зеркала и т.д.

    5) Скорость и безопасность. Статический сайт по определению быстрее любой CMS. Сгенерированный сайт легко положить в CDN и получить максимальную скорость открытия при любых нагрузках. А еще статические сайты не взламываются.

    https://www.staticgen.com/ — список всех генераторов статики, отсортированный по популярности.

    Сам уже года три пользуюсь docpad.org — генератор на node.js. Не сказал бы, что это идеальный инструмент. Я на нем потому, что уже хорошо его знаю, и у меня собралось много наработок для docpad, в том числе автоматизация.

    Так же отмечу https://octobercms.com/ — CMS, которая следует принципам генераторов статики. Сам еще не пробовал, но если понадобится поддержка PHP, то это первый кандидат.
    Ответ написан
    4 комментария
  • Как правильно сформулировать выражение Xpath, пожалуйста?

    glebovgin
    @glebovgin
    Full Stack Web Developer
    Вот вполне себе рабочий xpath

    //div[@class="characteristic" and text()[contains(normalize-space(.), "Серия процессора")]]/following-sibling::div[@class = "value"]


    Главное с кодировкой чтобы не было проблем. Например, мне в случае с php пришлось принудительно текст привести к UTF-8 перед тем, как скормить его в метод loadHTML();
    $html = mb_convert_encoding($html, 'HTML-ENTITIES', "UTF-8");
    Ответ написан
    2 комментария
  • Фронтенд - каковы шансы пробиться?

    mrTyler
    @mrTyler
    Frontend Developer
    Русский менталитет не в том, чтобы "жестче ответить", а в том, чтобы "пробиться". Вы ставите вопрос с позиции слабого, неуверенного в себе человека. Пробиваются по карьерной лестнице, здесь же другие правила игры.

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

    По поводу фронта - если есть 6-12 месяцев на ежедневное обучение, то после 4х месяцев верстки всякого шлака, возьмите проект за копейки, верстайте и берите следующий, не ради денег - ради опыта, сами себе вы таких задач не придумаете.

    И не думайте, что если вы прочтете книжку, настроите gulp или webpack на сборку проекта, то вы уже не индус - вы просто знаете чуть больше, чем среднестатистический индус, не больше.

    8-10 месяц вы выйдете на окупаемость, здесь стоит понимать, что затраты на питание + жилье будут окупаться, не больше (да, это почти бизнес, жизнь каждого человека - маленький бизнес с прибылью и убытками).

    И вот если вы будете достаточно умны, через год вы станете хорошим middle разработчиком, а до lead вам еще лет 4-5.

    Но вы можете продолжать задавать вопросы здесь, вместо того, чтобы делать дело.

    P.S. я в отпуске кстати ))))
    Ответ написан
    1 комментарий
  • Фронтенд - каковы шансы пробиться?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Судя по description профиля
    Лентяй, бездельник, junior среди junior_ов

    Шансов - нет. Но не расстраивайтесь, может дворником возьмут по знакомству
    Ответ написан
    9 комментариев