• Почему скрипт выдает разные результаты?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Прежде, чем искать ошибку в коде, вам надо аналитически доказать, что вводимая вами операция обладает нужными свойствами. Нужные инструменты - бумага, карандаш, резинка, голова.
    Ответ написан
    2 комментария
  • Ревью ТЗ, по которому отказ. Какие грубые ошибки совершил?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    Может быть она уже нашли специалиста и проводить ваше code review уже было накладно.
    60ebe969797eb243490749.png

    Например стучится на эту вакансию 100+ человек, каждый высылает по тестовому заданию.

    Факторы: скорость выполнения, адекватность собеседника, личные предпочтения. Какой-то фактор сыграл не в вашу пользу, и скорее всего вы отсеялись на уровне - "так, тех. задание выполнил, но Вася Пупкин из саратова сделал на 2 часа быстрее, + понравился HR или тех. лиду".

    Итог: не расстраивайтесь, выполнять code review каждому потенциальному кандидату - это деньги, и время. Не все компании готовы выливать излишек.

    PS: у нас на позицию джуна в прошлом месяце пришло 320 резюме + тех.задание, на 150м резюме мы остановились, условно мы нашли всех кандидатов, остальные 170 остались в недоумении скорее всего. Таков бизнес :)
    Ответ написан
    1 комментарий
  • В чем моя причина провала тестового задания Яндекса?

    @Elizavetta
    Matroid: gamedev/js-разработка
    Что я не так сделал, что поставило на мне крест?

    Это не крест, это нормальная ситуация. В яндекс глубоко рано.
    По коду вам написали комментарии. Возможно, Вам стоит вернуться к C++, т.к. язык более знаком, и вывести его на лучший уровень сначала, так Вы будете развиваться в глубину.
    По резюме, не пытайтесь изучать все вширь, не думайте, что это все полезно. Работайте по списку выше, Кормен, английский.
    По возможности возьмите ментора для регулярных консультаций С++ или JS.
    Ответ написан
    Комментировать
  • В чем моя причина провала тестового задания Яндекса?

    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 комментариев
  • Не взяли на работу из-за неправильно выполненного тестового задания, посмотрите?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    Братан, индусский код, без обид

    1)
    TASKS_DIR = os.path.dirname(__file__) + '/tasks'
    тут os.path.join нужен ( + - еще можно поспорить, если б см. п 2 ты правильно заюзал)

    2)
    file_data = user['name'] + '<' + user['email'] + '> ' +\
            time.strftime('%d.%m.%Y %H:%M', time.localtime()) + '\n' +\
            user['company']['name'] + '\n\n'


    это пишется так
    file_data = f"{user['name']} < {user['email']} + >  {time.strftime('%d.%m.%Y %H:%M', time.localtime())} \n {user['company']['name']} \n\n"

    и вот так еще полубезобидно можно складывать путь из п1.

    3)
    except Exception as e:
         print(e, u'Не удалось получить задачи | get_http_error')

    есть такая вещь как ООП и паттерны, и там наружу тебе нужно передавать естестенную (читай систмную, сетевую, АПИ) ошибку, а не самодеятельность - ну нет прав на запись в твою создаваемую ДИР, что делать запустившему - код твой гадать? так он сразу увидит, что нет прав, апи кей не катит, нет роута и т.д.

    ну и , как понимаешь, весь блок коннекта к апи можно было обернуть одиним - какая разница где ошибка? ты ее выведешь, при общем неуспехе

    но ты стараешьтся, молодец - нет camel style по крайней мере (надеюсь, это осознанно? )
    Ответ написан
    Комментировать
  • Почему пустой кортеж весит больше, чем кортеж с одним числом?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    b - это не кортеж. Это просто единичка (int)
    Вот так правильно:
    a = ()
    b = (1,)
    Ответ написан
    Комментировать
  • Нужно ли знать +- ассемблер, чтобы изучать C?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    Всем программистам стоит пройти хотя бы ознакомительный курс ассемблера. Особенно тем, кто пишет на отсносительно близких к железу языках, вроде Си.

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