Профиль пользователя заблокирован сроком с 17 мая 2024 г. по 17 мая 2025 г. по причине: нарушение правил сайта
  • Как правильно организовать изменений 50-100 строк в mysql?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Если изменение одинаковое и структура базы позволяет - запрос вида:
    update ... where id IN (1, 2, 3)

    Если изменения разные и строк 50-100 - то отдельными запросами.

    Если строк 100k+, можно заняться извращениями с промежуточной таблицей - кладем в неё данные для обновления, дальше делаем update с join.
    Ответ написан
    Комментировать
  • Как сформировать массив?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Без претензий на красоту кода.
    Предполагается что исходный массив отсортирован по ключу, пропусков нет.

    $arr = [
        11 => true, 
        12 => true, 
        15 => false, 
        16 => true, 
        17 => false,
        18 => false
    ];
    
    reset($arr);
    $key_from = key($arr);
    $key_to = key($arr);
    $last_value = array_values($arr)[0]; 
    
    $result = [];
    foreach ($arr as $key => $value) {
        if ($last_value == $value) {
            $key_to = $key;
        } else {
            $result[] = $key_from . ' - ' . $key_to . ' ' . (($last_value) ? 'true' : 'false');
            $key_from = $key;
            $key_to = $key;
            $last_value = $value;
        }
    }
    $result[] = $key_from . ' - ' . $key_to . ' ' . (($last_value) ? 'true' : 'false');
    
    
    print_r($result);
    Ответ написан
    1 комментарий
  • Нормально ли для API использовать запрос для вывода 4000 строк с MySQL?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    >API для парсинга на другой ресурс. Что скажите по этому поводу? Главное чтобы БД не легла.
    от 4000 записей БД не ляжет.
    на таком объеме нет смысла геммороиться с инкрементными обновлениями, просто отдавайте все одним куском.

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

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Ну в рамках шутки - отключить в браузере js, флеш, сильверлайт и прочий интерактив.
    TOR браузер в режиме максимальной паранойи это делает по умолчанию насколько я помню.
    Но пользоваться обычными сайтами при этом будет очень тяжко/невозможно.

    Никаких других способов нет.
    Ответ написан
    Комментировать
  • Какую кассу выбрать для интернет проекта с учетом 54-ФЗ?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    У Вас есть 4 варианта жизни в условиях 54ФЗ

    1. Купить кассовый аппарат, установить его где-то, самому реализовать интеграцию с ним, самому реализовать отправку чеков клиенту.

    2. Воспользоваться сервисом онлайн касс, например https://online.atol.ru/ - кассу все равно придется купить но уже у них, самому нужно будет просто слать им данные о проведенных покупках/возвратах через +- человеческое апи.

    3. Обратиться к любому из крупных шлюзов действующих в РФ - у них есть из коробки интеграция с одним из ОФД (у Я.К как раз с Атолом этим) - кассу купить опять же придется (пара кликов), никаких дополнительных интеграций - данные туда шлет сама платежка.

    4. Зарегистрировать юрлицо вне российского права, работать с зарубежными шлюзами, забыть про 54ФЗ навсегда.
    Ответ написан
    1 комментарий
  • Лабораторная работа по RabbitMQ, есть ли хорошие источники?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    www.rabbitmq.com/tutorials/tutorial-one-php.html
    и дальше по ссылочкам, все эти вопросы там раскрыты.
    Ответ написан
    Комментировать
  • Переход с MariaDB на Percona - какие подводные камни?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Учтите что в master-master конфигурации транзакции атомарны в пределах 1 сервера.
    Ответ написан
    1 комментарий
  • MySQL: как грамотно составить запросик?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    В данной ситуации - просто через join получать вывод
    Пиджак замшевый --- зеленый
    Пиджак замшевый --- синий
    Магнитофон импортный --- большой
    Магнитофон импортный --- маленький

    и в php строить по нему дерево или что хочется.

    На чистом SQL задача без диких извращений и геморроя не решается.
    Ответ написан
    Комментировать
  • Ошибка.. A Database Error Occurred, Error Number: 1054?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    А что непонятного в сообщении "Unknown column 'id_relation' in 'where clause'"?
    В таблице 2d_categories нет столбца id_relation
    Ответ написан
    5 комментариев
  • Как правильно делать авторизацию в мобильных приложениях?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Технически кука - это заголовок вида "Cookie: mycookie=12345".
    Так что дело вкуса, никаких особых преимуществ нет.
    Единственное что могу предположить - если API передает какие-то данные в куках (это очень, очень плохой дизайн) - то наверное может быть удобно разделить авторизацию от данных.
    Ответ написан
    Комментировать
  • Какие есть варианты работы в IT без программирования?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Привлекает project management, но можно ли им стать без опыта работы программистом?
    Можно, даже нужно. Навыки программирования обычному PM скорее мешают.
    Нужно общее понимание предметной области и процесса разработки, которое в целом укладывается на листок формата А4 мелким текстом. А вот знания по управлению процессами нужны обязательно.

    Не люблю точные науки
    Главные личные качества PM - это точность в плане сроков, четкость в плане формулировок и умение брать на себя ответственность в плане принятия решений. Творчества в этой работе ровно 0.

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

    Хотите творчество и общаться с людьми - идите в дизайн / ux аналитику / маркетинг.
    Ответ написан
    2 комментария
  • Как вы организовали хранение данных к проектам?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Код - bitbucket/git по вкусу
    Пароли - google drive
    Дизайн, тулзы, документы, тз - dropbox
    Ответ написан
    1 комментарий
  • Как выводить csv to mysql, найменьшее значение, не работает?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Проблема в том что в таблице могут повторяться предметы ($name) но с разными ($price) и в бд заносится лишь последнее, а нужно что бы заносилось минимальное значение.

    Значит сначала нужно собрать все данные для записи в базу
    $tmp = [];
    foreach ($data as $item) {
       if (!isset($tmp[$item->name])) {
          $tmp[$item->name] = $item->price;
       } else {
          if ($item->price < $tmp[$item->name]) $tmp[$item->name] = $item->price;
       }
    }

    и дальше уже этот массив скармливать в update
    Ответ написан
    Комментировать
  • Как проводить платежи между пользователями в приложении?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Все деньги 100% проводить через себя.
    Но тут есть 2 подводных камня:
    1) Как правильно напиал АртемЪ - вопрос схемы налогообложения. Вариантов юридического оформления может быть море - от тупого доходы-расходы до заключения агентских-субагентских договоров с выводом основной суммы транзакций из под понятия доход.

    2) Если Вы хотите выплачивать деньги физикам - по законам РФ Вы должны сдать за них декларацию(возможно отменили) и выплатить за них 13% подоходного(точно в силе). В лоб в правовом поле РФ этот вопрос не решается.

    3) Использование виртуального счета с возможность перевода средств между пользователями влечет риск что на проверке это признают электронными деньгами. По 161-ФЗ оператором ЭД может быть или Банк или Небанковская кредитная организация (НКО) - стоимость открытия восьмизначная, но можно договориться с кем-то из существующих на предоставление технического процессинга - но ей богу, это не то что Вам нужно скорее всего
    Ответ написан
    Комментировать
  • Материальная ответственность/штраф за просрочку дедлайна?

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

    Я хочу сказать 2 вещи:

    1. Пункт о компенсации работником упущенной по его вине выгоды - вполне законен. Стоит ли такой договор подписывать и сможет ли работодатель обосновать это все конкретно с Вами в рамках фактически подписанного договора и документально подтвержденных заданий - вопрос вне тематики этого ресурса, нужно смотреть с адвокатом все документы. Судиться бояться не нужно, это нормально.

    2. Понятийно - я считаю что нужно отвечать за свои действия. Если вы взяли проект и сказали что Вы его выполните в срок - это было Ваше решение и именно Вы тут несете ответственность.

    Цена вопроса на самом деле не эти сколько то тысяч. Цена - Ваша профессиональная репутация.

    Тут в соседних ответах призывают занять позицию "моя хата с краю, я работаю за зарплату 8 часов, все остальное проблемы работодателя", валить все на руководителя, менеджера, на кого угодно - но кончится это все скорее всего печально с точки зрения лично Ваших жизненных перспектив.
    Успеха добиваются люди способные к самоконтролю, трезвой оценке рисков и соблюдению взятых на себя обязательств. Остальные так навсегда и останутся дешевой низкоквалифицированной раб.силой.

    P.S.
    К сожалению Вы написали не сильно много подробностей - как произошла вся эта ситуация, сколько заняла вся работа, поднимали ли Вы вопрос сроков когда поняли что не успеваете, итд.
    Если это условно "вот тебе задача на день", вечером "я не успел" - ну тут я не вижу сильного ущерба для Вашей репутации.
    Если это был месяц - тут уже все сильно хуже.

    PPS
    3000 - чего кстати?
    Если $ - как то дофига для первого проекта.
    Если рублей - как то не понятна суть вопроса.
    Ответ написан
  • Сdn на backend?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Балансировку в таких случаях делают на dns. Насколько я помню Amazon Route53 точно умеет гео-балансировку, но можно и какой-нибудь другой сервис поискать.

    Основная проблема в этой истории это вопрос синхронизации базы.
    master-master омерзительно работает даже между датацентрами в одном городе - через континент это мертворожденная идея

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

    Нужно определиться:
    a) насколько реально данные должны быть консистентны. (если не сильно - вам повезло)
    b) какой объем данных нужно синхронизировать (в событиях в секунду и в мегабайтах в секунду)
    И дальше исходя из этого уже садиться думать.
    Ответ написан
    1 комментарий
  • Установка системы в IBM xserver 345?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    First of all, and on a personal experience but with IBM x345, its BIOS identifies the CD as removable device and it isn't capable of booting from USB until you do a BIOS update to the latest available (and wish that the latest BIOS supports USB boot)
    askubuntu.com/questions/300414/loading-ubuntu-onto...
    Ответ написан
    Комментировать
  • Почему alert не выводит ничего на экран?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Учитесь правильно дебажить.
    Сделайте var_dump всех переменных начиная с wpdb - увидите что где-то что-то не то.
    Ответ написан
  • Как подключать классы?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Третий вариант правильный.
    А для внедрения может оказаться необходимым переписать не так много как Вы думаете.
    Ответ написан
    Комментировать