Задать вопрос
  • Возможно ли сделать свою "платежную систему"?

    @rPman
    полистай ответы тут, там каждый ответ исчерпывающий и дополняющий.

    p.s. Платежная система - это создание своей системы для перевода денег, выпуск банковских карт (банки будут к тебе приходить за разрешением подключиться к твоей платежной системе). Это вопрос даже больше политики а не экономики и тем более не технический. Пример платежной системы - российская Мир.
    Ответ написан
    Комментировать
  • Как исправить ошибку лимита 100мб гитхаб?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Git это модульная система. Некоторые компоненты нужно устанавливать дополнительно, в том числе Git LFS for GitHub

    Но зачем ты пихаешь в репозиторий архивы с резервными копиями?
    Ответ написан
    Комментировать
  • Как сделать конструкцию IF ELSE на JS привязанной к кнопке в HTML?

    T1MER
    @T1MER
    Frontend разработчик
    Можно повесить на onclick функцию и в ней сделать if-else конструкцию.
    Ответ написан
    Комментировать
  • Можно ли сделать из телефона джаммер?

    @Drno
    Не думаю. у телефона мощности нехватит заглушить сигнал от вышки
    Ответ написан
    2 комментария
  • Как удалить обьект из дерева с помощью списка?

    yarosroman
    @yarosroman Куратор тега C#
    C# the best
    Заведите ещё свойство Parent на родительский узел. Тогда при удалении, можно обратиться к родительской и удалить узел из ее свойств, чтобы не обходить дерево.
    Ответ написан
    Комментировать
  • Как получить дату -3 дня?

    @res2001
    Developer, ex-admin
    Батники не умеют работать с датами. Все переменные там - строки.
    Вы можете вручную разделить дату на составные части и вычислить -3 дня.
    Так же можно написать вспомогательный скрипт на JS/VBS, которые умеют работать с датами. В скрипт передавать дату и он будет вычислять -3 дня и выводить ее в stdout, где батником можно эту дату прочитать.
    Или же вы можете использовать powershell вместо cmd, там, наверняка, можно решить вашу задачу без лишних телодвижений.

    Но вам же для чего-то нужна дата "-3 дня". Если знать для чего вы пытаетесь вычислить такую дату, то может найдутся и другие способы ее решения, без вычисления.
    Ответ написан
    9 комментариев
  • Учить или не учить?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Зрелому программисту знать всю стандартную библиотеку наизусть не надо, он на уровне рефлексов помнит где что примерно находится и как максимально быстро найти ответ в документации. У начинающих таких навыков ещё нет, поэтому им заучивание может оказаться полезным.
    Ответ написан
    3 комментария
  • Есть ли библиотека на Go позволяющая добавить значок на панель задач Windows 10?

    HemulGM
    @HemulGM Куратор тега Windows
    Delphi Developer, сис. админ
    Это не значки и ни какое-то специальное винапи. Это просто встраивание окна в другое окно. Находят панель задач и устанавливают её родителем (SetParent) своего окна.
    Ответ написан
    6 комментариев
  • Как справиться с выгоранием в профессии?

    @mkone112
    Начинающий питонист.
    в графике день/ночь

    Обожемой. При чем тут IT вообще? Попробуй еще скажем начать голодать, а потом возвращайся жаловаться что мозг еще хуже стал соображать.
    Ответ написан
    Комментировать
  • C# цикл FOR (вопрос по тестовому заданию)?

    @oleg_ods
    Если предположить что цель метода вернуть List с именами в обратном порядке, то можно развернуть цикл и метод Insert заменить на Add.

    List<string> GetNames() 
    {
       List<string> ss = new List<string>();
       for (int i = 10000000; i >= 0; i--) {
           ss.Add(GetName(i)); // GetName - это просто какая-то функция, которая возвращает нам строку
       }
       return ss;
    }


    List под капотом содержит массив.
    Принцип работы метода Insert:
    1) Проверить достаточно ли места во внутреннем массиве. См. свойство Capacity.
    2) Если недостаточно, то расширить массив в 2 раза.
    3) Сместить все последующие элементы на одну позицию вперед.
    4) Добавить в нужный индекс значение.

    Принцип работы метода Add:
    1) Проверить достаточно ли места во внутреннем массиве. См. свойство Capacity.
    2) Если недостаточно, то расширить массив в 2 раза.
    3) Вставить значение в конец массива.

    Соответственно при использовании метода Insert, в Вашем случае, будет очень много операций копирования значений.

    Второе, если на момент создания List в методе известно кол-во элементов которые он должен содержать, то можно использовать конструктор List(int capacity), который изначально создаст List нужного размера. Так Вы избавитесь от необходимости динамически расширять List при переполнении внутреннего массива.

    P.S. Для общего образования можете погонять альтернативные реализации методов через библиотеку DotNetBenchmark и сравнить на сколько вырастет производительность в каждом случае.
    Ответ написан
  • Какие данные должны возвращать GET-запросы к вложенным ресурсам в rest api?

    @romicohen
    Системный Архитектор
    Смотри, такие роуты

    /organizations/{organizationId}/departments/{departmentId}/employees/{employeeId}

    (обычно без слэша на конце) используют когда речь идет о древовидной иерархии.

    Т.е. когда у тебя для одной организации /organizations/{organizationId} есть один или более департаментов, и для каждого департамента /organizations/{organizationId}/departments/{departmentId} есть один и более эмплоеров.

    По идее, ты можешь получить всё дерево целиком:

    GET /departments

    даже не вопрос :) А можешь на этот же роут отдавать не дерево, а простой список айдишников организаций. Тут в зависимости от твоих целей.

    А можешь так:

    GET /departments?mode=list (список аудишников)

    GET /departments?mode=tree (всё дерево)

    вот это:

    GET /organizations/{organizationId}/departments - подразумевает что ты отдаешь все департаменты для какой-то определенной организации ({organizationId}) - то же самое, можешь списком, можешь деревом, без разницы ))

    Всё зависит от потребностей фронта.

    Общий принцип: не отдавать больше, чем нужно :)
    Ответ написан
    1 комментарий
  • Существует ли такой алгорим?

    wataru
    @wataru Куратор тега Математика
    Разработчик на С++, экс-олимпиадник.
    Я так понял задача в том, а есть ли алгоритм, который для двух входных чисел всегда выводит их сумму, но невозможно доказать, а выводит ли он ее или что-то другое.

    Есть такой алгоритм. В общем случае он выглядит так:

    Read(a);
    Read(b);
    DoSomething(a, b);
    Write(a+b);


    Перед выводом суммы чисел есть какой-то алгоритм, который что-то делает. Если он виснет, то и весь алгоритм виснет. Если он не виснет - то весь алгоритм выдаст сумму. Но вот определить, а виснет ли заданная программа в общем случае - нельзя.

    Поэтому 100% существует такой DoSomething, про который формально доказать что он не виснет нельзя. Иначе бы проблема остановки решалась.
    Ответ написан
    4 комментария
  • Можно ли давать людям сервера на docker?

    @Akela_wolf
    Extreme Programmer
    Docker != VPS

    Главное отличие: VPS - это сервер к которому пользователь имеет полный доступ и может устанавливать и запускать любые программы. Docker - это инструмент для запуска единственного процесса в определенном окружении.

    Чтобы раздавать другим людям серверы нужен гипервизор. Чтобы установить гипервизор нужен полноценный сервер, а не VDS.
    Ответ написан
    Комментировать
  • .baml файл? как редактировать и сохранить в проект?

    Nipheris
    @Nipheris Куратор тега C#
    XAML и так компЕлируется в BAML, когда вы собираете ваш проект, и встраивается в ресурсы результирующей сборки.

    Поэтому неясно, почему вы это спрашиваете и почему это вас беспокоит. Какой у вас тип проекта и какую UI-библиотеку вы используете?
    Ответ написан
    9 комментариев
  • Какую базу и способ хранения выбрать?

    Melkij
    @Melkij
    DBA Team для вашего PostgreSQL?
    База на 30гб? Какая смешная кроха.

    Да сгенерируйте себе синтетических данных и поиграйтесь с ними. Я понимаю неудобно на локальной машине щупать базу в десяток террабайт - но лишь только 30гб не проблема просто сгенерировать и посмотреть вживую.
    Ответ написан
    1 комментарий
  • Вам нужно нанять "Android junior developer". Какие у вас будут требования?

    GavriKos
    @GavriKos
    Те навыки, которые нужны на проектах куда идет найм.
    Ответ написан
  • Как выпускать электронные подписи?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    все должно быть в нашей системе
    А зачем клиенту доверять вам закрытый ключ своего сертификата?
    Клиент на вашем сайте привязывает свой открытый сертификат к своей учётной записи. Вы удостоверяетесь, что подпись принадлежит ему, подписывая на клиентской стороне случайный блок и проверяя подпись на своей стороне. Затем вы храните сертификат у себя и проверяете с его помощью достоверность подписи клиента.
    В каком именно из УЦ клиент сгенерировал свою подпись вас касаться не должно. Главное, чтобы переданный вам открытый сертификат был действителен, то есть не был просрочен и цепочка подписей прослеживалась до одного из признаваемых вами корневых УЦ.
    Ответ написан
    5 комментариев
  • Как провалидировать что строка base64 является изображением?

    @PavelMos
    https://docs.python.org/3/library/imghdr.html

    работает с файлами и с объектами

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

    def what(file, h=None):
        f = None
        try:
            if h is None:
                if isinstance(file, basestring):
                    f = open(file, 'rb')
                    h = f.read(32)
                else:
                    location = file.tell()
                    h = file.read(32)
                    file.seek(location)
            for tf in tests:
                res = tf(h, f)
                if res:
                    return res
        finally:
            if f: f.close()
        return None
    Ответ написан
    Комментировать