eventuis es mi primera web que hace un uso extenso de la geolocalizaci?n. Cada evento puede ser geolocalizado y esto permite a cualquier usuario buscar los eventos m?s cercanos.
Empec? desde cero a aprender todo lo que pude acerca de la geolocalizaci?n. Desde formulas con arcocosenos hasta el radio de la tierra al nivel del mar de media (6.372,797 kil?metros).
Una de las preguntas m?s interesantes que me surgi? fue ?cuanta precisi?n necesito? Hice una serie de c?lculos sencillos que no encontr? por ning?n lado y por eso me decid? a hacer esta anotaci?n.
Para averiguarlo hice una tabla indicando la precisi?n dada por determinado numero de decimales de grado.
Grados
| Precisi?n |
0,1 |
1 |
11 kil?metros
|
0,01 |
2 |
1.112 metros |
0,001 |
3 |
111 metros |
0,0001 |
4 |
11,12 metros |
0,00001 |
5 |
1,11 metros |
0,000001 |
6 |
11,2 cent?metros
|
De forma que, por ejemplo, la distancia entre latitud 1? y latitud 1,0001? es de poco m?s de 11 metros (misma longitud y a al nivel del mar).
?Que conclusiones extraigo de los resultados?
Pues resulta que la mayor?a de webs se exceden en la precisi?n para geolocalizar sus items.
Por ejemplo en la Wikipedia la precisi?n habitual es de 6 decimales de grado. Madrid est? geolocalizada con una precisi?n ?11 cent?metros. En mi opini?n para geolocalizar ciudades es suficiente con indicar latitud 40,416?N, longitud 3,700?W.
Volviendo a mi caso particular. Los eventos de eventuis son por ejemplo partidos de f?tbol, congresos, conciertos... para geolocalizar estos eventos he decidido usar 4 decimales, es decir 11 metros arriba o abajo, lo que mide una rotonda de di?metro.
Mi consejo/conclusi?n:
Cuatro decimales de grado son suficientes para la gran mayor?a de aplicaciones web.
Puede que alg?n proyecto requiera 5 decimales de grado, no es descabellado, pero m?s all? es rotundamente in?til. A no ser que sea un sistema de guiado de misiles y puede que incluso en este caso sea innocua una precisi?n ?11 cent?metros.
Y la pregunta que algunos me han hecho. ?Porqu? escatimar en decimales?
Con eventuis he pensado a lo grande (por escalabilidad que no sea) del orden de millones de eventos geolocalizados. Adem?s se requiere algunos c?lculos que consume muchos recursos como la obtenci?n de los eventos m?s cercanos a una posici?n dada. En definitiva, cuanto menos RAM y c?lculos consuma mejor. Puede que estemos hablando de muy pocos recursos ahora, pero pensando a lo grande creo que es buena idea empezar ahorrando.
Postdata: un GPS de coche normal ofrece una precisi?n de 15 metros. El sistema GPS de uso civil m?s avanzado llega hasta 1 o 2 metros en las mejores condiciones usando 12 sat?lites (12 canales).
Experimentando un poco en esto del Software Libre y la liberación de código, para ver que se siente.
Ayer me lié programando unas herramientas gratuitas para la blogosfera. Encontré un monton de ejemplos y funciones de PHP que me fueron útiles para realizar el Caché Web. Sin embargo hubo una función que no encontré y tuve que hacerla a mano. Es sencillita, pero quizá a alguien le ahorre tiempo algún día.
En resumen: obtiene como resultado la URL path a partir de una URL normal dada. El código de la funcion preparada para usarse es el siguiente:
function get_url_path($url) {
$part1 = explode("/", $url);
$count = count($part1);
$count_array = $count - 1;
if ($count >= 4) {
if ($part1[$count_array] != ’’) {
$path = str_replace($part1[$count_array], ’’, $url); }
else { $path = $url; }
} else {
if(substr($url,-1) != ’/’) $url .= ’/’; $path = $url; }
return $path;
}
Ejemplos:
URL dada: http://www.teoriza.com/index.php Resultado: http://www.teoriza.com/
URL dada: http://www.teoriza.com/directorio/prueba.php?p=0 Resultado: http://www.teoriza.com/directorio/
URL dada: http://www.teoriza.com/?p=0#comentario Resultado: http://www.teoriza.com/
Pues eso, nada del otro mundo. Pero igual que yo encontré varias funciones útiles, alguien encontrará utilidad a esta seguro.
SHOUTcast, de los creadores del mitico Winamp, es un sistema que permite montar un servidor de musica en streaming de forma sencilla. A continuación explicaré los pasos a seguir para hacer funcionar por completo nuestra propia radio en Internet a la que podrán conectarse decenas de personas, podrás pinchar musica de tu ordenador y si tienes micrófono podrás emitir tu voz para disfrute de tus Internetoyentes.
Si quieres saber cómo conectar a una radio online de Internet revisa este artículo en el que explico como hacerlo paso a paso.
Crear el servidor de radio de Internet SHOUTcast:
- Descargar e instalar el servidor SHOUTcast descargandolo de aquí (260kb)
- Ejecutar el programa en cualquier ordenador que pueda actuar como servidor. El SHOUTcast trabajará el proceso y distribución de la radio en el puerto 8000.
- Ya está funcionando. La configuración por defecto es válida aunque es aconsejable cambiar la contraseña por defecto, modificando el archivo sc_serv.ini
Como conectarse como DJ al servidor de radio y pinchar música:
- Instalar el Winamp 5.x (antiguo) descargable desde aquí (1,22mb)
- Instalar el plug-in SHOUTcast DSP descargandolo desde aquí (490kb)
- Abrir el Winamp
- Click derecho en Winamp
- Options... > Preferences > DSP/Effect
- Pulsar en el plugin SHOUTcast
- Una vez activado, es el momento de cargar las canciones en el listado del Winamp, recomiendo buscar los mp3 en Windows y arrastrar las elegidas.
- Pestaña Output
- Rellenar los datos: IP (address), puerto y contraseña (por defecto es: changeme), seleccionar Output 1 y Encoder 1
- Boton Conectar
- Pinchar tu musica, estarás emitiendo en Internet
Con micrófono puedes emitir tu voz como en una radio del MundoReal siguiendo estos pasos:
- Pestaña Input
- Seleccionar Input decive: Soundcard input
- Selecionar Microphone
- Pulsar en Push to talk cada vez que hablemos, bajará automaticamente la música y activará el micro
Para conectar a una radio de Internet. Lo imprescindible para conectar a una radio de Internet es la dirección y el puerto, pues con estos datos el reproductor será capaz de encontrar el servidor y conectar a el. Por ejemplo: 234.23.72.33:8000
Pasos para conectar a una radio con Winamp:
- Abrir Winamp
- Pulsar Control + L
- Introducir la IP y el puerto de la radio (algo así como: 234.23.72.33:8000)
- Aceptar y hacer doble clic en la "canción" que has añadido
- Cargará el buffer y empezará a oirse la radio online.
Pasos para conectar a una radio con Windows Media Player:
- Abrir el Windows Media Player
- Pulsar Control + U
- Introducir IP y el puerto pero precedido de http:// (por ejemplo: http://234.23.72.33:8000)
- Aceptar y esperar a que cargue el buffer y poder disfrutar de la radio
Una vez aclarados los puntos relacionados con la conexión a las radios procedo a indicar los pasos para crear un servidor en Internet.
Voy a explicar un método para detectar intrusos en tu red WiFi, es decir, conexiones a tu router no deseadas como por ejemplo un vecino.
Pero antes quiero matizar dos puntos clave:
- Mi opinión: se recomienda pedir permiso antes de usar una red WiFi, pero pienso que si es ético usar la red de un vecino si está abierta (al fin y al cabo sus microondas están invadiendo tu hogar), siempre y cuando no se usen demasiados recursos. Es decir, si se utiliza un programa P2P o se hace alguna descarga pesada, aunque solo sean 20 minutos, en mi opinión se está abusando y personalmente tomaría medidas (encriptar el router por ejemplo).
- Por experiencia: normalmente las sospechas de robo de Internet son equivocadas. Se debe tener en cuenta que hay muchas causas que pueden empeorar nuestra conexión. Algunos ejemplos: routers y firewalls internos de nuestro ISP que filtran nuestro tráfico, malware que consume conexión, servidor web lento o caído... y así decenas!
Encontrar posibles intrusos conectados a tu router WiFi:
Nivel básico. Pasos para acceder al control de tu router y ahí ver el listado de IPs asignadas a conexiones.
- Acceder a http://192.168.1.1 con el navegador. (esta dirección IP suele ser la de tu router, en extraños casos puede ser distinta)
- Introducir usuario y contraseña. Está inscrito debajo de tu router, en caso contrario es una genérica como: admin:admin, admin:1234.
- Buscar las opciones DHCP. Este punto es subjetivo ya que cada router tiene su propio panel, pero no es muy dificil encontrarlo. No está de más ver todas las opciones y así conocer un poco más tu router. El DHCP es un servicio que asigna automáticamente IPs a cada equipo que se conecte, simplificando la configuración de una red local (LAN).
- Cuando hayas encontrado la lista de IPs DHCP verás algo similar a esto:

