Posts in Category: SomeShit

Boost::Spirit и друзья. Краткий экскурс. Часть 1.

Знакомство с фреймворком Spirit::Qi.

Несмотря на то, что данная статья имеет в большей степени ознакомительный характер, предполагается, что читатель знает (ну или хотя бы краем уха слышал) о таких вещах, как C++, шаблонное метапрограммирование, Boost, в противном случае горите в аду, сраные грешники возникнут проблемы с пониманием, на что мне совершенно будет наплевать — я же предупреждал, курите маны, если уж на то пошло. Впрочем, в некоторых местах всё же будут оставлены некоторые уточнения по той или иной теме, где я сочту нужным остановиться и рассказать чуть поподробнее о том, что вообще происходит.

Укрощение Снежного Барса

Кстати я тут недавно мак ставил.

WinC++ ??

Как известно, последнее время MSFT больше всего уделяет внимание дотнету и таким языкам, как C# и F#.

Управляемый код и CLR — это, конечно, хорошо, но все же потери производительности заметны, особенно на каких-нибудь мелких утилитах. В то же время старый добрый Visual C++ начинает потихоньку устаревать, даже нормального IntelliSense нет.

Но у нас еще есть надежда! Последнее время ходят слухи про какой-то Windows C++.

Скорее всего, в Visual Studio 2012 нас ждет полная поддержка стандарта C++0x (его утвердят к тому времени, теперь уж точно) и замена MFC с новым названием, более удобная и современная (с поддержкой разметки XAML). Для пущей важности все это назовут Windows C++ и будут активно продвигать как лучшее средство для разработки под Windows (кругом обучающие статьи, примеры и т.п., MS это умеет). Конечно, .Net никуда не денется, но он будет позиционироваться как средство разработки масштабных проектов, не критичных к производительности.

Подробности и факты.

Внимание, апдейт (17.05.2011)! На проходящей конференции TechEd рассказали про новую студию (vNext) , и значительная часть уделяется плюсам! Подробно можно почитать эту простыню (32 стр на английском) и посмотреть скриншотики.

Уже точно утверждены фичи:

  • Продвинутый статический анализатор кода (даже несколько штук)
  • Все архитектурные возможности студии работают с плюсами (диаграмы, зависимости и т.д.)
  • Поддержка С++ во всех инструментах тестирования и создания метрик

После такого написанное выше кажется все более вероятным…

Введение в twitter

Если вы уже активно пользуетесь Твиттером, можно дальше не читать.

Итак, Твиттер — это вроде как тоже социальная сеть, чем-то похож и на стены Вконтакте и на блоги и на смс. От англ. tweet – чирикать. Поэтому я бы перевел twitter как «чирикалка».

Сложно объяснить, что это, главное втянуться.

Twitter − самый быстрорастущий сайт. Уже стало традицией на всех мероприятиях размещать большие экраны с твит-лентой.

Пользуясь Твиттером, ты мгновенно получаешь информацию об интересующих событиях (по хэштегу #) или о людях (достаточно зафолловить, даже у Медведева есть твиттер). @ перед ником означает обращение, такие твиты читают быстрее всего и они приходят даже если собеседник не фолловит тебя. Видя такие сообщения у других, можно посмотреть, в ответ на что они.

Вообще сложно все это объяснить, главное попробовать и втянуться. Смотрите, кого я читаю, а кто — меня. Выбирайте тех, кто понравится, пишите сами. Уверяю, это гораздо интереснее тухлых вконтактиков.

По клиентам могу посоветовать MetroTwit, но приятнее всего сидеть с мобильника.

P.S. Русский язык появился совсем недавно, follow перевели как «читать», что не совсем верно на мой взгляд. Поэтому я иногда использую слово «фолловить».

P.P.S. Мои свежие твиты можно прочитать в твит-ленте справа.

Follow me, guys!

Microsoft купил Skype

Кто?!

Microsoft. Кроме него, на скайп зарились:

  • Google (но ему особо не надо, есть Google Voice)
  • Facebook (ему очень надо, но так даже лучше)

Facebook?!

Конечно. Они активно развивают facebook chat, но без p2p технологии типа скайпа им не потянуть такую нагрузку (более 600 млн. пользователей!).

Также очень вероятна интеграция фейсбуковской валюты и сервиса SkypeOut.

А причем тут MS?!

Microsoft является инвестором в Facebook.

А им-то зачем?!

Ну как же.

  • У Apple есть Facetime
  • У Google есть Google Voice
  • У MSFT…

Особенно важно наличие подобного сервиса в мобильном сегменте. Без своего facetime у WP7 нет шансов.

А скайп что выиграл?!

$8,5 млрд. Собственно продал он себя из-за того, что сделал ставку на платные видеоконференции и обосрался.

Серьезный подход

Видел на Оверклокерах статью с описанием самодельной системы охлаждения. Такой серьезный подход в любом деле не помешает. Наслаждайтесь.

История одного байта

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

Мы решаем задачи на acmp.ru, но вы не подумайте, что все просто. На этом сайте рейтинг по длине кода, и тысячи кододрочеров упихивают настоящие шедевры в пару сотен знаков. Это на все про все. Переменные, там то да се… Представили, да? Например, циклы зачастую пустые, а весь сок в самом заголовке. Все переменные непременно должны быть по одной букве. Вы проникаетесь потихоньку? Коды таких игрушек вылизываются так, что вам и не снилось, исходники переписываются далеко не один раз. Мне мало просто решить задачу. Я должен впихнуть ее в эти чертовы байты и стать первым! Ограничение по переменным, по размеру кода в целом, по размеру каждой процедуры и по числу вызовов. Вы думаете это все? ;-) H-е-ет, дорогие мои. Существуют еще десятки способов укоротить код, но рассказывать я их не буду, это личное.

