octubre 2010

You are currently browsing the monthly archive for octubre 2010.

Quería saber cual iba a ser el número de horas de sol que tendría en Edimburgo a lo largo del año, vamos, lo que viene a ser la duración del día. Gracias al software libre, a las pilas incluidas con Python y a las que se pueden obtener fácilmente, he realizado un programa sencillito y rápido que indica y muestra gráficamente las horas de sol y las de puesta y salida del sol según el día del año. Aquí viene la descripción del programilla. Por cierto, me imagino el tiempo que me hubiera costado encontrar o calcular yo mismo esta información en la era pre-Internet y pre-Software libre y se me ponen los pelos de punta.

Lo primero es importar los módulos que usaremos: “ephem” (PyEphem) para los cálculos de las efemérides, “math” para usar operaciones matemáticas y “pylab” (Matplotlib) para pintar los resultados:

import ephem
import math
import pylab

En el ejemplo que vamos a ver se podría omitir el uso de math pero se mantiene por claridad.

Luego definimos el lugar de observación con las coordenadas de Edimburgo:

EDI = ephem.Observer()
EDI.lat = str(55+55.378/60)
EDI.long = str(-3-11.672/60)

Después definimos el sol:

sun = ephem.Sun()

Creamos una serie de tuplas vacías que vamos a ir rellenando con los datos que nos interesen para cada día del año:

date = []
salida = []
puesta = []
df = []
sf = []
pf = []
dia = []

En la variable “d” ponemos el primer día del año, al mediodía que es cuando cabe esperar (al menos en el caso de Edimburgo) que el sol esté por encima del horizonte:

d = ephem.Date('2010/01/01 12:00')

En la variable auxiliar “d0” metemos el valor del día eliminando la hora. Esto lo hacemos truncando el valor float de d y quedándonos solo con su parte entera. “dhoy” es el día del año de hoy, le restamos al valor de hoy el valor del primer día del año, ambos en días julianos, para obtener así el día del año:

d0 = math.trunc(d)
dhoy = EDI.date - d0

Cambiamos la fecha de Edimburgo a la del primer día del año:

EDI.date = d

Ahora es cuando ejecutamos un bucle para los 365 días del año en el que vamos rellenando el valor de las tuplas que definimos con anterioridad. Ponemos la fecha completa en “d”; cambiamos la fecha en Edimburgo a la del día “d”; ponemos la hora de salida del sol anterior a ese momento en “salida” y la de puesta posterior en “puesta”; en “df” ponemos la diferencia entre el día actual y el primer día del año, el día del año; en “sf” ponemos la hora de salida y en “pf” la de puesta, ambas en tiempo universal; en “dia” ponemos la duración del día y por último añadimos un día más:

for i in range(0,365):
  date.append(d)
  EDI.date = d
  salida.append(EDI.previous_rising(sun))
  puesta.append(EDI.next_setting(sun))
  df.append(math.trunc(d)-d0)
  sf.append(math.fmod(salida[-1].triple()[2],1)*24)
  pf.append(math.fmod(puesta[-1].triple()[2],1)*24)
  dia.append((puesta[-1]-salida[-1])*24)
  d = d + 1

La última parte es pintar los resultados. Creamos una figura compuesta de dos partes: la de arriba muestra las horas de salida y puesta del sol y, la segunda, muestra las horas del día:

pylab.figure()
pylab.subplot(211)
pylab.plot(df,sf,'b-')
pylab.plot(df,pf,'r-')
pylab.grid()
pylab.vlines([dhoy],0,24,color="g",linestyles='dashed')
pylab.ylim([0,24])
pylab.xlim([0,365])
pylab.ylabel("Hour")
pylab.xlabel("Day of the year")
pylab.subplot(212)
pylab.plot(df,dia,'k-')
pylab.vlines([dhoy],0,24,color="g",linestyles='dashed')
pylab.grid()
pylab.xlim([0,365])
pylab.ylim([6,18])
pylab.ylabel("Hours of Sun")
pylab.xlabel("Day of the year")
pylab.show()

