• Mожно ли установить ubuntu в качестве основной ос?

    fdroid
    @fdroid
    press any key
    Можно, но не нужно. Либо для этого должна быть реально объективная необходимость, когда других вариантов просто нет. Линуксу место на сервере. На десктопе использование линукса подобно сексу стоя и в гамаке.
    Ответ написан
  • Vue.js + Wordpress?

    boratsagdiev
    @boratsagdiev
    Чтобы совместить эти две вещи, вам не нужны шаблоны Wordpress. Как я вижу разработку с этими двумя:

    - WP отдаёт в rest API нужные данные (он это умеет по умолчанию, вроде только нужно поставить плагин чтобы включить). Это ваш бэкенд.
    - На VueJS вы пишете весь фронтенд - то есть вся вёрстка шаблона находится именно во vue-файлах, так же как и вся логика по получению постов, категорий, комментариев и прочего из бэкенда WP.
    Ответ написан
    1 комментарий
  • Кому реально нужны правила по использованию cookie на сайте?

    @wadimko81
    Моё мнение, что этим сообщения о использовании кук, просто издевательство над посетителем, и владельцем сайта.

    На самом деле, в любом браузере, есть настройки безопасности.
    Есть так называемые уровни безопасности. При желании, пользователь может настроить свой браузер, таким образом, чтобы ему показывал сообщения именно его браузер о том, какие данные о нём собираются на данном сайте.

    При том, тут пугали разными версиями сайта, при разном сборе данных.
    Как раз, для браузеров, есть расширения, которые фильтруют содержимое страницы.
    Не загружают всё те же скрипты, Гугл аналитикс, и так далее. Всякие счётчики.
    Есть расширение, которое вообще отключает какие либо скрипты, либо определённые.

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

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

    Например, в браузере Файрфокс, убрали из настроек возможность отключать скрипты, мотивируя это, на официальном сайте тем, что пользователи этой кнопкой “ломают их браузер, который становистя не пригодным для просмотра” или как-то примерно так.

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

    А отображения окошка на сайте, которое не кто не читает, и нажимает “ОК”
    Это, какое-то, не знаю, похоже на бутафорию и издевательство.

    Про слежку за пользователями через куки, а как же лог сервера?
    Получается, лог сервера, программы его обработки, тоже своего рода слежка.
    При том, от этого уже не откажешься не как.

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

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

    Тему эту ещё можно продолжить в данном русле, но и так много текста.
    Специально зарегистрировался, чтобы ответить на этот вопрос.
    Всё написанное, это личное мнение, на истину не претендует.

    На вопрос, кому это нужно, вероятно тем, кому выгодно создавать проблемы людям.
    Вероятно какой-то способ подавить конкурентов, какими-то требованиями.
    Ничего общего с заботой о людях, это на практике, как кажется не имеет.
    p.s Если некая программа, загружает массив данных на ваш пк...
    Сработает файрвол, правила доступа к папкам, правила учётной записи, на установку программ, сработает файрвол, антивирус, и так далее.
    Ответ написан
    1 комментарий
  • Как вынести часть js из основного потока?

    Sanasol
    @Sanasol Куратор тега JavaScript
    нельзя просто так взять и загуглить ошибку
    На метрику точно забейте.

    Ютуб надо убирать под JS, вместо плеера картинка -> при клике вставляется плеер.
    Ютуб безобразно долго грузится.

    Живосайт не факт что так сильно влияет, но можно сделать финт ушами

    setTimeout(function(){
    (function(){ var widget_id = '***';var d=document;var w=window;function l(){
      var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true;
      s.src = '//code.jivosite.com/script/widget/'+widget_id
        ; var ss = document.getElementsByTagName('script')[0]; ss.parentNode.insertBefore(s, ss);}
      if(d.readyState=='complete'){l();}else{if(w.attachEvent){w.attachEvent('onload',l);}
      else{w.addEventListener('load',l,false);}}})();
    }, 3000);


    В целом вся оптимизация вордпресса это:
    1. Прогнать картинки через https://compressor.io/
    2. И поставить какой-нибудь W3 Total Cache + включить всякие минификации и т.д.
    3. Всякие виджеты засунуть в setTimeout

    На выходе получите 90-100 для десктопа и 80-100 для мобильного на PageSpeed
    Ответ написан
    4 комментария
  • Какие области в веб - разработке осваивать в перспективе?

    dom1n1k
    @dom1n1k
    В общем у меня уйдёт на это 2 - 2.5 месяца. Только на основы!

    Ну обосраться. Два грёбаных месяца!!!1
    До чего докатилась индустрия, что 2 месяца воспринимаются как огромный срок. И всё чаще натыкаешься на статьи, где пишут о годовалых якобы мидлах и трехлетних якобы сеньорах.
    Лично я считаю, нужно потратить от 2-3 лет, чтобы начать более-менее прилично и системно ориентироваться в теме. В течении этих лет неоднократно будут возникать моменты, когда тебе кажется, что ты уже достаточно крут - но это только кажется.
    Нормальный специалист средней руки формируется около 3 лет. Не гуру, не сенсей, не сеньор - просто крепкий линейный боец. Это много где так, не обязательно в JS. И это нормально.
    Хочешь за несколько недель - иди установщиком пластиковых окон, как раз строительный сезон начался.
    Ответ написан
    11 комментариев
  • Можно ли настроить отображение панели задач Linux Mint на двух мониторах?

    @volynshchikov
    Вопрос старый, но может кому сэкономит время.
    Тыкался с этим битый час. Оказалось все "интуитивно", и ставить расширения не обязательно.
    Дистрибутив Cinnamon 18.1

    Параметры системы => Панель
    Жмем "Добавить новую панель" выбираем место на втором мониторе.

    Но, внезапно, задачи не попадают на новую панель, она так и остается пустой.
    Чтобы заработало нормально, правый клик на панели основного монитора => Изменить панель => "Копировать конфигурацию апплетов". На новой панели дополнительного монитора соответственно
    "Вставить конфигурацию апплетов".

    После копирования конфигурации получаем две самостоятельные панели для каждого монитора. На каждую попадают окна открытые на соответствующем мониторе.
    Ответ написан
    3 комментария
  • Какая есть хорошая книга по js играм?

    tsepen
    @tsepen
    Frontend developer
    Ответ написан
    Комментировать
  • Как Вы управляете проектами с удаленными заказчиками?

    @grinat
    И итоге делал так, заказчик присылает тз, его обстоятельно обсуждаем во всех подробностях, назначаем сроки/стоимость, я делаю, показываю результат, он присылает замечания/всплывшие косяки, я исправляю если оно в рамках тз. Обсуждение по email исключительно. Никаких суси-пуси, часовых скайпов ни о чем и т.п., ему нужен продукт, тебе деньги, если он хочет общения, пускай идет к жене/любовнице, если его что-то беспокоит, то может идти куда подальше. Если будешь каждому опу подтирать, то быстро сгоришь играя одновременно в программиста/аналитика/менеджера, так что выбирай что-то одно. Плюс имей в виду, что база нарабатывается и там потом одни и теже люди будут к тебе обращаться, поэтому если ты им сопли постоянно подтирал, то придется и дальше этим заниматься, а если общение четко и только по делу, то и далее оно будет таким. Если будут какие-то споры, а заказчики разные, и они 100% будут, то беседу по скайпу в качестве доказательств своей правоты не приложишь. Трело тогда не было, шел просто по тз, и зачеркивал выполненные пункты.
    Ответ написан
    Комментировать
  • Как сделать, чтобы gulp не крашился после ошибки в PUG?

    Eridani
    @Eridani
    Мимо проходил
    gulp plumber
    Ответ написан
    Комментировать
  • Как лучше организовать рабочее окружение для веб разработчика?

    Robur
    @Robur
    Знаю больше чем это необходимо
    В свое время сидел на винде (знал вдоль и поперек), чем больше становилось веб-разработки, тем больше проблем было, все решаемо но постоянно мелкие и не очень проблемы. Виртуалки, портированные шеллы, вот это все, потом плюнул, поставил линукс, настроил, поматерился на корявость интерфейса, и забыл винду совсем. Потом попался мак, настроил, поматерился на корявость интерфейса, привые и забыл эту убунту.

    Если хотите серьезно в разработку - переезжайте на linux/mac. Все можно делать и на винде, но в какой-то момент станет жалко времени на постоянное решение мелких и не очень проблем. Да и держать в голове две системы на хорошем уровне понимания незачем, есть и более полезные навыки которыми можно это место занять.
    Ответ написан
    Комментировать
  • Как сделать в Laravel аутентификацию по паре криптографических ключей?

    @Barmunk
    Готовых решений не знаю, но это все можно сделать и самостоятельно переписав логику. Для этого достаточно в контроллере LoginController, переопределить все методы из AuthenticatesUsers и дописать в RegisterController методы create и validator. Тем самым вы сможете исключить проверку логина пароля и написать свою логику авторизации по токену.

    К примеру: https://tighten.co/blog/creating-a-password-less-m...
    Ответ написан
    1 комментарий
  • Взлом или развод?

    flapflapjack
    @flapflapjack
    на треть я прав
    Может ли злоумышленник, получив данные о списках таблиц так же получить и содержимое этих таблиц?


    В зависимости от степени экранирования символов при фильтре какого-то из параметров.

    По сути, скорее всего инъекция была сделана именно на вашем сайте, следовательно запрос выполнялся от имени вашего пользователя, у которого есть все права на БД - следовательно может и удалять и читать любые записи.

    Нужно как-то отследить место SQL-инъекции.

    Я в этом не спец, но например можно посмотреть лог mysql на наличие строки SHOW DATABASES или SHOW TABLES, а так же по поиску слова UNION, коим часто пользуются при создании инъекций. Найдя в логах время исполнения данного запроса можно глянуть в access.log у апача запрошенный адрес сайта, который был запрошен в то же время, что и инъекция в SQL.

    Имея точное расположение скрипта можно поставить вставки функции для логирования $_SERVER['REQUEST_URI'] и определить что за запрос был сделан, и от этого плясать.
    Ответ написан
    1 комментарий
  • Как вы обновляете vue проекты на проде?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    CI/CD (Continuous Integration/Continuous Delivery) сервер ответ на ваши проблемы. Например, bitbucket pipelines, circle ci, gitlab pipelines, jenkins и т.д. Работает так:
    • сервер отслеживает пуши в определенные ветки, например, в master.
    • если в master пришли коммиты, то запускается определенный скрипт, который вызывает сборку (обычно еще перед этим запускаются тесты, если есть).
    • если сборка прошла успешно, то результат этой сборки кладется в отдельную папку -- это называется build artifact
    • этот build artifact тем или иным образом загружается на хостинг -- у всяких там AWS/Azure и т.п. облак обычно есть API для этого, можно передавать файлы через scp или sftp.

    Если вся инфраструктура локальная, то и CI/CD сервер обычно ставят локально, например, Jenkins или TeamCity. Но без выделенного админа/девопса проще в облаках настроить, наверное.

    P.S. это, конечно, годится не только для проектов на vue, а вообще для любого веба, включая бэкенд.
    Ответ написан
    Комментировать
  • В чем смысл bootstrap'a и его аналогов?

    Vlad_IT
    @Vlad_IT Куратор тега CSS
    Front-end разработчик
    Я если и использую bootstrap (что бывает очень редко), то создаю свой каркас в html, и уже через стили импорчу нужные bootstrap'овские классы
    .catalog-item {
        @include make-col(2);
    }

    т.к. мне лично не нравится засорять html множеством классов. Стили поменять чаще легче, чем разметку. В теории, можно научить сборщик не собирать классы bootstrap, которые не использовались в основных стилях.
    Ответ написан
  • Почему разные выходные значения Java и Python?

    Vamp
    @Vamp
    Причина в том, что второй вызов метода вычисляется в значение, не влезающее в тип данных long. То есть возникает классический integer overflow. В java и php старшие биты, не поместившиеся в long, просто отбрасываются. В python и ruby на уровне языка поддерживается bignum арифметика, поэтому результат другой. То есть числа могут быть сколь угодно велики без опасности возникновения переполнения. В php такое тоже возможно при помощи модуля bcmath или gmp. В java аналогичную арифметику предоставляет класс BigInteger:

    import java.math.BigInteger;
    
    public class A {
        public static void main(String[] args) {
            BigInteger output_1 = generate(400732734464L, -74, 12);
            BigInteger output_2 = generate(1641401281110016L, 100, 14);
    
            System.out.println(output_1);
            System.out.println(output_2);
        }
    
        public static BigInteger generate(long val1, int val2, int val3) {
            return BigInteger.valueOf(val2 & 255)
                .add(BigInteger.valueOf(val1))
                .shiftLeft(val3);
        }
    }
    Ответ написан
    Комментировать
  • Как получить полное имя класса по его началу?

    @RastaZ
    Примерно так!
    $('body[class*="fontsize"]') //Значение атрибута содержит указанный текст
    Ответ написан
    Комментировать
  • В Wordpress подключить две шапки?

    lamer350
    @lamer350
    กำลังสูงสุด
    Вы когда создаете шаблон для страницы в самом верху первая строчка кода (не комментариев) - подключение шапки, сделайте только наоборот - для главной отдельную. header.php переименуйте ее на header-home.php и замените ее название в шаблоне front-page.php
    А header-page.php переименуйте в header.php и используйте ее на всех страницах
    Ответ написан
    Комментировать
  • Yii basic для простого сайта с админкой это говнокод?

    Автор, посмотри в сторону Laravel. Данный фреймворк куда проще в освоении для новичков, и аутентификация с админкой(правда пустой) там делается в 1 консольную команду.
    Ответ написан
    3 комментария