Задать вопрос
  • Как передать данные в exe файл на C# при загрузке?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    1. Передавать имя пользователя в аргументах к программе, но тогда нужно уметь правильно запускать. Т.е. нужен установщик, который ярлык правильно настроит
    2. Отправлять вместе с программой файл конфигурации, из которого нужно читать имя пользователя.
    3. Скомпилировать с уже встроенным именем.

    Для последнего пункта можно сделать оптимизацию - весь проект (с логикой) хранить уже скопилированными, а при поступлении запроса компилировать exe. В него положить имя пользователя и просто скопировать готовые dll, а сам он просто будет прослойкой для самой программы.

    Также появилась идея о каком-нибудь шаблонном движке (по типу razor), который в потоковой обработке будет отправлять байты программы и в нужном месте подставит строку имени, но не знаю существует такое решение или нет (скорее нет)
    Ответ написан
  • Сложно ли написать приложение включающее голосовое сообщение на все входящие вне списка контактов?

    @d-stream
    Готовые решения - не подаю, но...
    Сейчас операторы предлагают бесплатные услуги голосовых помощников. Вот там как раз всё есть, включая распознавание речи и отправку клиенту текстового журнала беседы.
    Ответ написан
    Комментировать
  • Как импортировать данные из .docx файла в JavaScript логику?

    Vindicar
    @Vindicar
    RTFM!
    Технически, DOCX можно прочитать - это ZIP архив, в котором лежат XMLки. Библиотека для чтения ZIP архивов под JS (в т.ч. браузерный) есть.
    Но реально проще будет использовать расширенную поиск-замену в Word, чтобы заменить красный цвет на уникальный символ или комбинацию символов перед текстом. Комбинация ^& означает "искомый текст", т.е. приведённый ниже пример вставляет знак процента перед текстом, написанным красным цветом.
    659eee532a796683149306.png
    А потом уже вставить в веб-страницу текст без форматирования и разбирать его.
    Ответ написан
    Комментировать
  • Как выбрать IPS-FHD-монитор для игр?

    @Drno
    смотри хорошую ips матрицу с нужным откликом.. вопрос то в чем?
    Ответ написан
    Комментировать
  • Каким образом человек может попасть на хакнутый им сервер?

    yesbro
    @yesbro
    Думаю, помогаю думать
    Могли оставить какой-нибудь скрипт, который по запросу из сети выполнить любой заранее заложенный или загруженный в процессе код. Могли майнер оставить. Могли какой-то сервис развернуть. Могли в крон положить скрипт который через Х дней даст доступ по ключу или добавит пользователя. А могли ничего не сделать. Вариантов слишком много :) Проще переустановить. Логи могли и подчистить.
    Ответ написан
    9 комментариев
  • Корректно ли создавать юзеров с подобными именами?

    ophil
    @ophil
    https://ophilon.github.io
    проблемы возникнут гарантировано. Имя не может начинаться с цифры, должно включать только ограниченный набор символов:

    adduser: Please enter a username matching the regular expression configured
    via the NAME_REGEX configuration variable.  Use the `--force-badname'
    option to relax this check or reconfigure NAME_REGEX.
    
    default NAME_REGEX="^[a-z][-a-z0-9]*\$"


    Неприятно смотреть даже на вполне обычные имена длинее 8 символов, например, last их режет, или имя в верхнем регистре, или зачем-то на русском. Впечатление, что люди не знают о GECOS
    Ответ написан
    Комментировать
  • Как сделать резервную копию сайта?

    @Refguser
    Решения для бизнеса: корп.сайты, ИМ, боты и пр.
    Смешались в кучу кони.. Каким образом резервная копия поможет ускорить перенос/переезд? Никаким.

    Если интересует безотказность, но нужно иметь как минимуму два сервера в разных ДЦ (и лучше в разных странах) и смотреть в сторону балансировщика нагрузки. (И, естественно, моментальной синхронизацией данных).

    А бекап нужно делать ежедневно. Не обязательно полный, хотя бы базы. И хранить его на третьем сервере.
    Ответ написан
    Комментировать
  • Почему во freepbx само ставится ПО?

    hint000
    @hint000
    у админа три руки
    Например, атоматически устанавливались обновления, а у какого-то из установленных пакетов изменились зависимости, что-то добавилось в зависимостях и поэтому это что-то автоматически установилось, чтобы не препятствовать обновлению. Но такое редко бывает и haproxy сам по себе не мелочь какая-то, чтобы внезапно появиться в чьих-то зависимостях. Но проверить легко - отдаёте команду на удаление haproxy (удаление начинается только после подтверждения [Y/n], так что можно не подтверждать и ничего фактически не удалять):sudo apt remove haproxy
    ...и смотрите список пакетов к удалению после строки The following packages will be REMOVED:
    Ответ написан
    Комментировать
  • Как хранить номера авто казахстанского учета в базе данных чтобы максимально быстро найти номер в БД?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тебе ничего не надо придумывать. Все уже придумано и база умеет индексировать.

    create table autonumbers(autonumber varchar(30), region varchar(30));
    
    create index idx1 on autonumbers(autonumber);
    create index idx2 on autonumbers(region );


    Запросы:
    поиск номеров в регионе (индексированный)
    select .... where region = 'Астана';
    
    точный поиск номера по полному совпадению
    
    select .... where autonumber= '111AAA11';


    все что я знаю это поиск чисел быстрее поиска строк


    Это слабое утверждение для баз данных. БД это на 80% IO bounded приложение
    и его нагрузка будет зависеть от дисковой подсистемы и от удачного расположения
    искомых строк в блоках БД.

    Мой личный опыт эксплуатации БД Oracle например показывает что практически
    нет разницы между varchar / number. Хотя многие DBMS (Postgresql) поддерживают
    примитивные типы данных, но когда строка (datarow) длинная - то практически
    безразлично будет ли у тебя integer, biginteger, decimal.

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

    @Everything_is_bad
    1. Тег "Оптимизация SQL-запросов", значит у тебя СУБД? Какая?
    2. Ты придумал себе проблему на ровном месте, 5 миллионов не сильно много, можно поднять тестовый стенд и проверить как будет работать без индексов, потом добавить индекс по умолчанию
    3. Если поиск по полному номеру, то практически любой индекс будет работать очень быстро, если по подстроке, то начинается куча нюансов, тут уже надо отталкиваться от user story
    4. Если не устраивает, то читаешь какие виды индекса есть у данной СУБД, экспериментируешь, смотришь планы запросов, оптимизируешь и т.п
    Ответ написан
    Комментировать
  • Как обновить или исправить BIOS на материнской плате JINGSHA X99-D8I?

    CityCat4
    @CityCat4
    Жил да был черный кот за углом...
    Это ты так пошутил про BolgenOS, да?

    Впрочем от адепта секты "мой-крутой-комп-на-ксеоне-и-китайской-говноматери-с-али" всего ожидать можно.

    Скачать BIOS с сайта производителя (если конечно у него есть сайт и он не только на китайском).
    Оттуда же скачать утиль для прошивки.
    Прошить.

    Правда, от китайской говноматери рассчитанной на внутренний китайский рынок можно ожидать всего, чего угодно.
    Ответ написан
    2 комментария
  • Объясните пожалуйста как работает пинг?

    borisdenis
    @borisdenis
    Ленив и вреден...
    Сигнал очень редко идет напрямую, представьте, что между указанными вами точками интернет канал идет через Москву, какой маршрут тогда получится короче?
    Ответ написан
    Комментировать
  • На сколько Java отличается в обозначении типизации от C# для понятия TS?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Странная идея вообще учить язык А или Б для того чтобы понять язык В.
    Учите TS чтобы понимать TS, учите C# чтобы понимать C#.
    Ответ написан
    Комментировать
  • Как вы ведете документацию кода?

    Многие говорят, что код должен быть самодокументируемым.

    Так говорят только про случаи типа:
    // Время до перегрева реактора в секундах
    var a = 42;

    return id % 3; // 3 - это количество наших серверов. Тут мы находим id нужного сервера, на котором хранятся данные

    В вышеназванных случаях комментарий не нужен и может быть заменён нормальным неймингом.
    В некоторых случаях комментарии можно заменить на нормальные типы.
    // ПЛОХО!
    /// <param name="time">Дата и в формате rfc2822</param>
    public void DoSomething(string time) {}
    
    // Хорошо!
    public void DoSomething(DateTime time) {}

    Писать комментарии в коде нужно там, где что-то не очевидно (описание какого-то алгоритма или протокола, например, ссылки на задачи, в рамках которых был добавлен какой-то неочевидный, но важный "костыль" и так далее)
    + Следует пользоваться встроенными средствами для документирования.

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

    Если вашей команде документация действительно важна, то её нужно вносить в основной цикл разработки.
    Что-то типа
    Specification -> Design review -> Development -> Review -> Testing -> Documentation -> Release
    Тоесть нет документации - нет релиза. Нужно вносить роль технического писателя, который будет писать тексты и следить за актуальностью.

    которые автоматически показывали бы покрытие кода документацией.

    Код документацией покрывать не надо (по крайней мере так, как это обычно тестами происходит).
    А вот для покрытия методов и публичного api и так есть инструменты для проверки. Например в C# даже warning есть соответствующий.

    что-то похожее на TDD - когда ты пишешь документацию а потом код

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

    PS: Попробуй отталкиваться от того, кто будет эту документацию читать.
    1. Новые разработчики в твоей команде во время онбординга? Тогда проще C4 Diagram нарисовать
    2. Другие разработчики, которые хотят с твоим сервисом интегрироваться? Тогда и описывай протокол взаимодействия, примеры приложений, и имеющиеся публичные методы
    3. Техподдержка? Тогда лучше посмотреть в сторону базы знаний
    4. Пользователи системы? Тогда лучше отталкиваться от вариантов использования - инструкции, как сделать то или иное действие, обзоры разных модулей.
    5. Аналитик при продумывании новых фич? Тогда тут нужно что-то среднее между п1, п2, и п3.
    6. Никто? Тогда и не мучай бумагу.
    Ответ написан
    Комментировать
  • Как запретить счетчику Яндекс Метрика изменять HTML страницу сайта?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Вопрос. Как запретить Яндекс Метрике менять что либо на сайте?

    По умолчанию - метрика ничего не изменяет в существующем html.
    В моем случае Яндекс Метрика изменяла номер телефона в шапке сайта на неизвестный мне номер.

    Это не метрика, а очень похоже на calltracking. Возможно, Яндекс Телефония как то была интегрирована в счетчик.
    Ответ написан
    6 комментариев
  • Чат для быстрого получения информации об айти технологиях?

    pindschik
    @pindschik
    ФЫВА ОЛДЖ
    Я правильно понял?
    У вас знания недостаточные, и к тому же эта беда в разных областях (респект, что понимаете),
    и вам нужны советы людей с большим опытом, которые много где поработали, всё повидали, набили шишек. При этом не из основной серой массы "админ-овощ", а выдающиеся специалисты, не косноязычные, умеют выражать мысли грамотно, понятно, непротиворечиво, без напуску туману, без риторики, не выказывающие к оппонентам пренебрежения и хамства. И при этом за работу и знания - им платит дядя, не вы, а с вами они будут делиться инфой не за рюмкой чая и задушевной беседой, а в телеграмме. Да еще и отвечающие мгновенно, в рабочее время и ночью...
    Увы.

    "Нужен мне работник:
    Повар, конюх и плотник.
    А где найти мне такого
    Служителя не слишком дорогого?"

    А.С. Пушкин "Сказка о Попе и его работнике Балде"
    Ответ написан
    2 комментария
  • Полезные книги/ресурсы по архитектуре компьютера?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вопрос - просто замечательный. Если говорить простым языком - Хочу Все знать!

    Мне кажется что тебе лучше пойти от практики. Тоесть начать делать игру под Windows/Android
    на том языке который ты знаешь и уже потом пойти "от проблемы". Например, ты пишешь
    как оптимизировать. Оптимизиация графики или основных алгоритмов игры или оптимизация I/O
    это такие себе три разные задачи по каждой из которых можно книгу написать.

    Короче будешь распылятся - еще лет 20 будешь читать умные книжки.
    Ответ написан
    Комментировать
  • Как в базе данных перезаписать весь столбец с id?

    delphinpro
    @delphinpro
    frontend developer
    Сотни раз задавался подобный вопрос.
    Если кратко - не надо этого делать.
    Если нужны детали, воспользуйтесь поиском и изучите ответы на уже заданные вопросы.
    Первые из поисковика:
    Как сделать ID записи последовательными без пропусков?
    https://ru.stackoverflow.com/questions/125644/
    Ответ написан
    Комментировать
  • Как реализовать "журнал событий"?

    @iljaGolubev
    В базе храните ключи (enum) типа действия.
    Добавьте ключи в локализацию.
    Добавьте cast в модель и измените toArray() (метод сериализации) чтобы возвращал локализованные значения.
    пример enum

    enum JournalAction: string
    {
        case Edit = 'edit';
        case Add = 'add';
    
        public function translated($replacements=[]): string
        {
            return Lang::get('journal.' . $this->value,...$replacements);
        }
    }

    Идентификаторы вакансии и пользователя храните в поле jsonb. (как делать их локализацию - совсем другой вопрос). Хранение их локализованного значения в журнале в виде строк может стать проблемой когда название или имя изменится (или из локализация).
    Ответ написан
    Комментировать
  • Вывод записей не по id, а по колонке slug?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Чтобы записи выводились по slug, их и в sql-запросе надо запрашивать по slug.
    Ваш К.О.
    Ответ написан
    9 комментариев