
1) Проверить его мастерство игры в Xmoto. 2) Узнать через что он случает музыку. Верный ответ - mpd. Если дан верный ответ, спросить как он слушает. Если через 10 минут не будут услышены слова "фронтэнд" и "бэкэнд", то перед вами убунтоблядь. 3) Проверить мастерство владения links. 4) Спросить как "расшифровывается" аббревиатура GTK
Пост буду наполнять. Предлагайте свои варианты.
Post A Comment | Add to Memories | Tell a Friend | Link
 |
|
В общем то, моя CLS работает очень хорошо, только вот при емерже не реально что-либо делать. И я, ради интереса, глянул на оперативку: total used free shared buffers cached Mem: 2061252 2044328 16924 0 35336 1417372 16 мб. Из 2х гб. КАКОГО Х-Я?!
А у меня были запущены: FF3.5, VLC, Transmission, OpenBox, 2xTilda, tint2, eric(+python), pidgin. Всё! А в top'е небыло ни одного приложения, которое занимало больше 7% оперативки. Было около 10 процессов 1-5%, остальные меньше 0,1. Вырубил ФФ3,5, влц, эрика.
Mem: 2061252 1753372 307880 0 74896 1373764 300... уже лучше. Но! ЧТО, БЛДЖАД, ЗАНИМАЕТ 1,7ГБ ОПЕРАТИВКИ?! Вот скрин htop'а:

Я в панике. Вырубил трансмишшн. Теперь думаю нужно искать альтернативу для него:
Mem: 2061252 1643156 418096 0 77504 1198672
Решил ребутнуться. Ребутнулся. При запуске. Иксы ещё не включены: Mem: 2061252 109552 1951700 0 16188 43024
Теперь иксы: Mem: 2061252 204580 1856672 0 21816 88840
И Pidgin: Mem: 2061252 260716 1800536 0 25556 107012
А теперь фуррифокс: Mem: 2061252 371164 1690088 0 28448 145944
Немного сёрфа в ФФ: Mem: 2061252 401828 1659424 0 29292 151096
Врубил трансмишшн: Mem: 2061252 420692 1640560 0 31504 155936
Вот что было дальше (while true; do free|grep Mem&&sleep 60; done)
Mem: 2061252 615976 1445276 0 34936 289600 Mem: 2061252 625724 1435528 0 35092 299056 Mem: 2061252 633076 1428176 0 35208 306368 Mem: 2061252 638124 1423128 0 35332 311260 Mem: 2061252 643308 1417944 0 35480 315476 Mem: 2061252 648132 1413120 0 35724 320704 Mem: 2061252 653952 1407300 0 35916 326460 Mem: 2061252 659484 1401768 0 36000 331884 Mem: 2061252 665696 1395556 0 36076 337396 Mem: 2061252 672600 1388652 0 36368 343144 Mem: 2061252 676308 1384944 0 36400 346896 Mem: 2061252 686800 1374452 0 36568 351804 Mem: 2061252 697880 1363372 0 36688 356488 Mem: 2061252 696712 1364540 0 36796 362004 Mem: 2061252 708816 1352436 0 36884 366684 Mem: 2061252 715608 1345644 0 37192 371308 Mem: 2061252 715800 1345452 0 37288 375416 Mem: 2061252 718176 1343076 0 37380 379024 Mem: 2061252 724892 1336360 0 37432 384240
Грубо говоря, 10мбпм. С 450 до 730. Меньше чем за час. При игре в Xmoto почти без сёрфинга. Пиздец...
ПыСы: Тёма, блджад, ТЫ КУДА СМОТРИШЬ?! ЧИНИ РАЗМЕТКУ! Редактор LJ Заставляет плакать, чес слово. ПыПыСы: Ищу хостенг для своей дняффки. Ну приютите хоть ктонить ;_;
Post A Comment | Add to Memories | Tell a Friend | Link