Любой средней руки программер, поставь его в подобные условия, застрелится на второй день. Вообще, по моему убеждению, парни на acmp.ru имеют стальные нервы и неукротимую волю к победе. Мы редко общаемся с обычными программерами – нам, в общем, не о чем разговаривать. И не потому, что мы снобы или гордецы. Совсем необязательно. Нам трудно представить себе программирование, когда код не ограничен по объему. Что-то непонятно? Напиши комментарий. Захотел – написал еще пару функций с говорящими названиями. Это как разные планеты, и я надеюсь, вы поняли, почему.

Это как красивый белый океанский круизер в бескрайних океанских просторах, плыви куда хочешь. А вы попробуйте на нем в финских шхерах порулить. ;-) Или вдевать нитку в иголку среди ночи. Причем, черную нитку.

Жизнь — дерьмовая штука

По крайней мере, так считают многие «взрослые» люди, с которыми мне довелось общаться. Они постоянно жалуются на свою работу, неудовлетворительные отношения и раздолбаев-детей, которые никак не хотят становиться такими, какими хотят их видеть родители. Жизнь для этих людей — это бесконечная карусель разочарований, неприятностей и несбывшихся надежд. Они встают рано утром с больной головой, заливают в рот пару литров кофе и едут на работу в состоянии, которому позавидовали бы самые отъявленные зомби. Они ненавидят свою работу и считают, что их занятия бессмысленны и никому не нужны. Но, не смотря на это, они продолжают делать эту работу, день за днём, год за годом. Они продираются сквозь собственную жизнь, надеясь, что всласть поживут потом, когда отработают 10-20-30 лет. Так вот, это всё херня. Когда вам будет пятьдесят, вы настолько устанете от такой жизни, что единственным вашим желанием будет лечь и сдохнуть. Когда вы выйдете на пенсию, вы не поедете в Африку охотиться на львов, потому что солнце плохо сказывается на вашем давлении. Вы также не поедете на Северный полюс, потому что у вас артрит, и холод — не лучшее для него лекарство. Южный полюс отпадает ещё и потому, что вы недолюбливаете пингвинов, что неудивительно, учитывая ваш 30-летний стаж работы сисадмином. Так что же вам остаётся? Поездки на дачу и вечера в уютной компании телевизора, вот что. Прожив 30 лет в постоянной борьбе с самим собой, у вас просто не останется сил на то, чтобы оторвать задницу от дивана.

А теперь подумайте об этом. Вы действительно хотите для себя такой жизни? Если вы не из тех странных людей, которые наслаждаются своим горем и ничтожностью, то ответ, скорее всего, будет «Нет». Но в таком случае, позвольте спросить: какого хрена? Почему вы продолжаете нарезать круги по одному и тому же маршруту, который в итоге приведёт вас к деградации и саморазрушению? Чего вы ждёте? Чёртову волшебную фею, которая принесёт вам эликсир счастья? Знака свыше? Тогда поздравляю: тот факт, что вы сейчас читаете этот текст, и является таким знаком. Усатый бог наконец-то выделил минутку в своём плотном графике, чтобы взглянуть на вашу никчёмную жизнь. И знаете что? Ему ни разу не нравится то, что он видит. Да что уж там, ему кажется, что вы просто эпический идиот, который продолжает мучить сам себя и не делает ровным счётом ничего для того, чтобы что-то изменить в своей жизни.

