← All posts tagged Win

О как полезно проц обмазать свежей пастой. Было 72-75 градусов на ядрах в idle, теперь 52. На самом же проце 40. Доволен. А как кулер снял и посмотрел, ужаснулся — от былой пасты остались какие-то сохлые ошмётки, еле отскоблил.

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

def half_time(time1, time2):
"""
>> half_time(datetime.time(10, 30, 0), datetime.time(12, 20, 30))datetime.time(11, 25, 15)
>> half_time(datetime.time(23, 30, 0), datetime.time(0, 30, 0))datetime.time(0, 0)
>> half_time(datetime.time(20, 30, 15), datetime.time(1, 30, 5))datetime.time(23, 0, 10)
"""
datetime1 = datetime.timedelta(hours = time1.hour, minutes = time1.minute, seconds = time1.second)
datetime2 = datetime.timedelta(hours = time2.hour, minutes = time2.minute, seconds = time2.second)
if datetime2 < datetime1:
datetime2 += datetime.timedelta(days = 1)
half = (datetime1 + datetime2) / 2
return (datetime.datetime.min + half).time()

А чтобы провести тест, достаточно добавить в нужном месте в самой программе:
import doctest
doctest.testmod()

Больше по теме: docs.python.org Трейсбэки тоже можно проверять.

Попробовал компилить в памяти, понравилось. Теперь всегда так буду делать. Hint: распаковывать сорсы в каталог /dev/shm и собирать там же, за счёт полного отсутствия дискового I/O время компиляции сокращается в разы. Не подойдёт для сборки ядра, если свободно слишком мало, но вайн собирается на ура, да и всякую мелочь можно быстро собрать.

Владельцам роутеров, адсл-модемов и прочей NAT'ящей поебени посвящается. Купил я на днях роутер, прошил туда dd-wrt, всё ништяк. А как же прокидывать порты по нужде? Конечно, можно лазить в веб-морду и забивать данные. Конечно, можно заSSH'иться и добавить правила в iptables. Но зачем, если специально для этого уже приудман UPNP? Берём, ставим пакет miniupnpc и получаем возможность добавлять порты на любом девайсе с помощью одной команды — upnpc -a 192.168.1.2 22 1000 tcp (здесь 192.168.1.2 — ваш внутренний адрес, 22 — адрес вашего порта, который надо прокинуть, 1000 — желаемый порт снаружи и tcp — протокол). Удалять через upnpc -d 1000 tcp (для данного примера). Просто и удобно, а главное, работает единообразно с любым девайсом, который умеет UPNP, а таковыми являются чуть менее, чем все. Например, можно повесить такую команду в шедулер rTorrent, который не умеет использовать upnp, и получить автоматический лёгкий проброс. Также полезно может оказаться в случае прихода к знакомым с вайфаем, ну не просить же их добавить форвардинг ^^ А upnp, насколько я знаю, авторизацию не поддерживает, так что и не запаролить его никак, только отключить можно. Но по дефолту он включен везде обычно.

В обсчем, господа, рекомендую вам поставить скрипт WonderShaper. Это настолько известная штука, что даже входит в репозитории, рулится через /etc/sysconfig и имеет свой rc-скрипт. Жалею, что не узнал о нём раньше. Суть такова, можно качать торренты на полную мощность, и при этом сайты открываются с полной скоростью, будто канал вообще простаивает. Конфигурирование заключается в указании интерфейса, который смотрит в интернеты, скорости даунлинка и аплинка и портов, которым должен быть поставлен высокий приоритет (на самом деле, он называется наоборот, низким). Я выставил WSHAPER_NOPRIOPORTDST="22 80" для ssh и www, соответственно. Адовый комфорт, спермачам и не снилось. Можно и сам скрипт потюнить (там просто команды tc с нужными параметрами) для своих условий.

Поскольку где-то в сусе 11.3 затаился баг, проявляющий себя в xfce-xkb-plugin (при подключении вебкамеры-планшета после смены раскладки индикатор падает, а нужен он мне только для индивидуальной раскладки в каждом окне) и поскольку мне это уже остоебенило, наконец нашёл замену — xxkb. Довольно кастомизируем, умеет показывать раскладку в трее, в заголовке каждого окна, иконки/подписи и т.п. Основные настройки переключения и индикации ставятся в конфиге иксов, а эта утилка лично для меня будет сохранять состояние для каждого окна. Качать только CVS-версию, там мейкфайл починен: xxkb.cvs.sourceforge.net

По опциям — читать ман. Мой конфиг ~/.xxkbrc (без такого файла не запустится, так что хотя бы пустой, но нужен):
XXkb.mainwindow.enable:no
XXkb.mainwindow.type:tray
XXkb.mainwindow.label.enable:yes
XXkb.button.enable:no

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

Во время собрания, команда, которая со временем выросла в ядро разработчиков Ubuntu, составила список идей, которые она хотела бы видеть в своей идеальной ОС. Сейчас этот список знаком большинству пользователей Ubuntu:
Предсказуемые и частые циклы релизов;
Упор на локализацию и доступность;
Упор на простоту использования и дружелюбность к пользователю;
*Упор на использование языка Python в роли единственного языка программирования, с помощью которого вся система может быть построена и расширена;*
Сообщество-ориентированный подход, который уже работал с существующими открытыми проектами и метод, с помощью которого группы разработчиков могли бы на ходу возвращать свои наработки;
Новый набор инструментов, построенный вокруг процесса разработки дистрибутива, который позволил бы разработчикам взаимодействовать с экосистемой различных проектов и который позволил бы получать максимальную отдачу от пользователей.

