• Нормальная ли ситуация на работе (описание внутри)?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Почти не пользуемся Trello, а юзаем гугл доки для задач.

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

    Не всегда удается убедить, что на реализацию нужно больше времени.

    Фиксируйте ETA задачи перед тем, как брать ее в работу. Уведомляйте об этом постановщика И TL-а. Если вдруг возникнут вопросы до реализации - спросите, на каком основании выставлялось ETA постановщиком, опираясь на кодовую базу. Во время реализации - фиксируйте возникшие трудности в теле задачи. Если ETA сильно увеличиться - обязательно уведомьте об этом TL-а и постановщика. Если вопросы возникнут в конце - ссылайтесь на комментарии и уведомления.

    Очень много времени приходится тратить на помощь другим джунам, которые не умеют/не хотят гуглить элементарные вещи (как сдедать ветку в гите, как добавить CSS свойство в JQuery).

    Это входит в ваши обязанности? Если нет - отправляйте к гуглу. Безусловно, человеком тоже надо быть и помогать по мере возможности, но не во вред вашим основным обязанностям. Если вдруг этого от вас потребует руководство - не вопрос, заводите maintenance задачу и логгируйте в нее потраченное время.

    Периодически (пару раз в неделю) орут матом менеджеры (не на прогеров, а друг на друга или просто так).

    It's ok

    Не хватает тестеров и некоторые задачи очень долго не тестируются.

    И чо? Это ваша проблема что ли? Если конкретно ваша задача долго тестируется и вопросы к вам - отправляйте в отдел тестировщиков.

    помогаю с переходом на Жиру (на Трелло ругается наш менеджер), настраиваю там все...

    Вообще говоря это прямая задача вашего PM-а и админов.

    Это правда не особо нормально или я много хочу?

    То, о чем вы тут писали - называется технический процесс. Да, в вашей компании он не очень.
    Ответ написан
    1 комментарий
  • Можно ли сказать, что Java и Python имеют одни и те же возможности?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    они говорят, что если рассматривать языки, то фактически они имеют один и тот же спектр возможностей.

    Ложкой стейк тоже кушать возможность есть)) Вопрос цены для той, или иной задачи.

    Веб-приложения

    Слишком широко. Для целого ряда web приложений - оптимальнее php)).
    Допустим вам не подходит php, как stateless язык. Я бы выбрал java, в отличии от питона тут есть работа с потоками, статическая типизация и куча всяких мощных штук, уровень вхождения выше, это да. На питоне конечно тоже можно, но серьезное web приложение я бы побоялся на нем писать так как выстрелить себе в ногу на нем на порядки проще.

    Серверные и консольные утилиты

    Полностью зависит от задачи.

    Приложения под любые платформы

    Под Qt я бы кресты выбрал))
    Но вообще говоря опять же зависит от задачи. Сейчас множество приложений - это браузер на одну страницу.

    Разработка мобильных приложений

    Однозначно java.

    Машинное обучение

    Тут скорей всего питон, так как в научных кругах он очень популярен и решений больше.

    Конечно, Java более стабильный и надежный, и нам нем лучше писать надежные, высоконагруженные системы, но фактически питон делает тоже самое.

    Неа, прочитайте про GIL и как с ним борются, например.
    Ответ написан
    1 комментарий
  • Как совместить несколько ЯП в одной программе?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Ответ написан
    Комментировать
  • Корректно ли реализована DI?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    1. Не используйте публичные свойства
    2. Для описания параметров имеет смысл использовать константы
    Ответ написан
  • А это не говнокодерство?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Читаем про PSR, так же SOLID, так же Попросили проверить код, на что смотреть нужно?
    <?php
    /**
     * Created by PhpStorm.
     * User: Ember
     * Date: 8/23/2017
     * Time: 2:47 PM
     */
    // ^^^^ Этот коментарий конечно же дофига полезный, но удалите его, он не нужен
    
    namespace Controller;
    
    
    use Model\Pageconfig; // Use CamelCase Luke!
    
    class Site extends \Controller // Не используйте такие абстрактные названия
    {
    // \Base - замечательное название, ясно понятно, что оно делает))
    // $f3 - а почему не f12?
    // $params - юзайте DTO
        public function __construct(\Base $f3, $params)
        {
    // Эээ... Это что роутер что ли?
            $pageconfig = new Pageconfig();
    // а что будет, если $params = new \Exception() ?
            $loaded = $pageconfig->load(['route = ?', $params[0]]);
    
    // В константы
            switch ($f3->get('FALLBACK')) {
    // Вообще говоря для переводов давно придуманы PO файлы, юзайте на здоровье
                case 'az':
    // Что будет, если такого ключа нет?
                    $this->setTitle($loaded['title_az']);
                    $this->setDescription($loaded['description_az']);
                    $this->setBackground($loaded['background']);
    
                    break;
    //...
            }
    
            parent::__construct();
        }
    
        public function home(\Base $f3) {
    // setContent по идее вставляет контент, а не название файла, не путайте людей!
            $this->setContent('empty.html');
        }
    
    //...
    }
    Ответ написан
    1 комментарий
  • Чего не хватает моим функциям?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    чего не хватает и вообще всей логике написания.

    качества, это ж полный П!

    Читал, что использование global ЗЛО

    Верно

    но таков стиль кода моего начальника (а у него опыт 15 лет)

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

    И да, сторонними библиотеками мы не пользуемся, только велосипеды свои.

    Это далеко не всегда так плохо, как кажется.

    Приведенный вами код - говнище, начальник ваш - юниор, почитайте на досуге почему: Попросили проверить код, на что смотреть нужно?
    Ответ написан
  • Какой жанр игр самый сложный в создании?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Какой жанр игр самый сложный в создании?

    Немного переформулирую: какого цвета машины самые быстрые?

    Я спросил почему не выживач? Он ответил что выживачи говно

    Конструктивненько))

    Rogue-like или выживалка?

    Зависит от ТЗ. Вот пример: игра в крестики-нолики, казалось бы, что может быть проще? Но управление через Kinnect, а визуализация - через Oculus Rift, конечно же мультплеер, рейтинги, онлайн общение игроков и т.д. Ну что, простая игра получается?))

    И вообще какой жанр самый сложный по созданию и какой самый лёгкий?

    Все зависит от ТЗ.
    Ответ написан
    Комментировать
  • Градация разработчика?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Комментировать
  • Как из Jira рулить что попадет в релиз?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Про git flow знаю, но считаю, что полноценный флоу сейчас для нас не нужен.

    как максимально просто реализовать процесс мерджа протестированных фич из дева в мастер?

    Вы себе противоречите

    В идеале чтобы это делалось прямо из Jira

    Конфликты тоже jira править будет?))

    По моему вы пытаетесь автоматизировать то, что вам ненужно. Это конечно же хорошо может выглядеть, но опять же, какой в этом смысл? Ну сэкономите вы 5 минут, что с того?

    А вот на счет флоу с ветками я бы на вашем месте по раньше разобрался.

    как максимально просто реализовать процесс мерджа протестированных фич из дева в мастер?


    1. На тестовом сервере резетимся до origin/develop
    2. Накатываем ветку с фичей
    3. Тестируем
    4. Убирам за собой тестовом сервере и опять резетимся до origin/develop
    5. Если все ок - ТЛ мерджит фичу в develop

    Шаги 1, 2, 4, 5 в сумме занимают минут 5.
    Ответ написан
    3 комментария
  • Можно ли учить Python отдельно?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    А кто вам запрещает? Все зависит от задач, которые вы будете решать
    Ответ написан
    Комментировать
  • Может ли программа скачать и запустить вирус после установки?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    может
    Ответ написан
    Комментировать
  • Что означает однопоточность Node.js?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Значит ли это, что 143 потока процессоров будут простаивать ?

    грубо говоря да

    Решают ли кластеры эту проблем ?

    да, но проще запустить N процессов nodejs через тот же supervisord

    Значит в воркеры можно поместить только какие то вычисления.

    можно, правда целесообразность зависит от поставленной задачи

    Мне лично кажется именно по этой причине Node не применяется для действительно сложных проектов с огромной аудиторией

    для чего-то маленького, завязанного на event-loop нода подходит, тот же statsd - вполне production hl решение.
    Ответ написан
    Комментировать
  • Можно ли как-нибудь вывести интервал (напр. 10-15) через PHP?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    sprintf('%d-%d', $a, $b);
    Ответ написан
    Комментировать
  • Проверка разработанного программного продукта?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Как правильно проверять работоспособность продукта?

    Тестировать:
    unit - обычно пишет программист на свой же код, все зависимости мокаются, чаще всего по белому ящику. При покрытии 95+% добрых 3/4 вашего кода - это тесты.
    functional - тоже, обычно пишет программист, но уже с задействованием внешних сервисов, например БД. Тут главное не переборщить, функциональные тесты пишутся быстрее, но они на порядки медленнее, чем юнит тесты.
    appearance - чаще пишут QA, иногда проводят мануально, цель - быстро понять, что продукт в принципе работает и ничего критичного не поломали
    regration - чаще пишут QA, и проводят мануально - это полная проварка того, что продукт работает согласно ТЗ.

    Какая общая схема?

    1. Написал код по таске
    2. Покрыл тестами
    3. Отправил на код ревью
    4. Сделал исправления, если нужно
    5. Залил в рабочую ветку

    Можно ли как то автоматизировать это?

    Во многом - да, конечно, берете и пишете тесты.

    Как проверить продукт на 100% работоспособность?

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

    Что все ошибки обрабатываются правильно, что на 100% не будет исключений в коде.

    Для каждого метода эмулируйте ситуацию по возникновению каждой из ошибок и проверяйте корректность этих ошибок.
    Ответ написан
  • Telnet в Линукс?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    вы путаете telnet с ssh. хотя и про то и про другое учебной информации уйма.
    Ответ написан
    Комментировать
  • ПО на нескольких языках программирования?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Для взаимодействия используются разные подходы. ABI когда на прямую используется функционал библиотек, API когда используется интерфейс на уроане програмного кода, CLI когда взаимодействие происходит через консоль, DBus как стандарт взаимодействия на уровне ос, сетевых протоколов уйма, а поверх них еще протоколы конечных приложений, иногда взаимодействие происходит вообще через файлы и т.д.

    Вариантов уйма, все зависит от задачи.
    Ответ написан
    1 комментарий
  • Как создать файл под гитом, а потом его не отслеживать?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Для конфигов обычно создаются примеры а вот сами конфиги игнорируются.
    Например: config.yml игнорируется, а рядом лежит config.dist.yml, или config.examle.yml
    Ответ написан
    Комментировать
  • Как рассчитать надёжность сайта?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Определите метрики, которые возможно снять и на их основе давайте оценку продукта.
    Ответ написан
    Комментировать