Me cambio de tema de nuevo

4 05 2009

No me terminó de gustar el tema que estaba utilizando, así decidí cambiarme a el tema Freshy, éste último me gusta mucho más por la forma como muestra el código con numero de linea.

Asi que quedó hasta que a wordpress se le antoje de nuevo agregar más temas :P





Mis maquina de trabajo en la casa

16 12 2008

Ésta entrada se refiere a la maquina que utilizo en la casa para trabajar o pasar el rato, actualmente en la casa tengo 3 computadoras, 1 de escritorio (para jugar WoW), una maquina de escritorio no tan poderosa que nada mas le falta monitor y era utilizada para servidor y por úlimo una netbook que es mi estación de trabajo y también la uso para pasar el rato si no es para jugar.

La maquina en cuestión es una Eee PC 900, a la que le instalé Ubuntu como el único Sistema Operativo, además en el trabajo me regalaron una caja para hacer discos duros externos, tomé prestado el disco duro de la maquina que utilizaba como servidor y bum! ahora tengo 40Gb de espacio extra.

Espero poder hacer más cosas, inclusive tengo ganas de probar si puedo correr WoW.

Aún no tengo mucho poder para hacer un cluster pero poco a poco voy :P





Me cambio de framework de PHP

8 12 2008

Por un buen tiempo estuve trabajando con un CakePHP como mi framework de desarrollo de paginas web, gracias a él aprendí bastante sobre desarrollo basado en patrones, el cual si esta muy bien fundamentado e inclusive me ayudó a conseguir éste nuevo trabajo, sin embargo ya llegue a el punto que siento que se queda corto a los proyectos que tengo en mente.

En mi trabajo se está utilizando fuertemente Zend Framework para casi todos los desarrollo, por lo que me di la tarea de investigar un poco más a fondo sobre éste framework y me encontré que es mucho más sencillo migrar aplicaciones legacy, el cual es muy genial, por otro lado cada componente de Zend Framework se puede utilizar por aparte sin generar dependencias internas y por último todo se puede extender para ajustarse a mis necesidades.

A raíz de estás caracteristicas poderosas que posee Zend Framework para ser implementado en casi cualquier escenario me dio a pensar que casi cualquier aplicación debe ser construida dejando previstas, para que en el futuro pueda se extendida o mejorada sin mayor modificación en la estructura, con CakePHP se puede pero siempre está muy amarrado a la versión que estés utilizando por lo que al final se vuelve ineficiente.

Aún tengo proyectos hechos en CakePHP que pienso ir migrando a Zend Framework, para que me de experiencia, cuando me toque hacerlo aqui mismo pongo los pasos que tuve que seguir.





Audifonos USB en Ubuntu

3 12 2008

Desde hace poco tiempo me regalaron unos audifonos que son USB, éstos audifonos en ubuntu son detectados pero no suena, los probé en Ubuntu Hardy Heron y en actualmente en Intrepid Ibex, el asunto que éstas dos ultimas versiones se utiliza enormemente el servidor de sonido PulseAudio por lo que seleccionar la salida de sonido con Alsa ya no es funcional, asi que mi amigo google me respondió con un arreglo temporal, es tedioso pero funciona:

Lo primero es instalar el Selector de Dispositivo PulseAudio

sudo aptitude install padevchooser

Luego de instalado, ya teniendo conectado los audifonos, abrimos la aplicación:

Aplicaciones -> Sonido y Video -> Pulseaudio device chooser

Eso abre un applet para el panel donde se tenga los iconos de notificación, click izquierdo en el applet luego en Volumen Control luego click en la pestaña de Playback, ahi lo que aparece son los sonidos que ese momento estén sonado (valga la redundancia) y viene la parte tediosa de seleccionar uno por uno, click derecho Move Stream -> (dispositivo USB) con eso ya está.

Espero que les funcione, personalmente a mi si me función en mi Eee PC 900 :P





Organizando ideas nuevas

16 11 2008

Cuando programo me suele suceder que no me organizo en mis ideas, más que todo cuando las ideas que quiero plasmar son nuevas o bien el algo nuevo para mi, por lo que me di la tarea de buscar algún método que me ayudara a organizar las ideas.

Primero intenté utilizando notas, el problema de las notas es que no tienes relaciones por lo que a veces la nota se hace dificil de seguir.

Luego intenté usando diagramas de flujo o de casos de uso; no me gusto mucho ésta idea porque se me hacía difícil una herramienta que lo hiciera y correctamente.

Por último opté utilizando herramientas para lluvia de ideas y me recordé de un programa que me habían recomendado que se llama freemind.

Éste programa es sumamente sencillo de utiilzar, es más, se necesita aproximadamente 20 minutos para comprender la funcionalidad básica, bueno, eso me tomó a mi, que a veces soy durito :P

La metodología que utilizo junto con freemind es de crear los pasos que sigue la herramienta o bien donde quiero que valla, además agrego bifurcaciones o varios nodos para entender que hace el codigo en cada momento de una manera visual.





Costumbre mañanera

13 11 2008

Unas de las cosas que apenas hago cuando llego al trabajo, es tomar café (o un refresco dependiendo del dia) con cafeina para manenerme alerta, luego me dispongo a leer noticias para saber que ha pasado en le mundo.

Ahora piendo llegar un hacer un post en el blog de lo que me se ocurra :P , otras de las cosas que me gustan que sean las mañanas, es que sean frias y con neblina, porque me dan ganas enormes de programar, no se porque, pero me gusta, además se sabe que los programadores trabajan mejor en entornos frios que calientes, asi como las computadoras :D





Porque complicarse?

12 11 2008

En el trabajo me tocó modificar el comportamiento de un sistema que doy matenimiento el cual después habló de él.

