• Что не так с этим SVG-файлом?

    delphinpro
    @delphinpro
    frontend developer
    Нормально отображается.

    Могу немного пофантазировать - у вас стоит адблок, а имя файла очень тянет на "рекламное".
    Ответ написан
    2 комментария
  • С помощью чего лучше делать параллакс эффект?

    LenovoId
    @LenovoId
    svg, css,js
    Ответ написан
    Комментировать
  • Jade, для чего это нужно?

    delphinpro
    @delphinpro
    frontend developer
    Поймите уже что emmet и jade/sass решают разные задачи.
    Emmet разворачивает короткие аббревиатуры в полные выражения во время написания кода, что дает значительное ускорение в работе. Но это всё что он умеет.
    Препроцессоры и шаблонизаторы обрабатывают ваш код после его сохранения. Они позволяют аккуратно структурировать код, разделяя его на логически завершенные блоки.
    Шаблонизатор позволяет не копипастить кучу карточек товара в каталоге (например), а написать цикл и использовать в нем единственный подшаблон карточки. Если потребуется (а во время верстки обычно требуется ), то меняем код карточки только в одном месте, а не десяток-другой накопипасщенных. Это только пара примеров использования шаблонизатора, но и из них видно, что Emmet сюда ну никак не приплетешь.
    Препроцессоры тоже дают кучу плюшек и возможностей: переменные, миксины, условные конструкции и циклы, и много всего (emmet здесь тоже не при делах). Честно говоря, все это много раз пережевано в интернете. Вам следовало бы ознакомится с несколькими статьями по теме, а не вопросы задавать.
    Ответ написан
    7 комментариев
  • Jade, для чего это нужно?

    Чтобы быстрее разрабатывать и проще поддерживать.

    Если вы не понимаете зачем нужны эти инструменты - значит вы не умеете ими пользоваться.
    Научитесь - и вопрос отпадет сам собой.
    Ответ написан
    Комментировать
  • Codewars - поможет ли?

    iCoderXXI
    @iCoderXXI
    React.JS/FrontEnd engineer
    Сам там балуюсь в свободное время. С точки зрения фронтенда он не так полезен, т.к. однобоко задействуется язык. Тем не мнее для глубокой проработки алгоритмов он вполне годится и полезен.

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

    HamSter007
    @HamSter007
    HTML/CSS верстальщик
    Когда видишь то, чего нет в примерах bootstrap =)
    c27b0d6ccd7642c89c3dc0d48bff8d18.jpg

    Решение:

    <div class="full-bg">
      <div class="container">
          ...
      </div>
    </div>


    + стили

    .full-bg {
      background: color;
    }
    Ответ написан
    3 комментария
  • Как очистить форму после выполнения?

    maxfarseer
    @maxfarseer
    https://maxpfrontend.ru, обучаю реакту и компании
    Для генерации id использую библиотечку node-uuid
    Например:
    import { v4 } from 'node-uuid'
    ...
    const myId = v4()
    ...
    Ответ написан
    Комментировать
  • Какие есть интересные блоги современных JavaScript ниндзя?

    Ronnie_Gardocki
    @Ronnie_Gardocki
    Я у мамы фронтендщик.
    Блоги не надо мониторить, надо подписаться на пачку дайджестов, и там вы найдете ссылочки на почти все достойные статьи, включая менее известных (но не менее крутых) товарищей.
    Получать 5-10 писем с кучей ссылок в неделю намного проще и эффективнее, нежели чем чекать 10+ блогов, где апдейты бывают раз в 1-6 месяцев.
    Ответ написан
    3 комментария
  • По сетке это или не по сетке?

    delphinpro
    @delphinpro
    frontend developer
    Налицо ошибка дизайнера. Ему следует перестроить сетку. Именно сетку, а не блоки с контентом. Хотя их немного тоже затронуть придется.

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

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

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

    Ronnie_Gardocki
    @Ronnie_Gardocki
    Я у мамы фронтендщик.
    Оценивать надо исходя из вашего желаемого часового рейта. И все.
    Ко мне если обратяться с просьбой сделать что-то простое, что требует N часов работы, то я и скажу им что это будет стоить N * hour-rate. При этом я естественно предупрежу людей, что обращаться ко мне с созданием чего-то простого нецелесообразно, ибо огромное количество более низкоспециализированных людей сможет это сделать за N * hour-rate/5 (или /10).
    Все остальные критерии не имеют никакого значения. Сложно это или нет. Это рыночные отношения, где все крутится вокруг спроса и предложения.
    Ответ написан
    4 комментария
  • На каких IT-специалистов выше спрос за рубежом?

    @qazqazasda
    Спрос на профи.
    И на рынке бьются друг с другом излишки непрофессионалов, которые работают за еду.

    Чтобы стать профи нужно очень много лет потратить.


    Чтобы тратить много лет и это не было скучно, чтобы не устать и не отступиться - всего-то заниматься нужно тем, что лично тебе интересно.
    Ответ написан
    2 комментария
  • Автоматизация тестирования ractjs/redux enzym + mocha, с чего начать?

    maxfarseer
    @maxfarseer
    https://maxpfrontend.ru, обучаю реакту и компании
    Начать с unit-тестов для редьюсера и создателей действий. Хорошо описано на 1й странице документации - redux.js.org/docs/recipes/WritingTests.html

    По тестированию интерфейса - не силен в этом, но enzym выглядит очень круто, даже лучше чем стандартные реактовские утилиты для тестирования.

    Еще недавно вышла Hypernova

    P.S. вы бы вопросику еще тэг "react" поставили, было бы больше просмотров. Я и не знал, что есть на тостере тэг redux.
    Ответ написан
    Комментировать
  • Пособие по алгоритмам для самых начинающих?

    dadster
    @dadster
    учить инглиш тут - https://t.me/langhacks
    очень круто объясняют тут, но надо английский знать
    https://www.khanacademy.org/computing/computer-sci...
    Ответ написан
    Комментировать
  • Задача про получение злодея по дате?

    @kgorozhanov
    Front-End Developer
    Передаешь просто объект даты new Date()
    getMonth() - возвращает число от 0 до 11
    getDate() - возвращает номер дня в текущем месяце
    % 10 - возвращает остаток от деления
    Итого берем с первого массива по индексу Фамилию со второго Имя, получается что в для каждой даты у нас свой злодей.
    Ответ написан
    2 комментария
  • На чём лучше вести локальную разработку?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Пацаны, почему вы все такие модные? Если вы сами не знаете зачем оно вам надо, то зачем этим пользоваться? Когда поймёте, что оно вам точно надо, что оно ускорит/упростит разработку, тогда пользуйтесь. А использовать ради того, чтобы просто использовать и учиться - это явно плохой путь.
    Ответ написан
    4 комментария
  • Как уйти с распутья технологий?

    @0x131315
    Стратегию уже подсказали: найти любую работу, чтобы кушать, и тем самым выиграть время на изучение чего-то, что поможет зарабатывать больше, и тем самым выиграть еще больше времени, и в конце концов изучить то, благодаря чему будешь работать не на зарплату, а на удовлетворение.

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

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

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

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

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

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

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

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

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

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

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

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

    С третьим - придешь, когда поймешь, что тебе это нужно. Из-под палки не учатся.

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

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

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

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

    Сложность задачи не особо влияет на мотивацию, а вот факт решения/нерешения - влияет сильно. Не решил - значит не осилил, не осилил - значит не достоин, не достоин - значит иди ко дну и не рыпайся. Это как импотенция: импотент - значит не мужик, не мужик - значит никто, ничего не достоин и об тебя можно ноги вытирать. Подсознание портит всю малину, так что не следует давать ему шанса - лучше решить задачу попроще, чем не решить по сложнее.
    Ответ написан
    7 комментариев