[Reflexión] LaTeX en el 2010

 

Los últimos avances de la ofimática que se han sido  publicados algunas semanas atrás, el continuo avance del cloud computing y la falta de comunidades de usuarios cercanas que he notado sobre LaTeX  me han hecho reflexionar sobre si ¿Es LaTeX hoy en el 2010 una alternativa competitiva a la hora de escribir documentos profesionales?.

 

No hace mucho aún utilizaba los procesadores de texto habituales nombrese OpenOffice, Abiword, Microsoft Word, StarOffice étc, de igual forma, también utilizaba programas similares para construir vistosas diapositivas para mis presentaciones en la universidad. Sin embargo, ya hace mucho conocía LaTeX, incluso había compilado y escrito documentos de pruebas utilizando editores para Ms Windows y GNU/Linux, pero no lo utilizaba en forma permanente, quizá por la gran curva de aprendizaje y tiempo que creí me tomaría dominar el sistema. Hoy ya he logrado adaptarme a utilizar LaTeX regularmente, en gran parte gracias a buenos programas para GNU/Linux que han simplificado su uso bastante.

 

Las ventajas competitivas que da LaTeX frente a otros profesionales que utilizan editores comunes para la escritura de sus documentos son evidentes, una mayor rapidez a la hora de elaborar documentos con calidad profesional, la posibilidad de automatizar procesos complejos.

 

A pesar de esto, la curva de aprendizaje, las complicaciones en caso de errores, y los resultados obtenidos, pueden llegar a perjudicar a un novato, mientras que los resultados obtenidos no se alejan demasiado a los que puedas obtener utilizando OpenOffice en su última versión con algunas horas de uso y algo de talento artístico. Hoy por hoy el uso de plantillas y estilos gráficos es una realidad en los sistemas de edición tradicionales y un chiste para usuarios de softwares privativos como Microsoft Office 2010 (el cual tuve la oportunidad de probar en su versión beta gracias a la licencia que regaló Microsoft meses atrás). El nacimiento de aplicaciones sociales en la red para el procesamiento de documentos en equipos de trabajo (Microsoft Office 2010 cloud, Google Docs) pone de manifiesto uno de los problemas más conocidos y comunes para el mundo LaTeX, me refiero a la posibilidad de compartir un documento y ser editado fácilmente por el receptor, en síntesis escribir un documento en forma colaborativa.   Esto último es un problema intrínseco en la filosofía de trabajo que sigue LateX (WYSIWYM: lo que ves es lo que quieres decir) a diferencia de la que sigue la mayoría de los editores gráficos (WYSIWYG: lo que ves es lo que obtienes), tomar un documento y comaprtirlo con alguien sin que este veo como se ve realmente el documento final sino sólo su contenido en si es algo que desespera al común de las personas.

 

A pesar de que LaTeX es aún muy usado para la escritura de documentos científicos, la escritura de documentos caseros, científicos o no, en el futuro es indiscutiblemente un tema que involucrará el uso común de la herramienta por más de un autor (aplicaciones de escritura sociales), algo muy poco utilizado y explotado hoy en LaTeX.

 

¿Es acaso que la comunidad LaTeX está siendo desplazada por los grandes gigantes?, ¿Es hoy por hoy OpenOffice, Microsoft Office 2010 en su versión cloud, alternativas que poco a poco alcanzan el poder de la escritura en LaTeX o simplemente pueden llegar a superarla? Finalmente ¿Vale la pena hoy a puertas de una posible explosión del cloud computing dedicar tiempo y esfuerzo a escribir tus documentos en LaTeX?.

 

Con los pocos conocimientos que manejo ante estas preguntas creo responder que si, pero por poco, muy poco. ¿Y tu que piensas?

 

PDTA: Si alguien conoce buenos editores para LaTeX bajo GNU/Linux (ubuntu 10.04) agradecería los recomiende.

Problema de la controladora Sata de la placa DP55KG

