Ни о чём →
Веб-приложение — наглядный конвертер дат по большому количеству систем летоисчисления
Предыстория
У некоторых из нас увлечения из детства переходят во взрослую жизнь, и это как раз мой случай. Сейчас мне 25, и последние 17 лет из них я сознательно занимаюсь собиранием, изучением и анализом монет из разных стран мира. Хорошо, когда есть интернет; а в 90-х и начале нулевых информацию приходилось черпать в основном из книг.
Одной из самых больших проблем, связанных с моим увлечением, в тот период было определение года чеканки монет, ведь в арабских странах свой календарь, Израиле — свой, у тайцев — тоже свой, не говоря уже про Японию, Китай и так далее. Затруднение вызывал даже не столько сам процесс конвертации, сколько узнавание символов на монете. В итоге в тетради с описью коллекции так и оставалось: «-?- год».
В 2006 году вышла книга Александра Александровича Щёлокова под названием «Увлекательная нумизматика». Считая себя весьма хорошо подкованным в технической части и обратив внимание на принадлежность этой книги к категории популярных изданий, я отложил её подальше. В конце весны 2009 был небольшой ремонт, и книга снова попалась мне на глаза — на этот раз я начал её читать.
Ближе к концу обнаружилось описание систем летоисчисления некоторых стран, то есть как раз то сокровище знаний, которое я искал.
Рассказав о некоторых системах, А. А. Щёлоков пишет: «Можно и дальше продолжать список, но сделать это сумеет каждый, перед кем возникнет необходимость уточнить конкретную дату. <…> мы убедились, что вопрос о датировке — один из самых сложных в нумизматике. Множество систем счёта и календарей в мире. Все их перечислить невозможно. Да и нет у автора цели превратить популярную книгу во всеобъемлющий справочник или практическое пособие. Куда важнее, на наш взгляд, пробудить любознательность, привлечь внимание читателей к нумизматике и бонистике.»
Создание
Вдохновлённый такими словами и удивлённый отсутствием веб-приложений с соответствующим функционалом, я решил создать своё собственное, для чего привлёк к делу своего товарища. Можно сказать, что делалось во многом для себя. Название «Машина Времени» пришло в голову само собой, и после года скитаний по тестовым доменам веб-приложение обрело, наконец, постоянный адрес на моём сайте, а также полное название: Creounity Машина Времени: датировка, история, письменность.
Что оно может?
- На момент написания данного поста там представлено 24 системы летоисчисления, основная часть которых реализована в виде интерактивных конвертеров. В каждом из таких конвертеров доступны два направления конвертирования дат: из выбранной системы в год по григорианскому календарю; и обратно, — чтобы узнать, как тот или иной григорианский год выглядит в символах соответствующей системы летоисчисления.
- К каждой системе прилагается информационный блок с её описанием, в котором рассказано о происхождении этой системы, приведены необходимые формулы и алгоритмы пересчёта, дана историческая справка и прочие «вкусности», которые собирались мною из огромного количества источников, в том числе путём общения с экспертами на иностранных форумах.
- Вкладка «Иллюстрации монет» содержит скроллер с цветными иллюстрациями монет 400x400 px, также с кратким описанием под ними; управлять скроллером можно кликом по картинке, кликом по ссылкам «Вперёд»/«Назад», а также с клавиатуры.
Преимущества «Машины Времени» по сравнению с другими существующими инструментами конвертирования дат
- самый большой выбор систем летоисчисления (24);
- наличие обратного конвертирования;
- удобство, наглядность и понятность (мы сделали так, чтобы даже неспециалист в области нумизматики и/или компьютерных интерфейсов, открыв наше веб-приложение, уже знал, как им пользоваться. Нужно лишь ввести ровно те символы даты, что видишь на монете, и нажать «Рассчитать»);
- присутствие разных варианты написания символов даты почти для каждой системы (в т.ч. способы написания цифр, что использовались до 800 лет назад);
- наличие подробнейших описательных частей;
- и да, всё продублировано на английском языке: и интерфейс, и описательные тексты (на подготовку и вычитку переводов ушло тогда несколько месяцев);
- приложение обновляется почти каждый день: добавляется новая информация, исправляются замеченные описки, фактические ошибки и прочие недочёты;
Как оно работает?
Довольно бесхитростно. Весь обсчитывающий конвертеры математический код представляет собой JS-включения в php-файлы. Стоит отметить, что 98% кода было написано специально для данного проекта. Все фичи, в том числе движок для скроллеров (не говоря уже о движке самого веб-приложения), реализовывались вручную (jQuery используется в одном-единственном месте, где нужно было вставить всплывающую подсказку с тенью и указательным треугольником).
Курьёзные моменты, которые удалось обнаружить
Цифры в различных письменностях выглядят удивительно. Некоторые цифры, скажем, у тайцев или у камбоджийцев напоминают логотипы некоторых операционных систем и брендов. За примерами далеко ходить не надо. Смотрите сами (в топике о Linux Mint я уже когда-то оставлял ссылку):
Понятно, что все эти совпадения — чистая случайность, но всё равно…
Немного аналитики
По устройству численной системы представленные в проекте системы можно разделить на 3 категории:
- Для записи разрядов десятков, единиц (опционально — сотен) используются индивидуальные символы; число формируется мультипликативно-аддитивным способом — Эфиопия, Израиль, Русь (заимствование из Древней Греции!), Грузия (использовалась в XIX-м веке), в определённом смысле — Япония и Тайвань;
- Десятичная система; всё «как у нас», только цифры свои — большинство оставшихся систем (Бангладеш, Камбоджа, Мьянма, Непал, Таиланд и другие);
- Отдельно стоят римские цифры.
Примеры написания чисел (не обязательно годов!). Внимание: если у вас не установлены некоторые шрифты, либо если вы это читаете с мобильного устройства, то вместо ряда символов у вас могут отображаться квадратики, либо вообще ничего не отображаться:
- Япония. 569 =
07.12.2011 14:33+0400