• Дополнительный заработок программисту?

    При всем моем уважении, но такой подход крайне деструктивен для жизни.

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

    2) Поэтому рационально будет идти по двум путям:

    - увеличивать доход на своей текущей работе (либо при смене работы)
    - идти в полукоммерческую схему со своим продуктом.

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

    p.s. у меня в свое время была работа, поддержка ряда клиентов в it-инфрастуктуре, пару клиентов на поддержке сайтов, плюс контракты на продвижение сайтов. Просто вся жизнь превратилась в работу, как смог накопить на квартиру, сразу же от этого всего отказался в пользу жирной работы, и своих проектов.
    Ответ написан
    2 комментария
  • Соседний блок растягивает рядом стоящий и растягивает родительский элемент?

    "По-умолчанию flex-элементы растягиваются, занимая все пространство по высоте." Пропиши родителю align-items: flex-start;
    Ответ написан
    2 комментария
  • Как сделать такой border у блоков?

    border: 1px solid #000;
    margin:-1px 0 0 -1px;


    Или вот такой хак нашла) https://codepen.io/anon/pen/ZqaXNy
    .item{
      width: 200px;
      height: 200px;
      box-shadow: 
        1px 0 0 0 #000, 
        0 1px 0 0 #000, 
        1px 1px 0 0 #000,
        1px 0 0 0 #000 inset, 
        0 1px 0 0 #000 inset;
    }
    Ответ написан
    Комментировать
  • Прокомментируете тестовое на react?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    1. Хотелось бы видеть в проекте использование redux. react+redux - это самый распространенный и востребованный стек в React разработке.

    2. Почему все хандлеры и состояния находятся в App, а не в Main? Как вы потом эту кашу собираетесь масштабировать? Переносите все, что связанно только с Main в Main. По-хорошему смотрите пункт 1.

    3. Слишком много функциональных компонентов. Подумайте их где можно заменить на классы с реализованным shouldComponentUpdate или на PureComponent, чтобы убрать лишние вызовы render этих компонентов.

    4. import Logo from 'images/Logo.png';
    называть пути к ресурсам с заглавной буквы неправильно.

    5. Вместо:
    const StyledLogo = styled.img.attrs({
      src: Logo,
      alt: 'Aviasales'
    })`
      width: 60px;
      height: 61px;
    `;

    Удобней в использовании:
    const StyledLogo = styled.img`
      width: 60px;
      height: 61px;
    `;

    и:
    <StyledLogo src={logo} alt="Aviasales" />

    6.
    const Error = ({ text }) => (
      <StyledError dangerouslySetInnerHTML={{__html: text}} />
    );

    зачем тут html?
    Для сохранения переносов строки есть css правило:
    white-space: pre-line;

    7. Вместо:
    let element;
    
    if (error && !isLoading) {
      element = <Error text={error} />;
    }
    if (!error && isLoading) {
      element = <Loader />;
    }
    if (!error && !isLoading) {
      element = (
        <>
        <Heading />
        <Main
        isCurrencyExchanging={isCurrencyExchanging}
        activeCurrency={activeCurrency}
        handleCurrencyChange={this.handleCurrencyChange}
        ticketsFilteredByStops={ticketsFilteredByStops}
        stops={stops}
        handleStopsChange={this.handleStopsChange}
        handleUncheckOther={this.handleUncheckOther}
        />
        </>
      );
    }
    return element;

    Лучше:
    if (isLoading) return <Loader />;
    
    if (error) return <Error text={error} />;
    
    return (
      <>
        <Heading />
        <Main
          isCurrencyExchanging={isCurrencyExchanging}
          activeCurrency={activeCurrency}
          handleCurrencyChange={this.handleCurrencyChange}
          ticketsFilteredByStops={ticketsFilteredByStops}
          stops={stops}
          handleStopsChange={this.handleStopsChange}
          handleUncheckOther={this.handleUncheckOther}
        />
      </>
    );


    8. Вместо:
    filterTickets = (tickets, stops) => {
      return tickets.filter((ticket) => {
        return values(stops).indexOf(ticket.stops) !== -1;
      });
    };

    Лучше:
    filterTickets = (tickets, stops) => tickets.filter(
      ticket => values(stops).includes(ticket.stops),
    );


    9. Не пропускайте отступы между методами и между вложенными свойствами css.

    10. Вместо:
    componentsDidMount() {
      // много кода
    }


    Лучше:
    componentsDidMount() {
      this.fetchSomeData();
    }


    11. Директории и индексные файлы для каждого компонента, имхо, лишнее. Лучше компоненты определять в одноименном файле и только когда возникнет необходимость в его декомпозиции, заменять на директорию и index.

    12. Loader и Error самое место в директории components/core или что-то вроде того. Там же, по-хорошему, должны находиться базовые компоненты: кнопки, инпуты, табы, чекбоксы.

    13. Styled компоненты, имхо, лучше писать в файле с компонентом, где они применяются. Так анализ кода происходит гораздо быстрей и легче поддерживать. Исключение - переиспользуемые компоненты.
    Даже если вам больше нравится выносить, называть файл style неправильно, вы там описываете компоненты, а не просто стили.
    Ответ написан
    3 комментария
  • NodeList.forEach и Babel?

    rockon404
    @rockon404
    Frontend Developer
    Если мне не изменяет память, то babel-polyfill латает абсолютно все подобные дыры.
    Ответ написан
    1 комментарий
  • Что лучше использовать для анимаций css или js? И почему?

    sfi0zy
    @sfi0zy Куратор тега CSS
    Creative frontend developer
    но которую можно реализовать и с помощью css, и с помощью javascript...
    ваше мнение хотел услышать

    Мне самому нравится делать все на CSS, но... Если анимация должна быть интерактивной и нужно ее останавливать в процессе, откатывать в изначальное положение и.т.д., или некоторые ее части зависят от данных (в широком смысле - это и движение по сложной траектории, и построение графиков и.т.д.) и их проще рассчитать скриптом, чем подбирать коэффициенты в CSS keyframes, то JS будет лучшим выбором. Если это последовательность мало связанных между собой изменений, то опять же скрипты почти всегда будет проще реализовать. Если речь идет о CSS-анимациях с фильтрами (особенно SVG-фильтрами), то можно влететь в очень сильные проблемы с производительностью на слабом железе. И никакие хаки с GPU тут не помогут - все равно будет тормозить. В такой ситуации может иметь смысл не просто писать на JS, но и подключить WebGL и все делать руками на шейдерах.

    В остальных случаях стоит смотреть по ситуации - разные :hover / :focus эффекты обычно легко реализуются на CSS, и, если это так, то зачем что-то придумывать? CSS в последнее время очень даже неплох. Но если, например, в проекте вся анимация делается на JS, то может иметь смысл продолжать делать так же, сохраняя единообразие в коде.
    Ответ написан
    Комментировать
  • Как изменить форму у блока?

    Rikazavr
    @Rikazavr
    web design hippie
    transform: skew(-20deg,0deg);
    Ответ написан
    Комментировать
  • Как сделать анимированные стрелки с градиентом?

    Rikazavr
    @Rikazavr
    web design hippie
    А что нужно анимировать: сами стрелки или градиент?
    Ответ написан
    1 комментарий
  • Как правильно реализовать такое распределение дивов?

    Rikazavr
    @Rikazavr
    web design hippie
    flex-wrap: wrap; не пробовал?

    демка

    Или я неправильно поняла суть твоей задачи
    Ответ написан
    1 комментарий
  • Как поменять фон через некоторое время?

    Rikazavr
    @Rikazavr
    web design hippie
    На CodePen можно поискать решения по тегам "animate background color "

    Типа такого или такого
    Ответ написан
    2 комментария
  • Почему не работает reduce?

    rockon404
    @rockon404
    Frontend Developer
    Во втором случае вы возвращаете в колбеке не массив prev, а tec.join(" ") или tec
    И во второй итерации получаете ошибку, в попытке изменить в строке свойство '1', о чем, собственно, и написано в тексте ошибки:
    TypeError: Cannot assign to read only property '1' of string 'bla bla-bla'
    Ответ написан
    Комментировать
  • Как сделать кастомные checkbox с картинками?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    .input__kids:checked + span{
      background-image: url(/images/svg/cheked.svg);
    }

    <label class="label__kids" for="1.1">
    <input name="kids" class="input__kids" type="checkbox" name="1" id="1.1">
    <span></span>
    </label>

    и размеры, понятное дело. Сам инпут скрыть.
    Либо
    инпут не внутри лейбл, а лейбл после инпут, тогда будетinput:checked + label
    Ответ написан
    2 комментария
  • Как сделать такой эффект?

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    На событие mousemove повешен обработчик, который добавляет transform: translate нужным элементам. Как в этом примере, но только трансформация применяется к контейнеру с картинками-ссылками, а не к глазам.
    Ответ написан
    Комментировать
  • Как побороть неопределенность?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Я всегда следовал совету авторов всемирно известного бестселлера "Программист-прагматик" - Эндрю Ханта и Дэвида Томаса, которые пишут: «Изучайте по крайней мере один новый язык ежегодно. Разные языки решают одни и те же проблемы разными способами. Изучив несколько разных подходов, вы сможете расширить свой кругозор и не погрязнуть в рутине.» А перепробовав многое, легко определиться с собственными вкусами и предрасположенностями.
    Ответ написан
    3 комментария
  • Какой стек для верстальщика более актуальный?

    Во-первых, совет, не использовать jquery - это утопия. Тем более руки развязаны у вас, т.к. учитесь. Старые технологии === плохо, очень плохо!

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

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

    Grid - это лучшее, что я видела в css, если коротко! :) Освоив этот синтаксис, хотя бы на половину, вам откроется бонус. Говорят мультик показывают.
    Ответ написан
    5 комментариев
  • Как найти заказ если не работал 1.5 года(javascript dev)?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    У меня недели две уйдет только на получение первого заказа.
    на других биржах тоже самое выйдет, какие еще есть способы ?

    Лопата в руки + объявление в региональную газету "покопаю огороды". Все остальное дольше искать.
    Других способов нет. Есть небольшой шанс, что повезет найти заказ на 2 недели в первый день, если ценой ломануть. Но очень призрачный. Не понимаю зачем Вам это если не нравится IT.

    подозреваю что форумы и группы в вк, но конкретно не знаю что.

    Очень вряд ли, особенно если кричать везде, что IT Вы не любите и через две недели Вы точно сольетесь. Сами прикиньте - кому оно надо?
    Ответ написан
    3 комментария
  • Как переписать js класс на jquery?

    Stalker_RED
    @Stalker_RED
    this.modal = $("options.modal");
    this.overlay = $("options.overlay");
    Зачем кавычки?
    Ответ написан
    3 комментария
  • Как сравнить 2 строки посимвольно?

    yarkov
    @yarkov Куратор тега JavaScript
    Помог ответ? Отметь решением.
    // содержит ли подстроку
    console.log('Москва'.includes('Мо')) // true
    console.log('Москва'.includes('Ро')) // false
    // начинаетсяы ли с подстроки
    console.log('Москва'.startsWith('Мо')) // true
    console.log('Москва'.startsWith('Ро')) // false
    Ответ написан
    Комментировать