Hace algunos días teníamos la necesidad de armar un servidor que usaría la placa madre DP55KG de intel, la cual según especificaciones del fabricante, podría soportar desde un procesador i5-650 en adelante, con socket 1156, y un montón de otras cosas, entre ellas una de las importantes es que cuenta con una controladora raid de 6 puertos sata, más 2 puertos sata adicionales.

 

A los pocos minutos de testeo, nos logramos percatar que la versión de la bios que el fabricante utilizó para la distribución de fabrica, no soporta el procesador i5-650 y además cuenta con problemas al montar la placa con 6 discos duros en los puertos sata de la controladora raid, que se supone,  son para tal efecto.

 

Durante la configuración básica del equipo nos encontramos con problemas de arranque en la bios, cuando la máquina era cargada con más de 4 discos duros de 2TB c/u . Lo que se reduce en grabes problemas a la hora de configurar la máquina. La placa DP55KG con la versión de bios de fábrica anterior a Mayo de 2010 solo logra configurar correctamente en algunas ocaciones los 6 discos duros western digital sataII de 2TB c/u .

 

La solución es actualizar la Bios a la última versión disponible en el sitio del fabricante. Esto al menos permitirá utilizar de mejor forma las cuales de esta placa tan particular.

El proceso de actualización de la Bios no es para nada doloroso, en nuestro caso lo hemos hecho utilizando un disco de arranque el cual al correr un proceso desde una terminal totalmente automatizada, actualiza la versión de la Bios. Se recomiendo durante este proceso utilizar una fuente de energía suplementaria  ( UPS )

 

Espero que esta experiencia le sea útil a alguien , ya que al intentar encontrar información sobre este problema, no hemos encontrado nada en la gran red. Seguramente por que los usuarios tradicionales no forzarán esta placa a tan descabellada capacidad de almacenamiento.

Autogenera tu lista de repositorios bajo Ubuntu y Debian rápidamente (/etc/apt/sources.list)

Si eres de los usuarios que cambia constantemente su sistema operativo, o simplemente haz instalado recientemente una distribución ubuntu y no quieres perder el tiempo buscando los repositorios de software más adecuados para (quieres que sòlo funcione ya), entonces este post es para ti. Como sabemos ya los usuarios de ubuntu el tema de obtener los repositorios màs adecuados normalmente nos toma un tiempo mportante dentro de nuestra configuraciòn habitual, los 4 grupos principales de repositorios bases de ubuntu(main, restricted, universe y multiverse) pueden ser activados sin mayores problemas pero siempre hay software adicional que será necesario agregar  una forma fácil y rápida es autogenerar el fichero de repositorios utilizando la siguiente web:  UBUNTU: http://repogen.simplylinux.ch/  , DEBIAN: http://debgen.simplylinux.ch/, luego descargamos el fichero que genera y lo guardamos en /etc/apt/sources.list y pues luego desde terminal "apt-get update" y ya está a instalar software se ha dicho :D.


 

pdta: los servidores no serán totalmente óptimos pero si funcionales.

OnePoint Project una alternativa libre para la gestión de proyectos, el reemplazante de Gantt Project

En la asignatura de gestión de proyectos  que curso en la universidad estamos modificando parte del famoso programa de gestión de proyectos "Gantt Proyect"  ya llevo bastantes horas decrifrando de que va el desarrollo de este software y la verdad es que me deprimió un poco el ver el estado del projecto en si.

