April 2008 Archives

В ніч з п'ятниці на суботу обікрали офіс моєї контори, що займається відновленням інформації, RDM. Забрали відносно мало, але найцінніше: десяток 160-гігових ноутбучних винтів, комплекси PC3000, всі інструментальні винти і, що найнеприємніше, - як мінімум один винчестер з клієнтською інформацією.

Попередня вартість вкраденого обладнання для нас - приблизно 12-15 тисяч доларів та ще з-за втрати комплексів приблизно на тиждень зупинилось виконання деяких замовлень. Вори, у свою чергу, зможуть отримати за це максимум півтори-дві штуки зелених за пару материнок і ноутбучні винчестери. Комплекси - надто спеціальна штука, та й працювати з ними без спеціального програмного забезпечення неможливо. Ми попередили своїх людей на радіоринку та харківському на той випадок, коли щось з нашого обладнання там спливе, віддали ментам всі серійні номери зниклого, які змогли знайти.

Менти по приїзду спробували відкатати пальці, але виявилось, що вори працювали в резинових рукавицях. Для того, щоби попасти всередину вони витягнули решітку та вдавили одну зі створок металопластикового вікна всередину. Хазяйці на замітку: за словами ментів, металопластик відкривається всередину за кілька секунд при наявності відповідного досвіду. Тож не залишайте вікна без решіток.

Тепер у вівторок будемо збирати документи на зникле обладнання і передавати ментам, ставити офіс на охорону і виписувати пі$%юлю директору за недбале виконання службових обов'язків.

Придбав собі нову іграшку: MacBook Pro в конфігурації 15", 2.5GHz, Mac OS X Leopard. Дві доби продовбався, щоби налаштувати робоче оточення: те, що на фрє є абсолютно природнім, - gcc, grep, sed, awk, perl, і ще ціла купа корисних речей, - тут доводиться ставити додатково: після реєстрації на ADC дають скачати XCode, в комплекті з яким ставиться все потрібне. Дуже не вистачає BSD-шного /usr/share/mk з усіма смачностями звідти. GNU make не люблю.

З труднощів ще - клавіатура. По-перше, я дуже звик до IBM-івської на своєму ThinkPad'і. По-друге, зліва від пробілу не три клавіші, а чотири - спочатку важко попадати. Але це тимчасова проблема, пристосовуєшся швидко. Майже на все можна налаштувати гарячі клавіші, крім старту applications. Але, за слухами, і це вирішується за допомогою додаткових програм.

В результаті в мене получилось нормальне юніксове оточення з людським обличчям.

Далі буде.

Про Вісту: це жахливо. Мене ледь не знудило :-)))))))

[youtube=http://www.youtube.com/watch?v=sPv8PPl7ANU&hl=en]

Пару тижнів тому The Wall Street Journal в статті про кіберзлочинність дала лінк на сайт, де за даними якихось експертів з безпеки, торгувались дампи кредитних карток. Нічого особливого. Але пару днів тому та-ж WSJ надрукувала статтю, що починалась словами: "Вони що, страх загубили?!". Як деякі одразу могли здогадатись, власники сайту вирішили скористатись шаровим таргетним трафом і поклали собі на головну сторінку ... експлойт! :-)))

Друга стаття з'явилась після того, як якась маловідома антивірусна компанія "Сімантек" вирішила попіаритись і повідомила поважну газету про цю сумну подію. Щоправда, власники сайту спрацювали не дуже добре: експлойт пробивав тільки старі версії Internet Explorer'а.

Варіантів три:


  1. Все чесно: експерти з безпеки не мають жодного відношення до сайту злочинців. Тоді злочинці - молодці, бо змогли швидко відреагувати на нову можливість, а маловідома антивірусна компанія молодці, бо добре працюють.

  2. Експерти з безпеки є власниками сайту. Тут виникають два підваріанти: а) сайт - приманка, а експерти хотіли показати, що вони здали реальний сайт кіберзлочинців та б) експерти - самі кіберзлочинці. В обох випадках маловідома антивірусна компанія - молодці.

  3. Сайт - приманка, розміщення експлойта з наступним повідомленням - піар ход. Тоді очевидно, що власником сайту є Сімантек, але неочевидна роль експертів.

Насправді, варіантів можна накидати іще як мінімум стільки-ж, я просто привів найцікавіші.

