• Как расшифровать эту строку в коде?

    IgorPI
    @IgorPI
    document - текущий документ
    getElementById() - метод получения элемента используя id
    onchange  - свойство элемента для обработчика события
    function (event){} - анонимная функция (обработчик события)
    
    event - локальная переменная в контексте анонимной функции
    target - таргет он и в африке таргет (целевой элемент, где происходит туса)
    parentNode - родительская нода
    childNodes[1] - у родителя есть дети
    data - у детей есть данные
    slice(1) - отхренашить кусочек
     
    currentKey - отхренашеный кусочек
    Ответ написан
    Комментировать
  • CMS или Framework?

    Sanes
    @Sanes

    К тому же не совсем понимаю, если выбрать в пользу фреймворка, то вроде как JS говорят лучше, чем PHP (не знаю почему)

    Ни одного плюса не вижу. Тем более для проектов, где требуется выполнять арифметические операции.
    Судя по вопросу, сами вы реализовать это не сможете ни в каком виде.
    Ответ написан
    Комментировать
  • Фреймворк для однотипных лендингов?

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

    @bogomazov_vadim
    const mainWal = document.querySelector('.main__wal');
    const clipS = document.querySelector('.clip__s');
    const clipSel = document.querySelector('.clip__sel');
    
    
    mainWal.style.overflowY = 'hidden';
    clipS.style.cssText = `opacity: 0.7; top: ${mainWal.scrollTop}px, z-index: 5;`;
    clipSel.style.cssText = `height: ${this.height + 100}px; opacity: 1; top: ${mainWal.scrollTop}px, width: ${this.width}px; z-index: 6;`;
    Ответ написан
    Комментировать
  • Как переделать массив с объектами?

    @user49981
    Ответ написан
    Комментировать
  • Как исправить ошибку Illegal string offset в Blade?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Ктулху Всемогущий, ну что в голове у этих людей? Почему они пишут, не думая? Или не пишут, а копипастят?

    Что делает $arrData = $this->posts[$num];? Извлекает элемент массива.

    Что кажется в $arrData? Верно, там окажется:
    [
        'title'  => 'Тайтл страницы 1',
        'author' => 'Автор страницы 1',
        'date'   => 'Дата публикации страницы 1',
        'teaser' => 'Короткое описание страницы 1',
        'text'   => 'Полный текст страницы 1',
    ]

    Что будет в $arrTemp, если этот массив итерировать? Там будет СТРОКА. Дальше сам? Или всё ещё нет?
    Ответ написан
    Комментировать
  • Как быть хорошим junior?

    @big_hasan
    Порой, после посещения энного количества собеседований, складывается ощущение, что в понимании работодателя джун - это тот же мидл, только платить ему будут как джуну))
    В ряде случаев под джуном может подразумеваться почти состоявшийся мидл, но с недостаточным опытом работы (без опыта), которому дают такой своеобразный испытательный годик, после которого "посвящают" в мидлы.
    Ответ написан
    Комментировать
  • Как эффективно выучить PHP?

    @0x131315
    ИМХО ключевое в php, когда имеешь базу - это не сам язык, а понимание того, какую роль он выполняет, и какое место в архитектуре эта роль занимает.
    Что касается php, то это в первую очередь скриптовый язык, созданный специально для связи Фронта с Беком, т.е. основная его функция - предоставление доступа к БД сервиса для html и js-кода, работающих на фронте.

    На сегодняшний день php решает следующие задачи:
    -доступ к БД
    -вспомогательные вычисления
    -шаблонизация
    -связь с внешними сервисами
    -предварительное кеширование

    Нужно в первую очередь понять как работает Веб, что такое фронт и бек, как они взаимодействуют, что такое хит, что такое ajax, как происходит идентификация посетителя (в частности как работают сессии и куки). Это основные моменты.

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

    Очень важно иметь хоть какую-то базу по алгоритмам и структурам данных. Если её нет - её следует подтянуть. Без этого будешь строить велосипеды на ровном месте, и запугаешь народ своим кодом.

    Очень важно изучить php.net
    Не обязательно штудировать всё, но стоит как минимум взглянуть что там вообще есть.
    Этот сайт - нечто вроде документации по STDLIB языка, в ходе практики ты к нему будешь возвращаться ещё тысячи раз.
    Многие задачи, которые ты планируешь решить велосипедом, уже решены за тебя, и входят в язык - нужно просто знать про то, что язык умеет из коробки, а что нет.

    Очень важно поработать с фреймворками и репозиторием composer: большинство из задач, которые встанут перед тобой, уже кем-то решены, и существует либо готовая библиотека, либо как минимум публичный интерфейс, который ты можешь реализовать, чтобы не натворить архитектурных ошибок.
    Посмотри на symfony, почитай стандарты PSR.
    Большинство задач решается декомпозицией алгоритма, и сборкой приложения из готовых библиотек или PSR-интерфейсов. Остаётся только это всё сконфигурировать, и дописать немного кода для склейки всего этого в единое приложение.

    Т.к. php - это прокладка между html и БД, обязательно нужны основы html, SQL, и практика по развертыванию, проектированию, и управлению какой-либо СУБД.
    Наиболее популярная и простая СУБД - MySQL, на ней и сконцентрируйся. Намного позже, когда будет опыт, обязательно попробуй postgres - это намного более совершенная СУБД, но она сложнее MySQL, и новичкам с неё начинать не стоит.
    Особо углубляться в sql не стоит, т.к. в чистом виде с ним будешь работать мало, по большей части взаимодействие с БД сведётся к установке ORM-библиотеки, например doctrine2. Вот ORM стоит изучить плотнее, они предоставят тебе простой и приятный доступ к данным в БД, и обеспечат лёгкие миграции состояния БД.

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

    Очень сильно поможет хороший редактор кода, например phpstorm - он будет подсвечивать твои ошибки, предоставит интерактивные подсказки по коду, и позволит быстро инспектировать код большого проекта, параллельно работая с ФС сервера, БД и docker-контейнерами. Серьезно ускоряет и упрощает работу.
    Ответ написан
    4 комментария
  • Каким скриптом можно реализовать обучение пользователей?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    https://introjs.com/ - пару раз приходилось делать туториал на vue, юзал эту библотеку.

    Создаёте компонент, кладёте его поверх приложения, например, в app.vue, описываете в нём шаги и селекторы к элементам.

    Есть готовый компонент с intro.js под капотом, но его я не юзал https://github.com/alex-oleshkevich/vue-introjs
    Ответ написан
    1 комментарий
  • В чем отличие такого присвоения класса в CSS?

    fallus
    @fallus
    p - выбор тэга p
    p.blue - выбор тэга p с классом blue
    .blue - выбор ВСЕХ элементов с классом blue

    p.blue - наиболее приоритетный селектор. То есть:
    p.blue{
      color: red
    }
    p{
      color: orange
    }
    .blue{
      color: green
    }


    Цвет текста будет красным.
    Ответ написан
    1 комментарий
  • Как повесить обработчик клика в react-yandex-maps?

    0xD34F
    @0xD34F Куратор тега Яндекс.Карты
    почему вот такой код не работает

    onLoad={(inst)=>{return inst.events.add('click', clickOnMap)}}

    Потому что через onLoad вы получаете доступ к ymaps api, а не к экземпляру карты.

    Хотите экземпляр карты - используйте instanceRef:

    instanceRef={inst => inst.events.add('click', clickOnMap)}

    Но вообще, для того, чтобы назначить обработчик клика, экземпляр карты трогать не надо:

    onClick={clickOnMap}
    Ответ написан
    Комментировать
  • Как создать сайт типа пикабу?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    Ребят, пользуясь случаем хочу спросить, как мне сделать сайт типа Авито. Ну или Яндекс.Маркет - не особо важно.
    Главное, чтобы денег заработать.
    Какую мне библиотеку скачать для этого?
    Ответ написан
    2 комментария
  • Сколько стоит час веб-разработчика-фрилансера?

    longclaps
    @longclaps
    Базовая ставка - один.
    Далее идут повышающие коэффициенты:
    • знаю HTML+CSS - 1.5
    • знаю jQuery - 1.2
    • знаю C++ - 2.8
    • знаю Python - 4
    • знаю множество алгоритмов и структур данных - 100500
    • знаю основы ООП - 42
    • математическая подготовка есть - 3.1415

    Коэффициенты суммируются, а вовсе не перемножаются, как алчно думают некоторые.
    Итак, вы можете приступать!
    Ответ написан
    3 комментария
  • Сколько стоит час веб-разработчика-фрилансера?

    @deliro
    Ты веcь такой кругом молодец, то знаешь, это знаешь. А теперь представь себе среднестатистический проект, который должен приносить бизнесу деньги. За две недели работы ты едва напишешь хлипкий CRUD для данных, неправильно смаппив бизнес-сущности в объекты ORM, ещё через месяц натянешь какой-то слайдер на jQ, попутно захватив 2мб JS кривых библиотек, а через два заказчик поставит тебе плохую оценку, потому что твой ценник он оплатил не за то, что ему нужно, а потому что ты знаешь монады, которые ему даром не сдались.

    А теперь давай представим простого программиста. Из алгоритмов он с трудом вспоминает сортировку пузырьком, а двусвязный список — предел его знаний о структурах данных, и даже этим списком он пользовался два раза в жизни. Хаскель он никогда не видел в глаза, C++ учил только в школе, вместо этого пишет неэффективный код на PHP. И у него есть опыт. За день он распишет сущности, за второй сделает универсальный CRUD, на третий день поднимет фронт на React'е с SSR. Да, внутренности проекта будут "медленными". Вместо O(logN) что-то будет выполняться за O(N) или даже O(N^2), но всем похер. Пока всё работает на приемлемом уровне — бизнес радуется.

    Кстати, к чему эта поучительная лапша? Я хотел сказать, что всеми этими модными словами можно пугать друзей и преподавателей, но в реальной жизни все алгоритмы уже реализованы, все типы данных уже подобраны оптимально. Знать их полезно для себя (чтобы мозг не атрофировался), но не для работы. Для работы тебе нужны такие навыки как:

    * Оптимальный баланс между говнокодом и идеальным кодом
    * Оптимальный баланс между скоростью разработки и оптимизацией кода
    * Оптимальный баланс между поддерживаемым кодом и костылями
    * Умение использовать те инструменты, с которыми ты работаешь. Опять же, для того, чтобы писать быстро, при этом имея минимальное количество говнокода и обеспечивая максимальную поддерживаемость (в пределах сроков). Например, можешь выкинуть в помойку свой Vim, как бы круто ты себя не чувствовал, разрабатывая в консольном редакторе, если продукты от JetBrains позволят за это же время сделать что-то лучше или чего-то больше
    * Чувство "знаю больше менеджеров". Это то чувство, когда тебе кажется, что "вот эта фича скоро изменится" и надо сделать архитектуру заранее более гибкой. Или "вот эту фичу мы через месяц выпилим" и не надо тратить на неё силы — напиши костыль и через месяц с чистой совестью удали его
    * Знания, как сделать ту или иную фичу. Потому что фичи повторяются (немного видоизменяясь) от проекта к проекту. И если ты сделал что-то за два дня, в следующий раз ты похожее сделаешь за три часа

    Что касается инструментов, выбери любой полноценный фреймворк, который умеет решать 90%+ потребностей "из коробки": Symfony, Django, Laravel

    Всякие "минималистичные" поделия вроде Falcon, Flask (в PHP не знаю, я на питоне пишу) оставь хипстерам. Пусть они говорят: "Мой фалкон такой быстрый, он написан на Cython". Тебя это не должно волновать, потому что бизнес с твоей скоростью разработки уже заработал достаточно денег, чтобы купить ещё десять серверов, пока фалконисты неделю гуглили, как прикрутить миграциии и запустить юнит-тесты на VPSке за пять баксов.
    Ответ написан
    5 комментариев
  • Что делают эти символы в React?

    0xD34F
    @0xD34F Куратор тега React
    1. https://developer.mozilla.org/ru/docs/Web/JavaScri...
    2. https://developer.mozilla.org/ru/docs/Web/JavaScri...

    Забудьте про реакт на ближайшие полгода и марш изучать js.
    Ответ написан
    6 комментариев
  • Площадка с задачами для практики?

    @Stas_Yaroslavtsev
    Начинающий игродел и веб-разработчик
    https://www.codewars.com/
    https://checkio.org/
    https://stepik.org/course/67/promo
    https://stepik.org/course/512/promo
    https://pythontutor.ru/
    https://pythonworld.ru/osnovy/tasks.html
    cppstudio.com/cat/285

    Всё легко гуглится, в чём проблема?
    Напишите в браузере:
    c++ задачки
    python задачки
    Ответ написан
    Комментировать
  • Как разбить массив на два равных?

    rockon404
    @rockon404
    Frontend Developer
    const part1 = arr.slice(0, arr.length / 2);
    const part2 = arr.slice(arr.length / 2);
    Ответ написан
    Комментировать