Пикрандом. Да, могло быть и лучше. Я совсем расклеился, нос течёт, голоса нет, горло болит, слабость, хочется умереть. Ну попробуем выжить, завтра нужно ко врачу сбегать и всё будет гуд. +/- + хотел начать писать нг-бота для джаббера(фу-тян) - так и не начал писать + горло меньше болит - нет голоса - течёт нос - пиздец пиздец пиздец - час ночи а я ещё не сплю + настроил тимидити с тукс-гитар. это оказалось проще чем я рассчитывал. +/- посмотрел 4 серии ванписа. я на 102ой + вспомнил что у кути теперь всё хорошо с лицензией - но не у pyqt + поговорил с хуцем на счёт идеи текстовой эрпогэ. идея вин. это будет интересная игра не только для красноглазиков. хуй взялся за идею и проедоставит мини-диздок, после которого будет делать нормальный. А я тем временем начну реализовывать. + сделал мини-статью по установке TG+TM. +/- взял кредит абонентки по интернетам на 3 дня + выбрал 2 песни, которые будем играть в Ко: половинка танцев- и тему лауры самизнаетеоткуда. - так и не выбрал для них табы +/- пофапал Немного полезных ссылок: GTK+ + CPP = http://www.gtkmm.org/Проект текстовой эрпогэ - http://corovaneer.ru/rm/projects/show/jgмб откроем на паблик
Post A Comment | Add to Memories | Tell a Friend | Link
Увы, в репах генты и в слое calculate не оказалось ебилдов для TG, но не проблема! Всё что вам нужно иметь: настроеный layman(в CLS уже всё необходимое естьи настроено как нужно), пакеты gentoolkit(для eix) и, чисто для эстетического удовольствия, sudo.
( Read more... )
Post A Comment | Add to Memories | Tell a Friend | Link
 |
|
Странный заголовок, но похуй. Сегодня утром проснулся от сна, в котором у меня сильно болело горло. Удивительно, но оно болело не только в "атсрале". Весь день проходил мучаясь. Молча. ~
Контроль (Control) (Антон Корбайн) [2007 г., Драма, Музыка, Биография, DVDRip]
(08:58:52 PM) zoomcool13: про группу joy division (08:58:57 PM) zoomcool13: довольно интересно (08:59:05 PM) zoomcool13: сам недавно узнал о ней) (08:59:59 PM) zoomcool13: вот и я так думал, скачал, у меня месяц фильм пролежал, а щас посмотрел, блин, впечатляюще
Надо будет посмотреть... ~
Сейчас хотел залить новых игрушек на мобайл. Залил. В генте. В сонерик к750. Кто бы мог подумать, но в никсах уже есть драйвера для мобильников с доступом к интерфейсу файловой системы. Охуенно. А венда сосёт, там нужно ставить драйвера. А говорят что в никсах с драйверами проблемы. Тьфу вам в лицо. Хал + PCMANFM и всё няшно. ~
А между делом эволюция эльфов на сонериках даёт о себе знать. Я уже фапаю на этот список. Но нужно будет залить новую либу с новыми патчами да с новой прошивкой... Эх... вот это хз как делать под никсами. Всё ПО для прошивки пиратское и написано под венду. В общем, потерплю, да и не так нужны мне те фишки.
Засим, ухожу спать. Болеть фигово. Надеюсь горло пройдёт. Тьфу тьфу тьфу.
Post A Comment | Add to Memories | Tell a Friend | Link
I live in a cemetary I need a change Not To immitate, irritate... ( Read more... )
Post A Comment | Add to Memories | Tell a Friend | Link
 |
| 2009-09-07 18:11 |
| Лол... |
| Public |
pissed off |
|
Сейчас прочитал сообщение о том что меня касается, но написать здесь не могу, да и сказать некому, но оно вызвало смех сквозь слёзы, лол... Но, увы, оно меня уже не касается. Но, блин, вопрос и ответ на 5+. Хех. Ну да ладно, зато услышал ответ на вопрос и могу отпустить. А теперь я могу достать тетрадь с набросками кода для фреймворка Jabber-бота и, наконец, допилить его.
Post A Comment | Add to Memories | Tell a Friend | Link
Начну, наверно, ежедневный выпуск PotD. Данный выпуск включает просто некоторый "улов" за эту часть дня и немного старого:
( Read more... )
Post A Comment | Add to Memories | Tell a Friend | Link
 |
