Corto tiempo de las sesiones PHP en K/Ubuntu Feisty

PHP LogoEn este prolífico día de blog, me dí cuenta que mientras trabajaba con aplicaciones PHP en el servidor local Apache que tengo instalado en Kubuntu, al estar alejado mucho tiempo con una página abierta sin tocarla, se pierde muy rápido la sesión.

Lógicamente la página debe iniciar una sesión.

El problema es que si me demoro mucho en escribir un pedazo de código y probarlo, debo volver a hacer login.

La solución al parecer es bastante sencilla.

Seguir leyendo Corto tiempo de las sesiones PHP en K/Ubuntu Feisty

Importancia de Modelar bien la base de datos ANTES de poblarla con datos

Supongamos que luego hemos iniciado un proyecto que involucra una base datos. Ya funciona el programa, busca/ingresa/edita/elimina datos como se suele hacer.

Luego nos damos que el programa comienza a dar síntomas extraños, como desplegar datos demás, mostrar datos cruzados, que no muestre lo que debería o derechamente nos tira errores. Entonces nos damos cuenta que la base datos es el problema, ya que hay datos cuyas relaciones se han quebrado por ingresar mal un dato, o borrar registros.

He acá la importancia de definir las restricciones ANTES de ocupar la base de datos.

Seguir leyendo Importancia de Modelar bien la base de datos ANTES de poblarla con datos

Ajax. No tan dificil como pensaba

Extraño, pero me vi en la NECESIDAD de implementar Ajax. y destaco necesidad, porque perfectamente se puede hacer una app basada en web sin una linea de javascript.

El problema surgió porque en el modulo de ingreso de ventas de mi “sistema-manejador-de-tiendas-sin-nombre” necesitaba un formulario que se pudiera llenar de productos, a partir de una lista de productos preexistente.

Podría haberlo hecho con un formulario con un campo select, y un boton añadir que al presionarlo añadiera un producto, recargara la página y perder precioso tiempo en la tediosa tarea de ingresar los productos.

Sin embargo, con Ajax resulto mucho más rápido, y de un acabado más fino.

Seguir leyendo Ajax. No tan dificil como pensaba

Starcraft II

Starcraft IINo lo puedo creer. Sí, si lo creo. Aunque hoy ya no es noticia, Blizzard anunció en su web el próximo lanzamiento (aun sin fecha) de la versión 2 de Starcraft, juegaso que su versión 1 (y expanción broodwar) hasta el día de hoy es muy jugado.

10 años de espera, parece que valieron la pena. Acá está el Cinematics video:

Acá escenas in-game:

Y más videos Gameplay en alta calidad: http://www.gametrailers.com/gamepage.php?id=4868

Ha llegado a mi casa Kubuntu Feisty Fawn

Hoy llegó a mi casa la última versión de la popular (y mi favorita) distribución Kubuntu Feisty Fawn 7.04

Estoy muy contento con esta distro, tanto que ya no la cambiaría por otra. No la cambiarí pero eso no quiere decir que deje de probar más distros.

Afortunadamente tengo suficiente disco como para probar. Cuando me aburra de opensuse, la vuelo y probaré más distros, tengo muchas ganas de conocer Arch, Gentoo, y otras distros basadas en rpm, pero Kubuntu no lo elimino por nada.

Tengo todo lo que necesito, aceleración gráfica, beryl, herrmientas para desarrollar, servidores de bases de datos, web, leo y organizo todas las cuentas de correo, chateo por msn, navego con todos los plugins necesarios, edito imágenes, escribo código, hago documentos de oficina, escucho mi música, uff…

En realidad lo mismo que se puede con cualquier distro, pero ya le dedique tanto rato a tenerlo todo a mi pinta, que simplemente no la cambio.

GDT en OpenSuse 10.2

Así es. Logre compilar perfectamente GDT en OpenSuse. Realmente es lo mismo que en Kubuntu, salvo que en este caso, no todas las dependencias se encuentran en los repositorios que trae la distro por defecto.

El mismo driver de nvidia fué un dolor de cabeza.

De hecho no está el mismo cmake, que es vital para poder hallar las dependencias y poder compilar con ellas.

Acá un hay un screenshot del Juegodemo corriendo en Opensuse.

