Проталкиваем не-ASCII в непредназначенные для этого места

Автор: admin от 28-01-2015, 22:23, посмотрело: 339

Сидел вечером дома, думал чем бы заняться. А: у Python есть отладчик, но в нём совершенно некрасивое приглашение ко вводу. Дай-ка я впилю туда powerline. Дело казалось бы совершенно плёвое: нужно просто создать свой подкласс pdb.Pdb со своим свойством, да?
def use_powerline_prompt(cls):
    '''Decorator that installs powerline prompt to the class
    '''
    @property
    def prompt(self):
        try:
            powerline = self.powerline
        except AttributeError:
            powerline = PDBPowerline()
            powerline.setup(self)
            self.powerline = powerline
        return powerline.render(side='left')

    @prompt.setter
    def prompt(self, _):
        pass

    cls.prompt = prompt

    return cls

Категория: Программирование

 

Баг в CSS Chrome, разрушивший наш сайт

Автор: admin от 28-01-2015, 20:14, посмотрело: 374

Это реальная история, случившаяся с нашим сайтом во время празднования Дня Благодарения.

Сайт перестал работать внезапно, ничего не предвещало такого оборота.

Поначалу я подумал, что проблема в нашем провайдере хостинга, потому что с ним уже случались проблемы ранее. Наш сайт уже трижды успевал «падать» по разным причинам, и это выглядело как типичная проблема с их стороны.

Категория: Веб-разработка, Google

 

Проект Dual ETL или как мы строили Disaster Recovery для Greenplum

Автор: admin от 28-01-2015, 20:05, посмотрело: 522

В этой статье я хочу рассказать про ещё один этап развития DWH в Тинькофф Банке.

Ни для кого не секрет, что требования к наличию Disaster Recovery (далее DR) в современных бизнес информационных системах относятся к категории «must have». Так, чуть более года назад, команде, занимающейся развитием DWH в банке, была поставлена задача реализовать DR для DWH, на котором построены как offline, так и online процессы банка.

Проект Dual ETL или как мы строили Disaster Recovery для Greenplum

Категория: Админитстрирование » Системное администрирование

 

Внимание, конкурс идей приложений для Microsoft и Mojio

Автор: admin от 28-01-2015, 18:22, посмотрело: 435

Привет, Хабр! Сегодня мы хотим объявить о сотрудничестве Microsoft с ванкуверской компанией Mojio, партнером Windows Dev Center и создателем открытой платформы для «подключенных автомобилей» (connected car).

Внимание, конкурс идей приложений для Microsoft и Mojio

В рамках сотрудничества и во имя поощрения разработки приложений для Windows Phone обе компании решили провести конкурс приложений, в котором вы можете стать обладателем одной из подарочных карт Visa номиналом $1000.

Категория: Веб-разработка, Microsoft, Windows

 

Еще одно маленькое инженерное расследование или плач Ярославны

Автор: admin от 28-01-2015, 18:20, посмотрело: 371

«Я знал, что будет плохо, но не знал, что так скоро» (В.Цой)

Не знаю, что послужило причиной написания данного поста, наверное просто наболело, но конкретным побудительным мотивом стало два события — одно ИЗ-ЗА рубежа, а другое отечественного происхождения. Неизвестно, какое хуже, но об этом судить читателю, так что начнем.

Все началось с того, что одно из изделий нашей фирмы не стало включаться при пониженной температуре. Поскольку используемый в данном изделии модуль питания фирмы Murata уже ранее применялся в других изделиях и проблем не создавал, долгое время приставали именно к нашей плате. Однако, после того, как были отброшены все возможные объяснения (в результате проверок и эспериментов), последний оставшийся вариант и является правильным, каким бы маловероятным он не казался (метод Шерлока Холмса).

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

Категория: Программирование » Веб-разработка

 

Обновление с Windows 7/8.1 до Windows 10 TP через Windows Update

Автор: admin от 28-01-2015, 18:02, посмотрело: 753

Согласно анонсу Windows 10 будет предложена бесплатно в качестве обновления на все Windows 7 и Windows 8.1 системы в течение первого года после публичного выхода. Как именно? Через Windows Update. Нужно понимать, что это предложение обновления, а не лицензия. То есть лицензия на Windows 7 позволит автоматически обновить систему в течение года. Серийного номера, образа, коробки или наклейки предложено не будет. При этом также обещано, что те кто обновятся сейчас на Windows 10 Technical Preview получат затем через Windows Update версию Consumer Preview, Release Preview, а далее и финальной версии. С выходом январского Windows 10 Technical Preview (10.0.9926) появилась также и небольшая утилита для Windows 7 и Windows 8.1, после установки которой, Windows 10 приходит на ваш ПК в виде обновления. Именно об этом я и буду рассказывать ниже.

Для тех, кто хочет попробовать Windows 10 Technical Preview уже сейчас, буду неоригинальным, — это предварительная версия, часть функционала не работает, могут возникнуть проблемы с драйверами и сторонним ПО. Продолжаем. Если вы хотите обновить ваш Windows 7 до Windows 10, загрузите специальную утилиту Prepare с сайта Microsoft, для Windows 8.1 существует аналогичная утилита подготовки.

