Задать вопрос
  • Как в PDF поставить штамп или сделать визуализацию ЭП при трехстороннем и более подписании?

    @knigaman
    Очень маловероятно, что вообще есть такое готовое ПО. Костылить придется самостоятельно на том же питоне чисто в теории можно сделать за пару вечеров. Декомпозируй задачу на более мелкие и для каждой выбери оптимальное решение.

    Вот как бы это сделал я с учетом разработки туевой хучи различных генераторов документов.

    1) Получить данные ЭП. Зависит от того, что за ЭП конкретно, думаю разберешься, тут объяснять не нужно.

    2) Подготовка штампа. Самый быстрый способ верстать красивые документики, анкетки, всякие бланки, платежки и прочую дичь это сверстать в docx формате (можешь у себя на компе тупо подготовить шаблон нужного тебе штампа), далее туда подставить данные которые ты получил из ЭП (на питоне это легчайше делается с помощью библиотеки docxtpl). Это самый простейший способ быстро верстать и внедрять в прод документы и штампы по типу твоего (документы могут верстать даже манагеры, бухи и прочие нетехнические личности), ты берешь то что наверстали они, добавляешь плейсхолдеры и гонишь в прод шаблон. На выходе получаешь заполненный docx файлик и конвертируешь его в pdf с помощью фермы докер контейнеров, внутри которых работает libreoffice в cli режиме.

    3) Вставка штампа в документ. Тут возможно 2 случая: 1) штамп влезет на страницу в конце документа 2) штамп не влезет на страницу в конце документа. Можешь эту задачу конечно не решать если лень и лепить штамп на новую страницу без всяких расчётов. Но лучше конечно посчитать высоту контента на последней странице и влепить штамп в оставшееся пустое место, если его хватает для штампа.

    Естественно у каждой задачи могут быть нюансы, по типу того, что в штамп может быть больше страницы в высоту и прочее, но схема решения именно такая. Это самый дешевый и простой способ решить 99.99% задач в области генерации различных документов.
    Ответ написан
    Комментировать
  • Стоит ли покупать MacBook Pro, если я только начинаю программировать?

    @knigaman
    "Начинал с Mac" - это очень странный запрос, таких единицы среди тех кто юзает mac. Большинство пересели с винды и линуха.

    Сейчас минимум по железу это неплохой 6 ядерник, 16 гб ОЗУ (а уже лучше 32 гб ОЗУ) и желательно 512 gb nvme, если мы говорим про винду или линух. Если ноут у тебя хотя бы такой то уже стоит вопрос смысла покупки мака.

    Мак нужен либо если ты конкретно хочешь пересесть на него или он тебе позарез нужен в работе (как например разработка мобильных приложений под iOS). Хотеть пересесть на мак можно даже если он тебе не нужен, например, хочется хорошее по автономности и мощное устройство.

    Если деньги позволяют и есть сильное желание (не так что ты загорелся резко, а прям мечтаешь о маке уже длительное время) - тогда покупай. Получишь и удовольствие и отличную машинку с запасом производительности на несколько лет. Только на твоем месте я бы взял все-таки на 16 дюймов экран, 14 дюймов хоть и близко к 16 дюймам, но в 16 дюймах и охлад лучше и автономность и глаза болеть не будут.
    Ответ написан
    3 комментария
  • Через что лучше генерировать PDF wordpress?

    @knigaman
    Самое простое и дешевое в плане трудовых затрат и лицензий - это демон на питоне, который берет шаблоны в формате docx - обычный вордовский файл и подставляет туда данные с помощью либы docxtpl, вероятно есть и для php реализация, не в курсе. Туда же хорошо шьются не только строки, но и картинки, таблицы.

    На выходе получаем docx файл, который можно конвертировать в pdf с помощью cli libreoffice.

    Отличное бесплатное решение, на котором можно делать почти все что угодно и не надо дрочить пиксели туда сюда.
    Ответ написан
  • Есть ли api для формирования чека самозанятому?

    @knigaman
    Закрытое API есть, но для этого надо стать "партнером" ФНС по типу той же юкассы и прочих контор, которые сливают данные из своей платежки в ФНС. Там достаточно геморно это все делать.

    Из простого но не супер надежного - можно отреверсить API приложения/сайта мой налог и по этому API уже работать. Видел, что так поступают некоторые сервисы, которые работают с самозанятыми. Из минусов - надо будет иногда чинить то, что сломалось из-за внезапных обновлений, пользователю надо будет один раз/периодически вводить код из СМС или логин/пароль к своей учетке в мой налог в твоем приложении. Это не супер секьюрно.
    Ответ написан
  • Как найти опечатку в номере телефона?

    @knigaman
    Во-первых даже у одного человека могут быть номера, которые отличаются на одну-две цифры, такое может быть в реальности - это не всегда ошибка.

    Во-вторых подойдет любая функция сравнения строк, например в пыхе что первое гуглится функция similar_text. Тупо смотришь процент схожести и если он высок - порог определи сам - тупо выдавай предупреждение о возможной опечатке. Можешь наколхозить свой вариант - не возбраняется.
    Ответ написан
    Комментировать
  • Говорят,что не надо знать матем. при изучении программирования, но почему все задачи математические?

    @knigaman
    Для программирования в бОльшей части сфер не нужно знать какую-то математику особенную. Достаточно базы логики (чтоб у тебя извилины могли логично рассуждать) и плюс минус умножить разделить, остаток от деления, целочисленное деление.

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

    В универах и остальных заведениях подобного характера математику и программирование скрещивают для того чтобы будущий программист научился на самом базовом уровне выстраивать алгоритмы решения задачи. Грубо говоря, шаг 1 + шаг 2 + шаг 3 + шаг 4 + шаг 5 = результат. Если тебе чисто рассказывать про переменные, циклы, массивы и т.д. ты не поймешь нахрена это все надо и как это использовать чтобы зарабатывать деньги. Если тебе с нулевой дать решать бизнес задачи то это только лишнее грузилово мозга в и так не совсем простой сфере. Поэтому и используют математику как самое простое где можно показать как использовать те или иные конструкции в языках программирования и научить склеивать это все так чтобы получить результат требуемый.
    Ответ написан
    Комментировать
  • Регистрация по номеру телефона?

    @knigaman
    Первый запрос = принимаем на сервере номер телефона, генерируем токен (случайная строка длиной, предположим, 64 символа - цифры, буквы большие и маленькие), отправляем его на клиент. Генерируем код доступа, отправляем его смской на телефон. В зависимости от логики можем и не отправлять (если допустим у нас метод для логина а такого юзера еще нет (он еще не зарегистрирован)).

    Второй запрос = отправляем с клиента токен (тот 64 символьный полученный от сервера) и строку с кодом из смс. Проверяем на сервере токен и код из смс, если все ок - пускаем в аккаунт.

    Примечания:
    1) токены и сами попытки входа должны жить определенное количество времени, предположим 5 минут.
    2) попытки ввода кода (неправильные вводы) должны быть ограничены разумным числом (ну допустим 5 попыток)
    3) если можно то лучше код сделать длиннее - хотя бы 6 цифр, а лучше 8 и более.
    4) попытки входа в аккаунт можно ограничить, но тогда будет можно абузить эту "фичу" и блокировать вход чувакам, тут выбираем меньшее из зол исходя из бизнес требований
    5) можно экономить на смсках и доставлять код в последних цифрах номера / голосовой озвучкой, отправлять в вк, ватсап, телеграм, вайбер

    500 айкью примечания для кое какой защиты от слива бюджета:
    1) можно юзать капчу (можно не всегда а когда начинается аномалия по отправке кодов - всплеск количества отправок)
    2) как уже и говорил разделение входа и регистрации
    3) ставим бот защиту от какого нибудь сервиса по защите от ддос/бот атак
    4) иногда можно не отправить код а отправить клиенту респонс что код отправлен, если клиент вводит код - скорее всего это атака. человек же запросит код повторно (потому что он тупо ему не пришел)
    5) иногда можно отправить код не сразу а через предположим, 30 секунд - если ввели код раньше - значит что-то не так
    Ответ написан
    9 комментариев
  • Почему упала канальная скорость на кабеле интернет-оператора?

    @knigaman
    Если был линк гиг, а стал 100 мбит внезапно - значит коммутатор провайдера и твой пк не могут договориться о гигабите - в большинстве случаев проблема с проводом интернета.

    Основные проблемы которые могли возникнуть:
    1) кабель где-то повредился
    2) коннекторы rj45 где-то плохо стали контачить/окислились
    3) где-то от коммутатора до твоего компа стоит бочка/скрутка/еще что (для удлинения кабеля) и там деградировала физика (тот же окисл)
    4) совсем поехавший вариант это если сотрудники провайдера расплели твой кабель на 2 части и подключили другого абонента двумя парами и тебя двумя парами

    Если не шарите лучше вызовите специалиста от провайдера. Если есть знания, расходники, инструменты - можно померить кабель, переобжать где надо починить.
    Ответ написан
    5 комментариев
  • Какие существуют способы взлома аккаунта Telegram?

    @knigaman
    Будем считать что ты не вводил никуда никаких кодов на фишинговых сайтах). Ты скорее всего какой-то разраб, который юзает npm, composer или какие-либо другие менеджеры пакетов, а может какие-то скрипты используешь. Так вот, 99% что один из пакетов/скриптов был взломан/намерено испорчен авторами таким образом чтобы собирать tdata папку. Это объясняет угон телеги без появления новых сессий в обход всех свистоперделок по типу otp и паролей.
    Ответ написан
  • Может ли Telegram самовольно установить облачный пароль?

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