Gantt Project si bien es uno de  los software de gestión de projectos bajo licencia libre más conocido nunca me gustó personalmente, prefería OpenProj que tiene un aspecto mucho más simple y limpio. Pero el detalle que tienen ambos software es que ambos estan quedando obsoletos o bien su desarrollo de plano està frenado, el caso cercano es ahora Gantt Proyect que luego de buscar por mil partes por más información para realizar sobre el modificaciones he deducido tras  un correo de uno de sus propios desarrolladores el estado actual del proyecto (está frenado). He comprobado esto posteriormente en el sitio http://www.ohloh.net un sitio en el cual pueden verse estadísticas en base a sourceforge del proyecto y el panorama es decepcionante más de cerca de 2 años sin actualizaciones importantes, En el mismo sitio leo de parte de un coolaborador la recomendación de migrar hacia OnePoint Project que es justamente lo que pretendo mostrar en este post. 

OnePoint Project es originalmente un software comercial para manejo de proyectos, pero tiene una versión libre bajo licencia apache y otras, disponible libremente aqui: http://sourceforge.net/projects/opproject , la verdad de las cosas es que la versión libre es más que suficiente para proyectos simples y se nota bastante la superioridad frente a otras soluciones para la getión de proyectos de licencia libre. Las principales ventasjas que he visualizado en una primera mirada a este projecto son:

  1. Compatible con microsoft project
  2. Versión para escritorio y servidor
  3. Múltiples bases de datos
  4. Desarrollo activo
  5. Versionado
  6. Manejo de objetivos
  7. Monitoreo, Control y Reportes.
  8. Multiplataforma

El modelo de negocio de la empresa que respalda el desarrollo de la versión libre es además bastante escalable como puede leerse en el FAQ del sitio comercial. OnePoint Project es sin duda una buena opción a considerar al momento de realizar desarrollos sobre software de planificación libres o simplemente para un uso gratuito de una herramienta similar a microsoft project con similares o quizás mejores características.

The Horizont Report 2010 : Las tecnologías que se desarrollarán en plazos de 1 a 5 años (2010-2015)

¿A quien no le gustaría tener una bola de cristal para ver el futuro?, que daríamos por ser el inventor de youtube, google u otras tantas ideas revolucionarias desarrolladas en el momento precesito y que generaron incalculables sumas de dinero. Es cierto que el futuro de la informática es incierto, es complejo preever un futuro sin dar lugar a equivocaciones, sin embargo un grupo de experto trata de dar caza a un pequeño de tecologías que han determinado serán cruciales durate un próximo periodo de tiempo, se trata de un informe creado por expertos, se trata del reporte horizonte.

Este interesante documento muestra las  tecnologìas que se desarrollaràn dentro de los pròximos  5 años según un grupo de expertos y es titulado "The horizont Report". Ayer llegó este  libro a mis manos en forma digital, la verdad no lo conocía, fué lanzado hace  un par de semanas atrás solamete , este reporte  muestra  6 uevas tecnologías que se desarrollarán y sobre las  cuales convendría invertir en un plazo de 1 a 5 años, estas tecnologías son:

    * Un año o menos: Computación móvil, Contenidos abiertos.
    * Dos o tres años: Libros electrónicos, Realidad aumentada simple.
    * Cuatro o cinco años: Computación basada en gestos, Análisis visual de datos.

Como lo describe su nombre, con este infome puedes hechar una mirada al horizonte y lo que vendrá en temas de tecnología, por cierto, bastante interesante. Adjunto la versión original en inglés y una traducción al español.

 

En el Cielo también tienen antenas...

Foto tomada desde la torre caupolicán, Temuco - Chile

Mejora la usabilidad de tus formularios en el campo input text

El tema de la usabilidad es un tema crucial para quienes nos dedicamos al desarrollo web, determina muchas cosas; que el usuario use el servicio, que lo recomiende, que le agrade usarlo étc. El otro dìa visitando la web de jamendo.com (sitio para escuchar música libre) estube analizando varias cosas que me llamaron la atención entre ellas bastantes conceptos interesantes que han inplementado sobre la usabilidad del sitio, de hecho me sorprendió y estoy seguro que el desarrollador de ese sitio conoce mejor que yo  la importancia de la usabilidad hasta en los mínimos detalles, por eso he querido dedicarle estas lineas y si es que me lee por ahi mi mensaje seria "eres seco" jjeje.

