Как стать автором
Обновить

Комментарии 56

НЛО прилетело и опубликовало эту надпись здесь
Ага. Интересно получилось — общность визуализации двоичных кодов и самой темы календаря. Цепочка: бинарные деревья — ёлки — новый год — календарь.
Что жёлтым подсвечено?
Предпрздничные дни.
Видимо предпраздничные дни.
Точно! Все в соответствии с официальным производственным календарем.
Похоже сокращенные рабочие дни.
критические дни… извините…
НЛО прилетело и опубликовало эту надпись здесь
а зачем печатать? закажите ;-)
Это ж сколько QR-кодов угробить надо чтобы такое сделать!
Я честно пытался понять, причем тут QR-коды, но так и не понял :(
Я думаю при изготовлении ни один QR-код не пострадал :)
А я не настоящий программист и ничего не понял :) Объясните, пожалуйста, как пользоваться.
У вас 12 столбцов — 12 месяцев. Строки это числа в двоичной системе счисления.
Закрашенный квадрат это 1, пустой это 0. Минимальное число — 1 (1), максимальное 11111 (31)
>максимальное 11111 (31)
А предки не дураки!
У наших предков было 40-41 день в месяце!
Потому они и вымерли. Остались только те, кто в 5 бит укладывался.
Вот так с веселухи утром встанешь и дооолго будешь думать «Какое сегодня число?», вглядываясь в эти цветные квадратики :)

Ну а так респект, красиво выглядит. Чем-то напоминает бутылки шампанского ёлочки :)
А как так получилось, что 11.03 — рабочий? Я догадываюсь, что это перенос 9.03, но разве так делается?
и почему 31.12 выходной тоже непонятно
Ну тут- то понятно: чтобы не выходить на работу между 30.12(Вс) и 1.01.2013(НГ). И, по идее, его куда-то должны перенести. Скорее всего это суббота(29.12). Мой вопрос к тому, что не припоминаю, чтобы отработки переносились на воскресенья.
Если уж говорить строго с т.з. дискретной математики, то данный календарь не двоичный, а четвертичный.
Т.е. мы имеет в каждой элементарной ячейке не бит, а тетрит (пусто, зеленый, желтый, красный).
image
Какое число получилось?
На самом деле не совсем так. Т.к. В одном дне не может быть одновременно зелёный и красный.
В каждой строке мы имеем 5 бит на дату + 2 бита на цвет (есть место ещё для одного цвета)
Фактически, ещё для каждого месяца нужно 3 бита на смещение дня (с какого дня начинается месяц) и 2 бита на количество дней в месяце (28,29,30,31). Итого, 5 бит на месяц + 7 бит на каждый день.
Нравится. Спасибо. )

А в чем логика расположения месяцев на разных уровнях по вертикали?
Ну как обычно. Стоило спросить — сразу увидела сама.
Совмещение дней недели на одном уровне.
А что, очень креативно. Спасибо.
Только сейчас осознал, что у первой ёлки верхушка должна быть жёлтой. Это ж не выходные, это праздники.
Не совсем так. Желтые — это предпраздничные, сокращенные дни. Красные — выходные, когда на работу идти не нужно, не важно, праздник, или просто выходной.
Спасибо, уже весит на стене.
НЛО прилетело и опубликовало эту надпись здесь
Ну опечатался, с кем не бывает? ))
Только числа (номера дней в месяце) удобно закодированы. А как быстро месяц выбрать? Как день недели определить? Особенно конец апреля сбивает с толку.
Возможно, я помоложе буду ;) Для меня олдскул — это ANSI art.
Добавил в пост.
положите исходник, дней недели не хватает, допишу себе.
Я не дождался, пока автор выложит исходник, и написал свою версию. Правда результат пока только в текстовом виде.
Но если вам это интересно, то заходите на https://github.com/nevostruev/binary-calendar
Благодарю!
Выложил исходник (см.пост). NoZDR наводил на него лоск.
И вас благодарю!
Очень долго всматривался — укачало :-)
Один из коллег немного модифицировал данную картинку, чтобы было немного проще догадаться.

image
Мысль насчет года была, но органичного решения не пришло в голову. В картинке 0 — пустой квадрат, а 1 — закрашенный. Число 2012 в двоичном виде 11111011100, т.е. последние два квадрата получаются пустыми.
Ваш вариант понятен, но, как мне кажется, вносит путаницу, смешивая два разных вида представления нулей и единиц в заголовке и в самом календаре.
возможно, каждый программист приверженный тому или иному языку программирования мог бы поставить начало и конец программы у числа 2012. что-нибудь типа begin 11111011100 end.
может быть фигурные или квадратные скобки спасут: {11111011100}.
а еще белые квадраты можно заменить еле заметными точками, кружочками, снежинками, свастиками и любыми другими знаками на вкус пользователя.

ну это тогда получается уже целый веб-сервис, на котором можно задать все эти параметры.
Календарь нужно посадить в сетку, чтобы все квадрты были выделены, тогда и этой проблемы не было бы, и понятнее вообще читать было.
Вот тут файл SVG, с сеткой, но без праздников. Если есть желание добавить праздники, то генератор лежит тут.
У кого-нибудь есть под рукой эмулятор игры «Жизнь» Коуэна?
Запустите, плиз, на бесконечной сетке, чтобы узнать, что нас ждет в этом году.
Я мужу-програмисту на Новый Год на Амазоне купила математический календарь (The Mathematics Calendar 2012) Там на каждый день небольшая математическая задачка.
Надо бы сетку добавить, или отступы между квадратиками, а то так на глаз не очень просто определить, сколько квадратиков умещается в сплошном горизонтальном блоке, приходится сравнивать с соседями
С сеткой есть. Для распечатки наверное лучше в PDF сконвертировать.
Праздники можно добавать через скрипт.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории