• Что спрашивают на позицию middle/senior php?

    drcrazy
    @drcrazy
    Спрашивают начиная с азов, мало ли что ;)

    Из того, что явно подтверждает senior level в PHP:
    1) SPL
    2) Как работает PHP - opcode cache, garbage collection, zval
    3) ООП: интерфейсы, абстракты, доступ к их членам
    4) SOLID: расшифровать и объяснить каждую букву
    5) Паттерны, и их практическое применение
    Ответ написан
    7 комментариев
  • Аыаыва аывфывфывфываы?

    @eandr_67
    web-программист (*AMP, Go, JavaScript, вёрстка).
    Интересно, сколько Вам лет, если Вы школьный курс геометрии не знаете?

    $alpha=atan2($H, $W); // Угол диагонали
    $alpha_1=$alpha+$A*PI/180; // Новый угол первой диагонали
    $alpha_2=$alpha_1+PI-2*$alpha; // Новый угол второй диагонали
    $H_new=max(abs(sin($alpha_1)), abs(sin($alpha_2)))*sqrt($H*$H+$W*$W); // Длина проекции на ось Y
    $W_new=max(abs(cos($alpha_1)), abs(cos($alpha_2)))*sqrt($H*$H+$W*$W); // Длина проекции на ось X
    // Искомый результат
    $dH=round(($H_new-$H)/2);
    $dW=round(($W_new-$W)/2);
    Ответ написан
    Комментировать
  • Чем плох этот код?

    dmitriylanets
    @dmitriylanets
    веб-разработчик
    Для использования параметров в виде массивов необходимо хорошая документация, иначе поддержка такого кода может быть значительно затруднена.
    Ответ написан
    Комментировать
  • Можно ли убрать этот ватермак?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    nadavi.ru//jpg_zoom1/410681.jpg
    google поиск по изображениям.
    Ответ написан
    7 комментариев
  • Какую cms использует toster.ru?

    pavel_salauyou
    @pavel_salauyou
    Symfony2 & Angular разработчик
    tostercms называется
    Ответ написан
    Комментировать
  • Какую cms использует toster.ru?

    hell0w0rd
    @hell0w0rd
    Просто разработчик
    joomla
    Ответ написан
    Комментировать
  • Как отправлять почту на несколько ящиков сразу?

    KorsaR-ZN
    @KorsaR-ZN
    Что вы там придумываете, если Вам нужно отправлять копию на 100 ящиков, для этого есть специальный заголовок Bcc, при этом один запрос, а не 100, а почтовый сервер сам уже все сделает, как надо и копии будут скрытыми, т.е не один из получателей не увидит email адреса других адресатов...

    $emails = [
      'mail_1@example.com',
      'mail_2@example.com',
      'mail_3@example.com',
      ...
      'mail_100@example.com'
    ];
    $to = array_shift($emails);
    $headers = "Bcc: ".implode(',', $emails)."\r\n";
    
    mail($to, $subject, $content, $headers);
    Ответ написан
    8 комментариев
  • Что спрашивают на позицию middle/senior php?

    pavel_salauyou
    @pavel_salauyou
    Symfony2 & Angular разработчик
    Спрашивали на senior (всё, что удалось вспомнить):
    можно ли взломать ssl
    для чего нужны интерфейсы и абстрактные классы
    чем отличается сервисно-ориентированная разработка от доменно-ориентированной
    как сделать так, чтобы никто не смог угнать куки через джаваскрипт, как сделать чтобы нельзя было перехватить куки
    кроссдоменные запросы
    как добавить поле в высоконагруженную базу в таблицу на продакшене где 100 миллионов записей, без отказа бля базы
    что такое партиционирование, шардинг, репликация
    как работает http
    что такое rest и soap
    что такое репликация и как передаются данные при репликации между серверами, виды репликаций
    триггеры, процедуры в базе
    про способы кеширования веб приложений
    джоины в базе
    просили написать функцию нахождения ближайшего числа в массиве, для заданного числа
    что такое рефакторинг
    DIC, ServiceLocator
    Какие паттерны знаешь и т.д.
    Ответ написан
    29 комментариев
  • Как сделать редирект после регистрации (php) ?

    cha-cha
    @cha-cha
    Это что за ад с if/else?
    Ответ написан
    Комментировать
  • Какой смысл в использовании шаблонизаторов?

    pavel_salauyou
    @pavel_salauyou
    Symfony2 & Angular разработчик
    кратко - шаблонизаторы поддерживают наследование шаблонов, не все верстальшики знают php, поэтому им проще разобраться с чистым html, по умолчанию включено преобразование html сущностей, что избавляет вас от xss injection.
    Ответ написан
    Комментировать
  • Почему компании скрывают, сколько платят своим сотрудникам?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Все пишут о том что зарплату не надо писать когда она ниже рынка.
    Это понятно и очевидно.
    Но на практике зарплату не стоит писать и когда она выше рынка, и вот почему:

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

    2. Озвученная заранее верхняя планка зарплаты может отпугнуть спецов которые хотят больше чем указано (хотя в реальности во многих компаниях есть возможность получить оффер выше того что написано в вакансии)

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

    pavel_salauyou
    @pavel_salauyou
    Symfony2 & Angular разработчик
    наверно в вашем случае нужен паттерн проектирования Фабричный метод.

    class MaterialFactory 
    {
        public static function build($type)
        {
            // тут генерим путь до класса на основе его типа
            return new $className();
        }
    }
    
    class Material
    {
        public function save()
        {
            // тут свои действия
        }
    }
    
    class SuperMaterial
    {
        public function save()
        {
            // тут другие действия
        }
    }


    потом в вашем методе

    public function save($one,$type){
         $obj = MaterialFactory::build($type);
         $obj->save();
    }


    но схему можно ещё улучшить, всё зависит от текущего вашего кода
    Ответ написан
    2 комментария
  • Можете посоветовать тему/область для дипломной работы?

    "Разработка спецификации формата XML файла для обмена данными по номенклатуре станков ФОЛР-125-634-у и их запчастей на основе CommerceML 2"
    Ответ написан
    Комментировать
  • Куда уйти с PHP?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    По поводу срачей - это будет в любом случае. Я вот косо смотрю на большинство ruby программистов, так как мой опыт общения с ними показал что большая их часть хают php, и при этому их код ни чуть не лучше. Но я так же знаю и достаточное количество толковых рубистов, которые не так страстно пропагандируют свою религию. Точно так же как знаю хороших php-шников, которые в свободное время пишут простенькие web-приложения на haskel и других языка.

    Я для себя решил уже давно, что язык программирования никакой роли не играет. И да, останавливаться на php смысла нету. Но вам нужно на нормальном уровне освоить хотя бы одну платформу. Из того что вы писали в комментариях ясно, что вам стоит попробовать себя в java хотя бы по одной причине: все виденные мною популярные технологии под java обладают неплохой архитектурой. Это вам не yii, в котором архитектуры как таковой и нет. Когда при обучении у вас жесткие рамки, стандарты... Когда инструменты подталкивают вас все делать по best-pratice, тогда можно учиться быстрее. А с иструментами вроде yii это сложно. А уже после осознания этих best-practice, осознания концепций базовых, переход с java куда угодно не станет таким уж сложным. Скажем перейти с java на php в таком ключе будет очень легко (при условии подобающих фреймворков, на вроде symfony2/zend2), как и на .NET, как и на любую другую платформу.

    Можете так же попробовать golang, тот же ruby (но не ror, ror пропитан религией), javascript (все же опыт работы с асинхронными языками программирования достаточно полезен), python идеально подойдет для написания небольших утилит или демонов... java после php осваивается нормально, возможности языков в плане построения архитектуры с большего одинаковы. Просто у вас не достаточно опыта в разработке как таковой.

    А по поводу депрессий программиста - это нормально и никак не зависит от используемых инструментов. У каждого такое бывает, нужно добавлять в жизнь немного разнообразия. Я вот для борьбы со скукой вообще решил немного попрактиковаться в написании чего-то на c++ (анализ аудио, классификация и т.д.).
    Ответ написан
    Комментировать
  • Как найти junior-y middle программиста на вакансию?

    @Vampiro
    Если нет возможности пригласить со стороны знакомого…

    Я бы попросил его решить пару небольших проблем, которые вы недавно решали и на которые у вас ушло больше, скажем, часа. Не на написание кода и тестов, а на принятие архитектурных решений. Если он уложится в 10 минут и решение будет адекватным — он ваш.

    Что-то по типу: есть каталог товаров (plain table), скажем, на 1 000 000 записей. За каждый товар голосуют пользователи на сайте и таблица с товарами постоянно обновляется. Как в такой схеме посчитать рейтинги, чтобы не уронить всю систему.

    Посидите, обсудите. Поспорьте. :)
    Ответ написан
    Комментировать
  • На чем писать проект сегодня? На PHP(Zend, Symfony) или Python(Django)?

    При всей своей любви к Symfony (особенно второй), посоветую Django или RoR. Cам бы перешёл (скорее на RoR), да грехи прошлого не пускают.
    Ответ написан
    Комментировать