• Развитие десктопных приложений?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Зависит от задачи. К примеру, видомонтаж в браузере проблематично делать по техническим причинам, поэтому приложение. Игру делать в браузере хуже по причине сложности передать нужные ощущения. И так далее. Нужно отталкиваться от задачи, и затем уже выбирать адекватные инструменты и платформу.
    Ответ написан
    Комментировать
  • Почему валидация сработала не так как задумывалась?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Потому что задумка не соответствует реализации.

    К слову, довольно не красиво прилагать минимум усилий к тому, чтобы вас поняли, и намекать на то, что нужно прочитать код и телепатически догадаться о том, какая была цель и в чем проблема.
    Ответ написан
    7 комментариев
  • Как доработать данный код?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    function removePreloader(){
      if (removePreloader.done) return;
      removePreloader.done = true;
      $('.preloader-wrapper').delay(100).fadeOut('slow');
      $('body').addClass('siteloaded');
    }
    
    $(window).on('DOMContentLoaded', function () {
      removePreloader()
    });
    
    setTimeout(removePreloader, 2000);
    Ответ написан
    3 комментария
  • Что такок хакатон?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Хакатон (вики)
    Если конкретное мероприятие, то читайте правила там же, на странице мероприятия.
    Ответ написан
    Комментировать
  • Какую БД выбрать для мобильной стратегии?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    А при чем здесь БД?
    Используйте MySQL, как и раньше.

    А чтобы улучшить отзывчивость, нужно оптимизировать саму игру. Это делается разными путями. Зависит от игры. Вы, кстати, даже не сказали, пошаговая стратегия или реального времени. От этого тоже многое зависит. Если реального и есть требование матчить игроков со всего мира, то в первую очередь нужно уволить геймдизайнера.

    Что касается распределенного хранилища, то есть хитрые варианты, когда данные хранятся на устройстве пользователя и сервера им доверяют. Это убирает жесткое требование репликации, и даже добавляет возможно разгрузить сами сервера, но в замен придется много программировать т.н. арбитражную систему по принципу "доверяй, но проверяй".
    Ответ написан
  • Как регуляркой проверять на пустоту?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Смотря что считать пустотой.
    Если это все пробельные символы, то примерно так: ^\s*$
    (Расшифровывается, как любое количество пробельных символов, даже нулевое, от начала и до конца строки).
    Ответ написан
    Комментировать
  • Можно ли определить, что сайт использует несколько языков с помощью PHP?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    С помощью PHP можно всё то же самое, что и руками.
    Например, дёргать ru.example.com или example.com/ru и т.д. Ну и заголовки пробовать, смотреть. Короче, на что фантазии хватит. Но 100% способа нет.

    Самый надежный (но не 100%) способ - написать скрипты по сложности аналогичные поисковым ботам, то есть просканировать весь сайт и проиндексировать его. И по словам определить, какие там языки использованы. Как вы понимаете, это очень сложная задача. Тем не менее, отвечая на вопрос "можно ли с помощью php...", могу сказать, что можно.
    Ответ написан
    Комментировать
  • Как закрыть XMLHttpRequest от общего доступа?

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

    Хотя если сам пользователь является злоумышленником, причем умным и упёртым, то понадобится дальше наращивать защиту. Но это уже война снаряда и брони, а она, как известно, вечная, и выигрывает тот, у кого больше ресурсов и терпения.
    Ответ написан
    Комментировать
  • Много обещаний в ожидании?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Будет плохой дизайн кода.
    spoiler
    Насколько я помню, V8 падает, когда память JS превышает 2 Гб.
    Ответ написан
    Комментировать
  • Двумерный массив в виде шахматной доски?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    if((Math.floor(i*0.25)+Math.floor(j*0.25))%2 == 0) mas[i][j] +=1;
    Ответ написан
    1 комментарий
  • Какой процессор лучше взять?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Лучше взять такой, который подойдет к материнской плате. Из предложенных у всех разные сокеты. Ну и если собирать с нуля, то я бы тоже начал с материнской платы.

    Лично у меня уже лет 10 стоит i5 3570, точнее i5 3570K, но я так и не разогнал. Не жалуюсь. Был лучшим из холодных в свое время, и до сих пор не устарел.
    Ответ написан
  • Насколько перспективна смена профессии на разработчика С++?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    А при чем здесь язык?
    Ведь не язык делает программиста программистом.

    Хотя С++ это отдельная история, но после года изучения этого языка плюс смежные области (архитектура компьютера, сети и пр.) можно легко перейти на любой другой язык. Таким образом, сам язык второстепенен, и более важным являются умение писать понятный (для других) код, документировать его, знать подходы и практики программирования, стили, парадигмы, математику, алгоритмы и пр. Плюс можете загуглить что-то типа "навыки программиста", чтобы понять, что требуется, кроме языка.

    Вообще здесь два крайних варианта (а истина где-то посередине):
    1. Если проблема выжить, то нужно сделать упор на пробелы в знаниях и навыках. И, как я сказал выше, это не только ЯП. Пожалуй, важным в такой ситуации будет качать софт скиллз, то есть умение работать в команде, общаться, договариваться, добиваться взаимопонимания, да и просто презентовать себя. Сюда же входит понимание трендов, так что ваш вопрос по идее отпадет сам собой.
    2. Если запас прочности большой, и проблема найти работу, которой человек будет заниматься всю жизнь, то нужно смотреть на то, что человеку нравится делать. Ведь профессионалом со временем можно стать в любой области. И это в любом случае даст нормальный доход. Но важно заниматься любимым делом, чтобы была мотивация и собственно счастье от работы и профессионального роста в ней.
    Ответ написан
    Комментировать
  • Как определить максимальную частоту процессора?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Характеристики процессора удобно определять с помощью утилиты CPU-Z.
    Ответ написан
    Комментировать
  • Как разблокировать порт 25 на ПК?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Полностью отключить Firewall (например, брандмауэр windows).
    Если не поможет, то дело не в ПК.
    Ответ написан
  • Что можно сделать с моим apple id?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Злоумышленник сможет сделать от вашего имени всё то же самое, что сейчас можете вы с помощью вашего Apple ID. Например, добавить в календарь событие, или удалить его, или просто посмотреть и узнать ваши планы. Ну и много чего ещё.
    Ответ написан
    Комментировать
  • Как вычесть из сегодняшней даты 3 дня и сравнить с условной датой, и если до условной даты остается 3 дня то выдать сообщение?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    function check(str) {
    	if (new Date(str) - new Date() > 86400000 * 3)
    		console.log('У тебя ещё есть 3 дня.');
    	else
    		console.log('Времени почти не осталось.');
    }
    
    check('2019-11-14T09:07:02.376+00:00');
    Ответ написан
    2 комментария
  • Как ограничить область перемещения элемента при событии mousemove?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Нужно посчитать границы области, где можно перемещаться. Это будут минимумы и максимумы координат. Ну и размеры элемента тоже понадобятся.

    Далее в коде в том месте, где вы меняете координаты, делать соответствующий сравнения. Типа такого:
    if (x > max_x - obj_width) x = max_x - obj_width;
    if (x < min_x) x = min_x;
    Ответ написан
    3 комментария
  • Service invoked too many times in a short time: exec qps. Как исправить?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Главное, что можно сделать из простого - это вместо 50 вызовов делать один вызов на диапазон.
    Код (грубый пример):
    function GETDATE(input) {  
      if (input) {
        if (typeof input.map === "function") return input.map(GETDATE);
        return Utilities.formatDate(new Date(), "GMT+03:00", "HH:mm:ss");
      } else
        return '';
    };
    В самой таблице нужно будет не растягивать формулу, как обычно, а указать ее в первой ячейке, но в параметры передать диапазон:
    =GETDATE(A3:A53)

    Это должно немного снизить нагрузку. Когда пересчитывается весь столбец A3:A53, то по цепочке произойдет не 50 запросов, а один. Хотя визуально обновится весь столбец с датами.

    Далее нужно смотреть, как устроена сама таблица. Если в A3 формула и она постоянно пересчитывается, то это плохо.

    Еще такое (не очень красивое) решение. Можно сделать кнопку, которую, предполагается, нужно нажимать не часто. То есть пользователь редактировал таблицу минут 10, а затем нажимает кнопку, и соответствующий скрипт проставляет даты. Погрешность увеличится, удобство уменьшится, и отдельный вопрос, как это всё сделать, но в лимиты можно будет влезть.
    Ответ написан
    6 комментариев
  • Что тут изменить, чтобы было на jquery?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Если работает нативно, то не нужно переписывать на JQuery. Он слегка удобнее для написания кода, но это дополнительная зависимость. К тому же размер страницы при первом запуске увеличится (экономия будет только если у вас тонна кода, в чем я сомневаюсь).
    Ответ написан