Sábado, 6 de Marzo de 2010
En 1834 el sacerdote y matemático Marco Mastrofini propuso una reforma del calendario gregoriano que inspiraría otras varias, ninguna de las cuales ha sido adoptada oficialmente por una nación, pero sí debatidas por su interesante concepción e incluso usadas en ciertos ámbitos. Puesto que los días del año no son divisibles por siete, la semana se ve desplazada continuamente en el almanaque. La idea de Marco Mastrofini era sacar el día sobrante (o dos días, en los bisiestos) del ciclo hebdomadario. Esto da lugar a una especie de calendario perpetuo en el que fechas idénticas del año corresponden siempre al mismo día de la semana.
Quince años más tarde el filósofo August Compte recogería el guante y sugeriría otro modelo más refinado basado en este principio. Según éste, cuatro semanas compondrían un mes, que habría de tener siempre 28 días, por tanto; y trece meses más un día festivo adicional (dos los bisiestos) harían el año. Con ello el filósofo quería avanzar en la dirección del positivismo sin causar alteraciones en la sociedad tan drásticas como el calendario de la Revolución Francesa, que entre otras cosas quiso fallidamente abolir la semana de siete días. Así, al denominar los meses, decidió usar figuras influyentes en la ciencia, pero también en la historia, la literatura o la religión. El año comenzaría con Moisés, e iría seguido de Homero, Aristóteles, Arquímedes, Julio César, San Pablo… Los días y las semanas también se consagran a personajes de renombre históricos o ficticios: Prometeo, Buda, Praxíteles, Cervantes, Beethoven, Volta… Para facilitar la transición, se iniciaría con el 1 de enero del calendario gregoriano. Ahora bien, la cuenta del año daría comienzo en 1789.
A pesar de la intención de Compte de no ofrecer un calendario definitivo, sino un primer avance provisional para “preparar a Occidente para el culto abstracto”, o quizás en parte por causa de ello, y por razones que al lector no le costará comprender, la aceptación que obtuvo con él fue nula. No obstante, y como se ha apuntado, influiría en la concepción de propuestas posteriores de reforma, ya en el siglo XX.
Publicado por José Antonio Casares González en Calendarios | Sin comentarios »
Miércoles, 24 de Febrero de 2010
Los antiguos romanos solían datar los años bien indicando los cónsules que gobernaban en dicho momento, bien a partir de la supuesta fundación de la ciudad (ab urbe condita) o el final de la monarquía (post reges exactos). Esta costumbre no se abandonó con la extensión del cristianismo, al menos de inmediato. Ni con el uso por parte los seguidores de esta religión en Alejandría de un método alternativo de datación consistente en contar los años transcurridos desde el comienzo del reinado de Diocleciano. Esto último no deja de ser peculiar, habida cuenta de las cruentas persecuciones organizadas por dicho emperador, razón por la que a este sistema de numeración se conoce como era de los mártires. De seguro debió ser una de las circunstancias que tenía en mente Juan I cuando en el 525 encargó a un monje procedente de Escitia Menor calcular los años transcurridos desde el nacimiento de Cristo. Era conocido como Dionisio el Exiguo, y su erudición le llevaría además a escribir numerosas traducciones, un tratado de matemáticas y una conocida colección de derecho canónico. El sistema de cómputo al que aquí nos referimos se asociaría a la postre al calendario juliano, por extensión al gregoriano, y en la actualidad es universalmente usado en todo el mundo (en convivencia con otros allí donde la religión imperante no es la cristiana). Eso a pesar de que, si algo se tiene claro, es que Dionisio el Exiguo erró sus cálculos por entre cuatro y siete años. Pero este hecho se ha establecido modernamente, al intentar compaginar los acontecimientos históricos con el Evangelio según San Mateo, en particular con el requerimiento de que el nacimiento de Cristo se produjese en vida del rey Herodes.
A pesar del origen papal de la iniciativa para el establecimiento de un cómputo según esta nueva era, no se abandonaron de inmediato las costumbres existentes, y el año del Señor no se empezó a utilizar de facto hasta pasados dos siglos. Hay que pensar que el uso que Dionisio el Exiguo le dio no fue la datación de acontecimientos, sino la elaboración de unas tablas de Pascuas. La propia cancillería papal no adoptó la era cristiana hasta el siglo XV. En su origen se expresaba acompañando a la fecha de la indicación Anno Dómini Nostri Iesu Christi, abreviado A.D., pero con el tiempo se ha traducido frecuentemente a otros idiomas como antes o después de Cristo (a.C. o d.C.). Además de cristiana, a esta era se la denomina también común o simplemente nuestra era y, como se ha comentado, hoy en día es la principalmente usada por organismos internacionales, desprovista de su significado religioso.
Tags: ab urbe condita, Alejandría, calendario, calendario juliano, Dionisio el Exíguo, era común, era cristiana, Juan I, mecanismo, post reges exactos
Publicado por José Antonio Casares González en Calendarios | Sin comentarios »
Lunes, 8 de Febrero de 2010
Hace unos días Juan me envió dos enlaces (Fabulous Adventures In Coding y My First BillG Review) que representan una muestra de las dificultades con las que un programador tienen que bregar en ocasiones debido a nefastos diseños que pueden haberse llegado a enquistar eternamente con la excusa de mantener compatibilidades. En este caso, los dos textos se refieren al formato interno de representación de fecha que usa OLE Automation (para los legos, uno de los mecanismos más extendidos de comunicación entre aplicaciones de Windows) y describen sus incongruencias en un tono jocoso. Lo que sigue es un resumen también informal. Para otro día quedan las descripciones de otros formatos de tiempo usados en informática, por suerte algo más coherentes.
Remontémonos a finales de los ochenta. En el terreno de la ofimática se estaba librando una batalla entre las empresas Microsoft y Lotus. La segunda ofrecía la hoja de cálculo más popular hasta el momento, Lotus 1-2-3, papel que ambicionaba Excel. Cuando la compañía de Bill Gates desarrolló esta aplicación quiso asegurarse de que su software era capaz de importar los documentos existentes de su rival. Y con ello heredó un formato de tiempo que se había concebido con bastante anterioridad para equipos muy excasos de memoria, apenas 640Kb. Para hacernos una idea, hoy día cualquier fotografía digital, comprimida, ocupa varias veces este tamaño. Con todo, no parece excusa que justifique suficientemente un formato tan surrealista.
Para OLE Automation el tiempo se representa internamente como un número real. La parte entera indica el número de días transcurridos desde la medianoche del 30 al 31 de diciembre de 1899. La parte fraccionaria, las horas y minutos. No se hace referencia a zonas horarias, ni a horarios de verano. Imagine el lector que una oficina en Santa Cruz de Tenerife tuviera que compartir información relativa al tiempo con otra en Caracas y empezará a comprender las implicaciones. O que almacenase información, y un día al año las dos y media de la mañana acaeciesen antes que las dos en punto. Las especificaciones no detallan cómo dividir la parte fraccionaria los días que tienen 23 o 25 horas. Pues bien, buena parte del software que se ejecuta hoy en un sistema Windows emplea este método de representación de tiempo. Pero las rarezas no han hecho sino empezar.
Un número en coma flotante tiene distinta exactitud según su tamaño. Esto implica que las fechas cercanas a 1900, según el tiempo VT_DATE, alcanzarán gran precisión al determinar las fracciones de segundo. Sin embargo, conforme nos alejemos de este año iremos perdiéndola progresivamente. Y si es hacia el pasado el efecto puede ser más catastrófico. Al aproximarnos a las doce de la noche llegará un momento en que el ordenador deba efectuar un redondeo, y lo hará hacia el entero más cercano, menor. Pero la parte fraccionaria del día se cuenta hacia adelante en el tiempo. Lo que quiere decir que, incurrirá con esta aproximación en un error de un día; eso con apenas avanzar una fracción de segundo. Eric Lippert sigue comentando más incoherencias: se podría pensar que, puesto que la parte entera de un número es, como se ha dicho, el número de días transcurridos desde una determinada fecha, para saber los que median entre dos momentos cualesquiera basta con restar. No se puede hacer tan a la ligera. Los valores -0.75 y 0.75 representan el mismo instante: las seis de la tarde del 30 de diciembre de 1899. El formato asocia al mismo día dos números diferentes (se podría decir que cuenta dos veces el cero). Si la diferencia se realiza entre dos valores negativos también se puede incurrir en un día de error. Por otro lado, el 60 representa el día 29 de diciembre de 1900, fecha inexistente, pues dicho año no fue bisiesto. Esto último explica por qué se eligió como momento de inicio en este formato la medianoche del 30 al 31, y no el cambio de año.
Joel Spolsky comenta que, cuando fue preguntado por Bill Gates acerca de si Basic conservaría compatibilidad con Excel en cuanto a las fechas, y su respuesta fue afirmativa, con la excepción de enero y febrero de 1900, el dueño de Microsoft exclamó joder tan solo cuatro veces.
Tags: 31 de diciembre, Abu 'Abd Allah Muhammad b. Yabir b. Sinan al-Battani, Excel, Lotus, Microsoft, OLE Automation
Publicado por José Antonio Casares González en Horarios | Sin comentarios »