:3 А я и не знал о такой роли питончика в самом популярном дистрибутиве (хоть сам и не пользуюсь убунтой, но всё же). habrahabr.ru

eureka.com ЭЙ ТЫ ИДИ СЮДА! ТЕБЕ ТОЧНО НУЖЕН ТАКОЙ ПЫЛЕСОС!!! ТЫ ТОЛЬКО ПОСМОТРИ НА ЭТОГО МАЛЕНЬКОГО МОЩНОГО ЗАСРАНЦА! ОН ЖЕ ВЫГЛЯДИТ КАК МЕХА ИЗ ТВОЕГО ЛЮБИМОГО АНИМЕ! БЛЕСТИТ КАК ЖОПА ВЕЛЬЗЕВУЛА И УНИЧТОЖАЕТ ПЫЛЬ ЯДЕРНЫМ САТАНИНСКИМ ДВИЖКОМ КОТОРЫЙ ВЫТАЩИТ ПЫЛЬ ДАЖЕ ИЗ ПОДВАЛА ТВОЕЙ СРАНОЙ КОНУРЫ! ООО ЭТИ ПОЛУПРОЗРАЧНЫЕ БАКИ ДА ТЫ ЖЕ УВИДИШЬ НАСТОЯЩЕЕ ЦУНАМИ ИЗ ГОВНА СКОПИВШЕГОСЯ В ТВОЕМ НАСТЕННОМ КОВРЕ ПРЯМО ВНУТРИ ЭТОГО КАРМАННОГО БЫЧАРЫ! ЖМИ НА КНОПКУ ПОКУПКИ ПРЯМО СЕЙЧАС ХУЛИ ТЫ ЗАДУМАЛСЯ?!! НЕТ ДЕНЕГ?!! ПРОДАЙ РОДИТЕЛЕЙ ДРУЗЕЙ И КВАРТИРУ НО ПРИОБРЕТИ ЭТУ БЕЗУМНУЮ МАШИНУ ЧОКНУТОГО УЧЁНОГО И ТОГДА ТЫ ПОЙМЁШЬ ЧТО ТАКОЕ МОЩЬ ИСТИННОЙ ЭВРИКИ!

en.wikipedia.org Это борьба Штата Гекко, блеять! en.wikipedia.org бугурт блеять! i.imgur.com Холланд, блеять! en.wikipedia.org Флаги, празднество, ёпта! Подчиняйся, поклоняйся Эврике, что ты как не мужик, блеять! Вступай в Балларат eurekaballarat.com будь в эврикацентре, мать твою! Сражайся за свободу, за честь, за совесть дедов! eureka7.ru

FFFFFFFUUUUUUUU! Вот и нашёл ответ на #944379. Недавно вспомнил обрывок текста из этой книги, там персонаж про себя говорил, что у него селективный мутизм (сейчас выяснил, что это про персонажа другие говорили, но не суть). Мне этот фрагмент запал в память, потому что там объяснялась суть явления, и я наконец-то понял, как называется это расстройство, которое у меня также наличествует, хотя и уже процентов на 90 ушло в небытие. Тем не менее. Книга нашлась по запросу в гугле «селективный мутизм куклы», два нижних результата на первой же странице гласят (мой баттхёрт нарастает!): Война кукол — Белаш Александр. Понимаете, да? Надо убивать за такие названия, потому что, блядь, книга про роботов-кукол, которые воюют, и называется она ВОЙНА МАТЬ ИХ КУКОЛ! Капитан «К.О.» Очевидность повесился на бечёвке в сортире от такого автора. А вот гугл я люблю, потому что кроме этого словосочетания я нихуя не запомнил, и найти почти не надеялся. А тут бредовость самой фразы, состоящей из названия болезни и слова «куклы», оказалась столь нетипичной, что выдала именно то, что надо. All hail google!

tinyurl.com Краткое содержание ссылки: проверили на практике, кто сильнее и прочнее — автобус с ~50 пассажирами или поезд. Подписи к фото: rusdtp.ru (охраняемый полунудистский пляж) rusdtp.ru (слева: «ёбаный стыд, ну и фейл», справа: «ололо!») rusdtp.ru («Я же говорила, поезд победит! Урррааааа!») rusdtp.ru («Охуеть, как это оказалось в его жопе?»)

Навернул синхронизацию для сабжа, доволен. Пожалуй, пошлю подальше XMarks, всё равно фф скатился окончательно в тормозное говно и не нужен, а так у меня везде хромиум. Особенно понравилось, что встроенный синк также синхронизирует расширения (жаль, их настройки проёбываются) и всякие автозаполнения, а не только закладки. Разумеется, XMarks по определению не может синхронизировать расширения между браузерами, но тем не менее, это сильно важно, особенно, если ставишь на новой машине хромиум и хочется быть как дома.

Вчера тинай разродился обновлением расширения для сабжа. Теперь можно (наконец-то, блядь!) искать картинки путём клика правой кнопкой по ней и выбора соответствующего пункта. Возможность расширения контекстного меню появилась относительно недавно, поэтому пользователям стейблов с̶о̶с̶а̶т̶ь̶ не беспокоиться. Скачать бесплатно без регистрации и смс: chrome.google.com

Очаровательный короткометражный фильм Sintel: sintel.org Делался полностью на *ШВАБОДНОМ* ПО, через несколько дней должны появиться все рабочие материалы, модели, текстуры, сцены, звук и т.п. Субтитры, фактически, не требуются, слов мало, да и без них всё понятно.