domingo, 17 de septiembre de 2006

Escupiendo hojas en Linux

Holaaa!

En estos últimos días de silencio bloguero me enganché en unos proyectos de desarrollo en Python (primero y por ahora) y el segundo (todavía no lo ví) en PHP.

Lo primero que tuve que resolver fue hacer que una impresora Epson C67 imprimiese lo más rápido posible, y en modo gráfico (como para ponerlo en modo draft, mínimo). La gente había investigado dos opciones, una era abriendo el puerto /dev/usblp0 directamente, tratando de enviar la inicialización... miraron (y miré yo también) bastante código de CUPS, de sus filtros (en C)... tratando de entender el lenguaje EJL, cambiarlo a IEEE 1284.4 y después a ESCP/2... fue imposible. Hay muy poca documentación y lo máximo que se logró fue que tomara la hoja, pero nada más. Si alguien quiere documentación, acá tiene algo más.

Como alternativa se podía imprimir por CUPS. Pero CUPS es un soft grandote, que como se puede ver en su arquitectura, es cliente/servidor, maneja un spooler... filtros, planificación, ACLs, es decir, consume mucho procesamiento antes de que efectivamente imprimiera... (tomaba 10 segundos hasta que tomara la hoja, lo cual para los objetivos del proyecto era inaceptable).

Esto está en una parte de la extensa documentación:

Hasta que leí con más detenimiento la página de Linux Printing. Allí dice que los drivers Foomatic (con los que se imprime en la C67) pueden utilizar como output CUPS, LPR, PPR, PDQ, Y SIN SPOOLER!! (Salvo CUPS, al resto de los spoolers no los conozco). O sea, impresión directa con los drivers de foomatic.

Era casi ideal la situación, salvo que había que ir a la práctica. Siguiendo la documentación salió todo perfecto. En una máquina actual (Celeron 2 Ghz), desde que se ordena la impresión hasta que toma la hoja y comienza a imprimir tardó 1.8 segundos! (en modo draft, enviándole un pdf como input). Cabe destacar que la generación del pdf sencillo tomaba menos de un segundo.

Más o menos fue tanto como copiar el archivo .ppd correspondiente a /etc/foomatic/direct/ y después ejecutar:

#foomatic-rip --ppd /etc/foomatic/direct/impresora.ppd \
/home/marcelo/test
(todo en la misma línea)

Desde python fue tanto como ejecutar esto mismo con una llamada a os.system().

Así solucioné el primero de los dos problemas que tuve esta semana. El segundo lo dejo para la próxima, porque todavía no lo pude resolver del todo, pero tengo buenas perspectivas....

Me voy a disfrutar un poco del sol y de la familia.

Salutes!
Marcelo

PD: Me reí un rato largo con todas las fotos (y la imaginación de los que juegan con Photoshop o Gimp) del "Tio del Cigarro" Mírenlo! :-D

sábado, 9 de septiembre de 2006

Vistazos por la Ventana - Parte I

Hellou.... estoy testeando Windows Vista RC1 5600.... les cuento con que me encontre hasta ahora. (Atención: Lo que Ud. va a leer es un pequeño resumen de la impresión que me causó usarlo por primera vez, y considere que utilizo y defiendo GNU/Linux full time. Sin embargo, voy a tratar de ser justo e imparcial; puede que me olvide de algo o se me escape algún detalle).

- Para poder instalarlo es necesario aprox. 8GB de disco (muuuy aproximadamente :P )

- Tuve el siguiente mensaje en la parte de particionamiento de la instalación: "Unable to find a system volume that meets its criteria for installation". Busqué un poco en el gran oráculo (el de los anteojos) y me dijo que tenía que setear la partición donde iba a instalar Vista como activa (con alguna herramienta como el GParted, por ejemplo). Lo hice y no anduvo, tuve de nuevo ese mensaje super-explicativo.... :-P

