wedoit4you.com is back.

Finalmente voy a poder dormir tranquilo (cualquiera cae que no duermo) wedoit4you.com esta montado en el nuevo servidor. Ahora tenemos practicamente ancho de banda ilimitado y absoluto control sobre el servidor, somos root.

Haciendo valer un poco la cuna, vamos a dar ahora hosting con todas las de la ley.

En este proceso, aprendi mas de Linux:
– Como carajo funcionan los nombres en Internet. Fuimos demasiado pichirres como pagarle a un tercero y configuramos nuestro propio servidor de nombres (DNS Servers) con BIND.
– Algunos trucos sencillos de SSH, revisen /etc/ssh/ssh_config, y cambien las variables
ForwardX11, y ForwardAgent a “yes”… Si estan corriendo XWindows (en Windows XP con Cygwin)
o en una maquina linux cualquiera con una conexion a internet… pueden hacer SSH a la maquina
remota, y al invocar algun programa de Ventanas, las ventanas se abriran en su maquina local tal
cual como si estuvieran sentados en la otra maquina… hoy hice la prueba desde la oficina, y arranque LimeWire en mi laptop de la casa, y la puse a hacer un download, tal cual como si estuviera sentado en mi cuarto, demasiado arrecho Linux y las X11.

En otro orden de ideas, he aprovechado los cortos viajes en tren al trabajo para seguir leyendo MIT Review, voy a tratar de extraer algo de informacion de ahi para compartir con Uds. interesantes historias como la de los fundadores de MySimon, que ahora tienen un nuevo motor de busquedas para compras llamado Become.com… los carajos se fusilaron la interfaz de google durisimo, pero su motor de busqueda se enfoca a ayudar a los compradores, estan compitiendo directamente con Froogle y con las otras opciones actuales… si tengo tiempo escribo en mas detalle como se la estan fumando, y como fue la seleccion de los programadores para ese sitio.

Voy a ver si puedo resumir 10 tecnologias que pueden cambiar mucho las cosas, como nanoconductores, y otras cosas bien interesantes.

Cuanto tiempo ha durado tu maquina sin reiniciar??

Desde que monte SuSE 9.2 (ya quiero 9.3) puse mi laptop como servidor de desarrollo de wedoit4you.com, y muchas fotos y videos son servidas desde aqui. Asi que casi nunca apago la maquina. La del trabajo nunca la reinicio, tambien correo SuSE 9.2, y funciona perfect sin tener que reiniciar, demasiado arrecho Linux. Total que me pregunte si en Internet habia un lugar donde alguien haya registrado el mayor tiempo sin reiniciar una maquina… pues hay un concurso, o juego, llamado El Uptime Project

Pueden ver mi uptime todos los dias aqui:

Para mi desagradable pero comica sorpresa, la maquina con mayor uptime es una Pentium Compaq que tiene 3 anos encendida en un datacenter sin hacer nada, la maquina corre Windows2000 y esta vagando no tiene nada corriendo en ella mas que el programita que envia el uptime periodicamente a uptime-project.

LimeWire casi #1 en www.download.com
Esta semana LimeWire salio como #2 en los downloads mas populares de Download.com. Es demasiado emocionante trabajar en una empresa que por 9mil downloads no es la numero uno en Internet haciendo lo que hace. El equipo de LimeWire ademas de divertirse mientras trabaja, trata de hacer lo mejor todos los dias, queremos tener el cliente P2P mas avanzado del mundo, y los frutos de tan arduos esfuerzos se estan viendo recompensados. Pronto voy a poner mi fotillo y una corta historia profesional en la pagina del Team de LimeWire, les aviso por aca pronto. Mientras tanto, sigan utilizando LimeWire, lo puden bajar gratis en www.limewire.com y yo que se los garantizo, no tiene SpyWare, si no confian en mi pueden bajar el codigo fuente en www.limewire.org

Si programas bien en Java, y te interesa la programacion de Redes, o de interfaces graficas en Java (con Swing, ya es demasiado tarde para implementar todo de nuevo en SWT) entra en limewire.org y lee todo lo que puedas, actualemente no tenemos colaboradores desarrolladores latinos o de habla hispana, solo estoy yo ahi representando latinoamerica y espana.

Entre algunas ideas que tengo para LimeWire algunas que puedo revelar aqui, es que quisiera hacer un crawler de la red gnutella el cual permita graficar la red utilizando diferentes dimensiones interesantes para entender el funcionamiento de la red. Esta idea tiene muchos obstacuos, el mas importante es la volatilidad de la red, las personas se conectan y desconectan muy rapido, pero quizas se puede hacer un crawl distribuido de 10 minutos, y graficar lo que se vea en esos 10 minutos…

Otras ideas de mayor utilidad no las puedo revelar aqui por temor a la competencia chuleando, de ser aceptadas por el equipo voy a empezar a implementar en el poco tiempo libre que me queda del tiempo libre que ocupo para trabajar en wedoit4you.com y mis propios proyectos.

Antes de Cerrar un poquito de codigo
En el proceso de Migracion, y despues del concurso del mes pasado, quedaron demasiados lyrics con nombres de artistas que echaban a perder la navegabilidad.

Habian muchos lyrics en los que los artistas comparten microfono con otros artistas o grupos, y el nombre del artista queda asi
Artista ft. otro artista
Artista (otro artista)

y asi, muchos otros casos.

Generalmente solia resolver el problema haciendo selects que filtraran un poco la cosa, y luego utilizar PHP para amasar los datos y luego hacer los updates.

Se me ocurrio examinar las funciones de strings de MySQL, y encontre un monton de utilidades, y decidi finalmente aprovechar el poder del manejador para manipular los strings.

A continuacion algo de codigo en SQL (MySQL) para manipular la informacion de los Lyrics.

/**
Este script se vale de los poderes de MySQL para reparar los nombres
de los artistas. Antiguamente lo hacia utilizando las funciones
de Strings de PHP, pero eso era muy lento. Aprovecho que consegui
las funciones de strings del manejador.

locate()/position()/instr() – devuelven la posicion de un substring
left – devuelve todo a la izquierda de un string dado el offset
right – lo mismo que left, pero pal otro lao
length – tamano de un string (esta si es vieja)

Hay otras mas:
trim()/rtrim()/ltrim() – que bien que las trae
ucase()/upper()
lcase()/lower()
hex()/unhex()

Con estas funciones puedes conquistar el mundo.
*/

//conexion a la bd aqui…

//luego lo bueno

#fix artists with ” ft. other Artist”
$sql = “UPDATE LYRICS
SET Lyric_artist = left(Lyric_artist,
locate(‘ ft’,Lyric_artist))
WHERE locate(‘ ft’,Lyric_artist) > 1;”;

mysql_query($sql);

#fix ( at the begining of artist names
$sql = “UPDATE LYRICS
SET Lyric_artist = right(Lyric_artist,1)
WHERE locate(‘(‘,Lyric_artist) = 1;”;
mysql_query($sql);

#remove ) at the end of artist names
$sql = “UPDATE LYRICS
SET Lyric_artist = left(Lyric_artist,length(Lyric_artist)-1)
WHERE locate(‘)’,Lyric_artist) = length(Lyric_artist);”;
mysql_query($sql);

#fix ( in artist names
$sql = “UPDATE LYRICS
SET Lyric_artist = left(Lyric_artist,
locate(‘ (‘,Lyric_artist))
WHERE locate(‘ (‘,Lyric_artist) > 1;”;

mysql_query($sql);

mysql_close();

Leave a Reply

Your email address will not be published. Required fields are marked *