Профиль пользователя заблокирован сроком с 17 мая 2024 г. по 17 мая 2025 г. по причине: нарушение правил сайта
  • Как переставить наибольшую цифру в трехзначном числе с помощью (if)?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Гуглите сортировку пузырьком.
    Если задачу нужно решить без цикла - будет просто 3 if с попарным сравнением элементов и перестановкой если нужно (3 и 2, 2 и 1, 2 и 3)
    Ответ написан
    3 комментария
  • Как добавить элемент к массиву?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    На чистом sql
    select id, name from partners
    union all
    select id, site from partners

    либо на php пересобрать исходный массив за 1 проход в цикле.
    <?php
    
    $tmp = [];
    foreach ($partners as $item) {
      $tmp[] = [ 'id' => $item['id'], 'name' => $item['name'], ];
      $tmp[] = [ 'id' => $item['id'], 'site' => $item['site'], ];
    }

    Быстрее imho будет 2е.

    А зачем Вам?
    Ответ написан
  • Какие таблицы в бд таких сайтов как Avito, Vk, Baidu, Facebook и т.д?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    В Вашем конкретном случае - ответ нет.
    Начинать нужно всегда с 3НФ, т.е с
    User:
    id
    username
    password_hash
    full_name
    и т.д


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

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    У каждого производителя терминалов (а иногда и у конкретной модели конкретного производителя) есть свой протокол для печати, особенно если нужны фискальные данные.
    Соответственно гуглите по производителю/модели, звоните поставщикам - как правило под винду dll для работы есть.
    Ответ написан
    Комментировать
  • Какова правильная логика обновления клиента игры?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Из личного опыта: imho самое правильное это иметь неразрывную цепочку обновлений с первой версии до текущей, т.е 1>2, 2>3, 3>4 итд.
    Периодически для чистой установки выпускать мажорные версии, - но при этом все равно иметь неразрывную цепочку обновлений.

    Делать патчи вида 1>4, 2>4 итд - по моему опыту архи неправильно, т.к создает огромные риски неявных багов + затраты на сборку таких патчей.

    По факту для пользователя нет проблемы установить много обновлений.

    Будет осуществляться проверка на то, какая из блоков цифр в версии отличается.
    Это Вы какие то мелкие частности обсуждаете.

    Как у них осуществляется проверка наличия даже самого ненужного файла? Удалил файл из каталога, а он берет и докачивает его. Проверяет перед запуском все каталоги на время изменения и сравнивает с серверными?

    Вопрос третий: Насколько эффективно будет сравнивать время изменения каталогов у пользователя и сравнивать с серверными? Ведь если даже в самой глубокой директории был изменен/удален/создан файл, то самый верхний по иерархии каталог будет иметь дату изменения ту, когда был затронут файл. Соответственно, таким образом можно избежать большого количества рекурсивных проверок.
    И, соответственно, обновиться будет проще. Удаляем измененный каталог и закачиваем заново.
    Привязываться к дате изменений - не лучшая идея. Проверка обходит каталоги рекурсивно, сравнивает не только список файлов но и их хеши. Почитайте как работает dropbox/яндекс.диск, да тот же торрент наконец
    Ответ написан
    4 комментария
  • Возможно ли ограничить число аккаунтов на человека при условии свободной регистрации?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Зависит от задачи.

    Если нужно закрыться от совсем тупых ботов - можно капчу добавить на регистрацию. (не спасет от умных ботов)

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

    Надо понимать что 100% гарантии это все равно не дает, кому очень нужно найдут 5-10 номеров телефонов в доступности.
    100% гарантию дает только оффлайн валидация паспорта.
    Ответ написан
  • Как оптимизировать sql запрос с ORDER BY RANDOM()?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Вопрос "почему медленно работает ORDER BY RAND()" просто канонический на собеседовании джуниора.
    Вбейте в гугл, есть множество способов решения, у всех свои плюсы и минусы.
    Ответ написан
    Комментировать
  • Как ребутнуть сервер удаленно PHP с оболочкой Битрикс?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Вы подключаетесь к виртуалке где крутится этот вот модицифированный shell.
    Логично что нужно подключаться к серверу где запущена виртуалка и оттуда уже рестартовать контейнер.
    Ответ написан
    Комментировать
  • Магнитная или отслеживаемая краска/напыление?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Магнитная краска разумеется есть.
    Честно говоря не понял почему Вы не нашли, первый же запрос запрос в гугле выдает кучу ссылок www.tikkurila.ru/dlya_vashego_doma/produkty/magnetik

    Но магнитная краска Вам скорее всего не поможет, т.к:
    a) масса краски должна быть существенна на каждом летящем объекте, что внесет искажения
    b) удар скорее всего будет на высокой скорости, весьма вероятно упругий, следовательно магниты за стеной нужны будут ДИКО мощные, что в свою очередь внесет искажения в траекторию, не говоря уже о цене вопроса мощных магнитов.

    К счастью решение давно придумано, есть штука которая называется "баллистический гель"
    Делается достаточно быстро и просто самому, в интернете полно рецептов.
    Залить на достаточную глубину блок размером со всю стену будет конечно достаточно геморройно, но imho это единственный рабочий вариант.

    UPD
    В рамках бреда - если одновременно летит не сильно большое количество объектов, а зона сектора не особо маленькая - можно например физически разделить стену на не связанные между собой конструкции и прицепить к каждой датчик удара.
    Ответ написан
    3 комментария
  • Как сделать выборку по датам, с условием того что не все даты есть в базе?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    В MySQL - afaik нормально никак.
    Если извращаться - можно например завести отдельную таблицу с набором всех возможных дат, или явно передавать их в запрос в вирт.таблице.

    Самое на мой взгляд простое - получать из sql данные без 0х, а затем на любом ЯП пополнять массив нулями.
    Ответ написан
    Комментировать
  • PHP парсинг rss на иврите через simplexml или domdocument ничего не выдает, почему?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Иврит тут не причем, пробелема в обработке ndash. Вариантов решения проблемы 2:
    1) Можно тупо заменить &ndash; в документе на обычное тире &mdash;
    2) Можно воспользоваться любым парсером на чистом php, например https://github.com/revnode/xml
    Не поленился проверить, Ваш файл он отлично обрабатывает.
    Ответ написан
  • Как сделать так чтобы 2 таблицы имели один ID?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    завести третью таблицу в которой хранить счетчик инкремента.
    Ответ написан
    Комментировать
  • Возможно ли через API получать от яндекса и google какую либо полезную информацию по сайту?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    У яндекс.метрики есть полнофункциональное (хоть местами и не документированное) api.
    У GA соответственно тоже.

    https://tech.yandex.ru/metrika/
    https://support.google.com/analytics/answer/100800...
    Ответ написан
    2 комментария
  • Аудит разработки мобильного приложения?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Imho единственный способ - нанять разработчика и поставить ему задачу изучить данный код.
    Готовьтесь к оценке в 80-160 часов за это.

    PS В 99% случаев сменив подрядчика придется делать заново, это нормально.
    Более того, т.к 70-80% работы это сборка визуальной части, - при каждом крупном редизайне лучше делать целиком заново.
    Ответ написан
    Комментировать
  • Частный дом. Gpon. Раздать соседям интернет?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    В рамках миниоффтопика:
    Планируется выделять им 10-20м/бит, поскольку бытует мнение, что абонент не может даже на 50% использовать 15м/бит
    Архинеправильный подход. У Вас должна быть задача балансировки нагрузки, что бы условно включивший торренты не оставил без интернета всех. При этом если других потребителей на канале нет - логично его выделять целиком.

    Я допускаю что у меня завышенные требования к качеству интернета, но я не очень понимаю смысл платить какие то деньги за 10-20mbit. GPON это я так понимаю МГТС => подмосковье? Можно же собрать усилитель для 3G и те же самые 10-20 mbit иметь. Кстати почему 75 mbit, у них ведь есть тариф на 500?
    Ответ написан
  • CashBack как реализовать сервис?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Занимался системой коллективной лояльности полтора года.

    Тут много неясного не с точки зрения программирования, а в первую очередь с юридической.

    Во первых Вам нужно определиться с правовым статусом этих бонусов - это деньги или не деньги.
    Если деньги - нужно реально открывать счет на клиента в банке или НКО, платить за клиента 13% ндфл, ну и все прелести 161-ФЗ.
    Если не деньги - возникает вопрос обоснования финансовых переводов между юрлицами ну и накрывается идея выплат на карту.
    Решения однозначного нет, каждая система лояльности идет по своему пути но в целом разработка схемы и юридического обоснования это месяцы.

    С технической стороны - могу навскидку озвучить множество вариантов реализации, но отталкиваться нужно от потребностей партнеров:
    Можно опубликовать свой шлюз наружу и надеяться что с ним будут интегрироваться.
    Можно интегрироваться на уровне учетного ПО / сайта / crm партнеров подготовив модули под основные системы.
    Можно делать пост-аналитику банковской выписки партнера.
    Можно запустить отдельные интерфейсы на своей стороне с минимальной интеграцией.
    В одних сферах бизнеса партнеров лучше работает одно, в других - другое.

    PS
    Судя по вопросу Вы только в начале этого пути.
    Крайне советую до начала проекта:
    а) Проработать юридическую часть.
    b) Найти первых якорных партнеров. Заодно поймете как им удобней с Вами интегрироваться.
    В целом советую по крайней мере на старте идти по пути максимально простой для партнера интеграции.
    Простой с точки зрения бизнеса (!), а не разработчика.
    Ответ написан
    3 комментария
  • Как пишутся системы оплаты для сайта?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Как осуществляется написание платежной системы касательно visa и mastercard или для конкретного банка? что делается в данном случае? (Допустим требуется работа со сбербанком и альфабанком).

    Из личного опыта:
    a. Приезжаете в офис банка у которого есть услуга "интернет эквайринг", показываете своё юрлицо, уставные документы, бенефициаров, обороты от 50 млн в месяц.
    * некоторые работают и с меньшими оборотами, но % будет крайне не выгодным.
    ** без запущенного и работающего проекта идти в банк бессмысленно.
    b. Ждете 2-6 недель пока СБ банка проверит все.
    c. Ждете 2-4 недели пока банк подпишет договор
    d. Получаете реквизиты и документацию API конкретного банка.
    e. Реализуете
    f. Ждете 1-2 недели пока банк проверит что у Вас все согласно их протоколу.
    g. Получаете боевые реквизиты.

    Учтите что:
    1. Если Ваши объемы меньше чем 50млн+ в месяц - с вероятностью 99% Вам будет СИЛЬНО выгоднее работать через посредника. Посмотрите на uniteller.ru , payture.com/ru , payler.com - если Вы будете достаточно убедительны на переговорах, вполне реально сторговать их до 2-2.5% даже на маленьких оборотах (1млн-5млн)

    2. Прямые API банков мягко говоря не современны. Как правило там не будет ни удобного личного кабинета, ни вменяемой службы поддержки - ничего. Зато будут проверки, требования бумажной отчетности и прочие милые сердцу советского бюрократа вещи.

    3. Риски при работе через посредника - по факту минимальны. Все приведенные выше делают выплаты ежесуточно, т.е даже если посредник накроется - Вы максимум рискуете дневным оборотом.

    С учетом данных пунктов, по моему мнению прямой договор с банком имеет смысл если у Вас настолько большие обороты - что разница в десятые доли процента окупает весь этот геморрой.
    По факту есть море проектов с большими оборотами (mamba, badoo, etc) кто продолжает работать через агрегатор, минимизируя расходы на юристов, бухгалтеров, техническую поддержку работы шлюза итд итп.
    Ответ написан
    1 комментарий
  • Какой тип таблицы выбрать для 200-400 одновременных подключений?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    1. Задача не трудоемкая. Постоянно обрывать подключение и делать заново - не лучшая идея, если есть возможность сделать через постоянное подключение - это даст выигрыш в скорости. Тип таблицы однозначно innodb

    2. Весьма вероятно что задачу можно отлично решить без sql вообще, через какой нибудь redis - будет быстрее на порядки.
    Ответ написан
    3 комментария