Search
Write a publication
Pull to refresh
3
0
Send message

Динамическое освещение и неограниченное количество источников произвольной формы в 2D

Reading time6 min
Views40K
Продолжая тему велосипедостроения, хочу поделится тем, как я делал освещение в пиксель-арт игрушке.
Особенность этого метода заключается в том, что эти источники света не ограничиваются ни количеством ни формой.


Читать дальше →

ABC-сортировка

Reading time6 min
Views48K

Данная разновидность поразрядной MSD-сортировки «заточена» для строк. Впрочем, алгоритм так назван отнюдь не за лексическую специализацию. Автор Аллен Бичик (Allen Beechick) выбрал название в честь себя любимого, ABCsort расшифровывается как Allen Beechick Character sort.

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

Что касается алгоритма, то это единственно известная мне сортировка, за использование которой её изобретатель требует деньги.
Богоугодная сортировка за 88 у.е.

Пять удивительных математических фактов

Reading time4 min
Views153K
Для начала небольшой спойлер

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

Математика – одна из немногих областей знаний, которая может быть объективно названа истинной, потому что ее теоремы основаны на чистой логике. Но в то же время эти теоремы часто оказываются очень странными и противоречащими интуиции.

Некоторые люди считают математику скучной. Следующие примеры показывают, что она какая угодно, но не такая
Читать дальше →

Использование статических переменных и статическая линковка исполняемых модулей друг в друга

Reading time4 min
Views18K
Всем доброго пятничного вечера!

Сегодня я хочу рассказать о некоторых коварных особенностях статических переменных при неправильной линковке исполняемых модулей. Я покажу проблему из моей реальной практики, которая может возникнуть у каждого.
Разжевываю все довольно детально, поэтому у «бывалых» и красноглазиков может возникнуть ощущение, что я «колупаюсь в песочнице», но это статья не только для них.
Читать дальше →

Сухая вода Novec® 1230 для защиты серверных и не только

Reading time9 min
Views255K
Добрый день, уважаемые хабрапользователи! Вы слышали о компании 3М?

Мы — компания, которая любит технологии и инновации. Думаем, в этом мы схожи с вами. Мы изобрели вещи, которые вы используете каждый день, но, возможно даже не подозреваете об этом! Поэтому мы открываем небольшой цикл статей, посвященных продуктам и технологиям 3М.



Наш первый пост посвящен газовому огнетушащему веществу Novec 1230, его истории и применению.
Рассказ сотрудницы «из первых уст».
Читать дальше →

Google прекращает поддержку браузера IE 9

Reading time2 min
Views51K
Инори Аидзава, официальный талисман Internet ExplorerКомпания Google напомнила пользователям браузера Internet Explorer о действующих правилах, в соответствии с которыми Google Apps гарантирует корректную работу только в последних версиях браузеров. В частности, поддерживается последняя версия Chrome, а также две последние версии Firefox, Internet Explorer и Safari.

В связи с недавним официальным выходом Windows 8.1 и браузера Internet Explorer 11 «за бортом» остаётся третья с конца версия Internet Explorer, то есть IE 9. Хотя IE11 вышел три недели назад, компания Google только теперь официально прекращает тестирование всех своих сервисов под IE9. Таким образом, более половины пользователей Internet Explorer (учитывая тех, кто пользуется IE8 и IE9) остаются в подвешенным состоянии, поскольку они в любой момент при заходе на Gmail или другой сайт Google могут столкнуться с некорректной работой веб-приложения.

В ближайшие дни все пользователи IE9 увидят уведомление при заходе на сайты Google о прекращении поддержки их браузера.
Читать дальше →

Почему Microsoft Internet Explorer 11 — худшее, что могло случиться с нами

Reading time5 min
Views405K


