• 0

    Месье знает толк ))


    А по сути — прикольно: клиент точно будет делать один запрос, а уже адаптер локально кучу. По сети улетит один результат.

    Что же такое RQL
  • +3

    Чем ваш вариант лучше http://graphql.org/ ?


    С допущением, что у проекта нет уже написанного REST-api?

    Что же такое RQL
  • +1
    Предпринимаются какие либо шаги для добавления user friendly?

    Все шаги у нас только official pocket friendly. Не раскачивайте яхту тут.


    Ещё один вариант использования любого браузера — это локальный прокси, который понимает гост и выдаёт наружу просто http.

    Заходим в личный кабинет на zakupki.gov.ru без Internet Explorer и другие полезные советы при работе с КриптоПро
  • 0

    travis.yml куда ж без него

    «Hello, (real) world!» на php в 2017 году
  • –1
    Anton Merge branch 'master' of github.com:anton-okolelov/helloworldphp

    Далее не читал, но осуждаю.


    Вот более правильные версии хеловорлда ))


    https://github.com/DQNEO/php-HelloWorldEnterpriseEdition
    https://gist.github.com/lolzballs/2152bc0f31ee0286b722

    «Hello, (real) world!» на php в 2017 году
  • +1

    А чем поведение всех этих типов отличается? Вы нам показали 3-4 abstract data type, которые отличаются только данными, но не поведением в контексте задачи.


    Почему вообще кому-то надо знать детали того, что у организации есть атрибут1, а у физлица — атрибут2? Почему всех контрагентов нельзя подвести под единый интерфейс а-ля IContactSigner с одним методом sign(IContract contract)?

    Union Type, TPT, DDD, ORM и RDBMS
  • +1
    Не все умеют излагать мысли на бумаге

    Программирование по сути — изложение своих мыслей на бумаге в исходном коде.

    Ревью кода в распределенной команде
  • +1
    Мы технические специалисты, а не "художники с тонкой и хрупкой душевной организацией".

    Любой программист — человек. А любой человек может быть демотивирован бездарно-построенным процессом управления или никакой культурой.


    Относиться к сложным системам типа "человек" как к простым биомеханизмам типа "бактерия", в которых не надо особо разбираться — сродни забиванию гвоздей микроскопами.

    Ревью кода в распределенной команде
  • +2

    Чуть меньше эмоций и чуть больше деталей.

    Как проектируют ненастоящие программисты
  • 0

    Я попутал его с парсером/компилятором.

    Релиз Python 3.6 — да, теперь он с нами
  • 0

    В надуманном примере автор либы мог бы требовать на вход что-то типа Integer[]


    Или Iterator или ещё как-нить обозвать. И уже пользователь либы видит, что от него хотят и только это суёт.

    Релиз Python 3.6 — да, теперь он с нами
  • 0

    Byte-code файлы есть, так-что можно считать, что JIT компиляция не нужна. Уже не на каждый чих интерпретатор дёргается.

    Релиз Python 3.6 — да, теперь он с нами
  • +5

    Ишь чего захотел! Может ещё интерфейсы в питон добавить?

    Релиз Python 3.6 — да, теперь он с нами
  • 0

    Это типа на нескольких серверах, а не на одном.

    Блокировка дубликатов Symfony Сommand
  • 0
    1. Люди давно уже придумали просто-SQL, а не VendorSQL. Попробуйте его использовать.
    2. crt_date. Рука-лицо… Зачем это в справочниках, которые раз в век меняются? Причём такое название. Сразу вспоминается крутой нэйминг типа pIdOrName.
    3. Как уже выше сказали — формат "только SQL" в наш век JS'а как-то не комильфо.
    4. А где для стран коды по типу ISO?
    База данных стран, регионов и городов
  • 0
    Невозможность установки серверов очередей.

    Наше вам сочувствие.


    Я писал микросервис для лицо-распознавания на питонах и вместо скучного REST'а сделал AMQP-консумера. Это оказалось просто и эффективно. Особенно помогло в горизонтальном масштабировании — можно было запустить кучу консумеров где угодно и задачи отрабатывались быстрее.

    Блокировка дубликатов Symfony Сommand
  • 0

    @jced и всё-таки что за юс-кейсы то такие?

    Блокировка дубликатов Symfony Сommand
  • 0

    Я стесняюсь спросить, а что это за юс-кейсы такие странные? Один процесс на N серверов?


    Что это таким путём надо делать? Не проще ли это порешать очередью, где можно сколько угодно консумеров запускать, но отрабатывать они могут по одному друг за другом?

    Блокировка дубликатов Symfony Сommand
  • +1

    В презенташке у вас мышка туда-сюда летает. А как у вас с keyboard-usablility?


    В большинстве native-GUI это из коробки идёт.

    DBGlass — Open-Source кросс-платформенный PostgreSQL GUI клиент
  • +4

    Псс… посоны, у нас тут есть кусок из оф. документации QIWI. Зацените ))


    //Функция возвращает упорядоченную строку значений параметров POST-запроса
    function getReqParams(){
        $reqparams = "";
        ksort($_POST);
        foreach ($_POST as $param => $valuep) {
            $reqparams = "$reqparams|$valuep";
        }
        return substr($reqparams,1);
    }
    
    //Извлечение цифровой подписи из заголовков запроса
    function getSign(){
        $HEADERS = getallheaders();
        foreach ($HEADERS as $header => $value) {
            if ($header == 'X-Api-Signature') {
                $SIGN_REQ = $value;
            }
        }
        return $SIGN_REQ;
    }

    Картинка

    image

    Извините, мы запускаем новый продукт
  • –1
    И чем конкретно капистрано лучше деплоера?

    Тем что написан раньше, отлажен лучше, больше готовых плагинов. Основан на rake (ruby's make) и в-принципе делает всё, что надо.


    Для капистраны не надо ставить на удалённой ноде ничего — только нужен ssh-доступ.

    Deployer — удобный и гибкий деплой приложений
  • 0

    Этот уровень описан в списке сертифицированных ФСБ решений. В нём в том числе есть и линукс-версия, доступная бесплатно.

    Взаимодействие с ГИС ЖКХ с помощью stunnel и openssl по ГОСТу
  • 0

    Почему ж я только сейчас в гугле сюда зашёл??


    Более узкое решение для RabbitMQ (плагин): https://github.com/rabbitmq/rabbitmq-delayed-message-exchange


    Параметром x-delay задаём задержку и уже сам exchange объявленный с типом x-delayed-message следит за тем, чтобы сообщения шли далее после задержки x-delay.

    RabbitMQ — Отложенные сообщения, часть 2
  • +5
    Squash фича-бранча — зло.

    Интерактивный ребейз, когда из 100 нанокоммитов делается 2-3-4-5 логически-атомарных коммитов — хорошо.
    Rebase Flow. Способ приготовления и его поддержка в GitHub, GitLab, BitBucket
  • 0
    Афтар забыл в самом начале повесить тег САРКАЗМ.
    Фильтруй правильно, или вредные советы по фильтрации в Angular.Js
  • +7
    1С битрикс создан гениями
    маркетинга
    Минусы Битрикса, или Битрикс глазами программиста
  • 0
    В общесистемном обычно нету частных.

    У меня там уже вверху «Host *», так что тоже необязательно, но это уже микрооптимизация конфига, которая щас меньшее зло ))
    В клиенте OpenSSH обнаружена серьёзная уязвимость CVE-2016-0777
  • +14
    Допишите в заголовок «клиенте»:

    • В OpenSSH клиенте обнаружена серьёзная уязвимость CVE-2016-0777
    В клиенте OpenSSH обнаружена серьёзная уязвимость CVE-2016-0777
  • +16
    Автор исходной статьи не знакомый ли Бориса, который…
    Его поддержал директор центра стратегических инноваций «Ростелекома» Борис Глазков: «Я согласен, подготовка программистов — гиблое дело. И вообще, скоро программистов можно будет заменить компьютером, чтобы он писал код».

    http://lenta.ru/news/2015/10/15/itvred/
    К 2060-му году программисты станут не нужны
  • 0
    Лучше сразу застрелиться. Скажу вам как автор плагина для совместимости написанного в стиле ЗРЗ 5.2, когда у тебя нет неймспейсов, но хочется.

    Даже если отгородиться от внутренностей WP фасадом, то всё равно неуютно. События, хуки и фильтры WP — это конечно хорошо, но всё равно я призываю того микимауса, который вырывает себе глаза ))

    Но что самое забавное — пользователям по… на чём и как оно написано. Красота и покрытость тестами (а даже это возможно в мире WP!) — это всего лишь то, что даёт разработчику возможность маневра при рефакторинге.

    Как уже верно заметили товарищи выше — учите симфони, ларавел, юй и т.д., что имеет плюсики на гитхабах. В WP максимум что надо знать — как подписаться на нужное событие и когда оно происходит, а также какая функция/метод с какой версии WP доступна и что она такого делает. Внутренности БД лучше не знать — сон спокойный очень важен для программиста.
    WordPress. Бесплатный курс от GeekBrains
  • +10
    Я понял, что я ничего не понял. Сократ ли я?
    Полный перевод Unix-коанов на русский язык
  • +1
    `sed` в баше, Ctrl + H в IDE. Тысячи их способов это сделать ))

    А мож там хостинг вааще тупой? Без языков — только plain HTML.
    Вы можете не использовать инструменты
  • –2
    Да не совсем. При покупке есть хотя бы транзакция с карточки, которая хоть как-то, но косвенно может подтвердить, что ты — это действительно ты. В случае халявной раздачи это теряет смысл. Также вполне может быть, что поисковики будут топить https-сайты с халявными сертификатами.
    Let's Encrypt выходит в публичную бету: HTTPS всюду, каждому, отныне и навсегда бесплатно
  • +1
    Нет конечно! Но бесплатно-из-коробки сразу даёт намёк на «заработай 10000000 в неделю бесплатно и без регистраций». Нечисто тут что-то. Моя фольга меня защищает ))
    Let's Encrypt выходит в публичную бету: HTTPS всюду, каждому, отныне и навсегда бесплатно
  • 0
    Хмм… Бесплатно? А как у этой инициативы с защитой от CIA-in-the-middle атак? Рутовый сертификат — https://www.identrustssl.com/ Этой конторе можно доверять?
    Let's Encrypt выходит в публичную бету: HTTPS всюду, каждому, отныне и навсегда бесплатно
  • –1
    А откуда ViewModel будет знать, что именно ложить/класть в тот же protected IProgress progress;?

    К примеру у меня два IProgress'а — один текстовый, а второй графический. И они за разное отвечают. Или вообще ещё проще — у меня этих прогрессов 5 (к примеру 5 разных процессов) — что тогда?
    Скрытые зависимости как «запах» проектирования
  • 0
    Клиенту объекта А это должно быть фиолетово ибо инкапусуляция в том и есть, что интерфейс уже гарантирует, что с той стороны всё будет работать.

    Проблемы имплементации — это её личные проблемы и они не должны выходить за интерфейс. Если получается так, что клиенту объекта А надо задумываться над деталями имплементации, то уже что-то не так в архитектуре и точно не сервис-локатор виноват, а автор такого объекта/интерфейса, который не может гарантировать себя.
    Service Locator нарушает инкапсуляцию
  • 0
    В любом коде они зависят. Но если мне объект предоставляет интерфейс АйСделатьХорошо, то этот объект ДОЛЖЕН по своему интерфейсу уже делать мне хорошо. Я — клиент и я не должен зависеть от деталей реализации того, кто за интерфейсом. Иначе смысл теряется в-принципе в интерфейсах, DI и SL.
    Service Locator нарушает инкапсуляцию
  • 0
    В данном примере другой антипаттерн показан — чтобы использовать В надо дернуть/засетить/заинжектить А. К сервис-локатору это никак не относится.

    Сервис локатор отвечает за то, чтобы вернуть обработчик заказов и здесь уже ответственность либо самого локатора, чтобы такой обработчик был у него создан, либо ответственность того, кто помещает в сервис локатор этого обработчика — design by contract.

    Сервис-локатор похож скорее на один большой глобальный god-mode объект. Вот здесь его явный минус. Тот же code-completion можно «залочить» с помощью интерфейса который в одном себе отнаследует интерфейс каждого метода и тогда будет хотя бы видно, какие сервисы данный локатор предоставляет. Единственный минус — при очередном изменении надо будет это повторять, да и не всем о всех надо знать.
    Service Locator нарушает инкапсуляцию