• Какой язык программирования учить для работы с железом?

    Moskus
    @Moskus
    Ваш вопрос очень общий, попробую его разделить на разумные части.
    Во-первых, есть железо, где действительно есть операционная система и нечто, что под ней работает. Например - smart TV с Android. В теории, разработка под такое - не сложнее разработки под Android вообще. До тех пор, пока вы не пытаетесь работать, например, с переключением каналов, которое заключено в драйвер, а драйвер не имеет документации. Тут начинается reverse engineering, (безуспешные) попытки расшифровать образ ОС, и так далее.
    Во-вторых, есть устройства без операционной системы, с "монолитной" управляющей программой, которая "зашита" в system on chip. Тут веселье начинается сразу.
    В-третьих, если вы прямо сейчас хотите за разумное время реализовать то, что хотите, то это так не делается - на одно изучение программирования у вас уйдет пара лет, вы что раз потеряете интерес. Даже если найдёте устройство, которое предназначено для открытой разработки.
    Ответ написан
    Комментировать
  • Что из себя представляет SEO в 2019 году?

    Zoominger
    @Zoominger
    System Integrator
    Это упорядоченный, повсеместно распространённый культ Карго, при котором «специалист» выполняет определенного рода действия, рекомендованные абсолютно маргинальными источниками, не основанными на каком-либо авторитетном исследовании, совершенно не понимая сути выполняемых действий и не осознавая полную бессмысленность проводимых операций.

    Я не шучу.
    Ответ написан
    6 комментариев
  • Где найти ресурс с подборкой "правильных" решений на PHP?

    @EvgeniiR
    https://github.com/EvgeniiR
    как правильно реализовать авторизацию с токенами, сделать корзину в онлайн магазине и.т.д,

    Есть бесконечное число вариантов сделать корзину в онлайн магазине, и бесконечное число переменных влияющих на принятое решение.
    Вы знаете что такое комбинаторный взрыв? Это именно то что произойдёт если вы будете пытаться запомнить все реализации любых задач, не говоря уже о том что любая новая задача остаётся по прежнему уникальной(в какой-либо степени), и просто копирование решения из похожей задачей почти никогда проблемы не решит, а в связи с упомянутой выше проблемой в виде множества обстоятельств влияющих на набор выбранных решений, слепое их копирование скорее сильно навредит развитию проекта, чем поможет в сколь-либо обозримом будущем.

    Если хотите научиться делать вещи хорошо, подумайте над тем что нужно чтобы делать вещи хорошо, и как отличить лучшее решение от худшего, на что нужно ориентироваться при выборе решения, какие есть базовые приёмы техники и критерии качества. Коротко говоря - возьмитесь за базовые вещи. Начните с книг.

    P.s. кстати, последнее что я смотрел про проектированию корзины - вот. Полезный ролик чтобы взглянуть на вещи по новому, но не для того чтобы копировать решение. естественно.
    Ответ написан
    4 комментария
  • Оцените качество кода?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    PEP8 не соблюдается, названия переменных невнятные, количество переменных избыточное, количество строк кода избыточное, ведение лога навелосипежено, файл в случае остановки цикла не закрывается.

    5d306e1883e8b985877430.png
    Ответ написан
    2 комментария
  • Как объяснять кадровикам быстрые смены работы?

    DevMan
    @DevMan
    Три места работы по три месяца - это год, а не десять.
    Можно сказать, что фрилансил, можно сказать что не работал по семейным обстоятельствам.
    Адекваты смотрят на человека и его скилы, а не где он работал. А от неадекватов стоит и нужно держаться в стороне.
    Ответ написан
    Комментировать
  • Смысл сокрытия, когда есть рефлексия?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Сокрытие в целом и модификаторы доступа в частности - это не про защиту от злонамеренных хакеров, взламывающих ваш код. Модификаторы доступа нужны для предотвращения непреднамеренно ошибочного использования объектов. В больших системах бывает сложно уследить, что один объект из сотен, в одном из тысяч возможных состояний программы не нарушает инварианты другого объекта. Весь ООП нужен для снижения сложности кода.

    А рефлексия - это чёрных ход в JVM. Рефлексивный код медленный и небезопасный. Он наоборот увеличивает сложность и сводит к нулю половину достоинств языка. Применять рефлексию допустимо только при разработке инструментальных средств и фреймворков. И даже при этом стоит стремиться сократить обращение к ней.

    Образно говоря, вам необязательно пить и есть, питаться вы можете и через капельницу. Но это не значит, что вам не нужны зубы и 5 метров кишечника.
    Ответ написан
    1 комментарий
  • Всегда ли асинхронная функция возвращает промис?

    Stalker_RED
    @Stalker_RED
    Нет
    Ответ написан
    Комментировать
  • Symfony 4 Как использовать одну Entity с несколькими Репозиториями?

    mad_maximus
    @mad_maximus
    class TestRepository1
    {
        /**
         * @var ObjectRepository
         */
        private $repository;
    
        /**
         * @var EntityManagerInterface
         */
        private $em;
        public function __construct(EntityManagerInterface $em)
        {
            $this->repository = $em->getRepository(Test::class);
            $this->em = $em;
        }
    }
    
    class TestRepository2
    {
        /**
         * @var ObjectRepository
         */
        private $repository;
    
        /**
         * @var EntityManagerInterface
         */
        private $em;
        public function __construct(EntityManagerInterface $em)
        {
            $this->repository = $em->getRepository(Test::class);
            $this->em = $em;
        }
    }
    Ответ написан
  • Куда выложить портфолио?

    Chefranov
    @Chefranov
    Новичок
    Сделайте свой сайт с портфолио :)
    Ответ написан
    2 комментария
  • Как понять, кого из трех программистов назначить техлидом?

    Adamos
    @Adamos
    Уйдите на больничный и в оффлайн на неделю.
    По возвращении увидите, взял ли кто-то из них на себя ответственность и справился ли с ней ;)
    Ответ написан
    8 комментариев
  • Как именно делать реализацию интерфейсов в "Инверсии зависимостей"?

    mad_maximus
    @mad_maximus
    Интерфейс должен быть один, а не 100500, а уже адаптеров должно быть 100500, если столько типов подключений возможно (pgsql, mysql, sqlite, etc), и уже этот интерфейс инжектить в класс по работе с базой данных, тогда при смене подключения все будет продолжать работать.
    Ответ написан
    9 комментариев
  • Кэшбэк. Как реализовать интеграцию с партнёрскими интернет - магазинами?

    ivan_zhuck
    @ivan_zhuck
    Давайте порассуждаем:

    Интеграцию с партнерским интернет магазином логично разделить на две составляющих:

    1. Фиксация факта, что пользователь пришел из кешбек-сервиса
    2. Передача кешбек-сервису суммы и статуса оплаты заказа из магазина

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

    Второй пункт не так очевиден, и задача выходит за рамки просто программирования, поскольку существует ряд проблем:

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


    Поэтому почти все кешбек-сервисы и CPA-сети предлагают парнерским интернет-магазинам API, куда они могут в автоматическом режиме отправлять информацию об отгруженных и оплаченных заказах. Как правило интеграция с таким API ограничивается разработкой одного метода на стороне партнерского магазина и редко занимает больше часа, под популярные CMS можно сделать плагины для повторного использования.
    Ответ написан
    Комментировать
  • Как сменить профиль работы и язык программирования C# > Python?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Стоит ли указывать в резюме опыт работы на другом языке и в другой сфере?

    Стоит указывать. Потому что опыт программирования важнее опыта в конкретном языке.

    Получится ли перешагнуть Junior Python или все равно придется начинать с джуна?

    Как вы будете оформлены - зависит от нанимателя. Фактически же джуном вы побудете пару недель или пару месяцев, в зависимости от того, как быстро сможете адаптироваться к новому языку и перенять его идиомы.

    У кого то был такой опыт перехода из C# в Pytjon? Поделитесь своим опытом.

    У меня был опыт скакания между 15 разными языками. Не смертельно.
    Ответ написан
    Комментировать
  • Почему я не могу вставлять ссылки в вопрос и ответ?

    pragmatik
    @pragmatik Куратор тега Тостер
    Причина происходящего в том, что Вы пытаетесь опубликовать текст, содержащий одно или несколько недопустимых слов. Пожалуйста, измените формулировку или обратитесь в поддержку.
    Ответ написан
    6 комментариев
  • Учу python, куда идти учиться в вуз в спб?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Чтобы стать python-разработчиком не нужно ходить в ВУЗ.
    Ответ написан
    Комментировать
  • Нужен ли для Javascript или PHP умение верстать?

    Stalker_RED
    @Stalker_RED
    Для чистого бекендера базовые понятия о html нужны, можно потратить на это пару вечеров.
    Более углубленные знания могут быть бонусом, но не обязательны, если найдете работу, где требуется ТОЛЬКО бекенд.

    А для js-фронтендера очень даже нужны.
    Ответ написан
    1 комментарий
  • Как указать настройки SMTP при отправке сообщения для php mail?

    mad_maximus
    @mad_maximus
    Эта ф-ция не поддерживает smtp.
    Ответ написан
    Комментировать
  • Как указать настройки SMTP при отправке сообщения для php mail?

    DevMan
    @DevMan
    никак, она не для этого предназначена.
    используйте phpmailer, swiftmail и все такое.
    Ответ написан
    Комментировать