Seguir leyendo GDT en OpenSuse 10.2

OpenSuse 10.2, mi nuevo Sistema Operativo

openSUSE LogoPero claro, no significa que reemplacé Kubuntu por OpenSuse, ahora ambos conviven en el mismo equipo, incluso mismo disco duro. Gracias nuevamente al Allan, quien me prestó el DVD.

Procedo a relatar la experiencia y comparar algunas cosas con las otras distros que he probado.

Mi historia con Suse

De partida, creo que Suse fué la primera distro que ví, cuando conocí Linux en el difunto programa de TvNauta de UCVTV. Esto ya hace unos 6 años si la memoria no me falla. Aunque las primeras disrtos que probé eran basadas en RPM, nunca probé Suse hasta hoy.

Instalación

Bien, al bootear el dvd, me apareció lo clásico, un menú convarias opciones de booteo, he aquí la primera similitud con ubuntu, con la tecla F2 se puede cambiar el idioma de ahí en adelante. Escogí la instalación gráfica.

Luego de detectar el hardware, apareció el instalador. Podría decir que es algo similar al de Fedora Core 2 (no, no he probado un fedora más nuevo y no tengo ganas) comenzó a preguntarme algunas cosas sencillas. Acá una gran diferencia con ubuntu. Aún siendo un DVD, no es live, es sólo instalador. Abría sido más entrete si mientras instalaba hubiese podido navegar por internet y relatar mi experiencia en vivo en mi blog, pero bue…

El momento que pasé susto fue en el particionado :shock:. Por defecto, OpenSuse escoge el mejor lugar donde ser instalado, aunque da opción de poder editar el particionado, no leí lo que estaba haciendo, y al darle click en siguiente me formateo la partición que escogió como raíz. Afortunadamente, la partición formateada era aquella que tenía destinada a instalar Solaris, pero ya que no pude, lo aproveché con OpenSuse. Luego del susto, volví a comenzar con la instalación. Esta vez a parte de escoger manualmente la partición que quería instalar, esta vez le dí formato como ReiserFS, y le asigné puntos de montaje a mis otras particiones.

Luego de eso, me dio opción de escoger paquetes (Kubuntu no, aunque nada que ver comparar un dvd con un cd). Además de los paquetes predeterminados, escogí Escritorio KDE y los paquetes de Desarrollo de C/C++.

Se copiaron un montón de paquetes, reinició, extraje el dvd. Al bootear noté ya se había instalado una nueva versión del menú de GRUB, el cual detectó sin problemas tanto Windows como Kubuntu. Ahora al bootear con opensuse desde el disco, me apareció el mismo instalador, pero con los pasos más adelante. Me preguntó la contraseña de root, un nuevo usuario, si quería configurar la red (apliqué el test de dhcp, y me conecto de inmediato). Lo que me impresionó fue que luego de eso, me pregunto si quería actualizar mi sistema. Eso lo encontré genial, en la misma instalación permite dejar el sistema al día, es más otra característica importante es la de los paquetes delta. Estos contienen sólo las diferencias con los paquetes antiguos, no el nuevo completo, haciendo más ligeros los paquetes permitiendo ahorrar tiempo y ancho de banda.

También me consultó si quería ajustar mi hardware (ahora no reccuerdo si me preguntó al principio o al final). Finalmente volvió a reiniciar, y comencé por fin a probar OpenSuse instalado.

Primera impresión

Es bastante agradable el look de la distro recién instalada. Partiendo desde el booteo, el tema de GRUB tiene imagen de fondo y algunas cosas extra a lo que viene en ubuntu por defecto (de hecho el grub de ubuntu es en texto y sin imagen).

Luego, el splash que usa para cubrir la partida de los servicios no me gustó. Muestra algo así como un wallpaper con el logo de suse, y una cosita pequeña que giraba (para mostrar que estaba pegado). En este punto prefiero la barra de progreso de carga del splash de Kubuntu.

Al iniciar el entorno gráfico, no me pregunto por mi inicio de sesión. Esto es bueno o malo según el punto de vista. Perfectamente esto se puede cambiar, aunque me pareció una característica muy al estilo windows.