El resultado es el siguiente:

Tiempo de sol Edimburgo

Como se puede ver el día dura de un poco menos de 7 horas en diciembre hasta las más de 17 horas y media a finales de junio.

Las figuras se pueden mejorar para mostrar los meses directamente en lugar del día del año. También se podría hacer un poco más interactivo dejando que usuario pudiera elegir el día del año. Quizás se podría integrar fácilmente en un programa gráfico con PyQt por ejemplo pero todo esto se deja para otra ocasión.

Tags: , ,

Lo primero que pensé cuando supe que iba a haber una versión nueva de KDE (yo por aquel entonces usaba KDE 3.4) usando las librerías Qt4 pensé: “que bien, la potencia de KDE combinada con las nuevas funcionalidades de Qt4”. Bastantes años ya después sigo esperando un KDE 4 que cumpla con aquel pensamiento.

No sé lo que pasó exactamente, cómo uno de los mejores escritorios que había en el momento llegó a quedarse tan atrás en cuanto a usabilidad. A día de hoy el escritorio de KDE ha cambiado de tal forma que es casi irreconocible con respecto al de KDE 3. Hay numerosos cambios en la forma de interactuar con el escritorio. El nuevo menú de inicio es posiblemente más funcional que el anterior pero no se por que razón siempre acabo más tiempo del necesario con el ratón sobre él con despliegues y repliegues automáticos en momentos en los que no los necesito. El navegador por defecto ahora es Dolphin, todavía no he encontrado una manera sencilla para volver a usar Konqueror por defecto. Con Konqueror era capaz de exprimir toda la potencia de KDE al usar los kio-slaves (pienso que una de las utilidades más potentes de KDE que lo ponen por encima de sus rivales) para acceder a todo tipo de recursos a la vez que, con el emulador de consola, manejaba los archivos manualmente. El panel de control ha aumentado en complejidad aunque los apartados están muy bien delimitados. También aparecen los plasmoides, Phonon, Nepomuk y alguna que otra mejora o tecnología novedosa. Sin embargo lo que más cambia a primera vista es el aspecto del escritorio.

El escritorio es ahora muy transparente, todo está suavizado y hay muchos efectos visuales. Esto, que puede ser muy bonito y llamativo en principio, se convierte en una pesadilla al usar equipos con recursos limitados o máquinas virtuales. Aunque los efectos visuales se pueden desactivar, el escritorio ya no es igual de llamativo y, sinceramente, se pierde un poco el sentido de tanta transparencia. Los nuevos iconos están muy elaborados, también los de los punteros del ratón. En el caso de los punteros del ratón se me ha hecho complicado poder elegir otros alternativos (que no sean solo un trivial cambio de color) que no se maten con el resto del escritorio, de hecho todavía no los he encontrado.

Por último, lo más desesperante de esta nueva versión son los fallos. Sí, aún a estas alturas sigue habiendo fallos que me recuerdan a los que había hace 10 años con las primeras versiones de KDE 2. Paneles que se abren y se cierran en un bucle infinito dependiendo de su posición en la pantalla, despliegues y repliegues automáticos indeseados de algún menú (quizás esto sea una característica en lugar de un fallo), paneles que fallan y desaparecen sin previo aviso. Todos estos fallos son los que hacen que aún no dé el salto a KDE 4 y me mantenga con KDE 3 y planteándome si pasarme a GNOME en un futuro. Los detalles que hacían potentísimo a KDE han quedado diluidos debajo de una maraña de accesorios visuales que hacen que el nuevo KDE parezca un producto de investigación de nuevas tecnologías (no depuradas) en lugar de una herramienta estable y fiable.

Quizás con su inclusión por defecto en la nueva versión de Debian se arreglen algunos de los problemas que le encuentro. En fin, le daré un numero de versión más de margen con la esperanza de no tener que cambiar a otro escritorio.

Tags: , ,