Я давеча написал комментарий о том, что компании Майкрософт давно пора перестать издеваться над веб-разработчиками и перейти на движок Gecko. Многие, видимо, посчитали это неуместной шуткой; тем не менее, это таки вовсе не шутка, а констатация факта. Те, кто с этим не согласен, видимо не пытались ещё разрабатывать под этот замечательный браузер.

Давайте я расскажу вам, какой это замечательный процесс.

Настало время ошеломительных историй

Гик порн 3: Как «открыть» микросхему и что у неё внутри? Советские Z80, TTL логика, FPGA Altera Cyclone I и другие

Reading time4 min
Views76K
Продолжаем ковырять внутренности микросхем. Для тех кто пропустил первые 2 серии — вот раз, вот два.

К553УД1А — один из первых советских интегральных операционных усилителей.
Этот экземпляр был произведен в марте 1978.
Читать дальше →

Астрофотография в каждый дом

Reading time6 min
Views126K
Думаю у любого человека, интересующегося космосом — возникала идея купить телескоп, чтобы лично все посмотреть.

Однако суровая реальность вечно портит всю малину: в пределах города – все небо засвечено уличным освещением и турбулентность воздуха высокая. Это означает, что либо придется ограничится самыми крупными и яркими объектами (вроде Луны и Юпитера), либо возить телескоп далеко за город.

Возможное решение проблемы — удаленно-управляемые телескопы большого размера и расположенные в горах. Конечно, возможность видеть все своими глазами это не заменит — но астрофотографии полученные таким образом будет трудно превзойти. Именно на этом способе я и хочу остановиться в этой статье.

Пример того, что получилось: галактика Андромеда, M31 на телескопе Т20
Читать дальше →

Графы для самых маленьких: BFS

Reading time3 min
Views104K
В предыдущем посте рассказывалось об обходе графа в глубину. Сегодня я бы хотел рассказать о не менее важном алгоритме теории графов — об обходе в ширину.
В прошлый раз мы уже научились искать какой-нибудь путь сквозь лабиринт. Всех желающих найти кратчайший путь прошу под кат.
Читать дальше →

Роскомнадзором запрещён анимесайт «Санкакукон». Кто недовольно заорёт, того в тюрьму: «не патриот!»

Reading time3 min
Views74K
Сбылось, сбылось одно из самых мрачных пророчеств моих, сбылось буквальнейше.

Не один раз, а дважды в нынешнем году (8 августа и 24 сентября) я предрекал наступление технологического шариата в России по образцу Государства Кувейт (دولة الكويت‎‎), приводя в пример кувейтское извещение о запрете доступа «за порнографию», появляющееся при попытке открыть довольно безобидную статью на анимешном сайте «Sankaku Complex» (на «Санкакуконе», как его зовут сокращённо):

[кувейтский скриншот]

Я утверждал 8 августа, что если сперва один из министров Пакистана в сентябре 2012 года предложил награду за убийство автора фильма «Невинность мусульман», назвав его «опорочившим образ Пророка», а затем Grey с изумлением увидел в начале февраля, что весь YouTube много месяцев подряд остаётся заблокированным «Билайном» на всей территории Северо-Кавказского федерального округа России (включая даже Ставрополье, где мусульмане не преобладают), то тогда и кувейтская инициатива вслед за пакистанскою неизбежно отзовётся запретами в российском Интернете, нацеленными на борьбу с анимешными сайтами. Я также выложил тогда полдесятка иронических лимериков на эту тему.

перечитать лимерики
          «Я слыхал, что Канамэ Мадока
           Опорочила образ Пророка.
           Если слух не обман —
           Жди ответ мусульман», —
           Он сказал, улыбаясь жестоко.

          «Я слыхал, что Асакура Рёко
           Опорочила образ Пророка.
           Если слух не обман —
           Жди ответ мусульман», —
           Он сказал, улыбаясь жестоко.

          «Я слыхал, что Щираи Куроко
           Опорочила образ Пророка.
           Если слух не обман —
           Жди ответ мусульман», —
           Он сказал, улыбаясь жестоко.

          «Я слыхал, что Имаи Момока
           Опорочила образ Пророка.
           Если слух не обман —
           Жди ответ мусульман», —
           Он сказал, улыбаясь жестоко.

          «Мне сказали, что Насу Киноко
           Оскорбил ассасинов Востока.
           Если слух не обман —
           Жди ответ мусульман», —
           Он сказал, улыбаясь жестоко.