Me toco crear un pequeño sistema que mandaba por correo un link que éste a su vez mandaba a un formulario especial, para ser aprobado o no, el cual todo funcionaba bien, pero me di cuenta que uno de los parametros mandaba el valor anterior y no el actual, rebusque dentro del arbol de archivos revise código para que ese parametró fuera pasado, al final era más sencillo obtener el parametro, dentro del formulario especial obtener el parametro para luego ser procesado.

Eso deja como anecdota, así como a mi, muchos programadores buscan de primero la via más dificil i/o complicada :P

Como decía un profesor, los estudiantes siempre busca complicarse primero para entender…





Cambios en el blog

12 11 2008

Me canse del antiguo diseño, ahora me quedo con este más simplista :P

El motivo del cambio se debe a que revisando diferentes blogs alojados en wordpress.com (al igual que este) me econtre que muchos usaban éste mismo tema, el cual no me agrado mucho, igualmente quiero que el blog se vea moderno y a la vez con buena información por lo que piendo hacer una bitacora personal sobre desarrollo y posibles problemas que me encuentre y como los solucioné (mmm  me suena a diario), asi también me saco a relucir el slogan de blog :D

Tratare en la medida de lo posible levantar este blog, de igual modo no espero tráfico pero se que alguno que otro le va a ayudar con problemas que se encuentre :P





Compresión en la lectura

30 10 2008

Unos de los problemas que más me molestan es el asunto que tengo problemas para concentrarme y la dislexia, que para un programador es algo duro de manejar, porque se está leyendo todo el día una y otra vez y muchas veces me ha pasado que por un punto y coma el programa no me corre, por eso me di la tarea de buscar técnicas de compresión de lectura y me encontré un buen artículo que da las primeras pautas para lograrlo:

  1. Predecir: Hacerse preguntas sobre lo que lees. Buenos lectores hacen predicciones sobre pensamientos, eventos, resultados y conclusiones.
  2. Imagenes: Formular imagenes mentales. Formularse imagenes mentales de lo que se lee o crear una especie de pelicula de lo que se lee es un buena practica
  3. Relate: Dibujar comparaciones mentales. Hacer relaciones con tu existente conocimiento con la nueva información y lo haces parte de tus ideas y mejoras la comprensión.
  4. Monitorea: comprueba tu comprensión. Comprueba tu conocimiento, realiza estadísticas de tu entendimiento y que tanto has mejorado, si mantienes una mejora lograras hacer el texto parte de tus ideas.
  5. Arregla lagunas de comprendimiento: No aceptes lagunas en tu comprensión de lectura, si encuentras que una palabra, terminó o frase no es de tu entendimiento trata de devolverte y releer o bien buscar el significado para que toda la frase tenga significado.

Al final son buenas prácticas aplicar estos 5 conocimientos para hacer el día a día más eficiente.

Original | http://academic.cuesta.edu/acasupp/AS/302.HTM





Script que te recuerda la hora

8 08 2008

Me pasa bastante que programando se me van las horas volando, lo que se ocurrio para recordar que hora es, crear un script que me recuerde que hora es :P

Primero que todo se necesita el comando notify-send que es como un popup (cuando ubuntu te avisa que tiene actualzaciones), se instala desde los repositorios:

sudo aptitude install libnotify-bin

Luego crear un archivo donde va a estar el script :P , a mi gusto siempre creo una carpeta dentro de mi home que se llama Scripts donde se pueden crear todas lo que nos plazca :D

gedit /home/<usuario>/Scripts/time_reminder

Nota: Hay que reemplar <usuario> por tu usuario.

Insertamos el siguiente codigo dentro:

#!/bin/bash

TITLE="Hora actual"
ICON="appointment"
MSG="Son las $(date +%r)"
export DISPLAY=:0 && \
notify-send --icon="$ICON" "$TITLE" "$MSG" && \
aplay /usr/share/sounds/ekiga/voicemail.wav

Explico cada linea:

  • La primera linea en cada shell script dices donde esta el interprete (el que va a ejecutar tu script)
  • La linea TITLE que se desea fijar en el popup
  • La linea ICON, ésta linea tiene truco, ese nombre que puse ahi se debe que en la carpeta /usr/share/icons/Tango/34×34/ (yo uso tango puede ser Tanguerine) tienen nombres de iconos que usa el sistema (Gnome default en ubuntu) el cual seleccione uno que concuerde con mi objetivo, no se necesita poner toda la ruta ni la extesion.
  • La linea de MSG es la hora que quiero mostrar y recordar ;)
  • luego viene el comando export…., lo que hace es seleccionar la pantalla actual porque las tareas (mas adelante explico) programadas no entienden de comando que tengan que ver con interfaces gráficas, si se tienen dos monitores ese comando tiene que cambiar para que concuerde.
  • La siguiente linea es el popup, que es donde mostramos el mensaje con las variables que anteriormente definimos.
  • por ultimo un sonido de recordatorio, en ubuntu esos vienen por default al menos que se haya desinstalado Ekiga, el cua en la carpeta /usr/share/sounds/ hay varios donde escoger.

Ahora se le da al script permisos de ejecucion:

chmod +x /home/<usuario>/Scripts/time_reminder

Ahora solo falta ejecutar el script cada cierto tiempo, para eso está crontab y se modifica la lista del usuario nuestro:

crontab -e

Para ingresar la linea se presiona la tecla insert o bien la letra i

00 * * * * /home/edder/Scripts/time_reminder

Se preciona Escape luego :wq, con eso se sale del editor y lo que quere decir esos 00 es que se va a ejecutar cada hora, se puede modificar a 30 para que se ejecute cada 30 minutos.

Con eso solo hace falta esperar ;)