• С какой книги стоит начать изучать html5 и css3?

    @Za0r
    pop()
    1)Идешь на htmlacademy.ru и проходишь все бесплатные курсы.
    2) На этом пункте,невольно задаешься вопросом,как тебе использовать эти знания. Смотришь как верстать простейший макет https://www.youtube.com/watch?v=vFjRVugE030 на float.
    3)Проходишь все платные курсы.
    4) Читаешь https://www.ozon.ru/context/detail/id/22435909/ эту книгу. Можешь найти на просторах в инете.
    5) Берешь самостоятельно простенький макет и верстаешь его на флексах и адаптивно( на этом пункте будешь знать что это.
    6) Читаешь https://www.ozon.ru/context/detail/id/137213400/ .
    7) На этом этапе ты знаешь что существуют предпроцессоры,и хочешь изучить,советую https://youtu.be/H4cG4tbc-xQ для знакомства.
    8) читаешь такое и присматриваешь что учить дальше:
    1) glivera-team.github.io/how-to/2016/05/02/how-to-st...
    2)https://coggle.it/diagram/52e97f8c5a143de239005d1b...
    3)https://github.com/zualex/devmap
    4)blog.flppv.me/all/frontend
    5)https://medium.com/russian/%D0%BE%D1%82-%D0%BD%D1%...
    6)krekotun.ru/ui-developer-skills.html
    7)Как быстро подтянуть свой уровень веб-разработчика, чтобы соотвествовать требованиям работодателей?
    8)webmasters.teamdev.com/#html

    9) Дальше думаю сам разберешься,Удачи!
    Ответ написан
    Комментировать
  • Что делать если команда говнокодит?

    @ArcadyZherdev
    Проблема не техническая, а организационная и соответственно решить технически её полностью нельзя. Никакие хуки на гит репо и continuous integration не защитят на 100%. Если есть желающие нагадить в коде они умудрятся это сделать.
    Решается организационно, либо ктото за ними подтирает и ему за это платят ..либо ктото заставляет их исправлять (про code review выше писали) ..воспитывать/обучать "серунов" (если работает) ..либо увольнять.
    Ответ написан
    Комментировать
  • Что делать если команда говнокодит?

    search
    @search
    мама говорит что я особенный
    Ой как я вас понимаю. Сам страдал от подобного долгие годы (9 лет, если быть точным). К сожалению, мгновенного решения для вашей проблемы не существует. А смена работы - всего-лишь временная отдушина. В моём случае технический скилл был (и надеюсь остаётся) выше среднего, а лидерский (так называемый софт-скилл) - на нуле. Умение договариваться с людьми, адекватно реагировать на нужды коллег, продукта и бизнеса - оказались очень полезными навыками. К сожалению этот скилл не прокачаешь за выходные. Вот примерный список того что можно делать для прокачки лидерских качеств:
    - читать книги (в т. ч. художественную литературу)
    - участвовать в опен-соурс проектах
    - делиться опытом (выступать на митапах, выступать в кругу коллектива)
    - прокачивать т.н. "эмоциональный интеллект"

    В своём случае я почувствовал ощутимые улучшения примерно через год целенаправленной работы над собой.

    Как показывает жизненный опыт, на одних-лишь технических навыках в рай не уедешь. Чтобы быть красавчиком нужно уметь решать конфликтные ситуации.
    Ответ написан
    2 комментария
  • Какие библиотеки, плагины и прочее для верстки вы используете в своих проектах?

    SergGrbanoff
    @SergGrbanoff
    UX/UI Desinger, Front-End Developer
    Фреймворки, библиотеки и плагины для верстки сайта.

    1. Bootstrap - самый популярный HTML, CSS, и JS фреймворк в мире для разработки отзывчивых, mobile-first проектов в вебе.

    2. slick - Адаптивный слайдер для сайта

    3. Owl Carousel 2 - красивый, отзывчивый карусельный слайдер

    4. Fotorama - плагин для создания галереи на сайте

    5. MagnificPopup - плагин для создания модальных окон

    6. FancyBox - построениe всплывающих окон

    7. Mmenu - мобильное меню


    8. bxSlider - отзывчивый jQuery-слайдер для контента


    9. Fullscreen Slit Slider - слайдер с интересной анимацией

    10. parallax.js - эффект Parallax

    Первая 10-ка
    Ответ написан
    Комментировать
  • Можно ли сортировать по цене в компоненте search.page?

    alexfilus
    @alexfilus
    Senior backend developer
    Если вы выводите товары, то разумнее использовать компонент catalog.search. А там можно сортировку использовать любую, какую поддерживает catalog.section. В том числе и по цене.
    Ответ написан
    Комментировать
  • Как составить mysql-запрос с указанием приоритетной группы по списку ID?

    longclaps
    @longclaps
    SELECT * FROM T WHERE T.`артикул` = a
    UNION DISTINCT
    SELECT * FROM T WHERE T.`название` = n
    UNION DISTINCT
    SELECT * FROM T WHERE T.`бренд` = b;
    Ответ написан
    1 комментарий
  • Как правильно оценить проект?

    GriNAME
    @GriNAME
    Front-End Developer, Android Developer
    Кроме оценки по времени, можно использовать и другие методы расчета стоимости. В основном все новички не могут адекватно оценить время, за которое они сделают ту или иную работу. Да и у опытного мастера такое тоже может быть иной раз. Все зависит от проекта и самого человека. Так же не игнорируем индивидуальные особенности. А клиенту желательно знать точную или приблизительную цену перед началом работ, а не когда она завершится и будет зафиксировано потраченное время для расчетов. Поэтому я начинал с оценки по секциям вёрстки, а не времени за работу. Каждая секция 800 рублей (ценник для джуниора). И считаем, хедер, футер, разные блоки. Цена получается очень адекватная для обоих сторон и ее легко посчитать.

    Сейчас я считаю не секции а БЭМ сущности. Мне это удобнее чем, оценка времени (касательно верстки, какие-то работы оцениваю по времени, выше в ответе про временную оценку очень хорошо все описано) Я верстаю по БЭМ и весь проект разбираю на независимые блоки. Например верстка какой-нибудь карточки, а она используется в 5 местах на сайте с 2-3 видами кастомизаций, в зависимости от размещения, но я то благодаря БЭМ верстаю ее только один раз. Потом только готовые классы расставляй. Поэтому считаю БЭМ сущности, если они много раз повторяются ещё накидываю небольшую сумму.

    По посадке (также внедрение) верстки все зависит от того как вы работаете с бекендом. Думаю для вас подойдёт 50-100% от стоимости верстки брать за посадку. В зависимости от сложности.

    Совет рабочий, так я считал начиная со второго своего заказа. И после первого неудачного, где оценил очень дёшево, все пошло хорошо. И заработок и клиенты) поиск клиентов это отдельная тема)

    И мой совет, как работать быстро и качественно. Изучайте современные инструменты для работы. Сборщики проектов, препроцессоры, БЭМ и так далее. По своей натуре я этими вещами начинаю интересоваться ещё до того как получил хорошую базу знаний и мне это помогло очень быстро выполнять свою работу качественно, в короткие сроки, современно и удобно. Каждая работа не выглядит как очередная рутина. За счёт всех этих современных инструментов каждый раз работать очень интересно.

    Ещё если вы сами и дизайны рисуете, то изучите восьми пиксельную сетку
    https://habrahabr.ru/company/everydaytools/blog/31...
    Или расскажите об этом дизайнеру с которым работаете.
    А так же атомарный дизайн. Принцип тот же что и БЭМ, только применительно к дизайну. И оценку очень легко делать и верстать
    Ответ написан
    13 комментариев
  • Как сделать модуль с выборкой из базы данных 1с битрикс?

    babarun
    @babarun Куратор тега 1С-Битрикс
    Безумный план моих идей в руках больных людей
    Если требуется именно модуль для битрикса то воспользуйтесь конструктором https://dev.1c-bitrix.ru/learning/course/index.php...
    Ответ написан
    1 комментарий
  • Как решать конфликты интересов между клиентами фрилансера?

    GeForester
    @GeForester Автор вопроса
    веб-разработчик
    Спасибо всем за ответы! Было интересно читать вашу дискуссию.

    Я нашел интересные рассуждения на этот счет у Артема Горбунова. Процитирую:

    «Дизайнерская работа априори предполагает циркуляцию идей, шаблонов и приёмов между проектами и клиентами. Если отнять круговорот идей, наша профессия перестанет существовать.

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

    Это накладывает большую ответственность на дизайнера и объясняет клиентские страхи. Возможно, требование НДА означает неприятие клиентом этой реальности, и лучше не работать вместе. Поэтому я честно говорю всё это клиенту, когда заходит разговор о «секретности».

    Мы учимся у клиентов за их счёт. Отблагодарить их мы можем только добросовестной работой и этичным поведением.
    Ответ написан
    Комментировать
  • Где найти пример идеального UX/UI?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Может кто наталкивался на хорошие статьи на тему, что бы ссылку дизайнеру кинуть или тыкнуть заказчика мордой в теорию.

    В последнее время сам себя тыкаю в замечательную статью - UX/UI Best Practices: 125 Easy Tweaks to Optimize .... Там обо всем простыми словами и с примерами.
    Ответ написан
    2 комментария
  • Как в 1С привязать товары к нескольким разделам?

    @sciper
    Возможно я запоздал с ответом, но вдруг кому нибудь пригодится. Никаких изменений кодов выгрузки делать не надо. В 1С есть встроенный инструмент (свой модуль обмена), который позволяет построить дерево разделов такое как надо на сайте. Вы можете определить разделы и подразделы на сайте независимо от структуры в 1С, и в таком виде выгрузить на сайт. Называется "Настройка дерева групп", в дереве могут быть и разделы и подразделы и товары в любом количестве, и товары в любом количестве разделов. Подробнее тут https://dev.1c-bitrix.ru/learning/course/?COURSE_I...
    Ответ написан
    Комментировать
  • В консоли можно только js код прописать?

    Stalker_RED
    @Stalker_RED
    В целом да, но...
    В ие10 и ниже можно использовать VBScript, и perl (с плагином).
    В хромиуме некоторых версий можно использовать Dart.
    Еще когда-то в ИЕ можно было JScript, и вообще любые языки поддерживаемые WSH (и можно добавлять в систему любые свои!).
    К некоторым браузерам можно добавлять плагины. Вот к примеру Tcl/Tk
    Supported browsers: Mozilla/Firefox TM, Netscape TM, Microsoft Internet Explorer TM, and other NPAPI compatible browsers


    Лучше не мучайте браузер, для других языков есть свои инструменты.
    Ответ написан
    Комментировать
  • Как найти файл который создаёт maillog.txt в корне сайта?

    reaferon
    @reaferon
    Проверьте .bitrix/php_interface/init.php на предмет наличия функции custom_mail()
    Ответ написан
    1 комментарий
  • Фриланс: как договариваться об оплате без голосового общения?

    opium
    @opium
    Просто люблю качественно работать
    всегда текстом обсуждаю оплату
    не встречал ни одного клиента который бы хотел это обсудить голосом, нахрена это ему ?
    Ответ написан
    4 комментария
  • Как начать брать крупные заказы на фрилансе?

    paulradzkov
    @paulradzkov
    Дизайнер, верстальщик, начальник отдела UI
    Большинство советует потратить полгода-год, работая в компании, но вопрос стоит «Как начать брать крупные заказы на фрилансе?». Да, работа в продуктовой компании поможет поднять свой уровень, но это не тот ответ. После работы в хорошей компании может и не захотеться возвращаться во фриланс. Вопрос стоит «как повысить свою компетентность, продолжая работать на фрилансе, и выбраться из потенциальной ямы лендингов и бложиков?»

    Есть разница в подходах к разработке. На фрилансе, обычно, проектная работа, сделал побыстрее, получил деньги и забыл. В компаниях при продуктовой разработке над одним продуктом работают по много лет, продукт живет, усложняется, эволюционирует. Чтобы продуктом было легче управлять, используют всякие фреймворки, архитектуры, подходы в проектировании и т.д. Без длительной работы над одним проектом всё это не нужно.

    Применяйте продуктовые подходы во фрилансе.
    Свяжитесь с прошлыми заказчиками и поинтересуйтесь, всё ли работает как ожидалось, надо ли что-то доделать, переделать или улучшить. Заполучите постоянных заказчиков. Если повторно поработаете над своим прошлым проектом, заметите, что было сделано не очень, и поймете, как делать лучше сразу.

    В новых проектах старайтесь выторговать больше времени. И за это дополнительное время пробуйте сделать больше, чем просили. Например, сделайте клиентскую оптимизацию, выбейте как можно больше очков в pagespeed, напишите документацию. Делайте проекты с мыслью о том, что этот проект к вам вернется и пробуйте на практике, всё, что хочется изучать.

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

    Саморазвитие на фрилансе по-любому будет идти медленнее, чем в развитой продуктовой компании.
    Ответ написан
    3 комментария
  • Как декодировать JS []?

    @vshvydky
    В конце вашего кода есть () признак выполнения, меняем ее на toString() и получаем функцию как текст
    "function anonymous() {
    $(document).ready(function() {
      $('i').hide();
    })
    
    $(window).load(function() {
      $('i').show();
    
      var twitterPos = $('#twitter').position();
      var githubPos = $('#github').position();
      var stackPos = $('#stack').position();
      var linkedinPos = $('#linkedin').position();
      var codePos = $('#code').position();
      var plusPos = $('#plus').position();
      var mailPos = $('#mail').position();
      var imgPos = $('.me').position();
      
      $('i').css({
        position: 'absolute',
        zIndex: '1',
        top: imgPos.top + 100,
        left: '47%'
      });
      
      setTimeout(function() {
        $('#twitter').animate({
          top: twitterPos.top + 10,
          left: twitterPos.left - 10
        }, 500);
      }, 250);
      
      setTimeout(function() {
        $('#twitter').animate({
          top: twitterPos.top,
          left: twitterPos.left
        }, 250);
        
        $('#github').animate({
          top: githubPos.top + 10,
          left: githubPos.left - 6
        }, 500);
      }, 500);
      
      setTimeout(function() {
        $('#github').animate({
          top: githubPos.top,
          left: githubPos.left
        }, 250);
        
        $('#stack').animate({
          top: stackPos.top + 10,
          left: stackPos.left - 3
        }, 500);
      }, 750);
      
      setTimeout(function() {
        $('#stack').animate({
          top: stackPos.top,
          left: stackPos.left
        }, 250);
        
        $('#linkedin').animate({
          top: linkedinPos.top + 10,
          left: linkedinPos.left
        }, 500);
      }, 1000);
      
      setTimeout(function() {
        $('#linkedin').animate({
          top: linkedinPos.top,
          left: linkedinPos.left
        }, 250);
        
        $('#code').animate({
          top: codePos.top + 10,
          left: codePos.left + 3
        }, 500);
      }, 1250);
      
      setTimeout(function() {
        $('#code').animate({
          top: codePos.top,
          left: codePos.left
        }, 250);
        
        $('#plus').animate({
          top: plusPos.top + 10,
          left: plusPos.left + 6
        }, 500);
      }, 1500);
      
      setTimeout(function() {
        $('#plus').animate({
          top: plusPos.top,
          left: plusPos.left
        }, 250);
        
        $('#mail').animate({
          top: mailPos.top + 10,
          left: mailPos.left + 10
        }, 500);
      }, 1750);
      
      setTimeout(function() {
        $('#mail').animate({
          top: mailPos.top,
          left: mailPos.left
        }, 250);
      }, 2000);
      
    })
    }"
    Ответ написан
    1 комментарий
  • Почему не срабатывают функции?

    @MrTimon
    Когда вы изменяете количество
    $val['COUNT']=$val['COUNT'] - 1;
    или
    $val['COUNT']=$val['COUNT'] + 1;

    то сам массив $arrBasket не изменяется. Вам нужно или изменить эти записи на такие
    $arrBasket['basket']['products'][$key]['COUNT']--;
    и
    $arrBasket['basket']['products'][$key]['COUNT']++;

    или в фориче перед объявлением $val поставить знак & , получится как-то так:
    foreach($arrBasket['basket']['products'] as $key=>&$val)


    Скорее всего ошибка здесь.
    Ответ написан
    1 комментарий