Сравнительно недавно была статья «Полуавтоматическая регистрация юнит-тестов на чистом С», в которой автор продемонстрировал решение задачи с использованием счётчиков из Boost. Следуя этому же принципу, была предпринята (успешная) попытка повторить данный опыт уже без использования Boost из соображения нелогичности наличия в проекте на C зависимости от Boost, да ещё и в таком небольшом объёме. При этом в тестах присутствовали вспомогательные директивы препроцессора в большом количестве. И всё бы так и осталось, но практически на завершающей стадии был найден альтернативный способ регистрации, который позволяет полностью избавится от дополнительных действий. Это C89-решение для регистрации тестов и чуть более требовательное к системе сборке решение для регистрации наборов тестов.
User
Фильм «Игра в имитацию»: криптография, Энигма и Алан Тьюринг
1 min
58K5 февраля 2015 года на экраны кинотеатров РФ выйдет замечательный фильм The Imitation Game («Игра в имитацию»), если его не запретит Госкомонадзор или другой цензурный орган.
Фильм снят по книге Эндрю Ходжеса «Алан Тьюринг: Энигма» и описывает жизнь и работу знаменитого английского математика Алана Тьюринга, который помог взломать код немецкой шифровальной машины Энигма во время Второй мировой войны.
+25
В открытом доступе появились дневники Василия Мишина
2 min
13KВасилий Павлович Мишин — наверное, самый критикуемый из патриархов советской космонавтики. Он познакомился с Сергеем Королёвым ещё в 1945 году в составе специальной группы по изучению трофейных ракет Фау-2. Василий Мишин участвовал в создании советских баллистических ракет Р-1, Р-2, Р-5, Р-7, был первым заместителем Королёва в ОКБ-1. А после смерти Сергея Павловича голосованием заместителей он был почти единогласно избран главным конструктором и руководителем ОКБ-1, значит, пользовался доверием и уважением коллег. Однако именно на время его руководства приходятся самые трагические неудачи советской космонавтики — гибель Комарова на «Союзе-1», провал советской пилотируемой лунной программы, гибель Добровольского, Волкова и Пацаева на «Союзе-11».
+42
Обзор беспроводного картридера Kingston MobileLite Wireless G2
3 min
11KМобильность — норма жизни. Бесполезно опровергать утверждение о том, что все больше людей стремятся к тому, чтобы быть на связи постоянно, иначе чем объяснить постоянный рост продаж смартфонов, рост количества социальных сетей (в том или ином виде), рост количества программ для общения. Лайк, шейр, репост — это все так знакомо, все так привыкли делиться чем-то в Интернете, да что там говорить, вы и сами сейчас наверняка думаете — поставить плюс за статью или минус.
+10
Software renderer — 1: матчасть
29 min
84KПрограммный рендеринг (software rendering) — это процесс построения изображения без помощи GPU. Этот процесс может идти в одном из двух режимов: в реальном времени (вычисление большого числа кадров в секунду — необходимо для интерактивных приложений, например, игр) и в «оффлайн» режиме (при котором время, которое может быть потрачено на вычисление одного кадра, не ограничено настолько строго — вычисления могут длиться часы или даже дни). Я буду рассматривать только режим рендеринга в реальном времени.
У этого подхода существуют как недостатки так и достоинства. Очевидным недостатком является производительность — CPU не в состоянии конкурировать с современными видеокартами в этой области. К достоинствам стоит причислить независимость от видеокарты — именно поэтому он используется как замена аппаратного рендеринга в случаях, когда видеокарта не поддерживает ту или иную возможность (так называемый software fallback). Существуют и проекты, цель которых — полностью заменить аппаратный рендеринг программным, например, WARP, входящий в состав Direct3D 11.
Но главным плюсом является возможность написания подобного рендерера самостоятельно. Это служит образовательным целям и, на мой взгляд, это — самый лучший способ понять лежащие в основе алгоритмы и принципы.
Это именно то, о чем будет рассказано в серии этих статей. Мы начнем с возможности закрашивать пиксель в окне заданным цветом и построим на этом возможность отрисовки трехмерной сцены в реальном времени, с движущимися текстурированными моделями и освещением, а так же с возможностью перемещаться по этой сцене.
Но для того, чтобы вывести на экран хотя бы первый полигон, необходимо освоить математику, на которой это построено. Первая часть будет посвящена именно ей, поэтому в ней будет много различных матриц и прочей геометрии.
В конце статьи будет ссылка на гитхаб проекта, который можно рассматривать как пример реализации.
У этого подхода существуют как недостатки так и достоинства. Очевидным недостатком является производительность — CPU не в состоянии конкурировать с современными видеокартами в этой области. К достоинствам стоит причислить независимость от видеокарты — именно поэтому он используется как замена аппаратного рендеринга в случаях, когда видеокарта не поддерживает ту или иную возможность (так называемый software fallback). Существуют и проекты, цель которых — полностью заменить аппаратный рендеринг программным, например, WARP, входящий в состав Direct3D 11.
Но главным плюсом является возможность написания подобного рендерера самостоятельно. Это служит образовательным целям и, на мой взгляд, это — самый лучший способ понять лежащие в основе алгоритмы и принципы.
Это именно то, о чем будет рассказано в серии этих статей. Мы начнем с возможности закрашивать пиксель в окне заданным цветом и построим на этом возможность отрисовки трехмерной сцены в реальном времени, с движущимися текстурированными моделями и освещением, а так же с возможностью перемещаться по этой сцене.
Но для того, чтобы вывести на экран хотя бы первый полигон, необходимо освоить математику, на которой это построено. Первая часть будет посвящена именно ей, поэтому в ней будет много различных матриц и прочей геометрии.
В конце статьи будет ссылка на гитхаб проекта, который можно рассматривать как пример реализации.
+85
Воронежец заключил с банком договор, внеся свои правки, и собирается отсудить 24 миллиона рублей
8 min
477KНаверное, нет человека, которого бы не раздражало, что самые важные пункты в договорах всегда пишутся «мелким шрифтом».
Но, зная об этом, раз за разом многие люди подписывают бумаги, не прочитав их внимательно, и платят комиссии, о которых не догадывались.
42-летний житель Воронежа нашел остроумный способ обратить эту особенность в свою пользу и теперь, пользуясь невнимательностью банкиров, собирается отсудить у них 24 миллиона рублей.
Но, зная об этом, раз за разом многие люди подписывают бумаги, не прочитав их внимательно, и платят комиссии, о которых не догадывались.
42-летний житель Воронежа нашел остроумный способ обратить эту особенность в свою пользу и теперь, пользуясь невнимательностью банкиров, собирается отсудить у них 24 миллиона рублей.
+753
Десять книг о космонавтике
14 min
38KЭтот список возник «благодаря» нескольким обзорным топикам в блоге «Космонавтика». Любовь Хабра к всему космическому привела к тому, что даже откровенно бредовый поток мыслей, написанный Шляхтичем многие приняли за чистую монету — и это далеко не единственный (хотя и наиболее вопиющий) пример того, о чём я пытаюсь сказать.
Раз Хабр — тусовка технарей, людей, как правило, мыслящих критически, значит дело в недостатке информации. Поэтому я принялся за подготовку списка литературы, рассказывающей о прошлом и настоящем космонавтики. Но в процессе подготовки у меня возникло два затруднения.
Первое: я — всего лишь фанат всего космического, и моё мнение о качестве литературы — это только моё мнение, которое можно и оспорить.
Второе: несмотря на немалое количество прочтённых мной книг, ещё большее их количество остаётся за бортом, лишая меня всей полноты обзора.
Оба этих затруднения я постарался решить тем, что привлёк к дополнению и обсуждению списка ЖЖ-пользователя ___lin___ (ссылка ведёт на его жж-профиль, где можно прочесть о том, кто он такой, и чем знаменит). ___lin___ в помощи не отказал, за что ему космическое спасибо. Очень рекомендую ознакомиться с его проектом «Великое Кодирование», посвящённому переводу в цифровую форму редких книг околокосмической тематики.
Раз Хабр — тусовка технарей, людей, как правило, мыслящих критически, значит дело в недостатке информации. Поэтому я принялся за подготовку списка литературы, рассказывающей о прошлом и настоящем космонавтики. Но в процессе подготовки у меня возникло два затруднения.
Первое: я — всего лишь фанат всего космического, и моё мнение о качестве литературы — это только моё мнение, которое можно и оспорить.
Второе: несмотря на немалое количество прочтённых мной книг, ещё большее их количество остаётся за бортом, лишая меня всей полноты обзора.
Оба этих затруднения я постарался решить тем, что привлёк к дополнению и обсуждению списка ЖЖ-пользователя ___lin___ (ссылка ведёт на его жж-профиль, где можно прочесть о том, кто он такой, и чем знаменит). ___lin___ в помощи не отказал, за что ему космическое спасибо. Очень рекомендую ознакомиться с его проектом «Великое Кодирование», посвящённому переводу в цифровую форму редких книг околокосмической тематики.
+35
То, чего еще никто не писал про Нокиа, Элопа и горящую платформу
40 min
549KВзявшись за этот пост, автор полностью отдает себе отчет. И в том что «набило оскомину». И что «только ленивый не кинул камень». И про то что «хватит уже, достали». Однако, вдоволь начитавшись доморощенных и не очень аналитиков, автор решил все-таки выразить собственное мнение, которое отличается от того общепринятого, что с некоей мазохистской истомой доселе перепечатывалось здесь и тут различными авторами, интерпретаторами и переводчиками. Вероятно кому-то будет интересно его прочитать.
Традиционно, для тех кто не любит много буков, краткие (более-менее) тезисы:
Все это в деталях — под катом. Предупреждаю что клевых картинок там нет. Сплошное графоманство и ёрничанье.
Традиционно, для тех кто не любит много буков, краткие (более-менее) тезисы:
- Будучи долгое время лидером на рынке, Нокиа сильно расслабилась и загадила свою внутреннюю инфраструктуру бюрократией, чрезмерным аутсорсингом и огромным количеством бесполезной «менеджерской прослойки».
- Будучи долгое время лидером, Нокиа
просралапотратила много денег на ненужные операционные расходы, поглощения никому не нужных фирм и на невменяемую модель аутсорсинга. - Полностью оторвавшись от реальности с уходом Йормы Оллилла, Нокиа, под управлением
гениального юристаCEO Олли-Пекки Каласвуо, потратила кучу денег и усилий на создание бесполезной и неконкурентоспособной сервисной инфраструктуры Ovi. В результате этого, помимо денег, Нокиа потеряла уйму полезного времени, которое можно и нужно было потратить на развитие основного бизнеса — телефонов, софта и т.д. - Бюрократия и непотопляемая менеджерская прослойка в Нокиа, последовательно мигрировала из одного передового проекта в другой, в составе одних и тех же групп лиц, самореплицируясь в виде кучи формальных
дебилопроцессовкомитетов и управленческих групп, немного перетасовываемых с учетом специфики. В итоге именно эта бюрократия убила и Symbian, и Ovi, и MeeGo и остальные попытки догнать уходящий поезд своими силами. - Борьба с бюрократией и прослойкой в Нокиа зашла в полный тупик.
- У
великого CEOЭлопа просто не было другого выхода кроме как прибить всю старую, неповоротливую и прогнившую организацию, путем создания альянса с Майкрософтом и переходом на Windows Phone. Тем самым все старые процессы, компетенции, технологии и самое главное — люди резко стали, что называется, «не в тему». И следовательно тем самым можно было под благовидным предлогом прибить этот табун менеджеров, бесконечно рисующих фэнтезийные роадмапы с единорогами и перекладывающих бумаги с левого края стола на правый. - Новая Нокиа, после 2011 года и старая Нокиа до 2011 года – это две РАЗНЫЕ организации. Их объединяет только общее название и операционка S40 для телефонов Asha.
- Горящая платформа, это не Symbian и не MeeGo. Горящая платформа, это то состояние в которое Нокиа загнали годы расслабленного лидерства и тупоголовые амбиции предыдущего CEO – Олли-Пекки Каласвуо с кликой подкаркивающих вице-президентов.
- С бюрократией и бизнес процессами, имеющимися на 2010 год, Нокиа не спас бы ни Андроид, ни половина населения Бангалора, пишущих на Qt под MeeGo. Даже если бы Apple бесплатно передал Нокиа iOS и все сервисы, то они бы выродились руками всяких Requirement Managerов в типичные Нокийские дизайн-химеры и в итоге загнулись через какое-то время.
- То, что сделал
великий CEOЭлоп – было единственно возможным разумным решением, дающим хоть какие-то шансы на выживание. Вопрос «каким образом он это сделал?», остается открытым, равно как и вопрос «поможет ли это Нокиа?» в итоге. Не следует забывать, что нынешняя Нокиа — это совершенно новая организация, поэтому глупо предполагать, что она разом вернет себе лидерство. Как и всем новым организациям ей придется за это лидерство долго бороться. - Без ошибок и побед Нокиа никогда не было бы ни Андроида, ни Айфона. И Google и Apple тщательно проанализировали достоинства и недостатки более старших конкурентов перед тем как шагнуть вперед.
Все это в деталях — под катом. Предупреждаю что клевых картинок там нет. Сплошное графоманство и ёрничанье.
+462
Мультиварка — умная кастрюля или «не доведенный до ума» гаджет
12 min
638KЭтот пост будет полезен всем, кто хотя бы иногда что-то готовит сам, а также помогает или мешает это делать другим.
Из него можно узнать, что это за гаджет — мультиварка, какие у нее технические возможности и невозможности, внутренность, наружность, достоинства (много) и недостатки (тоже много). Расскажу кое-что и о маленьких мультиварочных хитростях, а также позволю себе общее лирическое отступление о программировании на кухне.
Цель поста — рассказать про мультиварки, как класс объектов, не выделяя особо его представителей, но, чтобы не вести разговор о сферической мультиварке в вакууме, сделаю основным примером разбора мою модель — Panasonic SR-TMJ181.
Те, у кого нет мультиварки узнают, нужна ли она им, но и те, у кого она есть, надеюсь, без новых знаний не останутся.
+223
Загрузочный HDD — Настройка автоподключения дисков в Windows To Go
5 min
26KНе так давно, чисто случайно я узнал, что Windows можно устанавливать и запускать с внешнего USB носителя. Нет, не то что бы я об этом не знал совсем — Windows PE никто не отменял. Но я не знал что существует решение прямо из «коробки» и называется Windows To Go, правда это решение внедрено только в «коробку», на которой написано Windows Enterprise.
После нехитрой установки получаем загрузоный носитель в Windows, которая обладает несущественными ограничениями. С целью безопасности, созданный таким образом, носитель в любой Windows автоматически не монтируется (ему не назначается буква), т.е. он не доступен обычному пользователю. А так же при загрузке с такого носителя не видны внутренние диски компьютера, т.к. они отключены (режим внутренних дисков «Вне сети»).
После нехитрой установки получаем загрузоный носитель в Windows, которая обладает несущественными ограничениями. С целью безопасности, созданный таким образом, носитель в любой Windows автоматически не монтируется (ему не назначается буква), т.е. он не доступен обычному пользователю. А так же при загрузке с такого носителя не видны внутренние диски компьютера, т.к. они отключены (режим внутренних дисков «Вне сети»).
+14
SVG, Iconfonts vs PNG
7 min
50KСтатья по мотивам Изображения в верстке. Хватит это терпеть. Скорее даже по мотивам комментариев к этой статье и в общем реакции хабра на призыв использования векторной графики везде, где можно и действительно нужно.
Признаться, я был немного удивлен реакцией на такие мысли в 2014-м то году. По этому случаю рассмотрим более детально существующие техники работы с иконками.
На текущий момент все более-менее просто. Мы можем верстать иконки с помощью SVG, создавать иконочные шрифты, ну и никуда не делась старая добрая техника с применением растра, в частности PNG. Правда добавились некоторые нюансы с появлением кучи HDPI устройств с совершенно разной плотностью пикселей.
+43
Отложенное чтение: OpenSource-альтернатива
3 min
38KНедавно я открыл для себя удобство отложенного чтения — когда заинтересовавшую статью в сети можно прочитать в любое время, комфортно расположившись c любимым девайсом на диване / пляже / под одиноким деревцем на тропе, ведущей к базовому лагерю у подножья Эвереста. И хотя проприетарных решений для этого хватает (Instapaper, Pocket, Readability), душа настойчиво требовала OpenSource. И вот к какому решению я пришёл после исследования возможных вариантов.
+26
Логирование сообщений с Easylogging++
7 min
22KСистема логирования — незаменимый инструмент для протоколирования работы приложений. Для тех, кто не хочет реализовывать его самостоятельно, на C++ уже существует бессчётное количество готовых библиотек (Log4cplus, Apache log4cxx, Boost.Log и тд.), однако Easylogging++ отличается простотой использования и компактностью, не требует сторонних библиотек или инсталляции. Весь её код содержится в одном единственном заголовочном файле, который просто необходимо включить в код приложения.
Данная статья предлагает краткий обзор функционала Easylogging++ и примеры использования этой библиотеки.
+23
Внутренняя кухня организации PyCon Russia и международные отношения
4 min
17K«Я не хочу, чтобы меня арестовали в России просто за то, что я рассказываю о своей жизни», — эти и другие причины, почему иностранцы отказываются ехать на наши конференции. Под катом – несколько баек из жизни.
+54
Алгоритмы сортировки в виде пошаговой анимации
1 min
65KTutorial
Сортировка последовательности данных — один из столпов компьютерной науки. Проблема в том, как делать сортировку наиболее эффективным образом, и эта задача стоит перед исследователями чуть ли не с первого дня после изобретения компьютера. На сайте sorting.at различные алгоритмы сортировки проиллюстрированы в виде пошаговой анимации, для лучшего понимания принципов их работы.
+23
Жизнь в эпоху «тёмного» кремния. Часть 1
7 min
39KДругие части: Часть 2. Часть 3.
Пока продолжение рассказа о коммуникационных фабриках по не зависящим от меня причинам откладывается, хотелось бы осветить другую тему.
С 8 по 12 октября в Подмосковье проходила крупнейшая в России конференция, посвященная проблемам разработки микро- и наноэлектронных систем. И хоть сама конференция оставила скорее негативное впечатление, но одно из выступлений выделялось из общей массы и, вероятно, будет интересно уважаемым читателям. Речь об аналитическом докладе «Life with «dark» silicon. Power and termal problems in future platforms», который представлял Mike Kishinevsky (Principal Engineer, Strategic CAD Labs, Intel Corp.). Я постараюсь рассказать об основных идеях этого доклада, используя материалы конференции и сторонние источники.
+52
В Англии ты можешь попасть за решётку за хранение шума
3 min
62KTranslation
(прим. переводчика)
Последние дни все обсуждают пресловутый законопроект №89417-6, при этом ругая нашу страну за столь непродуманный закон. Данным переводом (полный заголовок которого чуть ниже) я хочу показать, что не только у нас принимают законы, позволяющие привлечь кого угодно к статье практически на ровном месте. В некоторых странах всё ещё хуже. Гораздо хуже. И будем надеяться, что до нас этот бред не дойдёт.
В комментариях ко вчерашнему посту все удивились тому факту, что в Англии шифрование объявлено вне закона: граждане страны будут отправлены за решётку на срок до пяти лет, если они не смогут предъявить ключ к своим зашифрованным данным.
Последние дни все обсуждают пресловутый законопроект №89417-6, при этом ругая нашу страну за столь непродуманный закон. Данным переводом (полный заголовок которого чуть ниже) я хочу показать, что не только у нас принимают законы, позволяющие привлечь кого угодно к статье практически на ровном месте. В некоторых странах всё ещё хуже. Гораздо хуже. И будем надеяться, что до нас этот бред не дойдёт.
В Англии ты можешь попасть за решётку не только за шифрование данных, но и за астрономический шум.
В комментариях ко вчерашнему посту все удивились тому факту, что в Англии шифрование объявлено вне закона: граждане страны будут отправлены за решётку на срок до пяти лет, если они не смогут предъявить ключ к своим зашифрованным данным.
+140
Microsoft отказывается от SkypeKit и Skype Desktop API
2 min
54KБуквально несколько часов назад на почту упало два письма счастья, имевших большой общий кусок маркетингового текста о том, как скайп хорошо развивается, и как здорово разработчикам будет с ним взаимодействовать через огрызок старого API в виде скайповских URL.
Содержательная же часть заключалась в следующем:
Содержательная же часть заключалась в следующем:
+43
Information
- Rating
- Does not participate
- Location
- Киев, Киевская обл., Украина
- Registered
- Activity