• Сильно-ли замедляется доступ к объектам словаря при большом количестве?

    alternativshik
    @alternativshik
    https://wiki.python.org/moin/TimeComplexity
    Для dict там внизу данные.
    Ответ написан
    Комментировать
  • Сильно-ли замедляется доступ к объектам словаря при большом количестве?

    @deliro
    Если у ключей будет плохая хэш-функция (__hash__) — замедление будет сильное. Например, если все ключи будут отдавать хэш 42. Тогда открытая адресация просто умрёт, пытаясь найти очередную свободную ячейку в хэш-таблице.

    В остальном, хоть 100, хоть 10000000 — неважно. Вероятность коллизии примерно одинаковая. И амортизированная сложность вставки/получения/удаления элемента — O(1)
    Ответ написан
    7 комментариев
  • Как достоверно определить, что сайт заблокирован РКН?

    @BeatHazard
    Рекомендую официальный сервис для проверки ресурсов на наличие блокировки https://blocklist.rkn.gov.ru
    Очень часто в блокировку попадает не доменное имя ресурса, а его IP адрес.
    На данный момент многие сервисы используют облачный хостинг и при блокировке какого-либо запрещенного ресурса по IP этот запрещенный ресурс может без проблем переехать на другой IP, а его старый IP получит вполне легальный ресурс находящийся на том же хостинге, но блокировку никто не отменяет, в результате вполне легальные ресурсы и попадают под раздачу блокировок.
    Таким образом при проверке на блокировку проверять надо не только имя, но и IP адрес.
    При проверке по IP вашего ресурса видно что к нему применена блокировка по решению суда.
    Ответ написан
    1 комментарий
  • Кто сталкивался с биткоин вымогателями бд?

    CityCat4
    @CityCat4 Куратор тега Информационная безопасность
    //COPY01 EXEC PGM=IEBGENER
    Значит дыра не в паролях, а скорее всего ломают через CMS или еще каким-нибудь образом получая привилегии рута.
    Отсоединить сервер от тырнета. От слова совсем, оставить только консоль.
    Образ системы слить для дальнейшего изучения.
    Если хост с рейдом - разобрать рейд и собрать с другим порядком дисков, создать заново с форматированием рейда.
    Систему поставить заново, из бэкапов брать только текстовые конфиги и то после того, как они просмотрены. Дистриб сливать с оригинального сервера с перепроверкой контрольных сумм.
    (Все это нужно для того, чтобы гарантировать чистую машину для установки и чистый дистриб)
    Как можно меньше сервисов наружу, все сервисы на нестандартные порты, все, что авторизуется по ключам или сертификатам - нужно использовать только с ключами/сертификатами
    Постоянно глядеть логи - наверняка будут еще попытки.

    Да, некоторые пункты отдают паранойей :) Но лучше здоровая паранойя...
    Ответ написан
    Комментировать
  • Кто сталкивался с биткоин вымогателями бд?

    serginhold
    @serginhold
    Вообще ноль информации в посте, но смотрю есть тег phpmyadmin, может дело в нем? стоит какая-нибудь дырявая версия. При этом я вообще не понимаю нафига им пользоваться)
    Ответ написан
    Комментировать
  • Кто сталкивался с биткоин вымогателями бд?

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

    Сносим ОС (считайте что скомпроментирован рут и все тулзы ОС)
    И ставим по хорошему мануалу с изрядной долей паранои (чаще всего одна статья не поможет - делайте свои заметки при установке)
    Максимально изолируем все от всего
    Наружу смотрит только вебсервер
    ссш по портпиннингу (оно делается в полпинка, как на стороне клиента так и на стороне сервера)
    Ваши цмс и скрипты должны обновляться регулярно
    Следите за логами - часто взлом происходит в течении нескольких дней и простой греп по логам покажет, кого вам нужно забанить по ип и где поставить капчу

    То что у вас есть бекапы делает вашу ситуацию в разы лучше
    Ответ написан
    Комментировать
  • Обучение с Python koans.Что здесь вписать?

    Гуглить готовые ответы к учебнику - плохой подход к обучению.
    Насколько я понял, тут задан конкретный вопрос - какое исключение выбрасывается при вызове несуществцющего метода? Необходимо прочитать документацию и вписать правилтный класс исключения. Даже не так. Прочитал задание внимвтельнее - вам нужно написать код, который получит класс исключения, а ниже - сообщение исключения.
    Ответ написан
    Комментировать
  • Платные или бесплатные CMS?

    DevMan
    @DevMan
    если магазин приносит десятки тысяч, то стоит он 0, или, 100, или 200 – не играет никакого рояля.

    прост кто–то предпочитает платить и получать готовый сервис, кто–то не платить и возиться с конструктором.
    нет однозначно правильного ответа, оба варианта рабочие. выбор зависит только от личных хотелок и возможностей/скилов.

    вы исходите из того, что для вас это просто, и это действительно может быть так. но только для вас.
    в бизнесе существует такое понятие как TCO, и программисты, как люди очень далекие от бизнеса, зачастую его не учитывают.
    Ответ написан
    Комментировать
  • Russian VAT on Upwork - привет, работа в белую?

    @vism
    Лучше уж так.
    А то мне конраакт на учет поставили, и в выписке отображается, что я плачу агентские, а налоги за них я не платил.
    меня сей факт напрягал, чтоб не спросили.

    Ну а теперь можно спать спокойно)
    Ответ написан
    Комментировать
  • Russian VAT on Upwork - привет, работа в белую?

    @Stalinko
    PHP'шник и фрилансер до мозга костей
    Всё сильно зависит от технической реализации и желания ФНС ловить фрилансеров.

    В моём представлении сама по себе оплата НДС Upwork'ом ещё не значит, что они будут передавать данные о доходах фрилансеров. Они обязаны будут передавать данные о своих доходах. Хотя при желании одно из другого получить вполне реально. Это что касается количества денег.

    Сам факт некоего неопределенного дохода проверить будет очень легко, ведь Upwork обязан будет сообщить, кто приобрёл его услуги (оплатил комиссию). А единственная услуга на Upwork - это возможность заработать.

    Думаю, для тех, кто работает в белую, эта новость только к лучшему. Никаких больше налоговых сусликов и "налогов на гугл".
    Ответ написан
    1 комментарий
  • Как найти невидимый процесс, потребляющий много памяти?

    @FRiMN Автор вопроса
    Решение нашлось. Как говорится ССЗБ :) На сервере были выделены HugePages, они это и были. Как выяснилось, система сразу выделяет память под HugePages, и выглядит она именно как используемая, хотя по факту может быть свободной.
    Всем спасибо за участие.
    Ответ написан
    Комментировать
  • Сколько стоит продление "premium" домена (например, трехбуквенного в зоне .dev)?

    @Lampochkagori
    Господа, сейчас не 90е, и не 2000е годы, когда был пяток ТЛД вроде ком нет инфо + кантрикоды. В реджистри не идиоты сидят, и прекрасно понимают что сферический пиво.ру, если будет куплен по обычной цене, будет перепродан в десятки раз дороже т.к. короткий, красивый и легко запоминается. Соответсвенно обладает коммерческим потенциалом.

    Это рынок. Чтож вы еще хотели, так что оставьте полемику про "торговцев воздухом" в покое до пенсии, и посмотрите фактам в глаза.

    Поэтому короткие слова резервируются как премиумные домены. В данном случае с .dev статус домена определяет Гугл, как владелец все зоны. Регистрант (т.е. вы) платит премиум цену регистрару (компания у которой вы покупаете домен), а с регистрара эту сумму чарджит реджистри (владелец-управляющий зоной).

    Так что трансфери не трансфери, цена продления будет отличаться только наценкой, которую регистрар оставляет себе.

    но все премиум домены разные. У некоторых премиум только регистрация, а продление стандартное. У других повышенная цена и за регистрацию, и за продление.

    Евгений, точную цену узнавайте у регистрара.

    upd. и еще. Если вы пожалели об этой регистрации, спросите в поддержке регистрара можно ли отменить регистрацию с рефандом. Вдруг повезет
    Ответ написан
    Комментировать
  • Проект на Scala - в чем сложности поддержки кода со временем?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Возможно, "во многих статьях" имеют ввиду то, что Scala - это очень гибкий мультипарадигменный язык, на котором один и тот же функционал можно написать десятками способов. Если проект нужно поддерживать много лет и силами десятков или более разработчиков, то каждого нанятого разработчика или придётся переучивать, или код быстро превратиться в трудную для понимания мешанину стилей и подходов.
    Ответ написан
  • Есть ли примеры, когда мат. операции с True и False реально полезны?

    LazyTalent
    @LazyTalent
    Data Engineer, Freelancer
    Это вопрос не эффективности, а истории. Изначально в Python не было булевых типов, а при операциях сравнения возвращались 0 или 1 (так же как и в C). 8 марта 2002 года был выпущен PEP 285, который добавил эти типы в язык:

    This PEP proposes the introduction of a new built-in type, bool, with two constants, False and True. The bool type would be a straightforward subtype (in C) of the int type, and the values False and True would behave like 0 and 1 in most respects (for example, False==0 and True==1 would be true) except repr() and str(). All built-in operations that conceptually return a Boolean result will be changed to return False or True instead of 0 or 1; for example, comparisons, the "not" operator, and predicates like isinstance().

    https://www.python.org/dev/peps/pep-0285/
    Ответ написан
    Комментировать
  • Есть ли примеры, когда мат. операции с True и False реально полезны?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Математические операции над ними можно проводить только потому, что булевые значения в Python - это подтипы целых чисел. Практической пользы я от этого никогда не видел и сильно сомневаюсь, что она есть.
    Ответ написан
    Комментировать
  • Сколько стоит продление "premium" домена (например, трехбуквенного в зоне .dev)?

    Lynn
    @Lynn
    nginx, js, css
    https://support.google.com/domains/answer/6010092?hl=en

    > Registry premium domains: Domains offered by the registry for a premium price. In most cases, when you transfer, renew, restore, or add additional years of registration to a domain, you're charged the initial premium price.

    Короче, правильнее спросить у регистратора, но что-то мне подсказывает что будет не $12
    Ответ написан
    Комментировать
  • Как размечать многоэтажные здания на OpenStreetMap?

    @pfg21
    ex-турист
    вариант2: "отделить зерна от плевел"
    нарисовать здание с адресом и параметрами здания.
    внутри здания поставить точку poi кафе с параметрами кафе + level=0 и точку poi твоего офиса с параметрами офиса + level=1.
    по рекомендациям, точки внутри контура здания наследуют его адрес.
    level "этаж здания" идет от нуля.
    Ответ написан
    Комментировать
  • Как размечать многоэтажные здания на OpenStreetMap?

    freeExec
    @freeExec
    Участник OpenStreetMap
    Проще всего расставить 2 точки, для кафе и для офиса, с указанием этажа расположения. Если вы всё же желаете так заморочится, что хотите показать занятость всего этажа своим офисом, то вам сюда Indoor, но об этом никто не узнает ближайшие лет 5, а то и 10 ибо, как говорится "на карте не видать".
    Ответ написан
    Комментировать
  • С чего лучше начинать VisualBasic или C#?

    lam0x86
    @lam0x86
    VisualBasic (тот, что .NET) почти ничем не отличается от C#, кроме синтаксиса. Есть даже конвертеры из одного языка в другой - пишете программу на VB, получаете на выходе C# (и наоборот). Но я не советую начинать с VB, так как это фактически мёртвый язык, несмотря на то, что в самом авторитетном рейтинге популярности языков программирования он выше C#. Причина тому - США. Там до сих пор активно нанимают VB-разработчиков, которым приходится поддерживать устаревший код. Особенно это касается банковского сектора. Платят за VB больше, но копаться в легаси - то ещё удовольствие.
    В общем, учитывая, что оба языка - детища Microsoft, и что сама компания активно продвигает C#, лучше сразу начинать с него.
    Ответ написан
    Комментировать