Aunque puede parecer un coche enjaulado, simplemente estaba en el parking de un Mc Donalds. Hice la foto desde mi coche, en la cola del servicio Mc Auto, mientras esperaba mi menú de comida rápida.
Categoría: Personal
eBooks Gratis (y libres)
Interesante proyecto que se encarga de recopilar eBooks gratis y libres para poder disfrutar de ellos.
Aunque soy de la vieja escuela de leer en la cama libros de papel, creo que tendré que ir acostumbrandome a leer sobre una pantalla, sobre todo si la licencia de la literatura es libre. :)
Mapas de OpenStreetMaps con GeoIP simples
Hace ya un tiempo monte un sistema de mapas de Google Maps simple para que cualquier persona con conocimientos básicos pudiese implementarlo.
Hoy en el trabajo ha surgido la posibilidad de implementar mapas en una de las aplicaciones que está en proyecto y he aprovechado para implementar de forma muy sencilla OpenStreetMaps con GeoIP para el posicionamiento.
El funcionamiento es muy sencillo, se le pasa a una función una IP o un host y ésta nos devuelve un mapa de OpenStreetMap posicionado según la posición de esa IP.
Para preparar nuestro servidor simplemente haremos los siguientes pasos (Versión Debian, claro):
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gzmkdir /usr/share/GeoIP/
gunzip GeoLiteCity.dat.gz /usr/share/GeoIP/
gunzip GeoIP.dat.gz /usr/share/GeoIP/ln -s /usr/share/GeoIP/GeoLiteCity.dat /usr/share/GeoIP/GeoIPCity.dat
Además, nuestro servidor necesitará el soporte de GeoIP en PHP. Esto es muy sencillo en Debian
aptitude install php5-geoip
/etc/init.d/apache2 restart
Listo, ya tenemos nuestro servidor preparado para utilizar GeoIP. Ahora simplemente llamamos a la función que he creado con la ip o el host que queremos localizar. Esto es un ejemplo de tres peticiones distintas:
osm_map(‘meneame.net’);
osm_map(‘130.206.130.95’);
osm_map(‘sukiweb.net’);
Y esta es una imágen del resultado:
La función es realmente simple, se puede descargar de aquí:
- osm_map.php.txt (renombrar a osm_map.php)
Otros ejemplos de uso:
//Mapa de BolsaPHP (400×400)
osm_map(‘bolsaphp.sukiweb.net’, ‘400’, ‘400’);//Mapa de la DNS de telefónica 195.235.113.3 con debug
osm_map(‘195.235.113.3’, ‘400’, ‘400’, TRUE);
¿Que os parece? ¿Simple verdad? Pasadme los enlaces si lo utilizais en algún sitio y evidentemente, sed libres de mejorar y optimizar el código. :)
Un pez en la pecera
Un pez ha posado para que le dispare algunas fotos probando mi nuevo juguete.
Es todo un lujo disparar a 0,033 sec (1/30), con 50 mm y sin trípode. :)
Nuevo juguete para fotografía
Mi mujer me ha regalado un nuevo juguete. Una Canon 5D Mark II que es todo un lujo para un ignorante de fotografía como yo.
La anterior cámara también me la regaló ella. Ya tengo en Flickr más de 10.800 fotos subidas al mi cuenta de Flickr, de las cuales la mayoría han sido disparadas con la Olympus E-500.
Se abre una nueva era para mi cuenta de flickr, la era Canon.
Empecemos… :)