to post messages and comments.

«Вчера на заседании комитета Заксобрания по госполитике депутаты проголосовали за увеличение штрафов за выпас скота в парках, оставление без присмотра домашней птицы и незаконное ношение наград Новосибирской области.»

news.ngs.ru

Захотел законвертить html в pdf, вспомнил про аддон мазилы на базе wkhtmltopdf, который ништяком конвертит. Вот казалось бы и профит, но капец лень мазилу запускать, столько вкладок, аддонов, пока стартанёт. Толи дело по Unix way'ю в консольке жмяк и пэдэфка!
В репах по традиции slowpoke-версия, конвертит в адовый трэш.
В PPA загробное эхо падших билдов.
OK, скомпилить! Вызов принят! Исходник весит всего 130КБ — это будет быстро!
$ ./build_linux.sh linux-amd64
...
скачать 2ГБ
...
на выхлопе ещё +1,5ГБ...
...
И вот он профит — 30МБ бинарника! Так вот ты какой, Unix way!!1

"Стойкая, пропитанная водкой когорта"
"В начале 30-х годов на северо-западе Китая случилась драма, достойная пера не то Шекспира не то Майн Рида. Клубок политических интриг вовлек Красную армию, Белую гвардию, неблагородных разбойников, порочных чиновников, борцов за мировой ислам, борцов за мировую революцию, армию косплееров и в качестве вишенки на торте товарища по имени Фу Дзи Хуй, которого большинство из вас наверняка знает..." (с) p-chuchundrin.livejournal.com
via @Dant в #2637250

Следователи допрашивают выживших после теракта пассажиров, изымают записи видеокамер
«Состояние пострадавших в настоящее время по преимуществу средней тяжести, есть, однако, и крайне тяжелые», — сказал официальный представитель Минздрава РФ Олег Салагай в эфире телеканала «Россия 24».
Гондоны, блядь, сами всё проворонили, так теперь еще мучают контуженных, шокированных, истекающих кровью людей.

По рсс приползло прекрасное (или ужасное, как посмотреть).
Люди делают в Objective-C вызов метода через точку. К примеру, a.plus(b) вместо [a plus:b] :
Заводят рид-онли свойство plus, которое возвращает блок (ака лямбда), который зовет у self метод plus: с переданным параметром.
Получается (a.plus)(b)

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

% git show --stat c61bbeb | tail -5
lib/weber/i18n/localization/locale/zh_Hant_HK.json | 53 +++
lib/weber/i18n/localization/locale/zh_Hant_MO.json | 53 +++
lib/weber/i18n/localization/locale/zh_Hant_TW.json | 53 +++
lib/weber/i18n/localization/locale/zu_ZA.json | 53 +++
476 files changed, 25627 insertions(+), 57 deletions(-)

…или о вреде генераторов.

код из тестового:

class Base {
public:
  virtual ~Base() {}
  virtual void print(std::ostream &) const = 0;
};

typedef Base * PBase;

class Derived {
public:
   Derived(int data) { this->data = data; }
   virtual ~Derived() {}

   virtual void print(std::ostream & s) 
   { s << data; } 
private:
   int data;
};

void print_it(std::ostream & s, Base * p) { p->print(s); }

int main() {
  print_it(std::cout, PBase(new Derived(5)));
}

Если бы не отсутствие const у Derived::print, я бы и не заметил...

Вместо выполненного тестового задания претендент прислал "портфолио" — .exe c egavga.bgi, скомпиленный семь лет назад.
PS. К сожалению классы замедляют работу программы, поэтому я применял тип структура.

"Сопроводительное письмо" к тестовому заданию.
~25 предложений: 4 заканчиваются точкой. 6 — восклицательным знаком.
Остальные 15 — тремя восклицательными !!!