Задать вопрос
  • Какую базу знаний (учебник) можно установить на своем хостинге?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Любую вики: XWiki, DokuWiki и прочие вики.
    Ответ написан
    3 комментария
  • Как открыть порт на Windows 11?

    В том, что ваш роутер находится за CGNAT и недоступен снаружи
    Ответ написан
    Комментировать
  • Можно ли перепрограммировать клавиатуру на другие цвета?

    Если это не предусмотрено производителем клавиатуры, то нельзя.
    (Вернее можно, если там RGB светодиоды, а не одноцветные, но подобный моддинг с учётом затрат времени выйдет дороже, чем покупка новой клавиатуры)

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

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    1. Финансы:
    • ИП, ОКВЭД - разработка ПО и БД
    • Налогообложение - УСН плюс патент в какой-нибудь области где-нибудь в регионах (есть небольшой шанс, что могут проверить - случаи есть, хоть и мало, поэтому лучше где-нибудь рядом с местом жительства)
    • Квалифицированная электронная подпись - токен и криптопро либо виртуалка с триалом криптопро (втб раздаёт токен бесплатно - тыц, оформить, a на следующий день или через несколько закрыть счёт - с самим банком не связываться)
    • Адекватный интернет-банк с онлайн-бухгалтерией - точка или модуль, в сторону попсы типа т-, а-, сб- и прочих лучше даже не смотреть - сэкономите километры нервов и литры сока и других бодрящих веществ
    • Компания-прокси - Solar Staff, Easy Staff для получения оплаты, договор-оферта с прокси в России (как с фриланс-биржами раньше), работодателю выставляется стандартный инвойс/инвойс-договор из прокси, он его оплачивает, а на ваш счет в банке приходит перевод за вычетом комиссии прокси со счета в Российском банке - никакого валютного контроля

    Для налоговой всё прозрачно и никаких проблем. Любые вопросы и непонятки решаются с онлайн-бухгалтерией.

    Оформление со стороны работодателя - как договоритесь и зависит от местных законов. В большинстве случаев достаточно простого счёта-договора: "оплата счёта подтверждает, что работа сделана и принята".

    Если открывать ООО - это 50-100к в месяц расходов только за одного сотрудника (генерального директора), примерно 50% от ЗП в налоги и другие взносы уйдёт, прибыль с ООО выводится через родственников-ИП или дивиденты. Там вообще очень много всяких нюансов и прочего - гугл в помощь. Бухгалтерия - в интернет банке или что-то типа "Моё дело". Если не хочется самостоятельно заниматься бухгалтерией - в деле есть тариф "Премиум" с личным помощником. Либо нанять знакомого бухгалтера, который будет тыкать кнопочки в этом самом моём деле и у которого есть с ним опыт (нанимать бухгалтера со стороны - всегда риск). В сторону варианта "сэкономить на интернет бухгалтерии" не то что смотреть, даже думать не стоит.

    А вот легально получать оплату в крипте простым и прозрачным способом на текущий момент невозможно (разве что через мутные схемы с соответствующими рисками). На текущий момент только через криптоэквайринг. Росбанк (теперь филиал т-банка) уже умеет, но пока только для крупных клиентов (точно не помню, но вроде от 100 лямов оборота - узнавал у них в 23 году). Работает он через b-crypto (новость). Есть еще несколько посредников, кто тоже занимается криптоэквайрингом: например битбанкер.

    И самый сложный вариант: своя иностранная компания/ИП или счет в иностранном банке. Получить легально свои деньги со счёта своей иностранной компании можно только с уплатой существенных процентов, если я правильно помню (рекомендую гулить, т.к. ситуация меняется и могут быть сюрпризы). Вот тут про офшоры и прочее пишут. Со своего счета в иностранном банке по идее стандартно через валютный контроль, но про евробанки можно забыть из-за санкций и тут остаются только всякие Армении, Грузии и прочие страны СНГ. Поэтому проще через компанию прокси. Вот тут про иностранные счета пишут.

    2. Да, свой сервер для VPN обязателен - часть международного интернета только через VPN, рунет - без него (наши тоже полмира забанили)

    3. Созвоны работают отлично - там трафик вообще ни о чём.

    4. Только избранные ООО:
    Ответ написан
    4 комментария
  • Поможете исправить ошибку в Python коде?

    Vindicar
    @Vindicar
    RTFM!
    Дробные числа во многих языках программирования представляются в формате с плавающей точкой. Как это выглядит - можешь погуглить, а сейчас важно знать, что точность этих чисел ограничена, а многие числа (даже сравнительно "несложные" с нашей точки зрения) вообще точно не представимы. Собственно, вышеприведённый сайт (https://0.30000000000000004.com/) подробно это объясняет.
    Для многих задач эта погрешность настолько мала, что абсолютно незначительна, поэтому числа с плавающей точкой по прежнему используются. Но эта погрешность медленно, но верно накапливается с каждой операцией, и это нужно иметь ввиду. Так, математически эквивалентные операции могут давать разные результаты:
    print(f'{(10 + 20) / 100:.40f}')  # 0.2999999999999999888977697537484345957637
    print(f'{0.1 + 0.2:.40f}')  # 0.3000000000000000444089209850062616169453
    print(30 / 100 == 0.1 + 0.2)  # False - результаты отличаются!

    Решение зависит от того, что, собственно, является проблемой. Если тебе просто нужен красивый вывод, то ты можешь отформатировать число при выводе, например, так:
    # вывести значения переменных rub и kop2 
    # как числа с плавающей точкой (f), 
    # округлив их до 0 знаков после запятой.
    print(f'{rub:.0f} {kop2:.0f}')

    Этот способ хорош тем, что само значение в переменной не округляется, так что дальнейшие расчёты будут идти без округления.
    Альтернативно, ты можешь использовать представление с фиксированной точкой. В твоём случае можно просто вести все расчёты в копейках, а под конец разделять сумму в копейках на рубли и остаток:
    total_sum = 1234  # тыт ты рассчитываешь сумму в копейках, я написал число для простоты
    rub = total_sum // 100  # оператор // выполняет деление нацело, отбрасывая остаток
    kop = total_sum % 100  # оператор % выполняет нахождение остатка от деления
    print(rub, kop)  # и rub и kop - целые числа, поэтому погрешности от плавающей точки нет

    Как я понял, это ты и пытался сделать, просто не осилил нагуглить оператор деления с остатком.

    Третий вариант - развитие второго, только более автоматизированный. Тип данных Decimal как раз и даёт представление числа с фиксированной точкой, хотя работает медленнее. Его часто советуют использовать для финансовых расчётов.
    from decimal import Decimal
    x = Decimal(30)
    print(x, x / 100)  # 30 0.3
    print(Decimal('30') / 100 == Decimal('0.1') + Decimal('0.2'))  # True - результат один и тот же!


    Думаю, в твоём случае лучше подойдёт вариант 2.
    Ответ написан
    2 комментария
  • Нужен ли JavaScript пентестеру?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    Нужен ли javascript для WEB пентестера?

    Нужен, для поиска уязвимостей, анализа клиентской логики, обхода ограничений (например, формы), изучения скрытой информации в коде и манипуляций с dom. Это помогает выявлять xss, инъекции и другие проблемы безопасности.
    Нужно ли WEB пентестеру знать еще и WEB? Я имею ввиду те знания, которыми обладает стандартный WEB разработчик (помимо языков программирования).

    Базовый набор:
    - html/css для понимания структуры и стилей веб-приложений.
    - http/https, куки, заголовки, cors, rest и сокеты.
    - Основы OWASP Top 10 (XSS, CSRF, IDOR и др.).
    - Браузерные DevTools, Burp Suite, ZAP, Postman.
    - Базово популярные библиотеки и фреймворки (react, vue, angular).
    - Методы минификации и обфускации js кода, а так же способы его анализа.
    Ответ написан
    1 комментарий
  • Возможно ли содержать сервер дома?

    CityCat4
    @CityCat4 Куратор тега Сетевое администрирование
    В больнице с переломом ноги
    Что-то последнее время стало много вопросов на эту тему...

    Ну ладно, еще раз, как человек, уже больше года держащий дома самый настоящий серверный сервер (а не рабочую станцию, работающую сервером) выскажу свое мнение.

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

    Завести дома сервер - для админа решение естественное и его как-то даже глупо обсуждать, особенно если работаешь дома, если постоянно ставишь эксперименты, если нужна среда вирутализации... Правда, единственным (но крайне существенным) плюсом является тот факт, что ты совершенно точно знаешь - где твои данные и можешь их обезопасивать всеми привлекательными способами. Твоя почта. Твой сайт. Твои документы, фотографии, видео. Учитывая нынешнюю паранойю, плюс преогромнейший.

    К сожалению, плюсов не бывает без минусов :) Хотелось бы о них тоже поподробнее - не чтобы отговорить, а чтобы предупредить.

    - Цена, комплекутха, ЗиП. Новое серверное железо очень дорогое. Сервак за пол-лимона - это как здрассьте. "Для себя" обычно берут бу железо. Это довольно распространенный метод, так что существуют специальные конторы, торгующие бу серверным железом. Насколько оно старое? Обычно не моложе пяти лет. Почему пяти? В крупных конторах есть регламенты, по которым железо списывается по истечении определенного срока, обычно он пять лет. Списывается, независимо от состояния, даже если оно идеальное. Бу сервер можно прикупить за вполне приемлемые деньги (разумеется имея в виду, что винты нужно брать новые и не десктопные, а именно рейдовые). Комплектуху и ЗиП покупать можно в тех же конторах.

    - Размещение. Сервер обычно в серверном корпусе, который ставится в стойку. Добро, если у Вас есть стойка :) а иначе его нужно куда-то пристроить - а без стойки эта большая плоская хреновина будет весьма неудобной для резмещения (Лайфхак: у меня лежит на шкафу)

    - Шум. такого понятия как
    тихий серверный шкаф

    не существует. От слова совсем. Потому что шкаф - для серверной. Даже самый тихий сервер (а я подбирал именно по "тихости") даже при самых низких оборотах кулера (в BIOS - 4500 об/мин) - довольно заметно шумит. Кроме того, если температура повышается, сервер автоматически кладет на настройки BIOS и повышает скорость вращения кулеров - в итоге у меня сервер в людбое время устойчиво негромко гудит и периодически взвывает - потому что перегревается.

    - Комфортная температура. Для сервера и человека - она разная и поэтому запросто получится, что Вам придется выделить серверу отдельную комнату :D

    - Елестричество. Сервер жрет электричество. Круглые сутки, как дозорный в будке. Готовьтесь к повышению счетов от энергосбыта. Кроме того, сервер без упса будет падать при просадках - а в домах они не редкость. (У меня тоже нет упса :( )

    - Изнашиваемые части. Про ЗиП было уже сказано - так вот, не забывайте, что сервер содержит части, которые ломаются :) Кулеры, винты - все это нужно будет покупать :)

    - Интернет-канал. Для физиков как правило flat-rate не предоставляют (ну либо заломят, как с юрика), поэтому держать там нагруженный сайт Вы не сможете - он будет адово тормозить. Хотя обычный сайт работать будет (если пров дает белые IP).

    - Анти-вирус, анти-ддос, анти-спам, анти-все-остальное. Все это придется делать самому либо просто забить. Разумеется, профессиональному админу это сделать несложно.

    - Настройка, резервное копирование. Фактически повторение предыдущего пункта - спихнуть нее на кого, сами, все сами...

    - Изменить IP практически невозможно, уж не говоря о его регулярной смене.
    Ответ написан
    12 комментариев
  • Как решить проблему зависания проводника?

    @kalapanga
    На мой взгляд, длина пути здесь не виновата. Вы эту папку средствами же винды создали, она существует, вы её видите, можете с ней выполнить какие-то действия - значит, скорее всего, она корректна.
    Замедлять работу проводника могут разные факторы. Вот первое, что приходит в голову:
    1) Проблемы с диском. Начиная с того, что он просто медленный (особенно, если это hdd), заканчивая его неисправностью. Проверить диск, как минимум посмотреть SMART.
    2) Проблемы с контекстным меню. Туда прописываются программы все, кому не лень. Дальше может быть, что какая-то конкретная программа медленно работает с большими списками файлов. Или их (программ) просто очень много. Ещё бывает, что и программы-то уже нет, а битая ссылка на неё в меню осталась - тоже к тормозам приводит. Посмотрите, всё ли в контекстном меню Вам действительно нужно. Для работы с контекстным меню есть специальные утилиты.
    Ответ написан
    1 комментарий
  • Можно ли завести подсветку клавиатуры по касанию тачпада в линукс?

    chupasaurus
    @chupasaurus
    Сею рефлекторное, злое, временное
    Придётся пилить модуль ядра, аналогичный synaptics-led.
    Ответ написан
    Комментировать
  • Как быть с тестовыми заданиями при трудоустройстве?

    Maksim_64
    @Maksim_64
    Data Analyst
    Был фидбек, не был фидбек, не нужно воспринимать все это на свой счет. Больше, активности. Представь себе, следующую ситуацию, баскетбол. Тебе нужно забить три трех очковых подряд, это не просто. Чем больше попыток, зайти на страйк, тем больше шансы. Рецепт один, больше откликаться, выполнять тестовые задания, пытаться удивить в тестовых заданиях и т.д.

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

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    когда тебе говорят выполнить ТЗ, которое не является для тебя вызовом и занимает всего час времени, а потом не отвечают вообще - это довольно грустно

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

    Стоит ли пытаться "удивить" проверяющего? Есть ли прок от того, что в задании, где просят написать коротенький код, я его дополняю, подключая celery, меняя базу данных с локальной на более релевантную, засовывая приложение в докер образ?

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

    Стоит все эти техзадания публиковать и добавить ссылку на github в резюме, если она ещё не там.
    Ответ написан
    5 комментариев
  • Обьясните в чём суть инкапсуляции?

    Инкапсуляция защищает не от хакеров, а от неправильного использования объектов.
    Как пример - у тебя может быть класс "Заказ" и у него может быть какой-то статус (оплачен/ждёт оплаты/отменён итд).
    При этом у тебя могут быть правила типа: уже оплаченный заказ не может стать вдруг неоплаченным, а отменённый заказ нельзя взять обратно в работу.
    Тогда логично будет сделать поле статуса приватным (не доступным для изменения извне напрямую), а менять его только через методы, где будет происходить вся валидация.
    (В некоторых языках такие правила принято описывать на уровне типов, чтобы даже валидаций никаких было делать не нужно)

    Приватные поля объекта - это его состояние.
    Методы объекта - это способы его использования.

    Если у тебя в объекте появляется поле x и методы getX / setX (или авто геттеры/сеттеры в C#), то значит, что у тебя и нет явных причин делать это поле приватным, кроме соблюдения общепринятых соглашений.
    Ответ написан
    15 комментариев
  • Как развернуть окно Python IDLE (CPython) 3.8.7 на полный экран?

    NeiroNx
    @NeiroNx
    Программист
    Переписать код инициализации приложения из оконного режима в полноэкранный. Либо добавить действие для F11 в меню и его код:
    https://yandex.ru/search/?text=Python+Tk+fullscreen

    В файле .\Lib\idlelib\editor.py в класс EditorWindow добавить функцию
    def toggle_fullscreen(self, event=None):
            self.state = not self.state  # Just toggling the boolean
            self.top.attributes("-fullscreen", self.state)
            return "break"

    И где-то до self.top = top = вставить self.state = False и после
    вставить self.top.bind("<F11>", self.toggle_fullscreen)

    Если надо меню скрыть - то гуглите как и скрывайте в этой же функции.
    Ответ написан
    Комментировать
  • Как можно определить схожесть текстов?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
  • С чего начать изучение компьютерных сетей?

    CityCat4
    @CityCat4
    В больнице с переломом ноги
    Конечно же с Олиферов, хотел их посоветовать, но это уже сделали :)
    Ответ написан
  • Почему busybox wget не работает, пока не запустить вручную openssl?

    @junecover Автор вопроса
    Сам спросил, сам и отвечу.
    Лишний раз подтвердилась народная мудрость, чтобы найти ответ, надо правильно сформулировать вопрос. Гугл помог найти решение по запросу "busybox wget is shitty". Я не силён в английском, поэтому не стану углубляться семантику этих слов. Кому надо, тот сам поймёт.

    Теперь ближе к теме.

    У busybox wget есть давняя неисправнось в некой сущности "Support HTTPS using internal TLS code". Попросту говоря эта часть безнадёжно устарела и не работает в 2025 году.
    Решение проблемы:
    Скомпилировать busybox с отключённой опцией
    -> Networking Utilities
        -> wget (41 kb) (WGET [=y])
          FEATURE_WGET_HTTPS [=n]

    и со включённой опцией "Try to connect to HTTPS using openssl"
    -> Networking Utilities
        -> wget (41 kb) (WGET [=y])
          FEATURE_WGET_OPENSSL [=y]


    И ещё добавить алиас:
    alias wget='wget --no-check-certificate'
    Тогда busybox-овский wget станет сам без лишних пинков работать с https.

    Почему так? Ве́домо только разработчикам busybox.
    Ответ написан
    2 комментария
  • Чем прошивать LGT8F328P?

    @junecover
    Чём? - Простейший вариант это любой копеечный переходник USB-TTL
    1864.750.jpg
    spoiler
    Есть разных цветов: чёрные, синие, зелёные и красные. Рекомендую красные - они быстрее)

    Но правильно было бы спросить не чем, а как.
    Как?
    Примерно так:
    Подключить плату к переходнику:
    GND -> GND
    RX -> TXO~
    TX -> RXI
    Опционально:
    Если переходник на 5 вольт, то:
    5V -> VCC
    А если переходник на 3.3 вольт, то:
    3V -> VCC
    Далее опционально:
    Если у переходника есть вывод DTR (плата реагирует на этот сигнал как на ресет), то:
    DTR -> DTR
    Подключив всё так, можно прошивать плату.
    А если нет DTR , то перед прошивкой надо нажать на кнопку на плате. Кнопка как раз подаёт сигнал ресет. На примере Arduino IDE (сейчас версия 2.х) процесс прошивки происходит так:
    Нажимаешь "Загрузить на плату". Внизу наблюдаешь надпись "Компиляция скетча". Как только эта надпись сменяется на "Загрузка..." сразу быстро нажимаешь и отпускаешь кнопку ресет. У тебя есть одна секунда чтобы успеть. Почему так неудобно сделали? Потому что это версия платы "PRO MINI" и подразумевается, что у тебя есть хороший программатор с выводом DTR, а не первый случайно попавшийся с алика.
    Впрочем если очень хочется, то можно и дешёвый с алика с контактом DTR. Например CH340E, который на момент написания этих строк стоил 60 рублей (не считая доставки).
    66998a1739830933400996.jpeg
    Ответ написан
    Комментировать
  • Почему Google не индексирует мой репозиторий GitHub?

    vpetrov
    @vpetrov
    частный SEO-специалист
    Не индексирует или не ранжирует?
    Собственно, Google в последние годы очень обленился в принципе. Сканирование, обработка, ранжирование данных – достаточно затратные процессы, и тратить деньги компания явно не очень хочет. Там сейчас вообще всё очень медленно и трудно, так что при отсутствии явного поискового спроса и понятного для поисковика контента на индексирование можно особенно не рассчитывать.
    Ну, или как минимум подождать. Можно попробовать ускорить процессы - всё теми же ссылками, которые могут попасть в индекс и дать хоть какой-то трафик.
    Собственно, да, URL вне индекса:
    6773116018d07751977698.jpeg
    Ответ написан
    Комментировать
  • Почему разные кабели заряжают телефон по разному?

    saboteur_kiev
    @saboteur_kiev Куратор тега Железо
    software engineer
    сейчас кабель это не просто кусок провода. Он должен обладать определенными характеристиками - пропускной способностью, количеством активных контактов.
    Контроллер зарядки пытается определить кабель и соответственно определенному может установить мощность зарядки. Если кабель плохого качества (частично перебитый, тонкий, или контакты там не очень), то контроллер зарядки не будет пытаться по нему организовывать fast charge, для этого есть определенные стандарты.
    Ответ написан
    2 комментария