Потому что это именно то, в чём заключается жизнь — изменение. Посмотрите вокруг: всё меняется. Деревья вырастают, люди рождаются и умирают, взрываются атомные электростанции… Так почему же вы застряли в бесконечном цикле? Потому что изменение — штука непростая. Гораздо проще сидеть в своей зоне комфорта и обвинять во всём обстоятельства и четырёхмерных ящериц. Однако вы должны понять одну очень простую штуку: за всё надо платить. И в данном случае ценой будет ваша собственная жизнь. Если вы спустите её в унитаз, второго шанса уже не будет. Вы не респавнитесь на ближайшем кладбище и не попадёте в какой-то там загробный рай, где вас будут ждать блондинки с четвёртым размером и бесконечные запасы пива. На самом деле, загробный мир — это всё та же идея «жизни на пенсии», доведённая до маразма. С тем только отличием, что здесь «выход на пенсию» означает смерть, а это, по словам очевидцев, не очень-то весёленькая штука.

Так зачем я тут распинаюсь? Жизнь — дерьмовая штука, и она будет такой же дерьмовой после того, как вы умрёте. Ну может чуть-чуть более дерьмовой, если вы были действительно хорошим парнем. Она не зависит от вас, и, как бы вы не пыжились, вам не изменить саму жизнь. Дети в Африке всё так же будут голодать, а продажные чиновники — покупать яхты на ваши деньги. Всё, что вы можете изменить — это своё отношение к жизни, и понять, что же на самом деле для вас важно: изо дня в день впахивать на нелюбимой работе с призрачной перспективой абстрактной «пенсии», или же что-то другое. Вы можете хотя бы попытаться изменить ход своего маленького кусочка жизни и сделать его немного лучше. Я не призываю вас прямо сейчас встать из-за стола, напиться до беспамятства и проснуться в тундре в обнимку с медведем. Всё, что вам нужно сделать — это взглянуть на свою жизнь глазами другого человека. Без дураков, просто взять и посмотреть, будто это не вы, а сосед дядя Паша. Если у вас возникло ощущение: «Блин, вот же ж идиот-то!», поздравляю. Всё, что вам осталось сделать — это начать потихоньку вносить мелкие изменения.

Выключить комп и лечь спать в 11 вечера для начала.

Сломанный телефон

Клемент Валла провел эксперимент: случайные люди за 2 цента должны были повторить проведенную от руки линию предыдущего человека.

Кроме красивых картинок, это ещё и отличная демонстрация, как умножаются ошибки при передаче информации  (например, при распространении слухов), особенно если в цепочке присутствуют тролли.

Участников находили через сервис Mechanical Turk.

Люди при передаче «знания» играют большую роль. Чаще – негативную. Учитель, рассказывающий об «теме икс», примешивает к материалу значительную часть индивидуальности. Немного иначе понимает, немного иначе интерпретирует, немного иначе рассказывает. Может быть, делает это даже лучше первоисточника. Но чаще всего – значительно хуже. Иначе. Не так, как первоисточник, который он пытается сымитировать.

Терминалы воруют ваши деньги

На терминалах QIWI обнаружили троян. Вмешиваясь в работу процесса maratl.exe, запущенного в операционной системе терминала Windows, он может подменять номер счета, на который пользователь осуществил платеж.

Заражение терминала может происходить через USB-флешку. Как только такая флешка подключается к терминалу (например, обслуживающим персоналом), происходит автозапуск бэкдора BackDoor.Pushnik, представляющего собой вредоносную программу в виде исполняемого файла, созданного в среде Delphi (!!!). В дальнейшем BackDoor.Pushnik получает с сервера первого уровня конфигурационную информацию, в которой присутствует адрес управляющего сервера второго уровня. С него, в свою очередь, исходит задача загрузить исполняемый файл (троянскую программу Trojan.PWS.OSMP) с третьего сервера.

Чуваки из «Доктор Веба» обещали почистить, но сами знаете…

Итак, мои рекомендации юзерам терминалов:

  1. никогда не выкидывайте чек до поступления бабла на счет
  2. в случае чего качайте права
  3. после поступления денег чек лучше мелко порвать или сжечь
  4. уничтожайте всех дельфистов в зоне досягаемости
  5. ???
  6. PROFIT!