• Как эффективно работать целый день?

    @vshvydky
    У тебя идет перестройка организма к новым условиям в жизни. Немного идей, как можно себе помочь.
    1. Здоровый сон, чтобы завтра не плыть, сегодня надо лечь пораньше. Если чувствуешь, что твой организм тухнет, ляг в 11, утром будешь бодрее.
    2. Воздух, его должно быть много. Если в офисе плохая вентиляция, а ровно и закупоренные окна при включенном кондиционере, то ты плывешь чисто физиологически, надо проветривать и тп.
    3. Постоянное фокусирование глаз на одном объекте дает дополнительную усталость и напряжение, потому надо давать себе перерывы от смотрения в монитор. Обычно рекомендуют 5-10 минут в час, но тут можно поискать санпиновские рекомендации, их не просто так придумали, при том отдыхом является не переключение в контракт или куда-то еще, а именно отвлечение от компьютера. Желательно чтобы это был не перекур, так как сигареты тоже ухудшают самочувствие.
    4. Правильное питание, витамины, пить больше воды.
    5. Не зацикливаться только в технической информации, мозгу требуется переключение на что-то еще. Нужно найти время для получения любой другой информации помимо знаний для работы. когда ты будешь находить для этого время твое личное дело, кто-то как написал комментирующий выше реализует это через треп на работе, кто-то находит время для себя в перерывах, кто-то вне работы. В любом случае нельзя зацикливаться. Иначе работа начнет тебя сжигать. (Сразу добавлю, это не призыв относиться к работе посредственно).
    6. В дополнение можно воспользоваться поддержкой медицины, есть хороший препарат, называется милдронат, его задача поддерживать и восстанавливать организм, одно из показаний к применению сильные умственные или физические нагрузки. Дабы не сильно бояться этого пункта, скажу что это таблетки, которые ели почти все наши спортсмены, чтобы помочь телу справляться с высокими нагрузками, которым они его подвергают.

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

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

    Ronnie_Gardocki
    @Ronnie_Gardocki
    Я у мамы фронтендщик.
    Вариант с гиф это совсем уж извращение.
    1 вариант по идее можно сделать с помощью svg gooey фильтра (комбинация блюра с контрастом, которая дает эффект перетекания).
    Но чаще всего такое делают либо с помощью спрайтов (устаревший, но простой вариант), либо с помощью bodymovin (js плагин для After Effect, вы экспортите анимацию из AE и юзаете в нем).
    Ну и конечно есть вариант такое руками с помощью SVG запилить, но это крайне нерациональный подход на фоне того что я описал выше.
    Ответ написан
    Комментировать
  • Как убрать класс при повторном клике?

    alsopub
    @alsopub
    var selector = '.work-1, .work-2, .work-3';
    $(selector).find('> img').click(function () {
            $(selector).not($(this).parent()).removeClass('active');
            $(this).parent().toggleClass('active');
    });
    Ответ написан
    1 комментарий
  • Как вот так анимировать иконки, что используется для этого?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    PhotoShop, After Effects -> to gif.

    Можно конечно попробовать сымитировать на CSS, но это будет весьма трудоемко. Можете начать отсюда:
    https://daneden.github.io/animate.css/
    https://developer.mozilla.org/en-US/docs/Web/CSS/C...
    https://developer.mozilla.org/en-US/docs/Web/CSS/@...
    продолжить сюда:
    greensock.com/tweenmax

    Демки: css-live.ru/cssjssvg-s-podvypodvertom/ezhenedelnay...
    Ответ написан
    Комментировать
  • Что делаю не так? Laravel 5 сервис провайдер?

    Denormalization
    @Denormalization
    Биндится App\Services\CustomRegisterContract, а инжектится App\Services\CustomRegister. Логика не работает?

    Инжектить нужно App\Services\CustomRegisterContract
    Ответ написан
  • А что я могу сегодня сделать с ipv6?

    GavriKos
    @GavriKos
    Да ровно то же самое, что и IPv4 - он вам даст сетевой адрес. И все.
    Ответ написан
    1 комментарий
  • Как подключить Robokassa на Laravel 5.2?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Есть рабочий хороший пакет для любого фреймворка — https://github.com/idma/robokassa
    Ответ написан
    3 комментария
  • Почему this объекта, заданного не через конструктор не показывает контекст объекта?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    console.log(main2.second) // undefined


    Тут вы выбираете свойство объекта и только. Объектом будет являться конструктор, а не инстанс типа, пораждаемый этим конструктором.

    updated

    Для начала давайте определимся с такой вещью, что в JS все является объектом (с примитивными типами чуть сложнее но это сейчас не важно).

    Объекты имеют определенный тип. Вы можете создать новый тип, объявив конструктор типов:

    function MyType() {
    }


    Соответственно когда мы создаем инстанс объекта этого типа будет работать следующее:

    var obj = new MyType();
    obj instanceof MyType; // true
    obj instanceof Object; // true
    ({}) instanceof Object; // true
    ({}) instanceof MyType; // false


    Причем магия тут в том, что функции (а конструктор это просто функция с именем) - это тоже объект

    MyType instanceof MyType; // false
    (function() {}) instanceof Function; // true
    (function() {}) instanceof Object; // true


    То есть запись вида:

    main2.second

    мы должны читать как "возьми свойство second у объекта main2, который является функцией". Мы просто не вызываем эту функцию. Мы просто обращаемся к свойству функции.

    На этом можно было бы остановиться, поскольку это и является ответом на ваш вопрос, но давайте еще чуть поговорим про this.

    В отличии от языков вроде java мы можем менять "контекст" вызова функций. Достаточно сделать так:

    function Foo() {
        this.val = 'foo';
    }
    Foo.prototype.bar = function () {
        return this.val;
    };
    
    var obj = new Foo();
    var fake = {
        val: 'fake',
        // это просто функция, она является объетом, 
        // так что мы можем просто присвоить значение
        bar: obj.bar,     
    };
    
    fake.bar(); // fake;


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

    Далее думаю продолжать нет смысла. Лучше проштудируйте что-нибудь в этом духе: https://learn.javascript.ru/objects-more
    Ответ написан
    4 комментария
  • Как поднять себе зарплату?

    sim3x
    @sim3x
    Хочешь больше зп?
    Найди новую работу

    АПД
    Теоретически, нужно поговорить с начальством. Да

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

    Даже теоретики в коментах

    АПД2
    У прохождения собеседования есть еще преимущества
    - ты получаешь подтверждение своей квалификации и необходимости тебя на рынке
    - ты получаешь денежный еквивалент своей ценности
    - ты получаешь повышение навыка прохождения собеседований - ето отдельный навык, который не часто пересекается с навыком программирование/разработка/администрирование/...
    - в случае провала собеседования у тебя нет никаких побочных еффектов
    - ты получаешь срез навыков необходимых рынку
    Ответ написан
    36 комментариев
  • Нужен совет по замене крона?

    taliban
    @taliban
    php программист
    php.net/manual/en/function.flock.php
    Не изобретайте велосипед, все уже придумано до вас
    запустился скрипт, лочит файл, если удалось, работает, нет, умирает
    если время лока больше ХХХ то предидущий скрипт завис, насильно снимаем блокировку, работаем
    Ответ написан
    Комментировать
  • Как правильно в Laravel хранить свои собственные контроллеры и функции?

    Denormalization
    @Denormalization
    Сам Laravel использует для этих целей отдельный файл helpers.php
    Ничто не мешает создать свой похожий файл, и добавить его в autoload, тогда все эти функции будут доступны из любого места проекта.
    Ответ написан
    Комментировать
  • Почему в php нельзя расширять интерфейсы?

    miraage
    @miraage
    Старый прогер
    Документацию внимательно читайте, потом задавайте сомнительные вопросы.

    php.net/manual/en/language.oop5.interfaces.php

    <?php
    
    interface Foo
    {
      public function bar(string $baz);
    }
    
    interface Baz extends Foo
    {
      public function bar(PDO $baz);
    }
    Ответ написан
    2 комментария
  • Зеркало на http для Ajax запроса с https?

    Scherbakov
    @Scherbakov
    Заместитель директора
    Блокировка https to http реализуется в браузере и только клиент может установить параметр в положение ВКЛ
    А сервис на https кладется именно потому что оно https?
    Может сделать прокси через собственный сервер с балансировкой нагрузки и переключением в случае ошибки например на NGINX. Могу пример рабочий скинуть если незнакомы
    Ответ написан
    3 комментария
  • Как вы думаете если через один ip зайдут в ВК 1000 пользователей, ip блокнут?

    Scherbakov
    @Scherbakov
    Заместитель директора
    Многие провайдеры до сих пор используют серые IP адреса у клиентов, по факту они могут выходить в интернет через 1 канал. От сюда вывод, НЕ БЛОКНУТ)))
    Ответ написан
    Комментировать
  • Как оптимизировать данную функцию?

    victorzadorozhnyy
    @victorzadorozhnyy
    setAvatarState(image) {
        this.setState({ avatars: image }, ()=>this.setState({ imageUploadIsOpen: !this.state.imageUploadIsOpen )}
    }

    смысла в этом ноль)
    Ответ написан
    2 комментария
  • Правильно ли я понял, как работает токен?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Да. Все верно.

    Единственное что добавлю, пересылать токен лучше в заголовках. Причем желательно, поскольку механизм аутентификации нестандартный, в заголовке X-Authorization. Если вы решите хранить токен в куках и передавать его, это желательно должны быть http-only куки (хотя в случае JWT не обязательно) и на сервере должна быть защита от CSRF атак.

    Так же поскольку у нас по сети гуляют по сути креденшелы, важно использовать SSL. Благо сегодня есть lets-encrypt что бы бесплатно получить сертификаты.

    И последнее, что бы обезопасить себя еще, используйте refresh-токены. То есть наш уникальный токен который гуляет в каждом запросе будет иметь ограничение по времени жизни (скажем 5 минут) и для его обновления мы будем использовать refresh-токен. При получении refresh токена клиенту уходит новая пара токен + refresh-токен.

    Таким образом у злоумышленника который перехватил токен пользователя будет окно всего в 5 минут что бы что-то сделать.
    Ответ написан
    13 комментариев
  • Как перевести побитовую операцию сдвига с C++ на Php?

    AtomKrieg
    @AtomKrieg
    Давай я поищу в Google за тебя
    Это не битовая операция. Это перегруженный оператор у потока:
    www.cplusplus.com/reference/istream/istream/operat...
    В php используйте php.net/manual/ru/function.explode.php
    Ответ написан
    1 комментарий
  • Как получить доступ к картинке в ListView?

    @itdroid
    Такой подход, как у Вас - неправильный.
    За содержимое списка отвечает адаптер, и изменения этого содержимого из других мест приведет к неопределённому отображению элементов.
    Вам надо в адаптере определить метод:

    updateImage(int position, int imageResId);

    В этом методе необходимо запоминать новую картинку для соответствующей позиции и вызывать метод notifyDatasetChanged() , чтобы обновить содержимое списка.
    После этого, адаптер начнет обновление, и Вы сможете показать новую картинку, которую ранее сохранили.
    По Вашему коду видно что Вы не разобрались с тем как работает ListView/RecyclerView, прочитайте какой-то туториал по этим компонентам и тогда Вам станет ясно в чем была проблема.
    Ответ написан
    Комментировать
  • Какой операцией можно выполнить это действие?

    @Free_ze
    Пишу комментарии в комментарии, а не в ответы
    В первом значении информации заведомо меньше, чем во втором => никак.

    UPD:
    ideone.com/dNCxZU
    long low = 0b101111111001001010111010011L;
    long high = 0b100010000000000000000000100000L;
    int moveSize = Long.toBinaryString(low).length();
    
    long result = low + (high << moveSize);
    Ответ написан
    4 комментария