20 septiembre 2010

PostgreSQL 9.0 lanzado

Ya se ha lanzado la versión estable 9.0 del sistema de gestión de bases de datos surgido a partir de Ingress en Berkeley. Aquí está la nota de prensa.
Me encanta, por varias razones. Primero porque es libre, de la misma manera que Debian me atrapó en su momento, pero no sólo eso: toda la comunidad que lleva detrás desde hace más de 15 años (y las empresas interesadas en ella) intentan conseguir el mejor producto posible. Y a ello van, además, cumpliendo los estándares. Como alguno se despiste, acabará siendo el mejor de verdad. Es una pena no tener tiempo para hacer pruebas comparativas, con el 11g mismo. Espero poder ver alguna pronto.

Sobre estándares y tal (menudo dolor de cabeza con las batallitas entre empresas), recuerdo una petición que hicieron a mis amigos los de M$ para su Sybase hinchado hace un tiempo. Algo muy sencillo de implementar, realmente. Permitir, como hace la competencia, "create or replace view". La respuesta era algo así como que no lo veían necesario. Tócate los huevos. Porque tú no tendrás que crear y modificar vistas. Hay más ejemplos, pero como MySQL también tiene sus miserias hasta la versión 5.0.12 (si mal no recuerdo), lo dejaremos estar. Algo de sus miserias: interpretaron a su libre albedrío cómo debían ser los join múltiples, vamos, que el "on tal" no se aplicaba a la tabla que uno podía esperar. Los que os manejéis con el SQL entenderéis lo divertido que llegaba a ser. Pero vamos, lo de los insert limitados de M$ en el 2005 y el finiquitado tipo text en favor del original (por llamarlo de alguna manera) varchar(max) es la bomba. De Oracle no me voy a quejar. Aparte del varchar2 (que ya podían haber dejado el antiguo) no me viene a la cabeza nada destacable del estilo. Únicamente que necesita a alguien sólo para administrar.

Hace ya tiempo que tuve que crear una aplicación sobre PostgreSQL sin haberlo tocado nunca, y, siendo comparable a Oracle, es muchísimo más sencillo de manejar y más flexible. Sólo con la docena de lenguajes que soporta para procedimientos, ya hay poco que discutir sobre ese punto, y además, el PL/pgSQL es compatible con PL/SQL. Y lo hicieron así para facilitar el cambio. No es que esté muy de acuerdo con los procedimientos en base de datos, pero para quien guste, es una ventaja. No se puede decir mucho de la documentación, porque otros también la tienen bestial; simplemente es excelente. Pero es que en aquel entonces no tuve ni un problema. Bueno, sí, hubo algo de duda con los tipos binarios, porque éstos sí son estándar y no los conocía, y tiene una cantidad bestial de tipos, así que hubo que tirar de manual. Espero dentro de poco poder meterle mano de nuevo.

Sobre la versión, hay grandes mejoras en la replicación del servidor y en el cumplimiento de SQL:2008. Puede verse todo en su web o en su wiki, aunque está mayormente en inglés.

07 agosto 2010

Debian 6 "Squeeze" congelada

Ayer se dió la noticia. Debian ha congelado la que será la próxima versión estable de la distribución madre de Ubuntu. Esto significa que no se añadirán más características nuevas y empieza la fase de pulido para, cuando llegue el momento del lanzamiento de la versión final, hacer gala de su reconocida estabilidad.
Debian 6 incluirá Linux 2.6.32 para todas las arquitecturas soportadas (unas 8), pero la gran novedad es que también habrá variantes sin Linux. Desde el principio estaba previsto incluir el núcleo GNU Hurd, pero hay más: tendremos el núcleo BSD para x86 y AMD64. Si ya se conoce por su estabilidad, esto es un paso más.
Llevará DKMS, esa maravilla que Dell hizo para Ubuntu que recompila los módulos que no se incluyen en las fuentes de Linux. Más cosas. Llevará los entornos de escritorio KDE 4.4.5 (siguiente a la de Kubuntu 10.04), Gnome 2.30.0 (la que lleva Ubuntu 10.04), LXDE 0.5.0 (vuela en un Pentium3 como el que comenté), XFCE 4.6.2 (la ultima) sobre X.org 7.5 (la última). De aplicaciones, OpenOffice.org 3.2.1 (la última) y otras miles. Por la parte de servidores y relacionados, destacan Apache 2.2.16 (la última), PHP 5.3.2 (no han incluido la reciente 5.3.3), MySQL 5.1.48 (tampoco han querido la última, de hace un mes, y aún no está disponible la 5.5 final), PostgreSQL 8.4.4 (cuando será estable mi esperado 9...) y Samba 3.4 (que le pasará a la 3.5.4 para que no la quieran...). Para desarrollo, Python 2.6 y 3.1, Perl 5.10, GHC 6.12 y GCC 4.4. No nombran más. Ni openjdk, ni entornos de desarrollo.
Para el inicio de sistema, Debian no usará upstart que reemplaza a init, sino insserv, que simplemente lo acelera. Es una solución más conservadora.

