Nuevo feed RSS
23 de julio, 2007 // // No hay comentarios
Para todos los que estén subscritos a mi feed RSS:
He cambiado de dirección y he empezado a usar feedburner, con todo lo bueno y lo malo que tiene. La nueva dirección es:
http://feeds.feedburner.com/SergioGago
En el menú sigue apareciendo lo mismo, pero se redirigen todos a feedburner.
Gracias!
Me he vendido
23 de julio, 2007 // // No hay comentarios
Bueno, pues ha llegado el momento de venderse…
Este blog lleva online ya casi 8 meses, y ha tenido un crecimiento más allá de lo esperado. No solo el blog en si mismo, sino mi actividad en internet. Abriendo nuevos negocios, y creando muchas nuevas cosas.
La transferencia del servidor que tengo contratado se ha ido al garete, por lo que tendré que ampliarla. De esta forma, he tomado una decisión: meter un poquito de adsense.
Esto tiene dos objetivos:
- Rentabilizar un poco los costes de servidor.
- Hacer las pruebas que en el resto de aplicaciones no puedo hacer.
Espero que no suponga demasiadas molestias.
El capitulo más geek de South Park
21 de julio, 2007 // // No hay comentarios
El cuarto capítulo de la temporada 11 me ha hecho muchisima gracia. Además de la ironía habitual de estos capítulos (y de ser la mejor forma de aprender el “inglés de la calle”), este me ha hecho especial gracias a las continuas referencias a internet. (Amén de aquel capítulo, ya retirado de yutube, llamado maker love not warcraft).
Podéis verlo gracias a stage6 en esta página: Capítulo internet southpark
Referencias a myspace, youtube, askjeeves (nadie lo usa! todo el mundo va a google!), blogs, webcrawler, ebay, paypal, mapquest, y el comentario. “I’ll use google maps, it has map traffic!”
Disfruten del episodio!
Escuchar mp3 de tu casa en la oficina
20 de julio, 2007 // // 6 Comentarios
Hace tiempo comenté cómo tengo organizada la red en mi casa, para un disfrute pleno de todos los gadgets, pero hoy me voy a centrar en cómo consigo tener toda mi colección de música (unos 80Gb) en cualquier sitio con internet, en cualquier momento.
Lo primero y principal, es tener el servidor (equipo de emule), encendido, cosa que, salvo en determinadas ocasiones, siempre se da por hecho. Y en este equipo, tener un servidor Web. Para los no iniciados, esto puede parecer complicado, pero con wampserver, resulta la mar de sencillo. (Si usáis Linux, asumo que ya sabéis cómo montar apache y compañía).
En wamp server, las primeras letras vienen de:
W indows
A pache
M ySQL
P hp.
Es decir, que con un cómodo asistente, en un momento tendremos nuestro servidor preparado para Windows, con soporte php, y una linda MySQL, con un phpMyAdmin para que no nos quejemos, y podamos crear bien nuestras tablitas.
Una vez hecho esto, y si tenemos un router entre medias, asegurémonos de redirigir el puerto 80, por defecto al equipo que tendremos siempre encendido. Como usaréis emule, probablemente tengáis redirigidos los puertos del mismo a esa misma máquina. (Y oye, si alguien no sabe hacer algo de esto, que deje un comentario).
Y por último, descargamos kplaylist, un sencillo software, gratuito, escrito en php, y que trabaja con mysql. Muy sencillo de instalar, y más de usar. Solo hay que descomprimirlo en la carpeta root del servidor, o dentro de una carpeta, modificar el script con los datos de nuestra BD (que pusimos al instalar el wampserver). Lo ejecutamos y el asistente nos hará lo demás.
Así, solo tenemos que decirle en qué parte de nuestro disco tenemos nuestra gran colección de canciones, y empezará a parsearlas. Tardará un rato si tenemos mucho, pero con eso ya podremos escuchar toda nuestra música por streaming desde cualquier sitio!
Alguna recomendación: Bajad un poco las conexiones del emule, tened bien organizadas las canciones por géneros, y cread playlist, así lo sacaréis más partido.
Una imágen:

Los que aprenden los universitarios
20 de julio, 2007 // // 3 Comentarios
“Haber sido universitario solo implica, que te lo has pasado muy bien durante unos años y que alguien ha tratado de enseñarte, pero no que tú hayas aprendido.”
- HR Manager anónimo
Y por eso, cuando contrato, me importan bastante poco los títulos universitarios. (en contraposición con mi último post sobre ingenieros informáticos!)
Cinco libros para leer si quieres ser ingeniero informático
19 de julio, 2007 // // 5 Comentarios
Rahul Batra escribe en dreamincode un artículo donde expone sus cinco libros para ser ingeniero informático.
Lo interesante, realmente no está en la lista de libros, sino en el concepto de “ingeniero informático”. Y es que hoy en día, cualquiera puede saber programar. La red está plagada de manuales de distintos lenguajes, y de páginas y referencias muy buenas con las que te puedes convertir en un gran gurú del lenguaje. Conocer todos los entresijos y saber resolver cualquier problema. Pero no tendrás esa base de “ingeniero” que te ayuda a resolver los problemas de una forma más organizada.
Me tomo la libertad de copiar su lista, y poner mis propias anotaciones, así como poner las carátulas y unos enlaces a amazon, por si alguien se anima.
Computer Organization by Hamacher, Vranesic & Zaky
Quizá, la base fundamental para todo ingeniero que quiera tratar con computadoras, ya que trata los procesadores RISC desde el principio, llegando a comprender elementos de estabilidad y rendimiento. Que para un “hola mundo” no hacen falta, pero si programas para el S.O. quizá lo necesites.
Concepts of Programming Languages by Robert W. Sebesta
Debemos saber de “dónde venimos” para saber cómo ser los mejores en los lenguajes que salgan ahora. En este libro se atacan los conceptos básicos de la programación, sobre todo funcional.
Operating System Concepts by Silberschatz, Galvin & Gagne
El libro de cabecera de todo técnico de sistemas, y programador que tenga que tocar las tripas del S.O. De hecho, suele utilizarse de pe a pa en casi todas las universidades en la asignatura de sistemas operativos.
Fundamentals of Database Systems by Elmasri & Navathe
A veces, es necesario ir un poco más allá de las formas normales, y conocer a fondo como funciona un DBMS. Y no vale con tener un phpmyadmin atacando un mysql.
Computer Networks by Andrew S. Tanenbaum
Mi favorito. El alma de las redes. Desde las capas OSI, hasta el funcionamiento de cada capa TCPIP. VPNs, tunneling, seguridad, encriptación. Quizá menos necesario para informáticos propiamente dichos, pero imprescindible para trabajar sobre red.
Y por supuesto, a esta lista tengo que añadir dos libros para entrar en materia en cuanto a cómo programar en objetos, y cómo usar patrones de diseño: Head First Java, y Head First Design Patterns. En ningún otro libro he encontrado una explicación mejor del wrapper, o del factory!
Como aclaración, no quiero decir que para ser un buen programador haya que haber estudiado ingeniería informática (la eterna discusión!). De hecho, yo no soy Ing. Informático. Pero el hecho de haber pasado por una serie de materias, y haber tenido que trabajar unos conceptos fundamentales, dan una visión mucho más global, y ayudan a comprender mejor ciertos problemas, así como a generar soluciones más eficaces.
Algo ha cambiado…
17 de julio, 2007 // // No hay comentarios
Algo ha cambiado en mi vida, cuando para pasar 20 minutos de espera en un centro comercial, me dedico a ver muebles en una tienda de decoración, en lugar de juguetear con gadgets en el media market…
Sin duda, algo ha cambiado…
Perdón por el post sin demasiado sentido…
Spanair, y cómo hacer un infierno de día
11 de julio, 2007 // // No hay comentarios
O cómo conseguir que algo tan sencillo como un puente aereo, se convierta en un suplicio.
No quiero aburrir a nadie con mis aventuras, así que si alguien va con prisa puede quedarse con la idea principal, y pasar al siguiente blog:
No utilicen Spanair para volar, en la medida de lo posible
En el vuelo de por la mañana, 45 minutos de retraso. Casi es hasta comprensible. Pero lo mejor son los comentarios del piloto:
“Señores pasajeros, lamento el retraso pero es que ayer estuve trabajando 15 horas y el reglamento internacional me obliga a descansar 11 antes de volver a volar
Por lo menos van con copiloto que les den conversación. ¿Cuántos pilotos tiene Spanair para el verano? ¿Acaso no preveen que en Julio hay mas trayectos?
Y un ticket del 25% de descuento que nadie usa, por las molestias.
Y a la vuelta, con billete para las 17:30. Hora de embarque, 18:00. A esa hora no había nadie en la puerta, hasta que aparece un chavalin con más cara de jóven que yo, al que llaman por teléfono y empieza a poner cara de preocupado (mal asunto).
Y dice por megafonía:
“Por favor, todos los que no tengan maletas, pasen por el mostrador”
Amigo! Todo el mundo ya ha facturado, ya nadie tiene maletas!
Pues nada, sin ninguna explicación, nos dicen que se cancela el vuelo, y nos tienen ahi más de 20 minutos esperando sin saber nada. Mientras los cientos de pasajeros se comían al pobre chaval, mi compañero, perro viejo en el asunto, inicia uno de sus muchos trucos de comercial desgastado en viajes. Salimos de la terminal, vamos al punto de control inicial, y empezamos de cero, hasta que nos den un nuevo billete para el siguiente avión (y efectivamente, la jugada salió bien).
Nuevo avión para las 19:30. Hasta las 20:10 no embarcamos, y una vez dentro, 45 minutos parados. El comandante dice por megafonía:
“Lo sentimos, pero la torre de control no nos da salida”
Hasta que por fin a las 22:30 aproximadamente, tocamos suelo en El Prat. Total: Más de 5 horas perdidas, un cansancio tremendo, y una colección de descuentos del 25% inutilizables por la incompetencia de Spanair.
Y yo me quejo, solo por 5 horas, cuando había gente con más retrasos y cancelaciones, quizá no por trabajo, sino a los que les han fastidiado las vacaciones.
Y por supuesto, un gran trabajo el de el equipo de tierra, sobre todo las azafatas, que aunque llegarán más tarde que nosotros a su casa, y estén quemadas de aguantar a pasajeros cabreados, saben mantener la sonrisa siempre.
Jugar al trivial online
8 de julio, 2007 // // 8 Comentarios
Desde hace mucho tiempo, no he vuelto a tener cerca un Trivial. Cosa normal porque casi nunca juego, pero el otro día con unos amigos en casa, y cansados de cantar al singstar, alguien dijo: “Juguemos al trivial!”.
Eliminando la opción de comprar el juego de mesa, o su versión más actualizada en DVD (como ya se están actualizando casi todos los juegos de mesa), busqué por internet. Y no encontré nada decente orientado a este juego “en TV”.
El crecimiento que tienen actualmente los hogares que pueden conectarse a internet desde sus televisores es tremendo. Ya sea a través de la consola (360, PS3, Wii), o a través de un mismo media center, por lo que parece tener sentido montar un Trivial Online. Exactamente igual que su versión de mesa, pero en la Web.
De esta forma, solo tendría que apuntar con la Wii a la Web de este trivial online, y jugar una partida con mis compañeros. Ni siquiera es necesario el modo multijugador, sino simplemente un tablero y las preguntas, y por supuesto gratuito.
Fácil: Primer paso: Escoja número de jugadores. Segundo paso: Lance el dado. Y empezar a tirar el dado, mover fichas de un sitio a otro y conseguir quesitos. Ni rankings, ni partidas online, ni registro, ni opciones extrañas. Solo conectarme, y jugar.
Ya estoy viendo el movimiento de las fichas sobre un enorme jpg con unos efectos gracias a script.aculo.us.
Al final, todas las ideas salen de una necesidad. Yo no tengo tiempo, pero si alguien se apunta…
Programming and Managing, o cómo ser jefe de proyecto
4 de julio, 2007 // // 3 Comentarios
La vida del jefe de proyecto es muy dura. Tradicionalmente las consultoras suelen delegarles la parte puramente de planificación, gestión de recursos y seguimiento, pero en otro tipo de empresas (como la mía), en la que los equipos no son tan grandes, o simplemente se usan otras metodologías (Xtreme Programming), no termina de funcionar:
El Jefe de Proyecto, debe programar.
Para mi esto es un hecho. Un JP nunca va a poder estar suficientemente implicado en el desarrollo, y conocer todas las peculiaridades de un producto, sino se moja y se pringa como todos los demás.
Ahora bien, llegar tareas de gestión, y ser un programador, en la misma persona y jornada laboral, no es cosa fácil.
Hace unos días, Nick Halstead escribió sobre esto respondiendo a uno de sus lectores, y el artículo es muy interesante.
Los problemas vienen a ser:
- Aunque dediques el 50% de tu tiempo a programar, tu output será del 20% si tienes suerte
- El estilo, el enfoque y el tipo de tareas en cada rol son sumamente diferentes. Por un lado tenemos tareas comunmente largas y con alta focalización, y por otro suelen ser tareas más cortas, continuas interrupciones, y en tal caso, una distribución más “caótica”.
- El programador suele apasionarse demasiado con lo que hace, lo que es bueno, pero el manager debe tener una visión mucho más global, y tomar decisiones que afectan a más alto nivel.
Así que como resumen, me quedo con estas líneas de Nick
- Planifica lo mejor que puedas tu día, estableciendo tiempos de programación y tiempos de management.
- Intenta usar los largos periodos para programar, y los pequeños gaps entre reuniones y pequeños “marrones” inmediatos para tareas de management
- Como manager, deber ser muy crítico contigo mismo y con tu equipo, para asignar las tareas adecuadas a las personas idóneas, incluido a ti mismo.
- Nunca te asignes tareas porque sean las más interesantes o atractivas.
- Escucha TODO lo que el resto del equipo tenga que decirte.
- Puedes confundir (e impresionar) a otros managers hablándones el jerga técnica (esta es genial!)
Y como colofón lo único que diría es que cada programador - JP busque su “best-hour-of-the-day” para programar. Ese momento en el que nos podemos (ahora si), poner los auriculares, y programar como máquinas a ritmo de los Blues Brothers. Hay quien lo tiene a las 7 de la mañana, y hay quien (como yo), viene a las 6 de la tarde, lo que suele hacer que siempre llegue tarde a casa.
¿Algún otro truco o sugerencia?

¡Saludos!. Soy Sergio Gago, aprendiz de todo que da vueltas por Internet, consultor, geek, y viajero. Me gusta internet, los ordenadores, viajar, bucear y tu. Si quieres saber dónde estoy, mira arriba, o contacta conmigo.
Sígueme!