• Как стать спикером по фронтенду?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Но у меня вопрос, как люди становятся этими самыми спикерами?


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

    Собственно никакой магии. Либо просто случайно кто-то попросит что-то в духе "слушай, может выступишь?" либо сам.

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

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

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

    sim3x
    @sim3x
    C выступлений перед зеркалом, потом перед коммандой
    Ответ написан
    Комментировать
  • Какой цвет можно подобрать для футера?

    Elmanovyurik
    @Elmanovyurik
    Гайды мое все...
    Попробуй воспользоваться данным сервисом, вбей цвета которые у тебя уже есть, и посмотри что предложит тебе сервис, там достаточно много разных вариантов
    Color Scheme
    Ответ написан
    Комментировать
  • Как сделать ожидание на setTimeout?

    Во в первых используй setInterval.
    Во вторых поставь какой нибудь глобальный счетчик. Когда запрос отправляется увеличиваешь на 1, когда запрос вернулся уменьшаешь на 1. И если счетчик равен 0, то делаешь запросы заново. Примерно так.

    window.globalCounter = 0;
    setInterval(function(){
            if(window.globalCounter == 0){
                 // Выполнять запросы
            }
        }, 1500);
    Ответ написан
    Комментировать
  • В чем смысл html-препроцессоров?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    На чистом html много страниц выглядят так:
    main_page.html
    <!DOCTYPE html>
    <html>
    <head>
        <title>Main page</title>
    </head>
    <body></body>
    </html>

    about.html
    <!DOCTYPE html>
    <html>
    <head>
        <title>About us</title>
    </head>
    <body></body>
    </html>

    contacts.html
    <!DOCTYPE html>
    <html>
    <head>
        <title>Contacts</title>
    </head>
    <body></body>
    </html>

    С помощью jade делаем так:
    each TITLE in["Main page", "About us", "Contacts"]
        html
            head
                title= TITLE
            body

    Результат тот же. Ну и конечно ответ Serj-One вполне исчерпывающий.
    Ответ написан
  • Как на JavaScript обработать такой формат даты?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Конечно же воспользоваться лучшей библиотекой для работы со временем Moment.js.
    Ответ написан
    6 комментариев
  • Почему интерпретатор указывает нам в выводе тип number?

    evgeniy8705
    @evgeniy8705
    Повелитель вселенной
    Во всех* математических операциях операнды стремятся к неявному преобразованию к численному типу. И поэтому во всех случаях математических вычислений, кроме конкатенации строковых значений (в этом случае операнды стараются преобразоваться в строковый тип) вычисления будут равны типу number.
    Тут ничего понимать и не надо. Математические вычисления...значит вычисления в любом случае будут равны числовому типу (исключениями являются конкатенация и NaN, что логически не должно быть числовым типом, но это так)
    Ответ написан
    Комментировать
  • Почему интерпретатор указывает нам в выводе тип number?

    Deonisius
    @Deonisius
    Родился в 11110110111 году, 11000 января.
    Неявное численное преобразование примитивов. Если простым языком, то во время математических операций, операнды преобразовываются к числовым типам. Исключением в JS является сложение строковых значений, если их не получилось преобразовать к числовым. В этом случае, мы получим на выходе строку. С другим оператором, в большинстве случаем - NaN
    console.log( +[] ); // 0
    console.log( 1 / [] ); // Infinity, т.к. исходя из примера выше, +[] === 0, т.е. деление на 0
    console.log( 'A' + [] ); // A
    console.log( 'A' - [] ); // NaN


    P.S. И по поводу Infinity:
    Глобальное свойство Infinity является числовым значением, представляющим бесконечность.
    Ответ написан
    Комментировать
  • Какой цвет можно подобрать к тексту, чтобы не сильно выделялся черный на макете?

    a13xsus
    @a13xsus
    Lazy developer
    Для заголовка и подзаголовка черный цвет (белый #FFFFFF для темных фонов) с 87% прозрачностью. Грубо говоря это будет #212121, однако лучше задавать #000000 с прозрачностью, так как на разном фоне #212121 смотреться будет по-разному. А кириллические и латинские заголовки стоит не bold делать, а medium (подзаголовки - Regular) и бОльшим, чем подзаголовки, кеглем.

    3fcb779e60c64eb5b7108693bc2fbba3.png

    https://hsto.org/files/3fc/b77/9e6/3fcb779e60c64eb...
    Ответ написан
    Комментировать
  • Трудно ли устроится начинающему студенту-программисту в большом городе?

    dadster
    @dadster
    учить инглиш тут - https://t.me/langhacks
    Сайт этот конечно интересный, но полон какого-то унылого нытья. Ну затрахало этих чуваков айти, в чем проблема, пусть идут работать бухгалтерами или строителями, зачем строчить эти желчные статьи.

    Работы для айтишников МОРЕ. Если уж люди которые в 30 лет переучиваются наскоро на программистов, устраиваются на работу, то ты, молодой парень, с профильным образованием, да еще и отличник, вообще выбрось из головы эту фигню, проссто иди и работай. Эти ребята с ebanoeit просто нытики, избалованные большими айтишными зарплатами достающимися просто так.

    Единственное, что настораживает, почему "после учебы" собираешься работать? Все грамотные ребята уже чуть ли не с первого курса сайты (и не только) клепают. Не гонись сразу за программированием искусственных интеллектов, начинай что-то мелкое делать, что-то кодить, на фрилансе, на удаленке, на полставки, чем раньше чем лучше. Ждать окончания института это очень проигрышная позиция.
    Ответ написан
  • Как запустить phpmyadmin в vagrant?

    kovspace
    @kovspace
    Web developer
    Вы можете в корень вашего приложения закинуть adminer - https://www.adminer.org/
    В этом случае не нужно устанавливать никаких пакетов
    Ответ написан
    3 комментария
  • Как неопределенное поведение в javascript складывается на уровне V8?

    Nipheris
    @Nipheris Куратор тега C++
    однако неопределенные поведения мы либо обрабатывали исключениями, либо как-то логично обрабатывали входные параметры операндов (obj1 + obj2). А как же тут обрабатывается?

    А вот не поверите, есть два вида программистов: те, которые считают, что хорошо замалчивать ошибки, и те, кто УЖЕ так больше не считает. Есть даже статьи на Хабре, которые рассказывают, какой JS хороший и "надежный". Считать замалчивание ошибок надежностью - имхо это значит не стать (пока что) программистом. От ошибок можно уметь восстанавливаться, но замалчивать их нельзя.
    В качестве примера посмотрите на архитектурные подходы в Эрланге. Прям погуглите по словам "erlang let it crash". Этот подход, поддерживаемый концепцией процесса в Эрланге, говорит, что тот код, который не может дальше нормально выполняться, должен "упасть". А мы напишем другой код, который будет следить за работой основного, и в случае нештатных ситуаций будет предпринимать необходимые действия (например, перезапускать процесс).
    Да хотя что далеко ходить, концепция исключений в более популярных языках также есть способ научиться жить с ошибками, не бояться их генерировать, и уметь их обрабатывать там, где это возможно и удобно. Это первое.

    Второе: JS это язык со слабой типизацией. Это такая штука, которая позволяет написать 1 + "1" и безо всяких перегрузок в стиле C++ транслятор сам приведёт какой-то из аргументов к такому типу, чтобы операцию можно было выполнить. Вы сейчас просто в большом удивлении от того, что это возможно и кому-то такое могло прийти в голову (вы из плюсов пришли, да?). Кстати, в PHP почти то же самое. Только правила преобразований другие немного. (Кстати, почитайте об операторах == и === в JS, узнаете много удивительного, если еще не сталкивались).

    Ведь браузерные движки написаны на С++, а значит все это JS-дело определено на уровне С++, мне интересно какие внутренности определяют такое поведение.

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

    Из-за этих мелочей в JS минимум системности и логичности. Этим языком правит совместимость, а не логика. Почему он такой, какой есть, вам уже ответили.
    Ответ написан
    9 комментариев
  • Как неопределенное поведение в javascript складывается на уровне V8?

    NaNNaNNaNNaNNaN Batman!
    Если серьёзно, то это неявные приведения типов операндов. Вот отличное объяснение.
    Ответ написан
    5 комментариев
  • Как отличить полиморфизм в языках программирования?

    @MiiNiPaa
    Вам нужно хорошую книжку. Это одно из базовых понятий и вряд ли вы изучите этот вопрос на Тостере.

    Начнём с того, что основная идея полиморфизма — одинаково работать со множеством типов.

    Типов полиморфизма много, начиная с самого простого — параметрического полиморфизма, aka перегрузка функций. В Питоне, например, можно написать print x, и получить этот икс на экране. Причём получим разный результат в зависимости от конкретного типа x. В С++ можно писать cout << x, можно писать abs(x), и выполнятся будут разные действия в зависимости от x. В С, к примеру, пришлось бы самому выбирать какую функцию вызвать: abd, fabs, labs... так как в С нет перегрузки функций.

    Динамический полиморфизм работает похожим образом: представьте себе алгоритм, который должен рассчитать общую сумму задолженности. У человека могут быть займы займы разных видов, которые считаются по-разному. Вместо того, чтобы прописывать явный алгоритм действий для каждого типа займов, алгоритм работает с абстрактным типом займов, для которого определена функция Займ.ПосчитатьДолгНаДату(Дата). Конкретный алгоритм расчёта зашит в конкретный тип-потомок Займа, алгоритм лишь спрашивает какая задолженность будет на конкретную дату, и его не колышет какой на самом деле это займ.
    Ответ написан
    1 комментарий
  • Как запустить QtWebengine на windows7?

    Zifix
    @Zifix Куратор тега Qt
    Barbatum
    А Visual Studio установлена?
    Ответ написан
    1 комментарий
  • В чем моя причина провала тестового задания Яндекса?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Ну давайте я покритикую:

    возьмем файлик

    1) вы не разобрались как объявлять методы у прототипов с новой нотацией `class`:

    class Travelsort {
        constructor() {}
        sortTickets(tickets) {}
    }


    2) вы не умеете пользоваться исключениями.
    if (!Array.isArray(cards)) {
        throw new ValueError('Wrong input');
    }


    3) использование let там где должен использоваться const

    4) в принципе использование переменных там где их быть не должно

    5) вы зачем-то реализовали свою функцию сортировки, я не увидел в требованиях отсутствия возможности использовать старый добрый Array.prototype.sort

    6) Общие замечания по кодинг стайлу. snake_case там где должен быть camelCase, пишите с большой буквы то что должно быть с маленькой и т.д.

    7) нарушения принципа единой ответственности. У вас объеткт умеет и сортировать и писать куда-то. Это категорически плохо.

    8) Если исправить 7-ой пункт то наш класс превращается просто в функцию.

    Далее... берем следующий файлик

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

    2) вы зачем-то тут в прототип объекта строки впихиваете функции для парсинга CSS. Таким образом мы нарушаем принцип единой ответственности. Да и в целом расширять без надобности прототипы объектов как-то не ок.

    Чуть дальше проскролил - вы пытаетесь расширить прототип строк для того что бы добиться API jquery? ух, батенька.

    3) очень много дублирования.

    4) очень плохо с protected variations.

    Справедливости ради, ваш код входит в категорию ">50% JS кода", так что не расстраивайтесь. Просто для работы в яндексе нужен чуть более высокий уровень и понимание вещей.
    Ответ написан
    17 комментариев