La inclusión de un núcleo UNIX puro tiene algunas posibles implicaciones. Inicialmente, las variantes con BSD no tendrán el soporte de dispositivos que tiene Linux. Éste tiene un soporte impresionante de dispositivos existentes desde el principio de los tiempos, pero BSD no. Esto reducirá un poco la utilidad de Debian 6 FreeBSD de cara al escritorio, pero no para servidores. Recuerdo que Linus Torvalds dijo que si hubiera sabido que existía BSD, Linux no existiría. Ahora resulta que la distribución madre de múltiples distribuciones, destacando Ubuntu, empieza con una variante BSD. ¿Hará lo mismo RedHat y veremos una Fedora BSD? ¿Hará esto que mejore el soporte de dispositivos de FreeBSD? ¿Que podría pasar con Linux?

06 agosto 2010

Hay que mejorar los paquetes ofimáticos

Soy usuario de Openoffice desde hace años. Antes usé el paquete ofimático de Microsoft y antes conocí algún otro producto que no usé extensivamente porque todavía no tenía mucha necesidad de ello. Me temo que soy de los pocos que conoce que hubo productos anteriores. Antes existió WordStar y WordPerfect (muy casual que el de Microsoft se llamara Word), Lotus 1,2,3 y otros muchos olvidados. Parece que ninguno de los integrantes del paquete ofimático de MS, que sigue siendo el paquete mayoritario, ha sido pionero. Vienen al caso otra buena cantidad de programas de diversos orígenes precisamente por su interfaz: los de retoque fotográfico y dibujo.

La gran novedad del MS Office 2007 según parece era la famosa cinta, que mantiene en la versión de este año. El aspecto general es atractivo (lo típico) y he de reconocer que fue una apuesta en parte arriesgada de Microsoft. La gente no quiere cambiar y representa un cambio de sitio de algunas cosas muy usadas. Fuerza a cambiar costumbres de mucho tiempo, aunque la mayoría siga igual. Pero sabían que la mayoría de gente no conoce nada más y tampoco es tanto cambio, se acostumbrarían. Acertaron.

Openoffice es continuista. Tiene todo donde siempre ha estado, desde wordperfect. Por desgracia alguna gente tiene miedo a lo que no conoce. Con sólo un fallo que se produzca en el producto nuevo, hay quien es capaz de descartarlo, incluso cuando el fallo no sea del producto. Esto lo he visto en algún compañero, por lo que es bastante grave. Miedo al cambio de producto aunque todo esté en los mismos sitios. Openoffice tiene algunas carencias pero ninguna crítica. Y si falta algo, siempre se puede programar.

Un día descubrí Lotus Symphony. IBM compró Lotus hace un tiempo, se unió a Openoffice y ha "creado" Symphony partiendo de Openoffice. Es exactamente Openoffice pero con algunos añadidos muy interesantes. He de decir que me gusta, pero tiene una extraña combinación de ideas. El problema es que parece estar a mitad de camino de llevarlas a cabo.