Una vez iniciada la sesión, me encuentro con un KDE más bello que el de Kubuntu. El tema del decorador de ventanas podría decir que no me sedujo mucho. Lo que más me impresionó fue el menú de kicker. Ya lo había probado en Kubuntu, pero produjo uno que otro desastre. Otra característica interesante es que viene con beagle (similar a google desktop en windows o spotlight en macosx) integrado en todo. En KDE viene Kerry-Beagle, integrado en todas partes, en Konqueror, en los selectores de archivos y en el mismo menú.

Lo más importante y finalmente el motivo de porque instalé Suse, era probar el famoso configurador Yast.

Instalando drivers y mis cosas preferidas

Impresora y escaner

No reconoció automáticamente mi escaner, aunque no se si es justa la crítica, porque en Kubuntu instalé primero la impresora (HP PSC 1210), y como el escaner es parte de esta misma por ser multifuncinal, el servicio del driver de hp podría haber activado también la impresora. Pero usando Yast, me fuí a hardware, he instalé sin problemas el escaner.

Drivers nvidia y Beryl

Los drivers de nvidia los tuve que instalar con un repositorio externo (estoy viendo la posibilidad de cambiarlo instalalo manualmente, ya que francamente el rendimiento es deplorable). Lo que había que hacer era agregar un repositorio en Yast (primera tarea, buscar como se añaden repositorios). Luego instalar 2 paquetes.
Para instalar Beryl fue un cacho.
Lo primero fue encontrar información actualizada de como hacer eso. En el wiki de opensuse en español NO ESTÁN ACTUALIZADOS LOS PASOS.
Luego añadir otro repositorio (

En un viejo nuevo proyecto

Aunque suene raro.

Hace años que comencé con la idea de hacer mi propio CMS (Content Manager System, o Sistema de Manejado de Contenidos) usando PHP y una base de datos. Hablo de al menos 5 años atrás cuando comencé a programar PHP en serio, después de haberlo conocido unos meses (pocos días después que me conecté a internet por “banda ancha” por primera vez).

Pero de a poco me di cuenta que el trabajo se pone cuesta arriba. El lema “dividir para conquistar” se va a las pailas cuando el número de sub-problemas comenzó a crecer, y para peor, varios dependían de la solución de otros. Pensé entonce que no sería capaz de hacerlo sólo y compartí el código, en aquel entonces nadie aportó ni una misera linea

Como hacer un archivo Swap

A veces por casualidades de la vida, nuestra partición swap nos podría ser insuficiente. En mi caso, intentaba instalar Oracle 10g Express Edition, usandoun repositorio debian, pero al llegar a la etapa de pre-instalación, ambos paquetes (oracle-xe-universal y oracle-xe-client) me daban un curioso mensaj. En resumen, ambos me pedian tener 1 GB de swap, pero mi swap es de 300 MB más o menos. Así que para variar consulté en los foros, y me dieron esta estupenda idea:

Ejecutar como root:

dd if=/dev/zero of=/swapfile bs=1024k count=1000
mkswap /swapfile
swapon /swapfile

Seguir leyendo Como hacer un archivo Swap

Jugando a la nostalgia con Blender

Lejos, la charla que más me impresionó (excluyendo la mía obviamente) en Flisol 2007 Santiago fue la de Blender, y no por que no conociera las capacidades de Blender, sino porque no había visto en vivo un modelo tan bueno. En la ocasión, el expositor nos mostró un modelo muy detallado y bien hecho de un Varitech (avión transformable de Robotech), incluyendo animación.

Hace poco volví a ver un video de lo más nostálgico, ¿recuerdan a Espartaco y el sol bajo el mar?, acá está uno de los momentos clásicos en la serie, el baile de Bic y Bac:

Ambas cosas me hicieron converger en una idea… ¿y que tal si hago a Bic o Bac en Blender?

Y así, me puse a trabajar en el modelo hasta que me quedó:

¿Que tal? y eso que no soy gran diseñador, solo usé un mouse y partí moldeándolo desde un cubo.

La textura no está terminada (la nariz es rosada por dentro y me falta pintar las rayas de las pernas) , y tampoco tiene esqueleto, así que por el momento no lo puedo animar, pero de que se puede, SE PUEDE!