Задать вопрос
  • Как сделать чтобы PHP скрипт по завершении работы отправлял на фронт уведомление?


    Или например при выполнении скрипта на бэке записывать в базу результат а фронт будет через 5 минут спрашивать бэк все ли готово?

    Этот вариант в любом случае придётся реализовать, тк ты не можешь гарантировать, что всё время от запроса до итогового результата у пользователя будет работать сеть.

    Я рекомендую всётаки озадачиться вебсокетами, тк это сейчас наиболее стандартный спобом общения клиента с сервером в реальном времени.

    Без вебсокетов можно попробовать server sent events, но лично я никогда ихне пробовал и не знаю подводных.
    Ответ написан
    Комментировать
  • Табличная бд, вопрос: как читать данные?

    Сделай обычную таблицу с колонками x, y, value и делай запрос SELECT value FROM table_name WHERE x = ? AND y = ?;

    А ещё то что ты хочешь очень похоже на Excel, только там в качестве координаты по горизонтали используются буквы, а не цифры.
    Но при этом преобразование координаты из десятичного числа в "номер" колонки в Excel - это операция, которую легко сможет сделать школьник, который не прогуливал информатику и помнит, как преобразовывать любое число из 10-чной системы счисления в n-ричную.

    UPD:
    Но если заполнены обязательно все клетки, то тогда дешевле будет хранить это как непрерывную последовательность символов в файле и брать значение по сдвигу.
    Это при условии, что значение в каждой клетке имеет длину в 1 символ.
    Но вообще если добавить больше конкретики - можно придти к наиболее оптимальному решению.
    Спасибо Алан Гибизов за напоминание, что программирование не только лишь про веб и реляционные бд.
    Ответ написан
    3 комментария
  • Какое оборудование нужно для снятия панорам?

    Если качественные панорамы, то штатив + камера.
    Если туры в квартиры или любительского уровня панорамы на улице (для видео или подобия google streets view) - любая 360-камера.
    Если панорамы уровня google streets view, то оборудование там соответствующее и не подпадает под категорию "Хочу начать".

    Если ультра бюджетно - телефон с нормальной камерой + приложение для снятия панорам.

    3d тут не причём.
    Ответ написан
    3 комментария
  • Как сделать SRV запись для сервера CS:GO?

    Придётся выключить проксирование от Cloudflare, тк "A запись с включённым проксированием" - это на самом деле CNAME запись которая указывает на прокси-сервера Cloudflare, а Cloudflare работает только с HTTPS-протоколом и любые другие запросы откидывает.
    Ответ написан
  • Как из Lua вызвать функцию C++?

    Google: "lua ffi"
    Ответ написан
    Комментировать
  • Как в линуксе сравнить два дерева директорий, но без проверки содержимого файлов, только проверить совпадение размеров и дат?

    Можно сделать ls рекурсивно и сделать diff по выводу ls

    UPD: вот такое решение мне предложил ChatGPT:
    diff \
      <(find <путь_к_первой_папке> -type f -exec stat -c "%s %n" {} \; | sort) \
      <(find <путь_к_второй_папке> -type f -exec stat -c "%s %n" {} \; | sort)

    Это решение использует `find` для рекурсивного обхода директорий и поиска всех файлов. Затем команда `stat -c "%s %n"` используется для получения размера файла и его полного пути. Результаты обоих `find` команд сортируются перед сравнением с помощью `diff`.

    Вы можете заменить `<путь_к_первой_папке>` и `<путь_к_второй_папке>` на соответствующие пути к папкам, которые вы хотите сравнить.


    UPD2: Более лаконичный вариант через rsync (но не факт что работает):
    rsync -n -r --size-only <путь_к_первой_папке>/ <путь_к_второй_папке>/

    Это решение использует `rsync` с опцией `-n` для симуляции операции без фактического копирования файлов. Опция `-r` используется для рекурсивного обхода директорий, а `--size-only` для сравнения только размеров файлов, без проверки содержимого.

    Вы можете заменить `<путь_к_первой_папке>` и `<путь_к_второй_папке>` на соответствующие пути к папкам, которые вы хотите сравнить.
    Ответ написан
  • Можно-ли пригласить человека в локальный сервер?

    На свой "localhost" не получится, тк localhost у каждого свой.
    А вот сделать свой компьютер глобально видимым и подключиться по обычному ip - можно.
    В таком случае схема никак не будет отличаться от подключения к "не локальному" серверу. Твой компьютер и будет выступать в роли сервера.
    Ответ написан
    Комментировать
  • Компактная электронная схема для питания светодиодов от батарейки с регулировкой яркости и длительности?

    Такое свечение в реальном мире невозможно получить) Оно же объёмное.

    Идеальный ответ

    Ради такого ответа тебе нужно на фриланс писать.

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

    В идеальном вопросе следовало бы приложить твою схему/схемы, какие ты нашёл и желаемый результат)

    В целом вся компонентная база должна быть небольшой, чтобы можно было в проекте 3д модели предусмотреть нишу в корпусе и спрятать всё внутрь

    Размер хоть бы написал.

    Возможность регулировки частоты мерцания
    Возможность регулировки минимального и максимального значения яркости светодиодов
    Выключатель

    Выключатель, два (или три) подстроечных резистора. Таймер 555 для регулировки длительности мерцания. Таймер 555 для регулировки яркости (в качестве генератора ШИМ). Какой-нибудь транзистор, чтобы объединить два сигнала.

    светодиоды не должны светить слишком ярко и я надеюсь, что есть такие, для которых не потребуется крона.

    Такие бывают. Смотри какие-нибудь компактные smd-резисторы.
    Ответ написан
    8 комментариев
  • Как вытащить body из html через HttpClient?

    Нужно распарсить страничку через AngleSharp например.
    НО
    Хочу достать со страницы сайта весь контент и заменить заменнить определенные слова.

    Тебе тогда весь документ и нужен, а не один только body.
    Ответ написан
    Комментировать
  • Swagger не все модели отображаются, как исправвить?

    Если у тебя контроллер возвращает IActionResult, но ты хочешь, чтобы в сваггере отображался нормальный тип - используй атрибут [PrducesResponseType(...)]
    Либо используй тип ActionResult<T> в качестве возвращаемого значения (а может даже оба)
    https://learn.microsoft.com/ru-ru/dotnet/api/micro...

    Вот пример из документации:
    [HttpPost]
    [ProducesResponseType(StatusCodes.Status201Created)]
    [ProducesResponseType(StatusCodes.Status400BadRequest)]
    public async Task<IActionResult> Create(TodoItem item)
    {
        _context.TodoItems.Add(item);
        await _context.SaveChangesAsync();
    
        return CreatedAtAction(nameof(Get), new { id = item.Id }, item);
    }

    https://learn.microsoft.com/ru-ru/aspnet/core/tuto...

    [HttpPost("{id}")]
    [ProducesResponseType(typeof(Product), 200)]
    [ProducesResponseType(typeof(IDictionary<string, string>), 400)]
    [ProducesResponseType(500)]
    public IActionResult GetById(int id)

    https://github.com/domaindrivendev/Swashbuckle.Asp...
    Ответ написан
    3 комментария
  • Может ли слететь биос после переноса системы в другой корпус?

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

    Лучше перебрать все компоненты по порядку и попробовать перенакатить биос.
    Ответ написан
  • Для чего нужен и как использовать класс SynchronizationContext в C#?

    Чем эта статья не устроила?
    https://learn.microsoft.com/en-us/archive/msdn-mag...
    Ответ написан
    Комментировать
  • Как из любой точки мира передать сообщение на ESP32 или любую ардуинку без установления подключения?

    Как из любой точки мира передать сообщение на ESP32 или любую ардуинку без установления подключения?

    Без установления соединения можно использовать UDP, но тогда ты не сможешь реализовать свою задумку.

    1. Ссылка - это просто текст. Невозможно через неё передать данные
    2. Предпросмотр в мессенджерах, обычно, происходит на стороне серверов мессенджера, чтобы не компрометировать.
    3. При открытии ссылки твой браузер отправляет HTTP-запрос. Чтобы ESP32 могла обработать запрос тебе нужно:

    1. Иметь доменное имя (надо будет прописать туда публичный ip, по которому можно будет до веб-сервера достучаться)
    2. Иметь HTTPS-сертификат (можно бесплатный от letsencrypt)
    3. Иметь где-то веб-сервер (чтобы обработать http-запрос)

    Веб-сервер лучше сделать отдельно от esp32 (на отдельной машине), тк у неё не так уж много ресурсов, да и с https она вроде работать не умеет (поправьте, если не прав).
    Ответ написан
    7 комментариев
  • Баланс между клиентами и функционалом софта?

    Ну как владелец ПО ты должен вести какую-то стратегию развития.

    И еще важный момент, хоть хотелки их аргументированы и имеют свой смысл, но что если они слишком специфичные или идут наперед моего плана развития софта?

    Правильно делаешь, что задумался.
    Тут у тебя два варианта:
    1. Удовлетворять хотелки в исходном виде.
    2. Использовать "хотелки" только как сигнал о проблеме/задаче. А способ решения придумывать самостоятельно.

    Первый путь проще, но приведёт к техдодгу, разрастанию фич, и многократному дублированию. Второй сложный и не факт что удовлетворить всех, но зато без минусов первого, а может даже оказаться лучше, тк одной небольшой фичей сможешь перекрыть множество разных проблем.


    Как правильно лавировать между хотелками клиентов и своим тех долгом и своими идеями?
    У меня кроме как решения: сначала идут хотелки клиентов, свои идеи последними

    Ну тут у тебя два варианта:
    1. Тот что ты назвал - хотелки клиентов вперёд.
    Так у тебя будет меньше времени на техдодг и рефакторинг. Да и свои идеи ты откладываешь на потом. Что делать, если эти отложенные идеи должны повысить привлекательность софта в глазах новых клиентов?

    2. Искать баланс. Например, если ты работаешь по скраму - ты можешь в спринт брать N задач на новые фичи от клиентов, M задач на новые свои фичи, X задач на баги, Y задач на техдодг.
    Либо можешь по расписанию устраивать "инженерные спринта" или "спринт на баги".
    Подобное можно реализовать и без спринтов, но сложнее.


    Как мне кажется, что на первых парах, норм. Но если клиентов станет сотня, то все это будет проблематично....

    Ну ты как минимум не сможешь их все исполнять сразу и тебе придётся их записывать и выставлять приоритеты.
    Ответ написан
    Комментировать
  • Port knocking как замена VPN?

    VPN и port knocking решают разные задачи.
    Если такого достаточно, то чем тебе сложный пароль не угодил?
    Ответ написан
    2 комментария
  • Какие виды функций есть в C++, и как их различать?

    Функция cout из стандартной библиотеки C++ использует указатель для доступа к объекту ostream, который представляет поток вывода. Указатель используется для работы с методами и свойствами этого объекта, такими как << оператор для вывода данных.

    Обманул тебя ChatGPT.
    cout - это не функция, а объект.
    И конкретно в твоём коде указатели напрямую нигде не используются.
    Ответ написан
    Комментировать
  • Почему free() выводит ошибку?

    В функцию free ты должен передать сам deleted_node (указатель на кучу)
    А ты передаёшь туда указатель на локальную переменную.
    Ответ написан
  • Могут ли отказать в работе из-за административки 6-летней давности?

    Ну всё. Навечно в ЧС у всех компаний. Раньше надо было думать.
    Теперь тебе нет смысла даже искать работу - всё равно никто не возьмёт.
    За превышение скорости или переход улицы на красный тоже административку дают кстати.

    Такой ответ ты ждал?

    А если серьёзно - СБ в первую очередь смотрит на возможный конфликт интересов и риск, что от твоего найма будет плохо компании.
    Многие пункты анкеты можно тупо отказаться заполнять по причине "не хочу", если компания адекватная.
    (сам так делаю, тк лень)
    Включи голову и подумай, какой резон вообще СБ давать тебе отказ на административный штраф, который был уплачен много лет назад?
    Ответ написан
  • Собрать пк или playstation 5?

    В теории god of war на rx580 работать должен.
    Xeon с Али тоже должен быть производительней, чем i5 2500, который рекомендуется для gow.

    Ps5 гарантированно потянет даже новинки

    Вопрос остаётся в количестве необходимого пердолинга и цене владения.
    Если брать только для игр
    Ответ написан
    2 комментария
  • Что делают настройки TARE в настройках разработчика?

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

    Подробнее ты можешь узнать, если загуглишь "Android TARE", "AlarmManager" и "JobScheduler"

    Если ты не разработчик, то тебе трогать эти настройки скорее всего не нужно.
    Ответ написан
    5 комментариев