|
По мотивам статьи о декораторах.
( Read more... )
Конечно, нет.
А от чего появляется такая мысль у человека, который не мало кодит на плюсах и пайтоне? От отсутствия знаний о некоторых основах. Т.е. "пробелах". Для таких пробелов я делаю некоторые "оффтопы" и "врезки" в свои статьи. А сейчас хотелось бы поговорить о понятиях функция(метод) и переменная. Поскольку мы используем ООП и понятие объект нам очень родно, давайте рассуждать именно от него.
В памяти можно поместить любой объект данных. Этот объект может хранить код, информацию о пользователе, мета-информацию etc. Функиция, метод, класс, переменная - это всё объекты памяти. Чем они отличаются друг от друга? Здесь будет много споров, но для более простого примера уточним язык программирования - пайтон. ( Read more... )
a, b, c, d, e - это всё обычные ячейки памяти. Вы можете их менять местами, присваивать другим переменным, удалять.
Однако, у ячейки a и b есть особенность. Грубо говоря, эти ячейки содержат код с перегруженным методом __call__. А содержимое метода __call__ это и есть содержимое функции(кода в ячейке). Метод __call__ вызывается с помощью ().
( Read more... )
Метод __call__ обязан вернуть что-то: будь то None, NoneType, итератор или даже новый метод/функция.
Обратимся же к примеру с декораторами.
( Read more... )
decor(foo) означает то что мы передаём нашу функцию в декоратор, чтобы решить что с ней делать. Если декоратор сочтёт что можно вызывать нашу функцию, то он вернёт foo, а (10) вызовет метод __call__ у того, что вернул декоратор, т.е. foo.
( Read more... )
Так-же, хочется обратить внимание на то, что в данном случае выхов функции происходит именно в строчке a(10), однако, если декоратор вернёт свою "временную" функцию, то сам вызов функции будет происходить в декораторе. Это полезно запомнить на "всякий".
Если что-то не понятно или не очевидно, стучите в iorlas@jabber.ru.
Post A Comment | Add to Memories | Tell a Friend | Link
декораторы - это такой воркароунд для криворуких верстальщиков(с) >:3
зойпесал
Post A Comment | Add to Memories | Tell a Friend | Link
Несколько дней назад в репозеториях генту произошла настоящая ХУИТА. ВНЕЗАПНО был признан нестабильным xulrunner 1.9.1.2-r2, т.е. стал замаскирован по архитектуре
( Read more... )
Что же произошло после этого? ВСЕ, кто сделал апдейт ворлда не пересмотрев весь список обновления, ВНЕЗАПНО даунгрейднулись до 1.9.0.13. Всего-то - скажете вы. А вот ФФ3,5 пошлёт на 3 буквы. Ему подавай именно 1.9.1.2. Таким образом мейнтейнеры сделали страшное. А именно сделали невозможным использование ФФ3,5 на чисто-стабильной системе. А это повело к тому что бинарная сборка стала обновляться. Обновляется она редко, но, как мне кажется, сейчас обновили её не просто "так".
( Read more... )
Post A Comment | Add to Memories | Tell a Friend | Link
О том что это такое и как их использовать для простых задач без ООП можете почитать на хабре, а сейчас я хотел бы ненмого поговорить о использовании декораторов в ООП.
Для начала хотелось бы немного поговорить о том как в пайтоне реализовано ООП и.. много чего другого. В пайтоне всё делается возможностями языка и как можно более примитивно(не знаю какое ещё слово можно здесь употребить). В т.ч. и многие особенности ООП реализованы через метаклассы, а не build-in модулями/кодом. Все мы знаем что класс в пайтоне будет выглядеть ~ так:
class MyClass(object):
def foo(self, a, b): self.c = a + b
Как мне стало недавно известно, даже некоторые опытные программисты не понимают зачем в декларации функции необходимо добавлять параметр self, а ктото думает что обращаясь к self в третьей строке мы обращаемся к самому классу... не через этот параметр. Не буду разводить холиворов, но сделаю акцент на том что любая функция в множестве объектов класса есть независимый объект, который имеет доступ к своим объектам, к объектам-параметрам и к глобальным объектам(герез глобалс или оператор глобал, например).
Вернёмся к нашим оленям. "Стандартный" декоратор имеет подобный вид:
def decor(f): return f
А применяется он вот так: @decor def foo(с) print "lol", c
foo(10) Всё просто. Вызывается декоратор, который возвращает декорируемую функцию, а она вызывается с параметрами. Это можно представить как: decor(foo)(10) Однако, как видно в последнем куске кода, в декоратор не передаютс яаргументы функции. А ведь много кто объясняет полезность декораторов как средство для проверки возможности действия функции по её параметрам: проверить, существует ли файл/пользователь, можно ли сделать %actionname%. А без параметров.. это не реально. Однако, выкрутились пайтенофаги. Немного через заднее отверстие, но выкрутились. В коде выше можно наблюдать интересное место для "умственного манёвра", а именно обратите внимание на то что с параметрами вызывается не сама функция, а только то что вернёт декоратор. Всё что нам нужно сделать, подсунуть другую функцию, которую можно создать внутри декоратора. def decor(f): def tmp(*args, **kwargs): print args, kwargs return f return tmp
Здесь можно видеть что мы возвращаем из декоратора не декорируемую функцию, а нашу "под-функцию". decor(foo)(10) tmp(10) Вот так можно представить то что у нас получилось. Все параметры передаются в args(безыменые) и в kwargs(именованные), а, поскольку наша функция внутри декоратора, мы всегда имеем возможность вернуть декорируемую функцию. Всё просто. Однако, для новечка, использование декораторов в классах является тёмным вопросом. Вот как может написать человек, который ни разу не использовал декораторов в классах: class MyClass(object): def decor(self, f): return f
@decor def foo(self, a, b): self.c = a + b
Что здесь плохого? Почему не компилится? Я же указал "как надо" self и всё везде правильно описал. А вот и нет. Давайте разберём данный код. Вспомните, декоратор получает декорируемую функцию. Не более. Декоратор не меняется из-за метакласса или ещё как-то. Поэтому... да. ... def decor(f): return f ...
Этот код будет работать! Но вот задача... Тогда мы теряем все плюсы декораторов. Мы должны проверить параметры с помощью информации в классе, но как это сделать если мы не имеем доступа к self? Или имеем? Имеем! Но не всё так просто. def decor(f): def tmp(*args, **kwargs): print args, kwargs return f return tmp
Да, это всё тотже старый пример. Попробовав запустить его как декоратор для функции и для метода класса, мы получим два разных вывода. Если для функции он нам напишет только параметры, то для метода... мы увидим адрес нашего экземпляра класса MyClass и параметры! Правильно, класс передал себя как параметр, как для любой его под-функции. Следовательно, self == args[0].
И вот небольшой пример декоратора для метода класса:
def hasSession(f): def check(*args, **kwargs): if kwargs["name"] not in args[0].sm.sessions: args[0].sm.create_session(kwargs["name"]) return f(*args, **kwargs) return check
Post A Comment | Add to Memories | Tell a Friend | Link
 |