Так оно и вышло.

Сегодня (1 ноября) именно на сайте «Sankaku Complex» было опубликовано письмо Роскомнадзора, извещающее о блокировке «за детскую порнографию».

Читать дальше →

Нескучные интегралы

Reading time6 min
Views176K
Некоторые из вас, вероятно, видали на просторах сети эту задачку: какое число продолжает следующий ряд?

Предлагался такой очевидный правильный ответ:

Для тех, кому неочевидно, как он получен, предлагалось объяснение. Пусть (ну и 1 при x = 0, хотя неважно). Тогда каждый член ряда — это значение следующего интеграла в цепочке:

Пока всё идёт хорошо, но тут внезапно:

В принципе, этого достаточно, чтобы повеселить друзей-математиков, но мне захотелось узнать, как вообще считаются такие интегралы и почему получается такой смешной результат. Если кому-то ещё охота тряхнуть стариной и вспомнить матан с функаном, прошу читать дальше.
Читать дальше →

/dev/null as a Service

Reading time1 min
Views55K
В современном мире, все является сервисом. Вы можете создавать документы, заливать фотографии, разворачивать компьютеры, но что происходит с мусором? Он копится и занимает все вокруг. Именно поэтому мы запускаем /dev/null в облаке.

IAAS, SAAS, PAAS?
Мы называем свое детище DAAS.

Вам больше не придется избавляться от лишних данных самому. Используйте наш распределенный сервис, расположенный в более, чем 380 локациях! Не имеет значения, будете ли вы использовать его в личных целях, либо для бизнеса. Доступны тарифы даже для целых корпораций.
Читать дальше →

Сайт UploaderTalk оказался антипиратской ловушкой

Reading time2 min
Views64K
Владелец форума UploaderTalk закрыл сайт и опубликовал неожиданное откровение. Он признался, что в течение 12 месяцев работал на антипиратские корпорации и собирал сведения обо всех пользователях, которые раздавали нелицензионные файлы, о пиратских хостингах и компаниях, которые способствуют распространению нелицензионных файлов. Собственно, для этого и был основан UploaderTalk.

Форумы UploaderTalk были посвящены заработку на раздаче файлов через файлохостинги. Участники обсуждали, где лучше публиковать файлы, какие тарифы у разных компаний и тому подобные профессиональные темы.
Читать дальше →

DGFS — быстрая файловая система своими руками

Reading time9 min
Views32K
Иногда средствами файловой системы приходится хранить массу информации, большинство из которой статично. Когда файлов немного и они большие — это терпимо. Но если данные лежат в огромном количестве маленьких файликов, обращение к которым псевдослучайно, ситуация приближается к катастрофе.



Есть мнение, что специализированная read-only файловая система при прочих равных обладает преимуществами перед оной общего назначения т.к:

  1. не обязательно управлять свободным пространством;
  2. не надо тратиться на журналирование;
  3. можно не заботиться о фрагментации и хранить файлы непрерывно;
  4. возможно собрать всю мета-информацию в одном месте и эффективно ее кэшировать;
  5. грех не сжимать мета-информацию, раз уж она оказалась в одной куче.

В этой статье мы будем разбираться, как можно организовать файловую систему, имея целевой функцией максимальную производительность при минимальных издержках.
Читать дальше →

Приглашаю на II Всероссийскую Олимпиаду по администрированию Linux

Reading time3 min
Views15K

Участники прошлой олимпиады