No me gusta la cinta de MS Office. Me parece retrógrada. Sí, retrógrada. Cuando todos los monitores que se venden actualmente son panorámicos, Microsoft tiene la gran idea de meter menús más anchos en la parte superior. Absolutamente absurdo. Lo de la nueva ubicación de algunas cosas también habría que verlo. Tuve que ayudar a encontrar el botón de guardar cuando ni siquiera soy usuario mientras paseaba por la oficina.

Al principio comentaba lo de los programas de dibujo y retoque. Photoshop, Freehand, el paquete de diseño de Corel son representantes de este tipo de programas. En sus tiempos crearon menús superiores contextuales. Por la parte libre tenemos Gimp, con su controvertida interfaz, e Inkscape, excepcional sucesor de cualquier programa de dibujo de los comentados, aunque sigue siendo un trabajo en curso. Este tipo de programas siempre ha tenido menús desplegables laterales muy bien distribuidos. Han cuidado la interfaz de verdad.

Me gustan los menús de Symphony. Son una combinación del sistema de menús de Openoffice y de los programas de diseño comentados antes. Tiene menús laterales, pero mantiene el menú principal y la barra de botones clásica, que, en mi opinión, es el gran error. Añade una barra estilo Google Chrome (o Chromium) que quita aún más espacio.

Hoy no he desplegado ninguna simulación gráfica al estilo de mis propuestas para Gnome. Un día de estos dibujaré otra figuración de aquellas. Pero describiré lo que debiera ser YA la interfaz de un procesador de texto. Por extensión los cambios serían parecidos en el resto de programas de los paquetes, aunque en el resto quizá tengan menos importancia. Por mi parte, creo que actualmente esos detalles son críticos en un procesador de texto e importantes en una hoja de cálculo, ya que se destinan a impresión y un folio NO lo vemos panorámico.

La barra de título debería ser idéntica a Chromium, incluyendo color, que está de moda. Se aprovecha absolutamente la barra de título y se muestran claramente los documentos que tenemos abiertos. Se añadiría una pseudopestaña de "Nuevo" al principio como Symphony y el botón de miniimágenes.

Desaparecería toda barra superior, tanto la barra de menús como la de herramientas clásica. O quizá podríamos dejarla y rediseñarla; habría que verlo. A la derecha habría una barra vertical de botones de añadidos al programa (como Symphony) con un botón que mostrara el contenido del innecesario menú clásico (tipo Chromium o Explorer) o con las funciones menos usadas, o simplemente con las opciones de configuración del programa. Junto a ésta una barra ancha reducible de desplegables, como cualquier programa de diseño, o justamente como Symphony, aunque quizá mejor con texto en lugar de iconos, como Inkscape.

A la izquierda una barra vertical. Ésta sería una continuación hacia abajo del botón de nuevo y contendría por secciones los botones que iban en la barra de herramientas clásica: guardar, deshacer, copiar, etc.

En el centro nos quedaría la hoja, ni más ni menos, sin interferencias de ningún tipo. Próximamente lo dibujaré, con Inkscape, por supuesto.

26 junio 2010

Discurso de Ibarra sobre SW libre y el asunto de la música...

Ya hace mes y pico de esto, pero es imprescindible verlo. Con motivo del día de Internet premiaron a Juan Carlos Rodríguez Ibarra por su trayectoria. Dió un interesantísimo discurso que muestra claramente que sabe de lo que está hablando, y que ójala todos los políticos tuvieran los principios morales que este hombre demuestra.

17 junio 2010

Nautilus: Nuevo diseño y CON DESHACER

He encontrado algo tremendamente útil que nos facilitará la vida bastante: Nautilus Elementary.

Creo que no soy el único que opina que Nautilus, el navegador de archivos de Gnome, es bastante mejorable. Cada versión nueva de Gnome deja un sabor agridulce: Vienen características nuevas y a veces desaparecen otras, y el diseño no acaba de cuajar. Pero sobre todo, y parece mentira que a estas alturas aún estemos así, ¿alguien se explica por qué aún Nautilus no cuenta con "DESHACER"? Que alguien me lo explique, porque no lo entiendo. No es tan difícil. Si hubiera tenido tiempo lo habría hecho. En lugar de implementar cosas de menor utilidad, ¡implementad el deshacer! Hace años que están diseñados los casos de uso, incluso ha habido parches de gente independiente, pero nada. ¿A que esperamos, señores? Pues, básicamente, a que les venga en gana. Alguien como cualquiera de nosotros con un poco de tiempo, que no está dentro del proyecto, lo hace por su cuenta y lo distribuye, y cuando ya es un clamor, lo incorporan, porque apostaría a que en su momento no aceptaron el código. En la próxima versión oficial de gnome se espera que se incluya Deshacer, entre otras cosas. En la actual aceptaron el doble panel, al que se accede con F3 o con el menú ver.

