Задать вопрос
  • Html player есть ли событие загрузки видео?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    У элемента video есть событие canplay, которое происходит в момент, когда загружены метаданные + небольшой фрагмент ролика, который уже можно проигрывать
    Но если задача отобразить прелоадер, то по-хорошему нужно учесть момент медленного инета, и тут уже буферинг

    Добавлю так же, что сам не пробовал, но подсмотрел у ютуба и есть желание как нибудь реализовать: видеопоток грузится по вебсокету и пишется в blob, а в плеер отдается url этого blob, в итоге получаем полный контроль над загрузкой
    Ответ написан
  • Функция генерирующая 5 случайных значений в определённом диапазоне без повторений. Объясните суть?

    bingo347
    @bingo347
    Crazy on performance...
    Вот читаешь в списке вопрос, смотришь его теги... рассчитываешь, что сейчас поможешь человеку с хитровыдуманной задачей на применение фильтра Блума... открываешь, смачно сплевываешь от отвращения... и кидаешь в ответ ссылку, не вдаваясь в подробности...

    https://developer.mozilla.org/ru/docs/Web/JavaScri...

    и попросите у гугла, что бы Вас разбанили в поисковике
    Ответ написан
    Комментировать
  • Плагины для браузеров могут делать запросы на сторонние сайты?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Могут, обычный ajax (с той лишь разницей, что CORS не требуется) а так же websocket
    Ответ написан
    Комментировать
  • Нужен ли веб-разработчикам сервис случайных данных?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Для большинства случаев мне хватает модуля faker
    хотя если обернуть его в вебморду, которая еще и будет помнить (на сервере) мои шаблоны объектов - я бы пользовался возможно
    еще лучше если с сервисом будет плагин к хрому в виде макросов для заполнения форм
    Ответ написан
    Комментировать
  • Какой open source проект на node.js выбрать как эталон для архитектуры и стиля?

    bingo347
    @bingo347 Куратор тега Node.js
    Crazy on performance...
    Исходники самой node.js и v8 лично я считаю эталонными как в плане js так и в плане c++
    Из чисто js - можно изучить исходники lodash
    По архитектуре неплохо выглядит фреймворк sails.js
    Ответ написан
    1 комментарий
  • Есть виртуалка на KVM. Есть браузер. Какие технологии нужны что бы пробросить консоль из первого во второе?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    если есть время и желание разобраться: изучите управляющие спецсимволы консоли и напишите обертку на node.js+socket.io, примитивно реализуется за 2-3 дня
    Само управление консолькой простое - запускаем через модуль child_process утилиту bash в потоковом режиме, команды пишем в stdin, stdout и stderr перенаправляем в браузер через сокет и там разбираем и отображаем
    Так же если нужен root доступ, то процесс ноды лучше запускать от root
    Ответ написан
  • Актуальная информация по GeekBrains?

    bingo347
    @bingo347 Куратор тега HTML
    Crazy on performance...
    Не так давно получал предложение по работе от них типа "ищем крутых программистов для проведения обучающих вебинаров"
    Ок, позвонил, отвечает девушка, общаемся, некоторые выдержки:
    Я: У меня высшее образование по специальности "преподавание информатики" и 2 года пед стажа, работал в колледже по специальности
    Д: Главное, чтоб Вы были действительно крутым программистом!
    Я: как Вы поймете, что я действительно крутой программист?
    Девушка: это покажет тестовое задание

    Я: Для проведения вебинара понадобится какое-либо специализированное ПО?
    Д: да, у нас есть собственное ПО, мы Вам вышлем инстолятор и инструкции в случае если Вы будете работать у нас
    Я: Я сижу под линуксом, Ваше ПО запускается на линукс нативно?
    Д: Что такое линукс?

    Ладно, девушка просто HR, не будем придираться, на крайняк запустим под вайном их крутое ПО...

    Получаю тестовое задание:
    "Запишите ролик, где Вы рассказываете о своем ЯП и покажите примеры циклов на нем для новичков"
    Сомнения увеличиваются, как это может показать мою "крутость" как программиста?
    Ну ок, записать видео с экрана не проблема, лезу в ютуб за примерами и нахожу их канал, среди роликов нахожу запись вступительного вебинара, ролик выложен весной 2014 по node.js - смотрю, парнишка рассказывает народу какая крутая нода по сравнению с php, python и ruby, отвечает на вопросы, притом пропуская некоторые, которые посчитал неуместными, но убила фраза "я программирую на ноде более 5 лет", напомню что ролик выложен весной 2014, следовательно снимался еще раньше, а нода появилась летом 2009... у парня проблемы с математикой когда он врет...
    Вообщем потратил свои 2 часа и просмотрел вебинар полностью, все сводилось к тому, что нода реально крутая и жизненно вам необходима, только купите наш мега крутой курс
    И я решил, что не смогу так парить мозги людям, ради выкачивания из них денег, и работать у них не хочу, а освоится новичкам я и на тостере помогу...
    Ответ написан
    1 комментарий
  • Увеличивается ли нагрузка на базу данных, если один запрос вкладываешь в другой?

    bingo347
    @bingo347
    Crazy on performance...
    Ваша задача решается одним запросом:
    SELECT g FROM e
    INNER JOIN b ON b.h = e.h


    Много запросов - это всегда лишняя нагрузка + провалы в производительности
    Ответ написан
  • Действительно ли новая asp.net core 1.0 быстрее в 8 раз Node.js?

    bingo347
    @bingo347 Куратор тега Node.js
    Crazy on performance...
    Во-первых, такие заявления как правило делаются для пиара, а в качестве доказательств предлагаются синтетические тесты, далекие от реальных приложений.
    Во-вторых, разные компиляторы конечно могут по разному оптимизировать Ваш код, кто-то это делает лучше, кто-то хуже, но все же в большей степени производительность зависит непосредственно от кода, одну и ту же задачу можно решить на одном и том же языке и версии компилятора, но разными способами и получить разницу в производительности в несколько раз (лично мне доводилось ускорять серверную часть socket.io в 6-8 раз, без потери функциональности).
    И наконец в-третьих, не ищите серебряную пулю, пишите на том, что лучше знаете
    Ответ написан
    4 комментария
  • Зачем выключают java script в браузере и многие ли так поступают?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Можно собрать статистику конкретно по посетителям Вашего ресурса, принцип такой:
    на страницу вешается скрытый iframe содержащий страницу с html-редиректом (через тег meta) через несколько секунд после загрузки, редирект должен вести на что-то вроде /stats?js=off
    сразу после iframe вешается скрипт, удаляющий данный iframe со страницы и отправляющий ajax запрос /stats?js=on

    На сервере все это складируем в БД с доп данными (ip, user-agent и тд), так же можно отправлять браузеру куки, что уже проверяли данный браузер и повторно можно не проверять (хотя параноики могут и куки вырубить, так что одним кукам доверять нельзя)

    Пособирав так статистику в течении месяца-двух можно уже делать выводы о % посетителей без js

    UPD: двухсторонняя шаблонизация (не только на клиенте, но и на сервере, для первого запроса) не только частично решит проблему отключенного js, но и ускорит инициализацию страницы и повысит рейтинг поисковиков
    Ответ написан
  • Как удалить CSS-свойство?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Сброс конкретного свойства установленного через element.style.property или через атрибут style в html:
    element.style.property = void 0; //void 0 - это оператор возвращающий безопасный undefined


    А вообще лучше не устанавливать свойства через атрибут style или через element.style (что равносильно), манипулируйте классами
    ну было бы всё так просто, исходную html-разметку редактировать нельзя ((
    Стилевые правила можно создавать/удалять/заменять динамически, через js
    Ответ написан
    Комментировать
  • Как передать информацию из одной формы в другую?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Во-первых, чекбокс можно переключить не только кликом
    для отлова изменения есть событие change

    Во-вторых, класс не нужен, у нативного DOMNode чекбокса есть свойство checked (boolean) отображающее "включенность" чекбокса, а так же позволяющее ее изменять

    В-третьих, мысль проверять чекбоксы при открытии модалке весьма здравая, тем более включенные чекбоксы можно получить через селектор :checked
    Ответ написан
    Комментировать
  • Как реализовать склонение по падежам на разных языках?

    bingo347
    @bingo347
    Crazy on performance...
    для полноценной реализации понадобится нейронная сеть

    примитивно же можно анализировать окончания, задать список соответствий окончаний для разных падежей
    разбиваем по словам, анализируем окончание, заменяем на его соответствие в зависимости от нужного падежа
    Ответ написан
    Комментировать
  • Node.js loopback 401 при получении данных?

    bingo347
    @bingo347 Куратор тега Node.js
    Crazy on performance...
    http status 401

    и вообще, уважающий себя web-разработчик должен знать http-статусы как таблицу умножения
    Ответ написан
  • Каким образом в NodeJS я могу понять - что таблица изменилась (и уведомить клиента далее)?

    bingo347
    @bingo347 Куратор тега Node.js
    Crazy on performance...
    Как уже подсказали выше, rethinkDB - идеальный вариант
    Но если принципиальны реляционки, то пишем триггеры на нужные таблицы, которые складывают отдельно нужные изменения, а скрипт периодически их чекает
    Ответ написан
    2 комментария
  • Как растянуть div на всю оставшуюся ширину?

    bingo347
    @bingo347 Куратор тега HTML
    Crazy on performance...
    Во-первых, в примере была ошибка в написании width
    Во-вторых, вот: https://jsfiddle.net/syagfL0f/2/
    Ответ написан
    Комментировать
  • Как сделать вид контента как на игры мэйл ру?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Вам все готовые js скрипты подавай...
    Обычная css-сетка, js здесь не нужен
    Ответ написан
    Комментировать
  • Как вызвать функцию js в этом случае?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    ES5
    function Foo() { //конструкторы пишем с большой буквы
     //...
    }
    
    //методы пишем в прототип
    Foo.prototype = {
      baz: function() {
        //...
      },
      bar: function() {
        var $this = this;
        $.ajax({
          success: function(html) {
            $this.baz();
          }
        });
      }
    };


    ES2015
    class Foo {
      constructor() {
        //...
      }
      baz() {
        //...
      }
      bar() {
        $.ajax({
          success: html => {
            this.baz();
          }
        });
      }
    }
    Ответ написан
    Комментировать
  • Что лучше создать модальное окно в js или css?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Любая верстка и состояния элементов должны быть описаны в стилях
    js же просто должен менять классы элемента, когда меняется состояние

    Так что ответ на вопрос очевиден, нужны обе технологии
    Ответ написан
    Комментировать
  • Как получить точное время utc?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    Если время критичный параметр, то никогда нельзя доверять времени клиента, клиент может просто вырубить обновление времени, либо выставить какое-либо левое время (привет из будущего/прошлого)
    Доверять можно только времени сервера, ибо им управляете только Вы
    Ответ написан
    1 комментарий