Twitter, Snowflake, Números grandes y PHP

Desde que los ID’s de los estados en Twitter son mayores que la representación de enteros usando 32bits, había estado usando el tipo float para filtrar rápidamente esos valores, digamos:

$statusid = isset($_GET['statusid']) ? (float)$_GET['statusid'] : 0;

Con float se pueden tener hasta 14 dígitos sin pasar a la representación exponencial (1.xxxxxxE+NN), y como Twitter solo estaba generando ID’s de 11 dígitos, me pareció que había bastante tiempo antes de que se pasara el límite de float. Además me sirve que tenga la representación como número para comparaciones ($lastid > $firstdbid ) o para hacer cálculos sobre estos (etags).

Ahora que Twitter anda generando los ID’s con Snowflake (más información al respecto en el blog de Twitter), cada ID requiere 15 dígitos o más (53bits por ahora).

Esto no es problema si se tiene PHP a 64bits, ya que se pueden tener hasta 19 dígitos antes de alcanzar el límite. Si se tiene PHP compilado a 32bits, no queda de otra más que usar strings. Un forma rápida para filtrar los IDs tanto para 64bit y 32bit sería:

function safelongint($strint)
{
	$intval = intval($strint);
	if ( $intval == PHP_INT_MAX)
	{
		return preg_replace('/[^0-9]/','',$strint); //eliminar cualquier cosa que no sea dígito
	}
		
	return $intval;
}

Aún si los ID’s pasan el límite de los 64bits, debería usar strings automáticamente. Ya solo queda que la base de datos no tenga problemas con números tan grandes 😉 .

Actualización: Al 10 de Noviembre, Twitter ya llegó a los 17 dígitos en los ID’s… a ese paso el límite de los 64bit durará menos de lo que imaginé.

Twitter conoce el spam

Pues parece que los spammers ya están haciendo de las suyas en twitter, en los ultimos días he recibido bastantes notificaciones de que tengo nuevos seguidores en twitter:

notificaciones de twitter

Todos con nombres de letras y números, muchos amigos y muy pocos seguidores; algunos son insistentes y te agregan varias veces con tal que hagas lo mismo. Lo bueno es que twitter te permite bloquearlos para que dejen de molestarte. Realmente me parece que a twitter le va haciendo falta una forma sencilla para reportar estos spammers, de momento está el formulario de ayuda pero parece que no da resultados.

Me parece que están usando la API de Twitter para agregar amigos a estos usuarios, es realmente fácil, solo se necesita tener un listado de usuarios y aferrarse al límite de 70 peticiones por hora.

Almenos lo bueno es que el numero de mis seguidores sigue aumentando 😉

Etiquetas: , , , ,

iPownce, cliente pownce para el iPhone

Siempre que navego hacia la página de Pownce desde el iPod Touch, a pesar de que el Safari que incluye se defiende, se pone todo lento por el tamaño de las imágenes y el resto de elementos que carga, que en total suman 526KB. Resulta bastante complicado usar Pownce desde el iPod Touch/iPhone.

Justamente el fin de semana encontré iPownce, un cliente pownce hecho para el iPhone / iPod Touch. Utiliza la API pública de Pownce y iUI para crear un cliente bastante ligero:

iPownce - cliente pownce para el iphone

La verdad tiene buen pinta iPownce, solo parece que no maneja bien los caracteres UTF8 como las tildes. Lo malo sigue siendo que Pownce solo tiene una API para leer notas, aún nada para publicar notas…. mientras tanto se queda retrasado respecto a Twitter o Jaiku.

Etiquetas: , , , , ,

Algunos datos de los chapines en Twitter

Desde hace tiempos quería usar la API de twitter para más de algo, solo por curiosidad, y encontré una buena excusa para hacerlo. He tomado los datos de los chapines (guatemaltecos) que sigo en twitter y sacado algunas estadísticas, aprovechando la ocasión para depurar un poco a quienes sigo en twitter y agregar otros chapines más. Me sorprendió encontrar muy pocos chapines en twitter, apenas 28 activos y unos cuantos más que se olvidaron de su cuenta rápidamente.