Aparte de deshacer, Nautilus Elementary cuenta con otras características. De hecho, se ha incluido posteriormente, incorporando código de otras iniciativas. Elementary rediseña la interfaz de Nautilus, quitando todos los botones que nadie utiliza (aunque algunos se pueden mostrar de nuevo fácilmente), aprovechando mejor el espacio, y dando un toque más estético. Como dicen que una imagen vale más que mil palabras, así se ve:


El diseño de la barra de dirección está inspirado en el de la barra del centro de software de Ubuntu. Sería perfecto si fuera el mismo. Es más compacto, más estético y tiene pinta de poder incorporar un desplegable para elegir entre los directorios actuales, lo que le dará mucha más flexibilidad. A la derecha están los botones de vista: iconos, lista o compacta. Antes era un desplegable, lo que viene a ser una cosa bastante absurda. Así, con un solo toque, cambiamos como queramos. A su derecha he añadido el botón de agregar pestaña, y en la parte izquierda el de editar dirección, desde el configurador de la barra.

Recargar y parar ocupan el mismo lugar. El botón recargar se convierte en el de parar cuando la lectura del sitio cuesta, para pararlo en caso necesario. Esto suele pasar en sitios de red ftp, samba, ssh, etc, pero localmente normalmente es raro usarlo.

También está el deslizable de la ampliación, con sus botones opcionales. Pero no queda ahí la cosa.

Creo que también es notable la omisión de información en la copia de archivos. Cuando vamos a sobreescribir un archivo... ¿que nos dice Nautilus? que se va a sobreescribir. Y nada más. Absolutamente nada más. Ni su tamaño, ni su fecha. ¿Como es posible? ¡Pero si son un par de etiquetas! Pues no, no dice nada más. Elementary sí. Aleluya. Indica toda la información necesaria, con la previsualización de costumbre, y si queremos renombrar el archivo que estamos copiando, nos lo permite. Windows 7 tiene algo parecido, pero está resuelto de una manera que marea más que otra cosa. Creo que esto es absolutamente perfecto. Inmejorable.

Como esto es de obligada instalación, aquí van las instrucciones. Hay un ppa para poder poner en repositorios, pero indicaré esa forma y la forma que le da miedo a la gente: compilar.

Forma fácil:
sudo add-apt-repository ppa:am-monkeyd/nautilus-elementary-ppa
sudo apt-get update
sudo apt-get upgrade

Ésto nos añade el repositorio, actualiza la información y actualiza el sistema, lo que nos llevará a que se actualice nautilus.

Para tener el nuevo tema de la barra:
cd
wget http://gnaag.k2city.eu/nautilus-breadcrumbs-hack.tar.gz
tar -xvf nautilus-breadcrumbs-hack.tar.gz

Esto nos lleva a nuestro directorio personal, descarga el tema, y lo descomprime en .themes.
Para ver el nuevo nautilus hay que cerrarlo con:
nautilus -q
Y ahora abrimos nuestra carpeta personal para ver los grandes cambios. Puede que aun no se vea el tema de la barra. Para activarlo hay que ir a Editar > Preferencias, pestaña Tweaks y marcar "Show like breadcrumbs". Ya lo tenemos.

Forma "difícil":
Si nos gusta compilar, allá vamos:
sudo apt-get build-dep nautilus
sudo apt-get install build-essential
bzr branch lp:nautilus-elementary
cd nautilus-elementary/
./configure --prefix=/usr
make
sudo make install

Nos faltará descargar el tema como indicaba antes y reiniciar nautilus.