|
Вот мне и поручили задание написать менеджер шейдеров. Конечно, сначала испугался ибо хз как их писать и что это вообще. Грубо конечно я их знал но всё же.
Как оказалось, это первая действительно интересная работа для меня. Что же такое шейдер? Шейдер - мини-программа, написанная на языке шейдеров, которая компилируется и выполняется на уровне процессора самой видеокарты. Да, теперь у нас используются воможности видеокарт. Одно но - Шейдеры имеют свой API, и у каждого изготовителя видеокарт он разный. Даже у серий видеокарт он разный. Но есть общие расширения oGL, позволяющие использовать возможности почти всех видеокарт. Опять же нас спасает The OpenGL Architecture Review Board (ARB).
ARB_vertex_program & ARB_fragment_program
Данные расширения позволяют компилировать шейдеры на многих видеокартах. Давным-давно, когда под кризисом имели ввиду только экономический кризис а слово "дум" вызывало только ностальгию, шейдеры писали на низкоуровневом, asm-подобном, языке. Сейчас же всё стало гораздо лучше и легче. Как и все программируемые объекты, шейдеры обзавелись высокоуровневыми языками.
CG (C for Graphics) by NVidia RenderMonkey by ATI HLSL (High Level Shading Language) GLSL (GL Shading Language)
Для своих целей я выбрал CG. Не только потому что это "попса", но и потому что это одно из самых стабильных средств для написания шейдеров (мнение интернета, не более).
Первые действия - скачать и установить. http://developer.nvidia.com/object/cg_toolkit.html
Далее мануалы. Всё что мне пока нужно было : http://http.developer.nvidia.com/CgTutorial/cg_tutorial_chapter10.html http://www.gamedev.ru/articles/?id=20103
Пожалуй сначала нужно прочитать вторую статью ибо там рассказано на примере как задействовать CG.
To be continued...
Post A Comment | Add to Memories | Tell a Friend | Link
 |
