• Скачал с торрента — обокрал автора

      Это своего рода ответ, на этот, весьма интересный пост.

      Итак, начнем с начала — с производства кино, которое автор предлагает нам не стыдясь воровать:

      В съемках учавствуют: режиссер, актеры, персонал и… спонсор.

      Спонсор — тот, кто способен дать 100-300 миллионов долларов, необходимых для съемок. Цель спонсора — заработать.

      Да-да! Спонсор — жадный, меркантильный и гадкий. Спонсору абсолютно наплевать на благородные мотивы, влияние кино и т.д. Спонсор хочет денег.

      Теперь проблема — без спонсора не будет кино. Вообще. Максимум — домашние съемки на которые люди не смогут тратить много времени, поскольку им надо будет работать где-то еще. Не будет актеров с мастерской игрой, поскольку им выгоднее будет использовать свой дар как продавцам. Талантливые режиссеры будут снимать рекламные ролики для ТВ.

      Спонсор дает денег. Кино снимают. Критерием, по которому судят кому дать денег в следующий раз на съемку нового шедевра является… правильно, окупаемость.

      Так вот, вы, которые скачали кино с торрентов, мотивируя это тем, что Сони, Варнер, … не имеют прав на кино, лишили режиссера возможности создать следующий шедевр.

      Кино не окупилось? Почему? Потому, что кто-то слил версию в торренты за неделю до релиза?
      Да лейблу плевать, что это мегашедевр. У лейбла скоммуниздили несколько десятков миллионов долларов. Если режиссер и получит денег на следующий раз, то в 2-3 раза меньше. Естественно он ненавидит вас. Актер, который не получил роли ненавидит вас.

      Вы, попросту украли произведение. Не удивляйтесь тому, что в следующий раз лейбл не даст вам DVD. Только носитель с экстразащитой. Который, естественно, будет работать только в Windows X. Вы, вопящие про то, что гадкий DVD не проигрывается в вашем любимом линуксе/макоси сами добились этого.

      На самом деле, даже многие авторы интересных сайтов ненавидят программы режущие баннеры — используя их вы лишаете автора источника существования, заставляя идти и чистить унитазы вместо создания интересных сайтов.
    • Memoization в Python

        Memoization – свойство функций сохранять (кешировать) результаты вычислений, дабы не вычислять в последствии повторно.

        Эта технология оптимизации позволят достичь прироста скорости работы за счет потерь в свободной памяти.

        Допустим, у нас есть некая функция bigfunc, результат которой зависят только от переданных в нее аргументов, а сложность вычислений достаточно большая. Естественно нам не хотелось бы производить вычисления при каждом вызове bigfunc если она уже вызывалась ранее с теми же параметрами. Тут то нам на помощь и приходит memoization.

        Для python декоратор для функции будет выглядеть следующим образом:

        import cPickle
        def memoized(func):
            memory = {}
            def memo(*args,**kwargs):
               hash = cPickle.dumps((args, sorted(kwargs.iteritems())))
               if hash not in memory:
                   memory[hash] = func(*args,**kwargs)
               return memory[hash]
            return memo
        

        Далее, нам достаточно объявить bigfunc как

        @memoized
        def bigfunc(…):
        …

        Или переопределить, если она уже объявлена:

        bigfunc = memoized(bigfunc)

        Декоратор, объявленный в начале статьи, работает только с пиклезуемыми объектами. Если ваша функция работает с непиклезуемыми объектами – вы можете заменить

        hash = cPickle.dumps((args, sorted(kwargs.iteritems())))

        на

        hash = (tuple(args), frozenset(kwargs.items())

        но вы потеряете возможность работы с mutable объектами.

        Декоратор можно легко модифицировать, для ограничения количества закешированных элементов.
      • Бесплатная альтернатива

          Чуть больше года назад к нам пришли люди в погонах проверять лицензию на ПО. Паника после ухода и обещания «вернуться и проверить» заставила наших горе-админов спешно переходить на бесплатные альтернативы.

          Общение с основными популярными каталогами софта в которых было около 10 тысяч «бесплатных» программ повергло в ужас – куча школьных поделок, adware, триалок и вообще мусорных программ, в которых найти что-либо ценное не представлялось возможным, заставили поднять свой «каталог».

          Естественно, для того, чтобы не превратится в очередную «помойку» на публикации накладывается премодерация и оценка полезности софтины с точки зрения администрации :)