• Как сделать так чтобы объект не влиял на другие html css?

    @mr-troll
    Ну, компенсировать через margin...
    Делаешь по наведению padding-bottom:50px делай и margin-bottom:-50px
    Ответ написан
  • Как верстать картинки?

    @mr-troll
    Основной принцип разработки - KISS - keep it simple .
    Вы же сделали сами для гифку для примера, она вас не устраивает чем? Качество прекрасное, я вот с мобилки смотрю. Оптимизация проигрывания - во всех браузерах потрясающая. Даже coub.com долгое время используют гифки с аудиодорожкой (возможно сейчас для видео выдают, тем кто поддерживает, webp или webm, не суть). Лишнего оверхеда нет, блок рисуется браузером один раз, лишних репеинтов, и прочего, нет, памяти и процессора жрется, вы удивитесь, просто в разы меньше, чем любая анимация с блоками. Из минусов, понятно, не такой красочный мокап, как в пнг,всего 256 цветов и максимум 1 бит прозрачности.
    Не хотите гиф, ну, тут вам уже сказали, что нет никаких проблем, в т.ч с адаптивной вёрсткой.
    У вас есть блок мокапа, у которого всегда жесткое соотношение сторон (например 4x3). У вас есть блок "экран" с анимацией тоже жёстко заданного соотношения относительно мокапа. Не надо выдумывать, задайте размер и позиционирование абсолютно в процентах. Проценты всегда будут считаться от высоты и ширины родителя (мокапа). Проценты можно высчитать и задавать дробно. Например left:22.222222%.
    Как верстать мокап адаптивно? Я бы использовал юнит vw. 1vw = 1% ширины всего экрана. Отличие в том что он применяется и к высоте. Хотите на всю ширину на мобиле мокап 4х3? Задайте width:100vw;height:75vw;.
    И не надо js анимации использовать, всё равно не оптимизируете нормально - либо страшные интервалы, либо задолбаетесь рассчитывать requestaninationframe. Используйте css анимации, лонгскрин не надо делать картинкой, надо бекграундом.
    2 блока (например сам див и :before), 2 файла изображения, от силы 15 строк css - примерно должно быть в итоге.
    Если извратиться через background image - можно в 1 html элемент вообще, с анимацией и без скриптов, адаптивно, клёво.
    Ответ написан
    3 комментария
  • Windows на ядре Linux?

    @mr-troll
    Ну, поиск в гугле подсказывает стоимость винды где-то 1-2к за лицензию. Ну допустим это стоимость рабочего дня низкооплачиваемого сотрудника. Поставив сотруднику линукс, он будет ковыряться с ним неделю (а то и всю жизнь =)), и то максимум что научится - это запустить браузер.
    Ответ написан
    Комментировать
  • Стоит ли выполнять такое задание на собеседовании на frontend разработчика?

    @mr-troll
    Ну, я стажерам в качестве тестов даю реальные задачи. Выполненные задачи. Так проще сравнивать и обьяснять как надо было. Использовать тестовый код в продакшн мало кто будет.
    Т.е представь, что это надо либо весь бизнес делать на бесплатной работе собеседуемых, либо ничего.
    Нет такого в it компаниях, где хотя бы пяток разработчиков, чтобы кто-то встал и сказал, о, заебок, нам сверстали страничку нахаляву, василич, отдыхай сегодня!
    Вёрстку стороннюю надо ещё долго под проект подгонять, так что чаще проще самому сверстать.
    Я лично никогда не отказывался от тестовых, и даже если меня брали, идеально выполненное тестовое, всё равно отправлялось в корзину, по причинам выше.
    Ответ написан
    Комментировать
  • Стоит ли идти учиться в ВУЗ будущему программисту?

    @mr-troll
    Нет
    Ответ написан
    Комментировать
  • Чему лучше учиться? Процедурному или объектно-ориентированному программированию?

    @mr-troll
    Как писал Джоел Спольски 10 лет назад
    В начале девяностых многие из нас полагали, что главная битва произойдет между процедурным и объектно-ориентированным стилем программирования, и воспринимали объектно-ориентированное программирование как средство резкого повышения продуктивности программистов. Я тоже так думал. Некоторые до сих пор так думают. Получается, мы ошибались. Объектно-ориентированное программирование прикольная штука, но не повышает продуктивность, как это обещалось. Реальное и значительное повышение производительности мы получили от программирования на языках, автоматически управляющих памятью вместо вас. Это может быть подсчет ссылок или «сборка мусора», это может быть Java, Lisp, Visual Basic (даже 1.0), Smalltalk или любой язык написания скриптов. Если ваш язык программирования позволяет выделять кусок памяти без раздумий о его последующем освобождении, то вы используете язык с управляемой памятью, и вы будете значительно эффективней программиста, использующего язык, где управление памятью производится в явном виде. Всякий раз, когда вы слышите чье-то хвастовство о том, насколько продуктивен их язык, вероятно, большую часть продуктивности они достигают за счет автоматического управления памятью, даже если не признаются в этом.


    Сейчас процедурный стиль преподносят как модное "функциональное программирование". Я работал во многих конторах, и, ооп используется в меньшинстве проектов (если даже отмести языки без нормального ооп, типа перл и питона).
    Объект - стоит использовать если у вас есть набор данных и методов для работы с ними. Если у вас просто объект представляет массив функции для работы с внешними данными, например объект математических функций (пример Math в Js) или объект/класс функций для работы с бд - это не ооп. Если ваша единственная цель например отделить логику от представления, или сгуппировать всё в объект как в модуль или в неймспейс, то это тоже не ооп. Есть ряд вещей в которых ооп полезно, но нет ничего того что вы не сможете сделать в функциональном стиле.
    Ответ написан
    Комментировать
  • JS функции, в чем разница?

    @mr-troll
    В первом случае присваивание к объявленной переменной, во втором случае к не объявленной.
    Если использовать строгий режим ("use strict" или модули) то будет ошибка. В не строгом режиме попадёт в глобальную переменную, например window.x(), а y() будет локальной, в той области где находится.
    Ответ написан
    Комментировать
  • Есть ли смысл учить jquery?

    @mr-troll
    Обязательно нужно. Это библиотека, а не фреймворк, чо там учить. В 4 версии, к которой всё идёт вместо sizzle селекторы будут на нативном document.querySelectorAll. Вообще размер минимальный получится, если всё в один bundle собираешь. У меня сам jquery занимает где-то четверть всего бандла.
    Функции типа $(selector).load(), $(...).show(500), $(...).offset(), разные обработчики событий, всё можно и нативно писать, но зачем? Используй его, если видишь что от него за зал только пару функций - выпили.
    Более того стоит выучить и jquery-ui, хотя его использовать лучше скорее в домашних проектах, но все равно, .datepicker или dialog тебе сэкономят много времени.
    Ответ написан
    Комментировать
  • Как оптимизировать поиск телефонного номера (часть строки)?

    @mr-troll
    Во-первых, юзай индекс. Он будет работать при полном совпадении или поиске по началу.
    Во-вторых, от like %phone% можно отказаться если у тебя разные поиски. Он ищет любое вхождение. Лучше заменить отдельно на:
    `phone` like "000" полное.
    `phone` like "000%" по началу .
    `phone` like "%000" по концу - делает фулскан, не оптимизируется индексами

    Оптимизировать поиск по концу можно добавив столбцы:
    1, 2, 3, 4, 5 (сколько надо), цифр с конца, с соответствующими индексами,и уже на уровне приложения искать полным равенством по нужному столбцу
    Ответ написан
    Комментировать
  • Как осуществить перетаскивание HTML-блока?

    @mr-troll
    Ответ написан
    Комментировать
  • Как оптимизировать мой код на PHP и сократить повторение функций для немного различимых переменных из массива?

    @mr-troll
    // перебор массива Market и изменение кол-ва и цены. 
    foreach ($updMarket as $p) {
      $arLoadUpdProduct = [
        "amount" => $p["PROPERTY_56_VALUE"]+$p["PROPERTY_57_VALUE"]+$p["PROPERTY_58_VALUE"], 
        "price" => min([$p["PROPERTY_53_VALUE"], $p["PROPERTY_54_VALUE"], $p["PROPERTY_55_VALUE"]])
     ];
    }
    Ответ написан
    2 комментария