Ahora bien como me encantó tanto el concepto de varias cosas las anoté por ahi en mi super agenda para ver si de a poco las voy implementando en mis próximos desarrollos, analicé tambien las lienas de javascript y css tratando de hacer ingeniería inversa pero fué imposible, el código esta ofuscado y cuando logre descubrir las funciones que estaban tras pequeños detalles me di cuenta que se implementaron con javascript solamente "a poto pelado" y carecen de bastante estilod e programación, al leer tanto desastre he pensado que la implementación de dichos conceptos basandome en jquery podría simplificarse bastante y he aqui el primer resultado un concepto  de usabilidad sobre los campos input interesante simple  para el usuario final y simple para el desarrollador basado en jquery.

Típicamente un campo input se ve asi:

 

esa implemntación es más que simple:

<input type="text" value="">

Añadiendole un poco de estilo al campo podríamos lograr cambiar el estilo de la linea, el fondo y el color de fondo al hacer focus sobre el mismo, y hasta ahi llegan los consejos de usabilidad en este campo que puedas encontrar en google. Ahora conun poco de esfuerzo podemos transformar todos nuestros campos input  para agregarles además del color y el estilo de lineas un indicador del uso del campo. Primeros definamos el estilo css:

    <style type="text/css">
    .form .form-txt{
        border: 2px solid #dadada;
        background-color: #f3f3f3;
        color:#2a2a2a;
        font-family: Helvetica, Arial, Sans-serif;
        -moz-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;   
    }
    .form .form-txt:hover{
        border-color:#235485;
    }
    .form .form-txt:focus{
        border: 2px solid #8cc63f;
        background-color: #FFFFFF;
        color:#235485;
   
    }
   
    </style>

Podemos ver que el color de fondo cambia al hacer o no click en conjunto con el color de la linea y el efecto se vería así:

Con esto le indicamos al usuario donde esta parado y que ha habilitado el campo, sin embargo no le hemos indicado que puede escribir sobre el para eso agregaemos la especificación de el css que indique la escritura:

 

    .form .input_escribiendo { /* para aplicarlo a los elementos input type="text"*/
    padding-right: 20px;
    background-image: url("lapiz.png");
    background-repeat: no-repeat;
    background-position: right center;
    min-height:16px; /*altura imagen*/
    }   

Ahora lo usaremos desde un javascript cambiando a dicho estilo solo cuando el input este en focus,  algo muy simple si usas jquery como framework para manejar los elementos dom:

<script type="text/javascript">
	$(function(){
		$('input[type="text"]').focus(function() {
			$(this).css("width",$(this).width()-20);
			$(this).toggleClass("input_escribiendo");
		
			if (this.value == this.defaultValue){ 
				this.value = '';
			}
			if(this.value != this.defaultValue){
				this.select();
			}
		});
		
		$('input[type="text"]').blur(function() {
			
			$(this).toggleClass("input_escribiendo");
			$(this).css("width",$(this).width()+20);
			$(this).val($(this).val());/*fix para re-reenderizar el valor por desface en ancho*/		
			if ($.trim(this.value) == ''){
				this.value = (this.defaultValue ? this.defaultValue : '');
			}
		});
	});
	</script>

 El truco es eluso de la función "toggleClass" agregando o quitando el estilo según sea el focus, puedes observar también un pequeño truco sobre el ancho del campo que he realizado, se que esto quita un poco de estilo de programación pero ruego que si alguien encuentra una forma más estética de hacerlo la postee en un futuro quiza lo mejore pero como diría por ahi alguien "lo mejor es enemigo de lo bueno" por eso lo deje como estaba no mas.

$(this).toggleClass("input_escribiendo");

finalmente se verá así:

 

El resultado final puedes verlo acá (adjunto el ejemplo bajo licencia gpl v3):

VER EJEMPLO ONLINE