Припустимо, в нас є клас A, в якому визначена функція f, що приймає єдиний параметр - поінтер на об'єкт класу B. Плюс, в нас є вектор вказівників на B. Визначено це все десь так (структури, щоби не писати private/public):
    struct B;
    struct A
    {
        int f(B* b)
        {
            // щось робить
        }
    };
    A a;
    std::vector<B> bvec;
Припустимо, над значеннями вектора треба провести якусь дію. Основних варіантів два:
  1. Класичний, процедурний:
        for(std::vector<B>::iterator vi = bvec.begin(); vi != bvec.end(); vi++) a.f(*vi);
    
  2. Функціональний, з використанням узагальнених алгоритмів з STL:
        std::for_each(bvec.begin(), bvec.end(), a.f);
    
Другий, очевидно, виглядає краще, плюс обіцяє різні смачні можливості. Єдина проблема з ним в тому, що він не працює: конструкція a.f має невизначений тип. Але-ж функцію-член класу туди передати хочеться! Що робити? Жодних проблем: треба загорнути об'єкт та його функцію в об'єкт з визначеним operator (). А тоді передати цей об'єкт в будь-який узагальнений алгоритм STL, який приймає на вхід функцію одного аргумента. Вчора мені ну дуже закортіло передати в std::for_each() функцію-член, тож за пів-годинки на коліні народився отакий шаблон та продукуюча функція до нього. З використанням цього шаблону результуючий код виглядає так:
    std::for_each(bvec.begin(), bvec.end(), ptm_functor(a, &A::f));

Хто хоч раз стикався з дата-центрами знає, що це такі великі нагрівальні прибори. Дуже мала частина енергії, долі відсотка буквально, що підводиться до так званих "обчислювальних машин" іде на виконання обчислень. Переважна-ж частина іде на нагрівання приміщення. Причому ці істоти, обчислювальні машини, можуть жити тільки в невеликому температурному діапазоні, який приблизно дорівнює діапазону, в якому може жити людина. При виході з цього диапазону машини зупиняються і перестають нагрівати помешкання, в яких стоять.

Але ми хочемо, щоби обчислення не зупинялись. Тож доводиться робити системи охолодження. Тобто, ми спочатку витрачаємо кіловати на те, щоби нагріти примішення, а потім іще кіловати на те, щоби його охолодити. Неефективно.

Швейцарці теж так подумали. Подумали-подумали і вирішили теплом від дата-центрів басейни нагрівати.

Прочитав чергову статтю, про те, як Росія має з нами воювати, якщо ми і далі будемо хотіти в НАТО. Трошки цитат:

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

... и никакое НАТО Украину не спасет...

У Украины нет и не может быть никаких «внутренних дел», отдельных от России. Мы братские народы, и их внутренние дела — это и наши дела тоже.

Виділення моє.

Спитав дружину, що вона думає з цього приводу і вона мені видала абсолютно геніалне пояснення: уявіть собі жінку, що розійшлась з чоловіком. Ну розійшлась і розійшлась. І все ніби більш-меньш нормально. Аж раптом він знаходить іншу жінку і вирішує знову одружитись. І от тут все і починається: скандали, "не дам дитину", вимоги аліментів через суд. Короче, починають лізти дремучі ревнощі. А коли "баба дура не тому, що дура, а тому,що баба", раціональна аргументація стає неефективною. Залишається лише надія, що перебіситься і з часом перестане морочити голову.

У випадку з реальними жінками, як показує практика, треба якомога швидше закріплювати нове положення речей. Тоді через якийсь час все приходить в норму.

Другу добу сиджу вдома з простудифілісом, робити нічого. Вирішив помаятись дурнею.

Оскільки мене все муляють думки про купівлю нового Маківського ноута, вирішив розібратись, чи можна нормально працювати під Леопардом. Виявилось - можна: достатньо зареєструватись на епловому порталі для розробників і отримуєш доступ до як мінімум звичного набору інструментів розробки під *nix. Плюс купа apple-specific інструментів і документації. Скачав, поставив, працює.

Для повнти картини поставив консольний vim і налаштував під себе термінал. XTerm у виконанні Apple красив і легко налаштовується. OpenSSH, OpenSSL теж в наявності. Короче, поки все чудово добре. Не вистачає системи портів, але ніби і така штука під леопард існує.