Los datos que he recolectado con la API de twitter de cada usuario los he publicado como html y xml, acá solo voy a publicar algunas estadísticas.

Usuarios con más amigos:

  • cvander – 268
  • SiRGt – 88
  • pacunar – 73
  • abasme – 68
  • j_aroche – 56

Usuarios con más seguidores:

  • cvander – 288
  • pacunar – 110
  • j_aroche – 81
  • SiRGt – 75
  • iemz – 66

Parece que a cvander le ha servido mucho el “networking” 😉

En total se han publicado 12,948 tweets por los chapines, de los cuales los siguientes son los que han enviado más tweets:

  • j_aroche – 2335 (18%)
  • iemz – 1510 (11%)
  • SiRGt – 1080 (8%)
  • pena2 – 1068 (8%)
  • strgt – 915(7%)

Todo parece indicar que yo utilizo twitter como chat ;). Sería interesante idear alguna formula para ponderar a los usuarios y ver quién la tiene más larga xD, o aún más hacer un pequeño script que saque estos datos semana a semana (y ponerlo en blogschapines)… solo por diversión 😀

¿Alguien tiene idea de que otro dato podemos sacar de twitter he inferir conductas peculiares? Sé que se puede sacar más, pero es una limitante que twitter solo permita 60 consultas a la API por hora… en teoría. Veremos si es cierto jeje

Etiquetas: , , , , ,

Plugin de estadísticas basado en Wordpress.com

Quizás una de las cosas que muchos usuarios envidian de WordPress.com es su sistema de estadísticas, no tan completo como Analytics, pero suficientemente funcional como para ver que es lo que más se mueve por el blog. Genera unas bonitas gráficas Flash como esta imagen:

Estadisticas en WordPress.com

Ahora, estas estadísticas ya están disponibles para quienes tengan su blog fuera de WordPress.com por medio del plugin de estadísticas liberado hace unas horas. Este plugin llamado Automatic Stats, esta disponible en el Repositorio de plugins para worpdres; para instalarlo es necesario contar con WordPress 2.1 o superior y contar con una API Key de WordPress.com.

La instalación es bastante sencilla: bajas el zip, lo subes a tu blog, luego lo activas y automáticamente te pedirá la API Key. Lo bueno es que si ya tienes Akismet funcionando (seguro que lo tienes!) detectará la clave y podrás usarla. Una vez completada la instalación verás una nueva pestaña en el Dashboard de tu blog que es un enlace hacia el Gobal Dashboard acá en WordPress.com. Ojo, que vas a necesitar tu usuario y contraseña del usuario con el cual te registraste, para acceder a las estadísticas.

Para quienes no coscan las estadísticas de wordpress.com, estas te permiten ver:

  • Total de páginas vistas en el blog, medido respecto a la hora UTC.
  • Top Lins Entrantes/Referidos
  • Posts más vistos
  • Top de palabras claves usadas para llegar a tu blog
  • Top de Clics salientes
  • Estadísticas Generales (mejor día en page views, pagevies de hoy y total de pageviews)
  • y los últimos enlaces entrantes a tu blog.

La Gran ventaja de este plugin, es que no agrega carga adicional a tu servidor o espacio en la base de datos, estas usando los servidores de WordPress.com así que no pierdes nada con dar le una probada 😉 Otra ventaja es que los datos son en tiempo real o casi, no tardan tanto en aparecer como en el caso de Analytics, muy util cuando quieres ver que es lo ultimo que se mueve en el blog.

Si están interesados en saber más detalles técnicos del funcionamiento de este plugin, Andy lo explica en su blog.

Actualización 21 de Agosto: Ahora puedes ver los datos agrupados por días, semanas o meses; aunque solo es para la gráfica principal de paginas vistas y no para el resto de opciones.