Получается, если я подаю в суд на кого-то за переиспользование моей мелодии, мне предстоит доказать что каждая из моих мелодий, когда либо написанных, является отражением многообразия моего внутреннего мира? И если хотя бы одна из них не будет нести новизны и художественной ценности — мне будет отказано в иске, так?
То есть, если я накидал проект во FL Studio, то разноцветные полоски являются объектов авторского права, а вот импортированный mp3/midi не является, так как он был сгенерирован алгоритмом и моего интеллектуального труда в этом нет?
Почему бы с него не вычесть $20000 за каждое скомпроментированное устройство, а ему самому запретить какую-либо работу с ПО, а также его детям до третьего колена? Все-таки работа в IT не для людей, которые совершают ошибки.
import random
lootboxes = 100
series = 100
# непрерывные серии
results = []
for i in range(series):
random.seed()
drops = []
for j in range(lootboxes):
drops.append(random.random() < 0.1)
results.append(sum(drops))
print("Same seed min drops", min(results))
print("Same seed max drops", max(results))
print("Same seed avg drops", sum(results) / len(results))
# новый сид на каждом лутбоксе
results = []
for i in range(series):
drops = []
for j in range(lootboxes):
random.seed()
drops.append(random.random() < 0.1)
results.append(sum(drops))
print("Refreshing seed min drops", min(results))
print("Refreshing seed max drops", max(results))
print("Refreshing seed avg drops", sum(results) / len(results))
Результаты:
Same seed min drops 3
Same seed max drops 18
Same seed avg drops 9.79
Refreshing seed min drops 4
Refreshing seed max drops 18
Refreshing seed avg drops 10.17
Ох ты, если сид обновлять, то это выгоднее! Время опровергать весь ТеорВер!
Надо бы еще проверить, когда выпадет больше орлов — если одну монетку подбросить 100 раз, или 100 монет по одному разу.
>>> import random >>> sum([random.random() < 0.1 for i in range(1000)]) / 1000 0.101 # без сброса сида больше
>>> sum([random.seed() or random.random() < 0.1 for i in range(1000)]) / 1000 0.096 # а со сбросом сида меньше
Это ни в коем случае не шутка, а серьезное и весомое доказательство.
Все знают что зерги имба, а самый дисбалансный матчап — это Зерг против Зерга. Потому что неважно какую тактику выберет противник, Зерг всегда выигрывает.
На самом деле, баланс очень даже есть, иначе бы терраны на больших турнирах даже не появлялись, ибо не могли бы набрать необходимые очки победами на мелких турнирах.
class S3Client:
def Bucket(self, ...) -> Bucket: ...
class Bucket: ...
Тут метод клиента и класс называются абсолютно одинаково и такое в каждом первом клиенте. mypy справедливо считает что возвращаемый тип — это метод, а не класс. Я нашел решение с само-импортом модуля
import s3.client as self_scope # модуль импортирует сам себя
class S3Client:
def Bucket(self, ...) -> self_scope.Bucket: ...
class Bucket: ...
Нет, для botocore стабы можно написать только руками. Это гораздо проще, но затратно по времени. Плюс, при обновлении botocore нужно будет проверять, не устарели ли стабы, в то время как для boto3 засчет генерации, обновление может быть полностью автоматизированно.
Но да, в 95% случаев, в новом релизе botocore меняются только JSON-файлы с описанием сервисов, так что стабы останутся без изменений.
Была такая проблема — куча докер контейнеров на alpine с пандой. Решение было несложное — подготовить образ с установленными numpy и pandas и использовать его как базовый для всех этих пакетов. И всё, CI снова быстр.
В этом комментарии нет умных мыслей. Да и смысла тоже нет, просто много ностальгии. Кажется, этого достаточно.
У меня тогда еще не было компьютера, но у моего друга уже был весьма современный ПК. И однажды он мне рассказал про шикарную игру, говорит, выбегаешь из лабиринта и за тобой по пятам гонится монстр. Почти догоняет тебя и тут ты вырастаешь и жрешь этого монстра. Думаю, звучит многообещающе, так что я в тот же день оказался у него и засел играть. И правда, в игре ты находишься в лабиринте, вокруг снуют готовые закусить тобой монстры, но после нескольких попыток таки удается спастись. И вот он долгожданный момент про который рассказывал друг — слева направо по черному экрану пробегает пакман а за ним призрак. И потом в обратную сторону призрак, а за ним уже гонится огромный пакман. И я сидел, смотрел на это и думал: да это просто великолепно!
Уже потом мы с другом рубились в первый Диабло по очереди. И друг внезапно как завопит — «Видал, видал?! Я только что щитом отбил стрелу и одновременно рубанул монстра!!!» На самом деле никакой анимации отбития стрел конечно не было, просто во время анимации атаки положения стрелы и щита хорошо совпали да проигрался звук отскока оружия от брони. — сказал бы я сейчас. А тогда я сказал что-то нецензурное и продолжил с нетерпением ждать своей очереди.
Рандомайзеры используются не только для старых игр, но и для вполне новых. Binding of Isaac: Rebirth (вдохновлен Legend of Zelda для NES) и Hollow Knight (сильно напоминает Metroid) также имеют рандомайзеры который позволяют как перемешать только прядок получения сопособностей, сохранив при этом возможность пройти игру, так и перемешать все предметы и врагов абсолютно случайно, так что прохождение не гарантируется.
Только что проверял системные шрифты подряд ради интереса и получается прямо противоположное. Liberation, Noto, Lato, Caladea, Droid, Ubuntu, Garuda и еще десятки их — цифры одинакотовй ширины, ту же ширину имеют точка и "$". Единственный шрифт что выбивается — это Chilanka. Может, есть еще, я остановился на середине списка.
А это идея. Но проблема тогда появляется в том что либо мы используем глобальные исключения проекта, таким образом наш модуль слишком много знает об окружающем мире. Либо мы кидаем исключения модуля, которые потом надо будет обработать во внешнем мире и завернуть в глобальные или сделать что-то другое.
Получается, если я подаю в суд на кого-то за переиспользование моей мелодии, мне предстоит доказать что каждая из моих мелодий, когда либо написанных, является отражением многообразия моего внутреннего мира? И если хотя бы одна из них не будет нести новизны и художественной ценности — мне будет отказано в иске, так?
То есть, если я накидал проект во FL Studio, то разноцветные полоски являются объектов авторского права, а вот импортированный mp3/midi не является, так как он был сгенерирован алгоритмом и моего интеллектуального труда в этом нет?
Почему бы с него не вычесть $20000 за каждое скомпроментированное устройство, а ему самому запретить какую-либо работу с ПО, а также его детям до третьего колена? Все-таки работа в IT не для людей, которые совершают ошибки.
Результаты:
Ох ты, если сид обновлять, то это выгоднее! Время опровергать весь ТеорВер!
Надо бы еще проверить, когда выпадет больше орлов — если одну монетку подбросить 100 раз, или 100 монет по одному разу.
Спасибо, отправил вам PR https://github.com/typeddjango/awesome-python-typing/pull/34
Вот вам доказательство от питона
Это ни в коем случае не шутка, а серьезное и весомое доказательство.
Все знают что зерги имба, а самый дисбалансный матчап — это Зерг против Зерга. Потому что неважно какую тактику выберет противник, Зерг всегда выигрывает.
На самом деле, баланс очень даже есть, иначе бы терраны на больших турнирах даже не появлялись, ибо не могли бы набрать необходимые очки победами на мелких турнирах.
Спасибо большое. То есть, для примера выше должно быть что-то вроде
Вот в чем проблема с boto3.
Тут метод клиента и класс называются абсолютно одинаково и такое в каждом первом клиенте. mypy справедливо считает что возвращаемый тип — это метод, а не класс. Я нашел решение с само-импортом модуля
Так все работает, но ранит чувства.
Нет, для botocore стабы можно написать только руками. Это гораздо проще, но затратно по времени. Плюс, при обновлении botocore нужно будет проверять, не устарели ли стабы, в то время как для boto3 засчет генерации, обновление может быть полностью автоматизированно.
Но да, в 95% случаев, в новом релизе botocore меняются только JSON-файлы с описанием сервисов, так что стабы останутся без изменений.
Поддерживаю, политики безопасностей для паролей:
vasya98A!
Суть была в том, чтобы автоматически генерировать пароли в питонокоде. Пароли не для себя, а для автоматически созданных пользователей базы данных.
Я понимаю, что это НЕвангеры, но все-таки карты какие-то слишком плоские и проходимые, в отличии от буераков оригинала.
Полностью согласен. В данном случае пароли пришлось генерировать для
MySQL
с плагиномvalidate_password
.Проблема в том, что пользователи базы данных как микросервисы, так и живые люди, поэтому используются политики.
У меня тогда еще не было компьютера, но у моего друга уже был весьма современный ПК. И однажды он мне рассказал про шикарную игру, говорит, выбегаешь из лабиринта и за тобой по пятам гонится монстр. Почти догоняет тебя и тут ты вырастаешь и жрешь этого монстра. Думаю, звучит многообещающе, так что я в тот же день оказался у него и засел играть. И правда, в игре ты находишься в лабиринте, вокруг снуют готовые закусить тобой монстры, но после нескольких попыток таки удается спастись. И вот он долгожданный момент про который рассказывал друг — слева направо по черному экрану пробегает пакман а за ним призрак. И потом в обратную сторону призрак, а за ним уже гонится огромный пакман. И я сидел, смотрел на это и думал: да это просто великолепно!
Уже потом мы с другом рубились в первый Диабло по очереди. И друг внезапно как завопит — «Видал, видал?! Я только что щитом отбил стрелу и одновременно рубанул монстра!!!» На самом деле никакой анимации отбития стрел конечно не было, просто во время анимации атаки положения стрелы и щита хорошо совпали да проигрался звук отскока оружия от брони. — сказал бы я сейчас. А тогда я сказал что-то нецензурное и продолжил с нетерпением ждать своей очереди.