Задать вопрос
  • Как сделать, что клиенту прилетал актуальный PDF-файл?

    Adamos
    @Adamos
    Выставить настройки кэша в заголовках ответа, отдающего файл.
    Для особо упертых браузеров, которые могут класть на эти заголовки (вроде Хрома) - отдавать файл каждый раз по другой ссылке (добавив ?ver=mtime, например).
    Ответ написан
    1 комментарий
  • Какой курс по тестированию ПО будет лучшим для человека, который учится с нуля?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Подскажите какую-нибудь книжку или бесплатный курс, где нет ничего сложного и лишнего, чтобы с полного нуля научиться диагностировать болезни и пойти работать врачом-диагностом начинающим.
    Ответ написан
    Комментировать
  • Как отправлять проект заказчику?

    @vitaly_il1
    DevOps Consulting
    В 90% случаев - private репозиторий в GitHub с README.
    Если заказчик совсем нетехнический - договариваться заранее и подробно что он хочет получить в результате проекта.
    Ответ написан
    3 комментария
  • Как подготовить интернет-магазин к боевому старту?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Давайте обратимся к классикам, например применим метод Ферми для оценки топа посещаемости ресурса. Естественно все приведенные цифры с некоторой погрешностью...

    Пусть в регионе проживает 1КК людей, из которых 20% это несовершеннолетние, 20% это люди пожилого возраста, то есть 2 категории, которые с огромной долей вероятности сервисом пользоваться не будут. Так же, можно сразу выкинуть 15% проживающих за чертой бедности, и еще примерно столько же (15%) находящихся в граничном с бедностью состоянии.

    Из оставшихся 30% (300К)охват рекламой/слухами может составить около 50% в столице, и 30% в области, пусть будет 40% общего охвата, хотя это скорее всего завышенный показатель. То есть в остатке потенциальных знающих о вашем сайте около 130К, причем это цифра не на старте, а примерно спустя пол года-год.

    Предположим что магазин имеет не нишевую специализацию, а достаточно широкий ассортимент, заинтересующий 70% от потенциальных ознакомившихся с ним людей (это оооочень оптимистично, но допустим). Из них 30% "отложат на потом" посещение ресурса, и больше о нем не вспомнят, или зайдут 1-2 раза, что на общую статистику не влияет. В сухом остатке имеем около 40-70К потенциальных посетителей. Предположим, что прошло пол года, и все они равномерно росли до этой цифры, и посещали магазин ну пусть 3 раза в месяц.

    В итоге в месяц будет 70к*3 = 210К визитов, визит примерно из 5-7 страниц, итого = 6*210К = 1 260 000 хитов в месяц.
    Делим на 30 дней = 42 000. делим на 12 активных часов, получаем 3500 хитов в час, 58 хитов в минуту, то есть 1 хит в секунду. В пике пусть будет 6 рпс.

    Вывод: слабенький церлерон и винт на 7200 rpm вполне справится с вашей мегаубервафлей...

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

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Ни кто не запрещает Gmail-у вести свой список SPAM-отправителей, угу. Вполне возможно, верно? И как-то вы в нём оказались. Кстати, есть у Google свой список проверенных серверов, google identification. Где-то в панелях Google можно этот identification получить, в DNS записях MX-а прописать.
    Ответ написан
    Комментировать
  • Почему письма с моего почтового сервера попадают в спам у Gmail?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    IP в спам-базах нет

    вот тут ошибка

    BL баз штук 50
    Ответ написан
    Комментировать
  • Как пользоваться библоотекой FfiTdLib?

    @Sellisent
    <?php
    
    require_once 'vendor/autoload.php';
    
    use FFI\TDLib\TDLib;
    
    // Создаем экземпляр класса FFITdLib
    $tdlib = new TDLib();
    
    // Устанавливаем параметры для авторизации
    $api_id = 'YOUR_API_ID';
    $api_hash = 'YOUR_API_HASH';
    $phone_number = 'YOUR_PHONE_NUMBER';
    
    // Выполняем авторизацию
    $tdlib->send([
        '@type' => 'setTdlibParameters',
        'parameters' => [
            'api_id' => $api_id,
            'api_hash' => $api_hash,
            'use_test_dc' => false,
            'database_directory' => 'tdlib-db',
            'files_directory' => 'tdlib-files',
            'use_file_database' => false,
            'use_chat_info_database' => false,
            'use_message_database' => false,
            'use_secret_chats' => false,
            'api_key' => '',
            'system_language_code' => 'en',
            'device_model' => 'unknown',
            'system_version' => 'unknown',
            'application_version' => '1.0',
            'enable_storage_optimizer' => true,
            'ignore_file_names' => false,
        ],
    ]);
    
    $tdlib->send([
        '@type' => 'checkDatabaseEncryptionKey',
        'key' => '',
    ]);
    
    $tdlib->send([
        '@type' => 'setAuthenticationPhoneNumber',
        'phone_number' => $phone_number,
    ]);
    
    // Получаем код авторизации
    $code = readline('Enter the code: ');
    
    $tdlib->send([
        '@type' => 'checkAuthenticationCode',
        'code' => $code,
    ]);
    
    // Выполняем запрос getChatStatistics
    $chat_id = 'CHAT_ID';
    $result = $tdlib->send([
        '@type' => 'getChatStatistics',
        'chat_id' => $chat_id,
        'is_dark' => false,
    ]);
    
    print_r($result);
    Ответ написан
    1 комментарий
  • Какие минимальные знания С++ должны быть, чтобы начать изучать Unreal Engine 5?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Что мне стоит делать дальше?

    Изучать обе параллельно.

    какие минимальные знания С++ должны быть, чтобы начать изучать Unreal Engine 5

    Понимание синтаксиса и способность читать документацию.
    Ответ написан
    Комментировать
  • PHP websocket насколько сильно он уступает node.js по производительности?

    sergiks
    @sergiks Куратор тега PHP
    ♬♬
    Open Swoole – мощный супер-быстрый асинхронный PHP.
    WebSocket'ы, корутины, высокая нагрузка.

    Пример WebSocket сервера:
    <?php
    
    use OpenSwoole\WebSocket\Server;
    use OpenSwoole\Http\Request;
    use OpenSwoole\WebSocket\Frame;
    
    $server = new Server("0.0.0.0", 9502);
    
    $server->on("Start", function(Server $server)
    {
        echo "OpenSwoole WebSocket Server is started at http://127.0.0.1:9502\n";
    });
    
    $server->on('Open', function(Server $server, OpenSwoole\Http\Request $request)
    {
        echo "connection open: {$request->fd}\n";
    
        $server->tick(1000, function() use ($server, $request)
        {
            $server->push($request->fd, json_encode(["hello", time()]));
        });
    });
    
    $server->on('Message', function(Server $server, Frame $frame)
    {
        echo "received message: {$frame->data}\n";
        $server->push($frame->fd, json_encode(["hello", time()]));
    });
    
    $server->on('Close', function(Server $server, int $fd)
    {
        echo "connection close: {$fd}\n";
    });
    
    $server->on('Disconnect', function(Server $server, int $fd)
    {
        echo "connection disconnect: {$fd}\n";
    });
    
    $server->start();
    Ответ написан
    Комментировать
  • Лучше выбрать Symfony или Laravel для новичка и виртуального хостинга?

    sergiks
    @sergiks Куратор тега Веб-разработка
    ♬♬
    Цель: изучить оба фреймворка и уметь с ними работать.

    Сделать проект на то и на сём.

    Начать проще с Laravel, он чуть доступнее, проще, в красивой яркой упаковке. В то же время он построен на компонентах Illuminate, которые зачастую под капотом используют компоненты Symfony. Например, см. зависимости консольного компонента Laravel.

    Другой проект попробуйте сделать на Symfony. Увидите, как много общего, похожего с уже знакомым Laravel.

    Как часто здесь бывает, ответ на вопрос, на самом деле:
    «хватит уже задавать никчёмные вопросы, берись и делай».
    Ответ написан
    Комментировать
  • Как сделать сертификаты для поддоменов?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Let`s Encrypt сто лет как выдаёт wildcard-сертификаты.
    Ответ написан
    Комментировать
  • Как создать язык программирования?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Как создать свой язык программирования?

    Точно так же, как и любую другую программу: сначала спроектировать, а потом реализовать.

    Без другого языка программирования! Полностью с нуля.

    В самом низу находится машинный код. Выглядит примерно вот так:
    08 04 83 fa 08 04 83 fb 08 04 83 fd 08 04 84 00
    У каждого процессора есть свой набор инструкций, которые кодируются машинным кодом. Открываем справочник и пишем нужный код для нужной ОС/железа. Ничего сложного, правда же? =)

    Ведь как-то создали первый ЯП.

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

    Так что в вашем случае вам надо пройти весь этот путь самостоятельно. Примерно так:
    1. На машинном коде реализовать минимальный ассемблер
    2. Используя свой минимальный ассемблер реализовать простейший компилятор этого ассемблера
    3. Расширить компилятор ассемблера до стандартного набора инструкций
    4. На ассемблере реализовать транслятор и компилятор ЯП высокого уровня
    5. Реализовать необходимый набор инструкций для написания компилятора этого же ЯП
    6. Написать этот самый компилятор своего ЯП на нём же и далее уже скомпилировать первую самостоятельную версию своего ЯП без использования других ЯП
    Ответ написан
    3 комментария
  • На чем дешево и долго хранить десятки Тб информации сейчас?

    @alexalexes
    Я думаю, 10 дисков с технологией записи CMR и без гелиевого наполнения по 8 Тбайт, запертые в сейфе в негорючем помещении с постоянным микроклиматом, будут куда дешевле и проще в эксплуатации, и пролежат 15 лет. Чем возиться с ленточным накопителем и лентами.
    Ответ написан
    Комментировать
  • Как реализовать ТОП просмотров за день, неделю и месяц?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В свободное от нагрузки время аггрегировать данные за прошлые периоды.
    Прошел день, за прошлый день посчитал, добавил в отдельную таблицу сумму одной строкой и прошлый день весь можно грохнуть.
    Ответ написан
    Комментировать
  • Как называется устройство для объединение нескольких модемов в одну сеть?

    Sanes
    @Sanes
    Ethernet bonding
    Ответ написан
    Комментировать
  • Как встроить антивирусный движок в python?

    @rPman
    Полагаю в мире есть только один открытый антивирусный движок с условно свободными базами и обновлениями - clamav, вот его и интегрируй, либо через библиотеку libclamav либо вызывай утилиту командной строки

    p.s. альтернатива (лучше но не бесплатно, там сразу десятки антивирусов) - использовать облачные решения от virustotal, у них есть api который позволяет по хешам файлов быстро выдавать ответ (ну и заливать неизвестные)
    Ответ написан
    Комментировать
  • Как правильно построить взаимодействие своей "внутренней" базы товаров с движком интернет-магазина?

    @quad69
    Думается, что должно быть так: товары хранятся не в таблицах, а в единой БД. Когда владелец бизнеса что-то там меняет, эти изменения автоматически распространяются в каталоги интернет-магазинов.
    Как такое делают?


    А в чём сложность? Ставите тот же Mysql, складываете в него товары, потом подключаетесь, берёте данные и выводите.
    Ответ написан
  • Как удалить лишний js и css код с сайта?

    webinar
    @webinar Куратор тега Веб-разработка
    Учим yii: https://youtu.be/-WRMlGHLgRg
    кто такой лишний js и cs?

    грузится он медленно именно из за этого

    нет. Грузится он медленно из за того что у вас сервер очень медленно работает. Он отдает картинки рамером в 10кб по 10с
    63fe5e942e469914534220.png
    Ответ написан
    3 комментария
  • Как реализовано поле редактирования в ВК?

    victormayorov
    @victormayorov
    Frontend разработчик
    у vk храниться это в localStorage. И ничего глупого нет, чтобы хранить это в localStorage для того, чтобы временно сохранить то, что ввел пользователь.
    63fe221761064673634414.png
    Ответ написан
    1 комментарий
  • Как правильно создать приложение Messenger?

    @strelok011
    Судя по постановке вопроса - в голове полная каша из обрывков знаний, уж простите :)
    Рекомендую посмотреть вот этот видеоурок, хоть он и не про мессенжер, а про интернет магазин.
    В видео показаны этапы проектирования продукта, планирование базы данных, реализация, создание эндпойнтов, разработка фронт-приложения.
    Если вдумчиво смотреть и сразу применять, разбираться почему и зачем, и как это можно будет расширить и изменить под себя, вы точно сможете сделать что-то свое.
    Если не хватит базы знаний - копайте статьи в интернете по тому инструменту или области, которая для вас темный лес.
    Вот тут в "двух словах" рассказано как сделать проект.
    Ответ написан
    Комментировать