6 ноября начнется вторая Всероссийская Олимпиада по администрированию Linux. Сначала будет два дистанционных отборочных тура, а потом финал в Москве. В прошлом году, например, было около 700 участников. Я занимаюсь организацией подобных олимпиад по администрированию уже шесть лет (профильная по Linux — второй год), и дальше дам пару советов по участию.
Читать дальше →

Десятка лучших консольных команд

Reading time2 min
Views198K
imageВ данном посте я расскажу о наиболее интересных командах, которые могут быть очень полезны при работе в консоли. Однозначных критериев определения какая команда лучше другой — нет, каждый сам для своих условий выбирает лучшее. Я решил построить список команд на основе наиболее рейтинговых приемов работы с консолью от commandlinefu.com, кладовой консольных команд. Результат выполнения одной из таких команд под Linux приведен на картинке. Если заинтересовало, прошу под кат.
Узнать больше

Организация памяти в текстовом редакторе

Reading time6 min
Views36K
Каждый, кто пытался запрограммировать хотя бы простейший редактор текста на низком уровне, сталкивался с задачей организации памяти для хранения редактируемого текста. Структура данных для хранения текста должна удовлетворять следующим требованиям:
  1. иметь малые накладные расходы по памяти. Большая часть доступной памяти должна использоваться для хранения текста, а не служебной информации;
  2. допускать эффективную вставку и удаление в произвольном месте текста.

Удовлетворить эти требования одновременно непросто. Если рассмотреть широкоизвестные структуры данных, такие как массивы, списки, деревья, стеки, очереди, кольцевые буфера — то такой структуры, которая бы позволила эффективно выполнить оба требования, не встречается. В случае массива имеем незначительные накладные расходы по памяти, но операция вставки имеет сложность O(n), где n — размер редактируемого текста. В случае списка сложность вставки и удаления составляет O(1), однако накладные расходы по памяти в несколько раз превышают размер собственно текста. Деревья, кучи, кольцевые буфера, ассоциативные массивы и прочие структуры и вовсе неприменимы для хранения текста в редакторе.

Встречаются гибридные решения, когда текст хранится в наборе массивов, которые, в свою очередь, объединены в список. Казалось бы, такой подход позволяет объединить преимущества массивов и списков (быстрая вставка/удаление при низких накладных расходах по памяти). Однако такое решение сложно в реализации. Также оно приводит к фрагментации памяти.

Предлагаю вашему вниманию эффективную структуру данных для хранения редактируемого текста, которая проста в реализации, имеет константные накладные расходы по памяти и быструю вставку/удаление в произвольном месте. Также она позволяет эффективно редактировать файлы, которые целиком не умещаются в оперативную память.

Несмотря на то, что эта структура данных была открыта давно и использовалась в текстовых редакторах на старых ЭВМ в 8-битную эпоху, это тайное знание предков было в значительной мере утеряно и в современных редакторах встречается редко. Попробуйте открыть файл, состоящий из одной строки мегабайт на 10, в Notepad или Far. Вставка и удаление символов будет длиться секундами.
Читать дальше →

Эмулятор x86 на JavaScript

Reading time1 min
Views38K
Virtual x86 — еще один эмулятор платформы x86 на языке программирования JavaScript. Как и JSLinux от Фабриса Беллара, для запуска Linux здесь достаточно только браузера. После загрузки образа нормально работают все встроенные команды Linux, работают компилированные программы, файловая система и проч., хотя сетевых интерфейсов пока нет.


Читать дальше →

Моя первая оверлейная программа

Reading time6 min
Views21K
Во времена повсеместного господства планшетов и смартфонов, сложно поверить, что совсем недавно, можно было получить немалое удовольствие, играя с калькулятором. Разумеется, я имею в виду не обычный (или даже инженерный) калькулятор, а программируемый. Я хочу рассказать об устройстве, которое буквально перевернуло мою жизнь и фактически подтолкнуло меня к тому, чтобы стать программистом.
Читать дальше →

Information

Rating
Does not participate
Date of birth
Registered
Activity