- Ahora solo hay que identificar cada una de las IPs y por descarte sabrás si hay intrusos. Hay que tener en cuenta que las consolas actuales suelen conectarse al router. En este caso de ejemplo se pueden ver dos portátiles (gizm y gnzp) y Wii que es mi consola. Y sus respectivas direcciones IP, las MAC es un código similar a la IP más difícil de modificar.
- Comprobar si está en este momento conectado el posible intruso con un ping a su IP. Supongamos que no sé quien es "gnzp", para asegurarme de que está conectado ahora mismo debo acceder a la consola de MS-DOS (símbolo de sistema) y escribir simplemente ping 192.168.1.4 en este caso. Si responde, está conectado.
Mi consejo para estos casos es simplemente poner contraseña al router y así curarnos en salud. Pero también se debe tener en cuenta que el protocolo de encriptación WEP no es muy seguro, será fácil de hackear crackear por un experimentado usuario.
En este caso extremo la situación puede ser muy hostil, ya que puede perjudicar notablemente a tu conexión. Dejar un comentario al respecto, intentaré echaros una mano.
Soluciones para proteger tu WiFi:
- Encriptar con WPA2. Dicen que es muy muy seguro.
- Encriptar mediante WEP, esto consiste en crear una clave aleatoria de 64 bits o más desde el panel de tu router. Se recomienda encriptar a 128 bits o más
- Excluir conexiones exceptuando una lista blanca de direcciones MAC. Muy seguro.
- Desactivar el WiFi y usar el cable de red RJ45 ;) 100% seguro, garantizado.