Como para probar como última vez, tuve que "sacar" mi disco IDE (donde tengo instalado el OSX), dejando conectado el disco SATA. No lo saqué físicamente, le puse "None" en el BIOS. Vista me lo seguía mostrando a pesar de haberlo desactivado en el BIOS (al parecer descubre los dispositivos como Linux, no pasando por la BIOS), pero esta vez no tuve el bendito error, el proceso de instalación continuó.

- El resto fue bastante sencillo. Me detectó todo menos el sonido (una SB 5.1). Apenas arrancó, tuve que configurar la red. En mi opinión, tarde mucho en encontrar el cuadro de diálogo para poner la IP/Default Gateway/DNS de la placa de red ethernet. Como que hay muchos asistentes y formas de configurar la red... quizás todavía no me acostumbro a la nueva organización del Control Panel.



Me meto en Network and Internet -> Network and Sharing Center:




Hice click un poco acá y allá... pero no encontré cómo setearle la IP con esta nueva interfaz. Por suerte para los viejitos como yo está la "vista clásica". :-D

- Después de eso, Windows Update se ejecutó solito y me instaló unos drivers... entre ellos, el de mi placa de sonido. Sin haber reiniciado, los parlantes ya hacían ruido.

- Probé el IE7 y ví cómo alguno que otro sitio que construimos con los chicos estaba roto. También vi el efecto de flicker, con un menú en Javascript, que se eliminó al instalar los drivers de Nvidia para Vista.



- Instalé la JRE. Al cerrar el item respectivo en el panel de control, veo este cuadro de diálogo:



Y esto?? Mucho no me gusta, me parece excesivo... entre esto, y la pregunta a cada cosa que quiero ejecutar que me pide permiso (UAC - User Account Control)... uno siempre le termina dando "Aceptar"... como que se pierde la utilidad de la "seguridad mejorada" de Vista.

- Las tildes en la configuración en español están al lado de la "p" en vez de al lado de la "ñ", como en XP.

- Muy buena la Sidebar y los gadgets. Ignoro si se escriben en algún lenguaje tipo AppleScript o Python ("fácil", a eso me refiero).

- La única aplicación para editar una foto es el Paint. Y lo peor es que no cambió nada! Si pego una imagen menor al tamaño de la imagen "blanca" que está por defecto cuando uno abre el programa, lo blanco queda... es decir, uno no puede elegir "Paste as new Image" siquiera... (Gimp, te extrañooooo....)

- Visualmente, está muuuuy bueno... aunque le falta algo más de "vida", cosa que sí tiene Compiz.... este desktop, como un todo, tiene mejor integración (quizás por el hecho que Compiz todavía está en un profundo e intensivo desarrollo).

Bueh, en resumen, más allá de los cambios visuales... en un primer approach no hay nada nuevo-nuevo... es decir, las aplicaciones son casi las mismas, no hay ninguna funcionalidad "revolucionaria". Como en los últimos años, la computación está avanzando de a poco en el desktop, y esta versión (RC1, guarda) de Windows Vista parece reflejar esta tendencia. "Polish and Logical Evolution" lo titularía.

(Bah... es pura facha!!) :-D

Después les sigo contando.

Salutes
Marcelo

lunes, 4 de septiembre de 2006

En Rieles

Ayer nos reunimos por fin para empezar a laburar en el proyecto web. Después fuimos a reunirnos con el tipo (bastaaante chamuyero por cierto, no lo conocía), y bueh, nos queda laburo por hacer. A mí me sirvió para dejarme la idea un poco más clara de lo que quiere. Me puse a leer el libro de RoR y la verdad que es fantástico, se lee solo. Me entusiasmé con lo sencillo que es desarrollar en esto.

Mañana nos reunimos (IBM tiene feriado) en Rodríguez y seguiremos. Ya me tengo que acostar y no tengo muchas ganas (pero no quiere decir que no tenga sueño, je).

Voy a ver si bajo el Windows Vista RC1, para testearlo, ver qué tiene de bueno y de malo, cómo se puede preparar Linux para "enfrentarlo", etc. Calculo que van a copiar muchas cosas de OSX y de Linux, y que no han innovado nada. Pero veremos. Por ahora tengo esta review, vamos a ver si dice algo interesante.

Bueh, me voy a dormir.