Задать вопрос
  • Есть ли какие-нибудь готовые решения чтобы ограничить доверенный корневой центр сертификации одним доменом?

    Adamos
    @Adamos
    Для того, чтобы "зайти на сайт", на хрен не нужно устанавливать никакие левые сертификаты.
    63c5743616eff29e45070b10c284598e.png
    Ответ написан
    Комментировать
  • Какой принтер этикеток выбрать для склада?

    Adamos
    @Adamos
    Мы для печати стикеров 58х40 для маркетплейсов берем Xprinter 365B.
    Свои гарантированные 50 км ленты он вполне уверенно отрабатывает, потом можно просто купить новый - он стоит меньше 5 тысяч. Теоретически продаются и отдельные головки на замену, но дешевле 3 тысяч их не находил, так смысла нет.

    Единственный нюанс в работе - не печатать больше полусотни стикеров за одно задание, а то от разогрева начинает течь клей с ленты и она прилипает-заминается.
    В остальном - между "поставил" и "поменял" обслуживание еще ни разу не требовалось, четыре года такими пользуемся.
    Для настройки под Линукс требуется сунуться в PPD-файл, прописать корректный формат печати, а то у него по умолчанию 2х4". Других сюрпризов нет.
    Ответ написан
  • Можно ли стереть эти файлы Win+R = %temp%, чтобы очистить диск в Windows?

    Adamos
    @Adamos
    #clear_temp.bat
    del /s /q %TEMP%\*.*
    rd /s /q %TEMP%
    mkdir %TEMP%

    Своим подопечным я это заряжаю в автозагрузку.
    Ответ написан
    2 комментария
  • Как снизить стоимость доставки при 300+ заказах в день?

    Adamos
    @Adamos
    Boxberry как резерв — но интеграция через их API оказалась сложной

    Что там сложного? Тем более, их Яндекс купил - должна наконец быть нормальная ТП.
    Главное, чтобы они перестали выставлять штрафы за плотность на основании галлюцинаций своих кладовщиков. Нас это в конце концов достало, отказались от их услуг. А то бы работали до сих пор, СДЕК устраивает.

    + Почта России

    "Run, you fools!" Прошлым летом наши июньские отправления (заказные бандероли) провалялись на сортировке до середины июля, а в конце лета с Почты народ еще и сманивали на маркетплейсы, где случился кадровый кризис из-за перекрытия схем с мигрантами. Хотите объяснять клиенту, что не знаете, когда приедет заказ, хотя должен был за неделю?..
    Ответ написан
    7 комментариев
  • Как сконвертировать файл в формате excel в pdf?

    Adamos
    @Adamos
    Если это делается в офисном пакете, то Либра из коробки умеет выводить в PDF.
    Если это делается на бэкенде, на кой хрен там Ёксель? Он только картинки искалечит.
    Представленный образец элементарно верстается в HTML, который mPDF аккуратно выведет в PDF.
    Ответ написан
  • Имя массива это адрес первого элемента или указатель на его первый элемент в Си?

    Adamos
    @Adamos
    Имя массива - это строка в коде программы, по которой компилятор определяет, что работает с вот этой конкретной областью памяти. Зная ее начальный адрес и применяя адресную арифметику для нахождения адреса хоть линейного, хоть двумерного элемента (там просто arr[x][y] превращается в начальный адрес + (x * второй размер массива + y) * размер переменной. Массивы в С - это всегда плоская область памяти, размерность существует только для программиста, для удобства).
    Указатель - это и есть переменная, в которой хранится адрес другой переменной. Например, первого элемента массива. Объявление указателя вместо целого числа просто позволяет компилятору понять, что программист именно это и имел в виду, и не ругаться на подозрительные операции.
    Ответ написан
    Комментировать
  • Как оптимизировать svg картинку?

    Adamos
    @Adamos
    Открыть этот SVG в Inkscape, выделить все, что одним цветом, и объединить фигуру ("Контур - Сумма").
    Уберет ненужные узлы.
    Ответ написан
    Комментировать
  • Какие есть отличия дизайна писем от веб-дизайна?

    Adamos
    @Adamos
    Главное отличие - в том, что письмам в хрен не впился дизайн, им достаточно оформления.
    И это оформление не должно помешать получателю прочитать письмо, полученное и отображенное неизвестно какой программой с неизвестно какими поддерживаемыми фичами веб-дизайна.
    И мой Thunderbird, например, просто не загружает картинки, прописанные в этом самом дизайне, из элементарных соображений безопасности. Поэтому письмо, в котором богато навалено графики, у меня выглядит пустым. Впрочем, как правило - таковым и является.
    Ответ написан
  • Как анализировать рынок IT, чтобы помочь ребенку с выбором направления?

    Adamos
    @Adamos
    Есть тенденция, которая существует давно и никуда не денется.
    Требуются - программисты, которые не ждут команды и разжеванных заданий, а могут сами начать и кончить.
    Не мечутся в поисках волшебного направления-языка-фреймворка, за который кто-то сразу будет люто платить, а делают проекты на том, что попалось под руку. От начала до конца.
    Внезапно, этот опыт позволяет потом без проблем сменить фреймворк, язык и даже направление.
    Если научишься - работать. А не скакать по верхушкам, хватаясь за интересное и бросая его сразу же, как оказывается, что для углубления в предмет нужно недельку побиться лбом об стену.
    Ответ написан
    Комментировать
  • В чем разница символической ссылки и скопированного пути?

    Adamos
    @Adamos
    Только по ответам понял, что вопрос о том, зачем вообще могут быть нужны симлинки.
    Пример из жизни: Стим хранит свое добро в ~/.steam.
    Добра у геймера много, а хомяк не резиновый.
    Берет ушлый геймер да кладет в хомяк симлинк ~/.steam -> /media/storage/free_petabytes.
    И все просто работает ;)
    Ну, или банально запускаешь программу не из репы (например, сам же и собирал, но под прошлую версию системы). А она истошно жалуется - нет необходимой библиотеки libbackdoor123-666.so, а без неё работать никак нельзя! Ну, не флатпакать же по этому поводу - делаешь симлинк libbackdoor123-666.so -> libfakedoor00.so, и все заверте.
    Ответ написан
    7 комментариев
  • Как прочитать ответ сервера после отправки формы?

    Adamos
    @Adamos
    Файлы через ajax спокойно отправляются, и даже прогресс-бар можно прикрутить.
    Пример (jQuery, WinterCMS, Bootstrap):
    postFiles: function($form, request, callback)
        {
            var formData = new FormData($form[0]);
            var input = $form.find('input[type=file]')[0];
            for(var n in input.files) {
                if(input.files[n].size > 104857600) {
                    alert('Максимальный размер загружаемых файлов - 100 Мб!');
                    return;
                }
            }
            $.ajax({
                url: window.location.href,
                headers: {
                    'X-WINTER-REQUEST-HANDLER': request? request : $form.attr('data-request') // это для WinterCMS
                },
                method: 'POST',
                dataType: 'json',
                type: 'POST',
                processData: false,
                contentType: false,
                data: formData,
                success: function(data) {
                    $('#file-upload-progress').remove();
                    if(callback) {
                        callback(data);
                    } else {
                        eval($form.attr('data-request-success'));
                    }
                },
                error: function(data) {
                    $('#file-upload-progress').remove();
                    if(data.responseText) {
                        alert(data.responseText);
                    }
                },
                xhr: function() {  // custom xhr
                    var myXhr = $.ajaxSettings.xhr();
                    if(myXhr.upload) {
                        myXhr.upload.addEventListener(
                            'progress',
                            function(evt) {
                                if (evt.lengthComputable) {
                                    var $progress = $('#file-upload-progress');
                                    if($progress.length === 0) {
                                        $progress = $(
                                            '<div id="file-upload-progress" style="position: fixed; top: 0; left: 45%; text-align: center; background-color: white; border-radius: 1em; padding: 0 1em 1em 1em; border: 2px solid #CEF; z-index: 2000">' +
                                            '<h6>Загрузка файлов</h6>' +
                                            '<div class="progress" style="margin-bottom: 1em">' +
                                            '<div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div>' +
                                            '</div>' +
                                            '</div>'
                                        );
                                        $progress.append(
                                            $('<button class="btn btn-sm btn-default"><i class="icon-remove"></i>&nbsp;Отменить загрузку</button>')
                                                .click(function() {
                                                    myXhr.abort();
                                                    $progress.remove();
                                                })
                                        )
                                        $('body').append($progress.hide());
                                    }
                                    var percentComplete = Math.round(evt.loaded / evt.total * 100);
                                    if(percentComplete === 1) {
                                        $progress.hide();
                                    } else {
                                        $progress.find('div.progress-bar').css('width', percentComplete + '%').attr('aria-valuenow', percentComplete).html(percentComplete + ' %');
                                        $progress.show();
                                    }
                                }
                            },
                            false
                        );
                    }
                    return myXhr;
                }
            });
            return false;
        },
    Ответ написан
    Комментировать
  • Какой моноблок посоветуете поставить в цех?

    Adamos
    @Adamos
    Нужно решение достаточное для запуска 1С

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

    Какие моноблоки можете посоветовать

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

    Я в цех сначала ставил древние машины, потом задолбался чистить пыль и поставил OrangePi4LTS в безвентиляторном корпусе. Для отображения веб-интерфейса - за глаза. При любых проблемах - просто ставится запасная... Правда, в одной ситуации - рядом с силовым оборудованием - такая игрушка глючила. Подозреваю, ловила наводки на WiFi-антенну. Но так и не собрались это проверить, увы. Там так и стоит старый системник.
    Ответ написан
    7 комментариев
  • Какова оптимальная вложенность компонентов?

    Adamos
    @Adamos
    А вам конкретное число уровней посоветовать?
    Так это литературу надо читать. Ответ на этот вопрос дан еще полвека назад.
    42.
    Ответ написан
    2 комментария
  • Как в Битрикс с помощью PHP скрывать одну или несколько характеристик если они пустые?

    Adamos
    @Adamos
    Скорее всего, более полный код можно еще скомкать, сразу отсеяв ненужное.
    С этим конкретным можно обойтись, например, так (дальнейшая проверка уже не потребуется):
    $paramsArray = [];
    foreach(['fasad', 'karkas', 'ruchki', 'mehanism'] as $key) {
        $val = $prop[$key]['VALUE'];
        if($val !== '') {
            $paramsArray[$prop[$key]['NAME']] = $val;
        }
    }
    Ответ написан
    Комментировать
  • Как воспринимать преподавателя?

    Adamos
    @Adamos
    Прочитать об эффекте Даннинга-Крюгера и осознать, на каком именно пике графика находятся специалисты, безапелляционно вещающие о чем бы то ни было.
    Ответ написан
    Комментировать
  • Xampp vs OpenServer – кто шустрей?

    Adamos
    @Adamos
    Чтобы самому ничего не настраивать - по-прежнему рабочий вариант: https://habr.com/ru/articles/251529/
    Ответ написан
  • Как легко и просто развернуть curl для проекта С++?

    Adamos
    @Adamos
    Для виндов в исходниках libcurl отдельная папочка winbuild с инструкцией и Makefile,
    Только прочитать и исполнить.
    Или проблема в том, чтобы скачать исходники открытой библиотеки?

    P.S. А если (и скорее всего) Вижуал Студия - там даже готовые проекты приложены в projects/Windows.
    Ответ написан
  • Как смонтировать сетевую папку из Windows на чтение и запись без рута в Debian 13?

    Adamos
    @Adamos
    Прописать в fstab это монтирование, разрешить его юзеру.
    А насчет доступа на запись - это Винда решает, а не Дебиан.
    Ответ написан