• Какие базы данных использовать в php сайтах?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    MySQL, Mariadb, Mongodb - все это безусловно прекрасные инструменты, критиковать и сравнивать из бессмысленно, у каждого есть плюсы и минусы, точно так же как и у PostgreSQL. Но, используя, PostgreSQL вы получаете и нормальное хранение данных в json, и создание нормальных индексов. Так же вам отстается реляционная база данных, с поддержкой полнотекстового поиска уровня ведущих решений на рынке. Словом, мощнее и продвинутее - тут уже нужно поискать.
    Ответ написан
    Комментировать
  • [AskJS], почему css-in-js так популярен, когда css-модули - это вещь?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    Предпочитаю CSS-модули, но поддержка модуля для Webpack почти мертвая, все работает, но проблему перекрытия стилей и разрешения циклических зависимостей нет. Проект собирается, конечно, только в консоль будут сыпаться ворнинги, и в стилях могут быть реальные пересечения, которые создают проблемы.
    Вижу преимущество от CSS-модулей только в связке с TypeScript, 'd.ts' для стилей можно генерировать с помощью 'tsm'.
    Ответ написан
    Комментировать
  • Как приостановить дизмаунт компонента чтобы отработала анимация?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    Если у вас предполагается больше количество анимаций, то можно воспользоваться специальными библиотеками для React. Я использую Framer Motion, кстати ваша задача решается в рамках функционала этого же модуля.
    Ответ написан
    Комментировать
  • Стоили тратить время на WordPress?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    WordPress, как уже заметили выше, лишь инструмент. Для меня WP это лишь админка. Раньше для создания интерфейса админки нужно было использовать плагины вроде Advanced Custom Fields. Сегодня развивается система блоков для редактора, которые, кстати, пишутся на React. Как рисовать клиентскую часть по сути не важно. Можно использовать классический паттерн: только php. В таком случае обратите внимание на тему-боилерплейт Sage, а так же на окружение для WP "Bedrock". С ним можно будет коппозером устанавливать плагины и темы, и сам WP тоже.
    По поводу сайтов за 1000 рублей вы зря. Я делаю свои проекты исключительно на WordPress, но у меня и специфика проектов особенная, там вообще не важно на чем, нужна удобная админка для контента. Знания WP никак не влияют на зарплату, влияют только ваши реальные знания в разработке в целом.
    Ответ написан
    Комментировать
  • Как правильно сделать выбор локации пользователем?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    Попробуйте смотреть в сторону Sypex Geo. Города переведены, есть координаты, можно найти город, регион и тд по IP. Точность приличная. Можно использовать HTML 5 Geolocation API, который зачастую дает точность до дома. Если нужен просто автокомплит и каталогизация, то можно использовать Кладр API, так же подобный API есть у Почты России, но его я не использовал. А вот искать ближайшее место для выбранных координат уже интереснее. Можно и с помощью MySQL(последние версии поддерживают Spatial индексы), или, если нужно, MongoDB, хотя лучше не плодить сущности без необходимости.
    Ответ написан
    Комментировать
  • Как написать регулярное выражение ищущее подобные структуры в тексте?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    Во-первых, было бы неплохо, если бы вы указали интересующий вас язык. Если для PHP, то посмотрите как это реализовано для парсинга шорткодов для WodPress, у них точно такой же синтаксис.
    Ответ написан
    1 комментарий
  • Почему свойство CSS "perspective" в Safari ломает оптимизацию графики для 4К и 5К дисплеев в случае повторного использования?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    Выше написан возможный вариант. Попробуйте прописать перспективу непосредственно для нужного элемента.

    .st-effect-11.st-menu-open .st-pusher {
        perspective(1500px) translate3d(100px, 0, -600px) rotateY(-20deg)
    }
    .st-effect-11.st-container {}

    Еще, для сайдбара лучше всего после анимации обнулять параметры transform. То есть навесить коллбек на событие transitionend, и после обычным margin/left/top назначить для сайдбара необходимую позицию. Соответственно, перед тем как сайдбар прятать, ему нужно вновь вернуть значения transform, затем удалить те смещения которые вы навесили в коллбеке, и только после этого выполнять команду на скрытие. Если будете так делать, то обязательно заверните код в requestAnimationFrame, это нужно для того, чтобы браузер пересчитывал стили именно в той последовательности, в какой нужно вам, иначе стили будут назначаться разом, и будут проявляться странные эффекты(анимация же выполнятся через transition)

    let stMenuTransformPrevious, stMenuTransitionPrevious = ''
    
    // after open
    requestAnimationFrame(function() { // выполняем действия в новом кадре композиции
      stMenuNode.style.transition = 'none' // убираем transition, так как после мы убираем transform
    
      requestAnimationFrame(function() { // выполняем в следующем кадре композиции
        stMenuNode.style.transform = 'none'
        stMenuNode.style.left = '0px'
      })
    })
    
    // before close
    requestAnimationFrame(function() {
      stMenuNode.style.transition = '' // возвращаем transition из css
    
      requestAnimationFrame(function() { // выполняем в следующем кадре композиции
        stMenuNode.style.left = '' // в зависимости от того, как до этого двигали меню
        stMenuNode.style.transform = '' // применяется transform из css
      })
    })


    Применительно именно к вашему случаю, stMenuNode.style.left = '0px' назначать не нужно, так как меню и так по умолчанию находится слева.

    Причина блюра на тексте в том, что для высокого разрешения просто не хватает аппаратных ресурсов, чтобы картинку рендерить и с ускорением, и в высоком разрешении. Такой же эффект с блюром появляется и на sd-дисплеях. Вообще лучше transform использовать только для анимаций, и, если возможно, после завершения анимации для лучшего рендеринга и разгрузки позиционировать элементы margin/left/top.
    Ответ написан
    1 комментарий
  • Как заставить TypeScript правильно импортировать модули CommonJS для Node.js?

    radist2s
    @radist2s Автор вопроса
    Back-end и front-end разработчик
    Решение очевидное и простое:
    import * as io from 'socket.io'
    Ответ написан
    Комментировать
  • Регулярное выражение в PHP - в чем ошибка?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    if (preg_match('~[^\w]~', $_POST['login'])) exit("Неверный логин");


    Где ^ - отрицание, \w - Буквенный или цифровой символ или знак подчёркивания (wiki)
    Ответ написан
    Комментировать
  • Настройка nginx + php-fp и права пользователей

    radist2s
    @radist2s
    Back-end и front-end разработчик
    У меня есть небольшой гист для генерирования пула и конфига nginx. Если функции генерирования излишни, то смотрите на nginx-vhost.bone и на phpfpm-pool.bone. Все %переменные% внутри меняйте на соответствующие вашему окружению значения. Для phpfpm-pool.bone обратите внимание на лимиты памяти, процессов и максимальный размер загружаемого файла. Так же там закомментированны некоторые параметры, как listen - там можно выбрать что слушать(порт или сокет), соответственно, нужно поменять прокси "upstream" на nginx.
    Ну и как заметил @sim3x, нужно "пользователя nginx добавить в группу сайта".
    То есть если вы создаете пользователя для php-fpm с именем "super_site_user", то в группу super_site_user(при обычных обстоятельствах создается вместе с пользователем) добавьте пользователя www-data(нужно уточнить имя пользователя в /etc/nginx/nginx.conf - параметр user).
    Ответ написан
  • Как вы думаете, пройдя вот этот курс, можно уже подавать резюме в компании? Хотя бы в качестве стажера

    radist2s
    @radist2s
    Back-end и front-end разработчик
    Не тратьте время на просмотр этих муторных уроков от автора, чья квалификация сомнительна.
    2 любых книжки(HTML + PHP) решат ваши проблемы, какие именно - ищите посты на Хабре.
    Информация, получаемая от просмотра видео, толком не усваивается.
    Ответ написан
    3 комментария
  • В каком университете дают базу для веб дизайнера?

    radist2s
    @radist2s
    Back-end и front-end разработчик
    Hyper Island
    Ответ написан
    Комментировать