Задать вопрос
  • Какие технологии повышенной надёжности нынче используют в оборонных/промышленных предприятиях?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    За оборонные не скажу, не знаю. А на промышленных предприятиях все очень просто. В мире контроллеров доминирует только один язык программирования - С!
    Что касается роботов и систем промышленной автоматизации, то очень часто используется блочное программирование на одном из языков МЭК/IEC типа 61131, 61499 и тэдэ. Все это интерпретируется в интерпретаторах на стороне контроллера и разрабатывается в каком нибудь SCADA. Интерпретаторы часто пишутся тоже на С, иногда C++ :)
    Все встроенные операционные системы и системы реального времени тоже написаны на С, изредка на С++.
    А чтобы все работало надежно, желательно, чтобы компания сертифицировалась на CMMI или ISO 11540 или ISO 33001 - https://ru.wikipedia.org/wiki/ISO/IEC_15504
    Часто, если системе позволяют ресурсы, разрабатывают на Java или Net. Иногда всякие разновидности паскаля, но это очень очень редко.

    Специальных языков типа forth, я вообще не встречал, ибо просто нет специалистов!
    Также не разрабатывают на на lisp, ибо та же беда - специалисты!

    Все знают С - с ним и колупаются. Даже C++ редко используют!
    Ответ написан
    4 комментария
  • Какие проблемы могут возникнуть при работе программы с файлом БД из удаленной папки?

    Adamos
    @Adamos
    Энциклопедия граблей по этому поводу двадцать лет собиралась бухгалтериями, гуглится "1С файловый проблемы".
    Ответ написан
    Комментировать
  • Какие проблемы могут возникнуть при работе программы с файлом БД из удаленной папки?

    @Voland69
    Главная проблема - конкурентный доступ. SQLite емнип не предполагает расшаренного доступа к файлу БД.
    Вторая проблема - устройство системы разграничения доступа - или у клиента будет доступ на запись в файл (тогда он может сделать все, включая удаление файла), или доступ только на чтение.
    Третья проблема связана с главной - даже если получится конкурентный доступ, транзакций не будет уж точно, что имхо при многопользовательском режиме критично.

    В общем я бы предложил не исключать вариант с сервером БД.
    Ответ написан
    Комментировать
  • Какие проблемы могут возникнуть при работе программы с файлом БД из удаленной папки?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Разнообразные - от очень медленной работы до порчи данных. SQLite не предназначена для конкурентного доступа, используйте полноценную СУБД.
    Ответ написан
    1 комментарий
  • Есть ли смысл искать frontend-работу в РФ с разговорным английским?

    DevMan
    @DevMan
    эмм.... нужно искать любую работу.
    сможете в РФ? отлично.
    сможете за бугром? ещё лучше.

    только как одно отменяет другое?
    судя по вопросу: вы в раздумиях, вместо, собственно, поиска.
    и это - фейл!
    Ответ написан
    Комментировать
  • Можно установить Ubuntu паралельно Windows?

    Zoominger
    @Zoominger Куратор тега Windows
    System Integrator
    Нет.
    Ставьте в виде виртуальной машины.
    Меньше геморроя будет.
    Ответ написан
    Комментировать
  • Как установить Nodejs v8.12 через терминал?

    lssssssssssl
    @lssssssssssl
    619794d45ce9f047217631.png
    Ответ написан
    Комментировать
  • Какие нюансы работы самозанятым?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    1. Самостоятельное ведение бухучёта, общение с налоговой, выписывание чеков.

    2. Отсутствие пенсии, налоговых вычетов, банки очень плохо дают кредиты

    3. Налоговая в курсе про эти схемы и пристально следит за ними. Если человек работал на компанию, а потом вдруг стал самозанятым с единственным клиентом - этой же компанией, то это красный флаг для налоговой, о том, что идёт подмена понятий. Нужно быть готовым к этому.
    Ответ написан
    13 комментариев
  • Если увеличить частоту, например с 10 кГц до 25 кГц, то яркость светодиода изменится?

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

    А в реальном физическом мире и у сигнала будут скругленные углы (и возможно лишние пики) и всякие паразитные емкости на дорожках и выводах светодиода начнут роль играть. В зависимости от кучи параметров яркость или немножко возрастет, или наоборот. Такие дела.

    В любом случае, изменение яркости будет небольшим, и вполне вероятно, что никто не заметит.
    Ответ написан
    3 комментария
  • Логирование веб-приложений: syslog и stdout/stderr?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    1. стандартная служба syslog умеет парсить логи по facility, следовательно можно настроить логирование разных компонентов в разные файлы на уровне syslog, управлять их ротацией.
    Также syslog умеет работать с другими syslog, таким образом можно аггрегировать логи с разных машин и управлять ими централизованно.

    2. логи отправленные в stdout обычно куда-то перенаправляют, в тот же файл, или сразу грабят в какой-то аггрегатор.
    В современное время про stdout чаще всего говорят, когда вы запускаете что-то в контейнере, а контейнер крутится в оркестраторе типа kubernetes/openshift.
    В этом случае настраивается внешний сборщик - тот же filebeat, fluentd, logstash или syslog, который собирает логи со всего кластера кубернетес/опенщифт, парсит их и кидает в аггрегатор.
    Просто задеплоили новый компонент и по его имени можно фильтровать логи в той же Кибане, при этом нигде не нужно в системе логирования настраивать что-то под новый компонент, все тегируется автоматом.
    Ответ написан
    Комментировать
  • Как сделать в docker-compose московское время в базе postrgresql?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Московское время (или любое другое) для поля без таймзоны делается корректировкой в приложении, в базе пусть хранится в UTC.
    Ответ написан
    7 комментариев
  • Как получить результат из асинхронной функции?

    Однажды шагнув в асинхронщину, из нее не вылезешь.
    В синхронном коде результат Промиса обрабатывается в then
    https://habr.com/ru/company/vk/blog/269465/

    mainFunc(rightElem).then(result => {
      console.log("mainFunc", result)
    });
    Ответ написан
    Комментировать
  • Существует ли способ отследить украденный смартфон по IMEI кодам?

    Zoominger
    @Zoominger
    System Integrator
    В отделении милиции сказали, что даже не станут терять времени и сил на такое пустяковое дело.

    Дело происходит не в России, я так понимаю? Просто сто лет о таком не слышал.

    Да, можно отследить, этим как раз должны заниматься правоохранительные органы, которые и посылают соответствующий запрос мобильным операторам, которые либо блокируют (как сделано у Apple) либо отслеживают телефон по базовым станциям, либо и то, и другое.
    Ответ написан
    3 комментария
  • Высшее образование Java программисту, нужно ли?

    Zoominger
    @Zoominger
    System Integrator
    Образование, если у вас нет подтверждённого опыта работы - это огромный плюс.
    Если опыт есть (2-3 года), то с радостью возьмут и без образования.
    Ответ написан
    4 комментария
  • Как сформировать аргумент данного типа?

    @mikeyuriev
    Some((&[""], ""))
    или
    None

    Зависит о того, что вам надо. Почитайте про Option.
    Ответ написан
    Комментировать
  • Почему приходят смс-коды подтверждения от разных сервисов, хотя я их не запрашиваю?

    Zoominger
    @Zoominger
    System Integrator
    Да просто ошибается кто-то, я так раз пять при регистрации отправлял СМС, пока ошибку в цифре не заметил. Вот весело было кому-то.
    И нет, с вашего телефона так никто не зарегистрируется.
    Ответ написан
    Комментировать
  • Как хранить большие строки красиво?

    @rPman
    А чем плохо? пользоваться не удобно? строковые константы почти одинаковые, отличаются по чуть чуть?
    Лично я не вижу в простом нагромождении switch case ничего зазорного, если это простое описание логики если то... многоуровневая логика уже сложнее (если внутри тоже есть условия) такое читать сильно неудобно и легко пропустить ошибку.

    Еще, нормальная практика, все такие данные выносить из исходников в каком то формате. Т.е. буквально формат данных должен описывать условия и данные (например это пара строковых значений, первое строка-условие, второе возвращаемое значение, хранить, к примеру, в формате ini, человекочитаемо, удобно, просто), но во всем нужно знать меру, так как если условия становятся сильно сложными, код который это обрабатывает становится сложным, неудобочитаемым, а еще потребуется какой то язык описания этих данных, чтобы человек мог их отредактировать и искать в них ошибки.. ибо если станет все слишком сложно, получится еще один язык программирования.
    Ответ написан
    Комментировать
  • Как найти модуль fs?

    lssssssssssl
    @lssssssssssl
    Комментировать
  • Всегда ли нужно стремиться к неизменяемости объектов?

    Alexandroppolus
    @Alexandroppolus
    кодир
    У неизменяемых объектов есть свои плюсы. Во первых, их легче сравнивать: вместо сравнения всех полей (рекурсивно) сравниваем только две корневые ссылки на объекты. Во вторых, можно расшарить некоторые внутренние структуры данных. Например, строка во многих ЯП (C#, Java, JS) - это неизменяемый объект. И в JS есть оптимизация - когда берем подстроку от строки, то используем тот же буфер данных. В случае изменяемой строки такой фокус бы не прокатил.

    Разумеется, плюсы компенсируются минусами. В большом объекте долго делать изменения. Больше нагрузка на память и сборщик мусора. Так же нельзя такой объект передать куда-то и потом поменять - там, куда передали, будет устаревшая версия (это иногда хорошо, иногда плохо).

    В общем, компромисы, чувство меры. Потому надо смотреть по задаче, и выбирать, какой вариант будет эффективнее и проще - изменяемый, неизменяемый, или нечто среднее.
    Ответ написан
    4 комментария
  • Как узнать какой ip или host?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    С твоего собственного :)

    В данном контексте ip - instruction pointer - адрес начала блока команд, sp -stack pointer - адрес стека, at - адрес точки останова.
    segfault в libc - 100% попытка писать по адресу, не принадлежащему программе - либо использование неинициализированного указателя, либо ошибка в адресой арифметике
    Ответ написан
    Комментировать