Я буду показывать процесс обновления для русской Windows 7 Professional, английской Windows 8.1 Single Language и английской 8.1 Professional with MediaCenter. Сразу скажу, медиацентр не переживёт обновления, — текущая версия Windows 10 Technical Preview его не поддерживает и обновит на обычный Windows 10 Professional TP. Тем, кому важен Windows MediaCenter рекомендую дождаться Consumer Preview или более новых сборок.

Категория: Системное администрирование, Windows

 

Процедурная генерация текстур планет на основе алгоритма Diamond-Square, часть 1

Автор: admin от 28-01-2015, 17:50, посмотрело: 1189

Процедурная генерация текстур планет на основе алгоритма Diamond-Square, часть 1

Доброго времени суток. Как со мной бывает, как только я разобрался в каком-то сложном для себя вопросе, я сразу хочу рассказать всем решение. Поэтому решил написать серию из двух статей по такой интересной теме, как процедурная генерация. А конкретнее, я буду рассказывать про генерацию текстур планет. В этот раз я подготовился основательнее и постараюсь сделать материал качественнее, чем в моем предыдущем посте «Простая система событий в Unity» (кстати, спасибо всем за ответные посты). Прежде чем продолжить, хочу обратить ваше внимание на несколько моментов:

1) Этот генератор не претендует на реалистичность, и писал я его для того, чтобы сгенерировать уникальные текстуры для сотни маленьких шариков, которые занимают 10% экрана и к тому же прикрыты облаками.
2) Но это не значит, что я не буду рад критике. Напротив, одна из причин написания этого поста — получить советы по улучшению алгоритма, я с радостью улучшу его.
3) Чисто технический момент: я пишу на C# под Unity3d, так что думать о том, как выводить в изображение с приемлимой скоростью вам придется самим, для каждого языка и платформы свои способы.
Итак, план таков: в первой статье я рассказываю о процедурной генерации планет типа «терра», потом получаю шквал критики, ради которого все и делалось, улучшаю алгоритм, дорабатываю для других типов планет и пишу вторую часть.

Готовы? Поехали.

Категория: Программирование, Game Development

 

Прокси сервер для свободного интернета

Автор: admin от 28-01-2015, 17:43, посмотрело: 21353

Однажды мне окончательно надоели странички вроде «данный ресурс заблокирован по требованию», которые стали попадаться все чаще и чаще. А еще все больше стало упоминаний про «глубинный интернет», i2p, tor, onion, анонимные p2p сети и вообще повеяло хакерской романтикой детства, когда интернет был чем-то загадочным и был доступен только с двух часов ночи со скоростью 31200…

В общем, была поставлена цель: сделать прокси сервер, через который можно заходить на любые сайты (включая сайты в доменах .i2p и .onion) в обход любых блокировок. Цель обеспечения анонимности не ставилась.

Ужа с ежом удалось скрестить, и вот теперь я, как и 17 лет назад, исследую глубинные слои интернета. Кстати, если говорить про i2p, то скорость по ощущениям не намного больше, чем у интернета 17 лет назад. История циклична.

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

Как это работает:

Основным прокси сервером явлется squid.
Через cache_peer (вышестоящий прокси) squid подключается к i2p и tor. tor является Socks прокси, а squid — http прокси, поэтому между squid и tor встраивается прослойка privoxy.
Также мы имеем обновляемый ACL список всех заблокированных ресурсов в русском интернете.
Squid обрабатывает запросы от браузеров следующим образом:
Если запрашивается URL в домене .i2p, то запрос передается по цепочке в i2p.
Если запрашивается URL в домене .onion, то запрос передается по цепочке в tor.
Если запрашивается запрещенный URL, то запрос передается по цепочке в tor.
Все остальные запросы отправляются напрямую самим squid.

Инструкция как сделать интернет без ограничений своими руками:

Категория: Админитстрирование » Системное администрирование

 

Категории Клейсли

Автор: admin от 28-01-2015, 17:12, посмотрело: 534

Композиция логирования


Вы видели, как сделать категорию типов и чистых функций. Я также упомянул, что есть способ смоделировать побочные эффекты, или нечистые функции, в рамках теории категорий. Давайте рассмотрим пример: функции, которые логируют или записывают ход своего выполнения.

Категория: Программирование

 

Почему я потратил четыре года на разработку игры своей мечты

Автор: admin от 28-01-2015, 16:46, посмотрело: 411

Почему я потратил четыре года на разработку игры своей мечты

Исходя из замечаний хабрасообщества в комментариях, пост был доработан и наполнен дополнительной информацией. Надеюсь теперь все станет более ясным.

По мере прочтения статьи вы спросите себя, к чему я излагаю эти, казалось бы, очевидные факты? Дело в том, что по моему скромному мнению эволюция культуры видеоигр слишком стремительна. Даже поклонников 8-битных консолей все еще много, как и издателей игр для них. Но теперь это ретро, точно так же как и любимые мной браузерные игры. А еще каких-то 10 лет назад не было ничего круче хорошего, по тем временам, канала в сеть и друзей в чате любимой браузерки.

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

Но обо всем по порядку.

Категория: Программирование » Game Development

 
Назад Вперед