Потім вирішив нарешті зарядити свій я-мобілко рінгтонами. Напряму, як відомо, вони не робиться: iTunes дозволяє конвертувати композицію в рінгтон тільки за виконання двох умов:


  • композиції була куплена на iTunes;

  • на композицію було отримано спеціальний дозвіл від правовласника.


В мене-ж вся фонотека... Ну короче не на айтюнсі куплена.

Але все виявилось просто. В мене спрацювала наступна послідовність дій (Mac Mini):


  1. обираємо композицію з фонотеки

  2. конвертуємо її в AC3

  3. свіжоотриманий файл виносимо на десктоп

  4. міняємо розширення m4a на m4r; іконка файла міняється на рінгтонову

  5. вбиваємо ac3-файл з бібліотеки iTunes

  6. двічі клацаємо на нашому новому m4r-файлі

  7. вуаля: iTunes копіює новий рінгтон до себе в бібліотеку і починає його грати

Висновок: під Leopard'ом життя існує.

Щодо вчорашнього:

Мене попросили продовження не писати. Вибачайте.

В мене є сильна підозра, що нєкто Станіслав Речинський, автор цієї статті(також тут) - підарас. Подробиці - завтра.

День почався весело: попи пішли в Київраду за списками комуністів. Тримайся хто може :-)

В принципі, Мак мені подобається. Настільки, що я всерйоз думаю про MacBook Pro. Але є пара маленьких "але".

Наприклад, сьогодні з ранку боровся з укр. розкладкою: яблучники вирішили, що вони найрозумніші і поміняли місцями літери "і" та "и" в українській розкладці. "Поміняли" - означає, що вони поставили "и" туди, де в російській розкладці знаходиться "ы". Дратувало дико.

Сьогодні нерешті вирішив розібратись і розібрався. Все виявилось достатньо просто: скачав Ukelele, взяв з його дистрибутива файл системної української розкладки і поміняв місцями "неправильні" літери. В результаті получився файлік Ukrainian2.keylayout, який разом з Ukrainian2.icns треба покласти в ~/Library/Keyboard Layouts/. Після чого ідемо в Prefrences -> International -> Input Menu, де вибираємо Ukrainian2 замість штатної Ukrainian і рестартуємо машину (можливо, запрацює і без рестарта, але я не впевнений, у мене не запрацювало). Вуаля.

Кореспондент цитує нєкоєго Густова:

"Вступление в НАТО - это переход на другое оружие, на другой калибр. Это разрушение самой развитой части украинской экономики - военно-промышленного комплекса, где существуют наиболее тесные связи с экономикой России", - сказал сенатор.
Он подчеркнул, что в случае вступления Украины в Североатлантический альянс России придется уйти из Севастополя в 2017 году. "Уже сейчас пошли разговоры, что надо инициировать процесс ухода российских кораблей из Севастополя", - отметил Густов.

Преша частина цитати - майже відкрита брехня і одночасно натяк на першу вигоду для України від вступу в НАТО: головні партнери України по військовим проектам сьогодні - Китай, Індія, Пакістан. Для Росії зараз хіба-що київський "Радар" щось робить. І то - силами максимум пари цехів (все інше в оренду сдали, сцуки). Я сумніваюсь, що нашу зброю чекають в країнах-членах НАТО з відкритими обіймами, але якийсь спектр обладнання ми туди точно зможемо поставляти при наших цілком конкурентоспроможних цінах.

Друга-ж частина цитати... Ну я прямо не знаю, що тут сказати: виявляється, якщо ми не вступимо в НАТО, то вони НЕ ЗБИРАЮТЬСЯ йти з Севастополя в 2017 році. Єбанутись можна. Який сюрприз!

На місці СБУ я-б розцінював цю фразу як пряме послання людям в Україні, які прямо зацікавлені в присутності іноземної військової бази на нашій території. В першу чергу це люди, які орендують землі та приміщення в ЧФ РФ в Криму.

PS: ходив на форум sevastopol.info в розділ "Політика". Я знаю, що треба робити!

Наші дуполизи примудрились зупинити пів-міста, колега так і не попав сьогодні в офіс.

А в мене виникло запитання: для чого Україні в НАТО? Поясніть, будь-ласка, хто в курсі.

Сторінки

Про цей Архів

This page is an archive of entries from April 2008 listed from newest to oldest.

March 2008 is the previous archive.

May 2008 is the next archive.

Свіжі записи можна подивитись на головній сторінці. Все інше - в архіві.