| 2008-11-09 19:23 |
| CubeMapping |
| Public |
| Amatory - Слишком Поздно... |
|
Он занял у меня 3 недели.... Хотя по плану был 1 день. Точнее 1,5 часа. ПЗДЦ... А сегодня я узнал что я делал рабочий кубмэппинг, только модели, которые у нас грузились из файла геометрии, неправильно отражают...... пздц........ чуть позже расспишу как делать ПРАВИЛЬНЫЙ кубмэппинг.
Post A Comment | Add to Memories | Tell a Friend | Link
Вот что нашёл в коде:
char ExtractExtention( char *fileName )[4] { /* Extension */ char Ext[4];
/* Help var */ byte i;
/* Checking filename */ if (!fileName) return 0;
/* Extracting extension */ for (i = (byte)strlen(fileName) - 3; i < (byte)strlen(fileName); i++) Ext[i - (byte)strlen(fileName) + 3] = fileName[i]; Ext[i - (byte)strlen(fileName) + 3] = '\0';
/* Processing extension */ return Ext; } /* End of 'ExtractExtention' function */ Мой вариант: if (strrchr(fd.cFileName,'.')) strcpy(buf, (strrchr(fd.cFileName,'.') + 1));
Не правда ли легко?
1 Comment | Post A Comment | Add to Memories | Tell a Friend | Link
За 4 часа, ночью, переписал всё что умел прежний редактор текстур, который писался месяц (если не больше). Причём переписал всё в стиле, используя правила хорошого тона, структурировав код и усложнив интерфейс сделав юго действительно юзабильным. Всё круто. Как приеду с универа добавлю ротейт, скейл и сделать ещё какойнить фильтр.
Post A Comment | Add to Memories | Tell a Friend | Link
Сегодня начал работу над редактором текстур. Необходимо было его отладить и довести до ума. Оказывается Довести до ума приходилось очень интересный код, который писал коллега по работе. Порадовала в первую очередь структура. /* FILE: veteops.h * DATE: X July XXXX г. * AUTHOR: XXXXXXXX XXXX * PROJECT: VeTexture * LAST UPDATE: Updated on XX.XX.XX * NOTE: write here * * CONTACT PERSON: XXX */ Не логичное название файла, не описанное даже в заголовке файла. Заголовки файлов - то что позволяет программисту НАЧАТЬ понимать другого программиста. Remember. Оказалось что этот хёдер является основным файлом хёдеров, который инкладит все необходимые хёдеры движка и системы. Однако по названию файл отличается от файла, содержащего WinMain(). Не понятна логика… Далее я решил глянуть ресурсный файл. Меня порадовала строка: MENUITEM “Open”, ID_FILE_OPEN40009 Интересный, должно быть, дефайн ID_FILE_OPEN40009. Как оказалось, программист оказался ещё более предсказуемой личностью: #define ID_FILE_OPEN40009 40009 Без комментариев. Также понравилось что этот дефайн лежит в файле, которого нет в солюшне, но есть физически. Пысы: Привет Давиду =)
Post A Comment | Add to Memories | Tell a Friend | Link
 |
| 2008-10-09 04:27 |
| Поехали по-тихоньку |
| Public |
depressed |
| Neversmile - Последняя Запись В Её Дневнике |
|
Новый блог - новый образ.
Post A Comment | Add to Memories | Tell a Friend | Link
|