
Autor: aartiles | Archivado en: Buscadores, Social Media el día 8/Feb/2010
“Si tu web no aparece en los buscadores no existe”, una de las frases más utilizadas por los SEOs y personal relacionado con la presencia en Internet para vender sus servicios en los últimos tiempos, y nada más cierto. La entrada en escena de la web en tiempo real, y los acuerdos de Google y Bing con Twitter para introducir resultados en tiempo real en sus SERPs nos obliga a darle un retoque a la frase para dar título a este post:
Si no apareces en la web en tiempo real no existes
No es suficiente con tener una cuenta en Twitter, es necesario saber usarla para sacarle partido. No solo tuiteamos para nuestros seguidores, si tenemos un perfil público nuestros tweets también aparecerán en los principales buscadores de Twitter como:
Aparecerán también en las más de 55mil aplicaciones de Twitter que agregan y consultan nuestros tweets para sacar conclusiones y estadísticas. Pero lo más importante, aparecerán en los resultados en tiempo real mostrados por Google y Bing.
Es bastante conocido que algunas acciones en Twitter pueden provocar que nuestra cuenta sea suspendida, lo notarás fácilmente porque se limitarán tus posibilidades en Twitter y verás un cuadro rojo alertándote cuando entras a tu perfil vía web. Aquí tienes algunos motivos por los que tu cuenta puede ser suspendida:
- Por el contenido: Suplantación de personalidad, violación de privacidad, violencia, amanezas, violación de derechos de autor, promoción de actividades ilegales, pornografía en los avatares o fondos.
- Abusos: creación de cuentas en serie, reservar nombres, envío de mensajes masivos, venta de nombres de usuarios, malware, phishing.
- Spam:
- Seguir a muchos usuarios en un período de tiempo corto
- Si el usuario sigue y deja de seguir a muchos usuarios en poco tiempo.
- Si el usuario tiene un número mayor a quien sigue en comparación con la cantidad de gente de la que el usuario es seguidor.
- Si las actualizaciones son principalmente enlaces y no actualizaciones personales.
- Si un gran número de gente ha bloqueado al usuario;
- El número de quejas por spam que se han recibido en contra del usuario.
- Si el usuario publica contenido duplicado en múltiples cuentas o múltiples actualizaciones duplicadas en una cuenta
- Abuso de hashtags
- Si el usuario envía un gran número de @replies duplicados
- Si el usuario envía un gran número de @respuestas no solicitadas en un intento de mandar spam a un servicio o enlace
- Si el usuario utiliza el contenido de otro usuario sin atribuírselo.
- Si el usuario ha intentado “vender” seguidores.
Para más información consulta las reglas de Twitter.
Pero como decía, si nos suspenden la cuenta lo notaremos enseguida y podremos actuar en consecuencia para conseguir su restablecimiento. Sin embargo hay algunas acciones que no implican la suspensión sino que hace que nuestros tweets no aparezcan en los resultados de búsquedas y si no lo notamos estamos perdiendo todo el potencial de Twitter.
Para saber si tus tweets no aparecen en los resultados de búsquedas de twitter puedes ir a search.twitter.com y escribir la siguiente consulta sustituyendo @aartiles24 por tu nombre de usuario en Twitter.
Si no aparece ninguno entonces el problema es bien serio y tu cuenta podría estar penalizada, también puedes notar si alguno de tus tweets no aparece y esto es señal de que puedes estar cerca de ser penalizado.
Como todo buscador, Twitter intenta mostrar resultados de calidad, según su documentación:
Twitter filtra los resultados de búsqueda según su calidad. Nuestros resultados de búsqueda no incluyen cuentas, suspendidas o cuentas que pueden comprometer la calidad de la búsqueda Cualquier material que degrade la relevancia de la búsqueda o cause una mala experiencia en la búsqueda de la gente que utiliza Twitter pueden ser permanentemente eliminados.
Algunos comportamientos que pueden penalizar tus tweets:
- Publicar contenido duplicado repetidas veces o contenido duplicado casi por completo (enlaces o tweets).
- Abuso de trending topics o de hashtags (palabras con ‘#’).
- Enviar tweets o respuestas de manera automatizada.
- Utilizar robots o aplicaciones para enviar mensajes iguales basados en palabras clave.
- Publicar mensajes iguales a varias cuentas.
- Seguir y dejar de seguir a usuarios de manera agresiva Volver a publicar contenido público sin atribuirlo al autor.
Debes tener especial cuidado con las aplicaciones de terceros que publican la misma información desde las cuentas de sus usuarios. En mis aplicaciones (followfriday.es y locafollow.com) siempre damos la posibilidad de editar cualquier mensaje automático antes de enviarse y los mensajes son personalizados en función del usuario para evitar estos problemas.
Mucho OJO también con los concursos en Twitter que nos incitan a tuitear el mismo mensaje repetidas veces:
Recuerda que eres responsable de las actualizaciones que publiques en tu cuenta. Si publicas repetidamente o realizas actualizaciones duplicadas casi por completo o enlaces duplicados para entrar en los concursos, puedes ser filtrado y sacado de la búsqueda. Tus seguidores seguirán pudiendo ver tus actualizaciones.
Y si estás implicado en la organización de un concurso en Twitter ten en cuenta todo lo anterior e intenta que las reglas de tu concurso desmotiven las malas prácticas.
Para más información consulta la ayuda de Twitter: No puedo encontrarme en la búsqueda de Twitter
Imagen vía emailmarketingpoint.com

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: General el día 3/Feb/2010
Google App Engine (GAE) se ha convertido en un pilar importante en las herramientas que desarrollamos en equipo24. Algunos nos preguntan que por qué no contratamos servidores, como si Google App Engine fuera gratuito, bueno lo es, pero hasta ciertos límites, límites que todas nuestras apps superan y que sí tenemos que pagar y no es que sea especialmente barato.
Pero estamos pagando por una plataforma que nos proporciona una gran estabilidad y escalabilidad comprobada y que nos permite que nuestros gastos de hosting crezcan en la misma medida que el éxito de nuestras apps, si fracasan no pagamos nada, si tenemos tráfico entonces las cosas andan bien y pagamos a gusto.
Tengo muchas ganas de escribir sobre desarrollo para Google App Engine pero no será hoy. Hoy quiero dedicar mi tiempo a quejarme a los señores de Google, esos nuevos amos de Internet que se ganaron el papel de buenos de la peli ante los malos de Microsoft y Apple, esos que dicen oponerse a la censura en China, que apoyan cientos de proyectos benéficos, que defienden el software libre; Pero los mismos que bloquean el acceso a Google App Engine a Cuba, Iran, Libia, Korea del Norte, Sudan y Syria.
Y no me refiero a permitir crear aplicaciones, que podría entender que no lo permitieran para evitar poner sus recursos a disposición de “supuestos terroristas”, pero es que ni siquiera permiten acceder a las aplicaciones creadas, o sea que aplicaciones como followfriday.es o locafollow.com no pueden ser accedidas desde Cuba y en su lugar ven un mensaje como este:

Google App Engine bloquea acceso desde Cuba
Your client does not have permission to get URL / from this server (Client IP address: xxx.xxx.xxx.xxx) You are accessing this page from a forbidden country
Sin embargo otros servicios como el propio buscador de Google, Adwords, Adsense, Reader, etc, sí funcionan perfectamente (al menos desde Cuba). Así que no logro entenderlo, con este bloqueo cualquiera que decida desarrollar un proyecto con proyección internacional sobre GAE debe saber que de inicio no podrá contar con las comunidades de estos países bloqueados.
La limitación se escuda en la Oficina de Control de Bienes Extranjeros de EE.UU. (Office of Foreign Assets Control) , sin embargo en los términos de uso de Google App Engine no lo especifica, donde único pude encontrar referencia a este bloqueo fue en los términos de uso de Google Code en la sección Export Control.
Users residing in countries on the United States Office of Foreign Assets Control sanction list, including Cuba, Iran, Libya, North Korea, Sudan and Syria, may not post or access Content available through the Google Code website.
Espero que Google recapacite, y al menos permita el acceso a las aplicaciones creadas, nada me hace más ilusión que mis hermanos de cubanos puedan disfrutar de mis desarrollos.
Si compartes mi opinión te pediría que lo compartas/menees/votes pues no he encontrado ningún post que haga referencia a este asunto, como si a nadie le importase.

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: Social Media el día 2/Feb/2010
Perdonad por traeros hasta aquí con este título tan pretencioso, pero bueno ya que estáis os quedáis hasta el final que igual algo se aprende.
Solo un blogger sabe cuánto cuesta escribir un post, buscar una idea original, oportuna, polémica, novedosa y luego desarrollarla, darle formato, añadirle fotos, hacerle algo de SEO, etc. Pero todo esto queda en nada si nadie nos lee, lo comenta y luego lo comparte, es el premio que esperamos conseguir a cambio de nuestra entrega.
Con la entrada en escena de las redes sociales, especialmente Twitter, podemos decidir en qué momento llegar a nuestro público, y hacerlo en un momento poco oportuno puede significar gastar una bala, que de reintentarlo puede llegar a molestar a los que ya lo han visto.
Muchos bloggers tuitean su post varias veces el mismo día, Guy Kawasaky recomienda 4 y yo los suelo tuitear dos veces. La idea no es hacer spam, sino llegar a tuiteros que se conectan en diferentes franjas horarias, por ejemplo los usuarios de América y los de Europa.
Pero aun así, es importante encontrar el momento ideal para lanzar el post. He investigado consultándolo con mis amigos en Twitter y algunos estudios sobre todo en inglés que dan algunos horarios ideales, pero hay muchas diferencias entre los resultados, unos dicen que a las 9am, otros a las 12m o a las 4pm, que en fin, creo que depende de tantos factores que no se puede sacar una regla general.

Reloj Tai por Juan García Gálvez
No hace mucho comenté lo útil que es
bit.ly como herramienta de monitorización de clicks en Twitter en tiempo real.
Bit.ly se ha convertido en mi termómetro de Twitter, con el que puedo
encontrar el momento ideal para tuitear la información que necesito que tenga mayor audiencia.
Lo que hago es ir tuiteando enlaces y monitorizando los clicks que reciben mediante bit.ly, es como decir hola y esperar a ver cuántos me responden el saludo y eso me dará una idea de mi audiencia real en ese momento. Por supuesto las cosas que voy compartiendo son recursos que considero útiles para mis seguidores.
Espero que os sirva la experiencia, a mi me da buenos resultados y me reconforta saber que hay alguien del otro lado que le interesa y lee lo que escribo.

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: PHP, Recursos, Social Media el día 30/Ene/2010
Seguramente habréis visto algunos perfiles de Twitter que en el campo ubicación en vez de poner la ciudad, provincia o país, lo que pone es una coordenada con el formato iPhone: XX.XXXXXX,YY.YYYYYY, o sea latitud y longitud.
Según me cuentan algunos de mis amigos en Twitter, se trata de algunos clientes de Twitter para el iPhone que automáticamente ponen esta etiqueta en la ubicación a no ser que le digamos lo contrario.
No he descubierto si alguna aplicación se aprovecha de esto, pero evidentemente para el usuario humano esta información es irrelevante. De hecho con la nueva opción de geotagging de Twitter ya esto queda obsoleto. Yo creo que rellenar el campo ubicación correctamente en las cuentas personales es indispensable si queremos que nos encuentren y para tus futuros seguidores es una información muy relevante. Por ejemplo para LocaFollow nuestro buscador de Twitter, si no rellenas el campo ubicación correctamente serás invisible.
Hace algún tiempo publiqué sobre cómo desarrollar un bookmarklet, hoy he creado uno bien sencillo que permite decodificar estas coordenadas y geolocalizarlas en un mapa. Específicamente toma el texto seleccionado y lo envía como parámetro a Google Maps.
Para utilizarlo tienes que arrastrar el siguiente enlace y soltarlo en la barra de favoritos de tu navegador:
Para Firefox:
Geolocalizar
Para Safari/Chrome:
Geolocalizar
Para Internet Explorer:
Geolocalizar
Luego, cuando veamos una coordenada, o una dirección, la seleccionamos y presionamos el bookmark que acabamos de añadir y este nos llevará a Google Maps mostrándonos la posición exacta en el mapa.
Es cierto que esto lo podemos hacer manualmente pero no me diréis que no se ahorra tiempo. Se podría hacer un bookmarklet más complejo que sustituyera la coordenada por la dirección o que mostrara el mapa en la misma página, pero ya eso os lo dejo de tarea ;-).

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: Social Media el día 26/Ene/2010
Hace unas horas Twitter abrió las inscripciones para su primera conferencia oficial de desarrolladores. Será el 14 y 15 de abril próximo y se celebrará en el Palace of Fine Arts Theatre en San Francisco, California. Contará con la presencia de los fundadores de Twitter: Biz Stone and Evan Williams, así como Dick Costolo y Ryan Sarrver.
El primer día en la conferencia se tocarán temas como OAuth, estrategias de negocio, integración en platafomas móviles, y se lanzarán nuevas funcionalidades de las API Streaming y de Geolocalización después de la adquisición de Mixer Labs.
El segundo día bajo el nombre de 24 Hours Hack Day, será un maratón de desarrollo Twitter, donde los desarrolladores podrán compartir ideas y obtener consejos de los expertos del sector. También se realizarán talleres sobre cómo usar efectivamente la API de Streaming y la API de búsquedas y sobre la escalabilidad de Twitter. Como es de esperar la conferencia estará colmada de inversores y bloggers en busca de aplicaciones interesantes sobre las que invertir o publicar.
La inscripción cuesta 469USD, y habrá cupo para solo 800 participantes, inicialmente se liberarán solo 100 cupos.
Además puedes comprar un scholarship ticket, es algo como una beca con la que podrás dar la oportunidad de participar a emprendedores que no se pueden permitir ese gasto. Un pequeño número de entradas se destinará a estas becas. Cada scholarship ticket será adquirido de forma anónima y se destinará a apadrinar desarrolladores. Unas pocas semanas antes del evento se realizará un proceso para que los desarrolladores puedan solicitar una beca. Twitter seleccionará a los desarrolladores que se lo merezca y les ofrecerá la inscrición gratuita. Según Twitter esta es una forma de devolver a la comunidad de desarrolladores de twitterapps que en su mayoría son gratuitas y sin un modelo de negocio claro.
Curiosamente no puedes registrarte directamente, exigen un pequeño reto que cualquiera que haya mirado la API de Twitter lo podría superar, pero no deja de ser una idea original. Se trata de averiguar el nombre de usuario cuyo id en la base de datos de Twitter es 6253282.
Para ello no es necesario programar, es suficiente con pegar la siguiente llamada de la API en nuestro navegador:
1
| http://twitter.com/users/show.xml?user_id=6253282 |
Con lo que obtendremos el siguiente XML:
1
2
3
4
5
6
7
8
9
10
11
12
| <?xml version="1.0" encoding="UTF-8"?>
<user>
<id>6253282</id>
<name>Twitter API</name>
<screen_name>twitterapi</screen_name>
<location>San Francisco, CA</location>
<description>The Real Twitter API. I tweet about API changes, service issues and happily answer questions about Twitter and our API. Don't get an answer? It's on my website.</description>
<profile_image_url>http://s.twimg.com/a/1264119427/images/default_profile_0_normal.png</profile_image_url>
<url>http://apiwiki.twitter.com</url>
<protected>false</protected>
... |
En este XML que devuelve encontraremos que el screen_name es twitterapi y esta será la contraseña que necesitaremos para entrar en chirp.eventbrite.com y ver los detalles del evento para inscribirnos o cotillear y ver quienes ya se han inscrito, al final del post os dejo el listado:
La verdad que desde España sale bien cara la asistencia, $469 de inscripción, más unos 1500€ de billetes, más los gastos de la estancia, se monta en un buen dinero que no muchos desarrolladores y emprendedores se podrán permitir. Pero sin dudas es una oportunidad única para todo desarrollador de aplicaciones basadas en Twitter.
Leer el resto de la entrada »

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: SEO el día 25/Ene/2010
Ya he comentado en otras ocasiones que soy adicto a la analítica web, sin embargo no tanto de monitorizar la posición de las palabras en las páginas de resultados de los buscadores (SERPs), prefiero ir directo a los objetivos y analizar la cantidad y calidad de tráfico que reciben mis páginas y desde qué fuentes. Con las búsquedas personalizadas y la geolocalización de los buscadores, va perdiendo sentido monitorizar posiciones pues ya cada uno ve una posición diferente. Si intentas demostrar a un cliente (o a ti mismo) la efectividad de tu metodología y acciones SEO mediante las posiciones en las SERPs te verás en serios problemas.
No obstante el ranking en las SERPs no deja de ser un indicador muy valioso, y un medio para el fin que es conseguir un tráfico cualificado y generar conversiones. Por ello hoy quiero comentar una forma de conocer en qué posición en las SERPs estaba la palabra cuando hicieron click hacia nuestra página.
Con esto no solo conoceremos la posición aproximada de la palabra, sino que podremos descubrir palabras que aunque están mal posicionadas nos envían mucho tráfico y que merece la pena dedicarles un esfuerzo adicional. También contrastaremos que no siempre una buena posición implica más conversiones, encontraremos palabras que estando bien estrás en los resultados sus visitas generan más tiempo en página y hasta más conversiones, y esto es producto de que los usuarios que llegan más lejos en las páginas de búsqueda suelen estar más interesados y tener una mayor intención de compra. Pero sobre todo contrastaremos que la inmensa mayoría de las visitas se reciben de las palabras que aparecen en el top 10, por lo que si no nos posicionamos en portada somos prácticamente invisibles.
Usaremos Google Analytics y sus potentes filtros. Los filtros como indica su nombre nos permiten filtrar las estadísticas por diferentes criterios, ya sea para evitar contabilizar algunas fuentes de tráfico (ej. nuestras IPs) o para obtener nuevos indicadores. Los filtros que aplicaremos afectan los datos que normalmente Analytics analiza por lo que tendremos que crear un nuevo perfil.
Los perfiles de Google Analytics te permiten monitorizar las estadísticas del sitio desde otras perspectivas diferentes de los estándares de Analytics y esto es lo que haremos hoy. Filtraremos para que solo se analice el tráfico orgánico (visitas producto del posicionamiento natural en buscadores) y filtraremos que vengan específicamente de Google. Aunque la técnica se puede extender también a Yahoo y Bing me centraré solo en Google y os dejo como tarea ver cómo se generaliza consultando las fuentes que dejo al final del artículo. Luego parsearemos mediante una expresión regular la URL de Google desde la que nos visitan y construiremos un Valor Definido por el usuario al que podremos acceder desde los informes.
Las URLs de Google suelen tener la siguiente forma:
Página 1:
http://www.google.es/search?hl=es&rlz=1B3GGGL_esES267ES268&q=bitacora+de+webmaster&btnG=Buscar&meta=&aq=f&oq=
En la primera página la URL no contiene información sobre la página actual.
Página2:
http://www.google.es/search?hl=es&rlz=1B3GGGL_esES267ES268&q=bitacora+de+webmaster&start=10&sa=N
Pero a partir de la segunda página encontramos el parámetro start, con valores múltiplos de 10 (a no ser que el usuario configure lo contrario, cosa poco habitual). Este es el parámetro que parsearemos junto al parámetro q que nos da el término consultado.
Como ves, no podremos conocer la posición exacta de la palabra sino el número la página, por lo que si el valor del parámetro start es 50 sabremos que la palabra estaba entre las posiciones 50 y 60, o sea en la página 6.
Sin más dilaciones vamos a configurar los filtros de Google Analytics paso por paso.
Leer el resto de la entrada »

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: PHP el día 19/Ene/2010
La verdad que no sé quién fue el primero en usar las fechas en formato de tiempo transcurrido hasta el momento actual, estilo hace 4 minutos atrás o hace cerca de 1 minuto… yo lo vi por primera vez, o mejor dicho me llamó la atención por primera vez en Gmail, esa interfaz que nos cambió la forma de pensar a muchos.
Con el auge de la web en tiempo real, las fechas en formato tradicional nos dicen ya bien poco,… una fecha en formato time ago o formato tiempo transcurrido nos permite tener una rápida percepción de la antigüedad de un mensaje. Por ejemplo me parece un sacrilegio que un cliente de Twitter como TweetDeck use el formato de fechas tradicionales.
Aquí os dejo una función PHP para calcular las fechas en formato de tiempo transcurrido:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
| public function timeAgoDate($datefrom, $dateto = -1)
{
// Defaults and assume if 0 is passed in that
// its an error rather than the epoch
if ($datefrom <= 0) {
return "A long time ago";
}
if($dateto==-1) {
$dateto = time();
}
// Calculate the difference in seconds betweeen
// the two timestamps
$difference = $dateto - $datefrom;
// If difference is less than 60 seconds,
// seconds is a good interval of choice
if($difference < 60) {
$interval = "s";
}
// If difference is between 60 seconds and
// 60 minutes, minutes is a good interval
elseif($difference >= 60 && $difference < 60*60) {
$interval = "n";
}
// If difference is between 1 hour and 24 hours
// hours is a good interval
elseif($difference >= 60*60 && $difference < 60*60*24) {
$interval = "h";
}
// If difference is between 1 day and 7 days
// days is a good interval
elseif($difference >= 60*60*24 && $difference < 60*60*24*7) {
$interval = "d";
}
// If difference is between 1 week and 30 days
// weeks is a good interval
elseif($difference >= 60*60*24*7 && $difference < 60*60*24*30) {
$interval = "ww";
}
// If difference is between 30 days and 365 days
// months is a good interval, again, the same thing
// applies, if the 29th February happens to exist
// between your 2 dates, the function will return
// the 'incorrect' value for a day
elseif($difference >= 60*60*24*30 && $difference < 60*60*24*365) {
$interval = "m";
}
// If difference is greater than or equal to 365
// days, return year. This will be incorrect if
// for example, you call the function on the 28th April
// 2008 passing in 29th April 2007. It will return
// 1 year ago when in actual fact (yawn!) not quite
// a year has gone by
elseif($difference >= 60*60*24*365) {
$interval = "y";
}
// Based on the interval, determine the
// number of units between the two dates
// From this point on, you would be hard
// pushed telling the difference between
// this function and DateDiff. If the $datediff
// returned is 1, be sure to return the singular
// of the unit, e.g. 'day' rather 'days'
switch($interval) {
case "m":
$months_difference = floor($difference / 60 / 60 / 24 / 29);
while (mktime(date("H", $datefrom), date("i", $datefrom),
date("s", $datefrom), date("n", $datefrom) + ($months_difference),
date("j", $dateto), date("Y", $datefrom)) < $dateto) {
$months_difference++;
}
$datediff = $months_difference;
// We need this in here because it is possible
// to have an 'm' interval and a months
// difference of 12 because we are using 29 days
// in a month
if($datediff == 12) {
$datediff--;
}
$res = ($datediff==1) ? "$datediff month ago" : "$datediff months ago";
break;
case "y":
$datediff = floor($difference / 60 / 60 / 24 / 365);
$res = ($datediff==1) ? "$datediff year ago" : "$datediff years ago";
break;
case "d":
$datediff = floor($difference / 60 / 60 / 24);
$res = ($datediff==1) ? "$datediff day ago" : "$datediff days ago";
break;
case "ww":
$datediff = floor($difference / 60 / 60 / 24 / 7);
$res = ($datediff==1) ? "$datediff week ago" : "$datediff weeks ago";
break;
case "h":
$datediff = floor($difference / 60 / 60);
$res = ($datediff==1) ? "$datediff hour ago" : "$datediff hours ago";
break;
case "n":
$datediff = floor($difference / 60);
$res = ($datediff==1) ? "$datediff minute ago" : "$datediff minutes ago";
break;
case "s":
$datediff = $difference;
$res = ($datediff==1) ? "$datediff second ago" : "$datediff seconds ago";
break;
}
return $res;
} |
El principal problema de este formato de fecha es que al ser relativas a la hora actual, si se trata de una página pensada para que el usuario permanezca mucho tiempo en ella, como por ejemplo redes sociales, o clientes de correo como Gmail entonces al pasar algunos minutos la fecha pierde valor. Para ello necesitaríamos actualizarla cada 1 minuto con javascript o simplemente actualizar la página.
Fuente: PHP Time Ago Calculation

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: BdW, Social Media el día 15/Ene/2010
Pues sí, lo que comenzó con un tweet de Micah Baldwin el 16 de enero del 2009 a las 6:53PM, se convirtió desde su primer día en un fenómeno mundial. Hoy se cumple el primer año de la tradición del #FollowFriday en Twitter.

Primer #FollowFriday
Cada viernes recomendamos espontáneamente a nuestros seguidores, aquellos usuarios que nos han marcado durante la semana. Pocos días antes de lanzar FollowFriday.es mis seguidores me regalaron sus definiciones del #followfriday en 140 caracteres, os invito a consultarlas.
Conmemorando la fecha, hoy hemos lanzado una versión del ranking followfriday para México que recogerá el ranking de los usuarios más recomendados por los mexicanos. Además hemos introducido las anunciadas mejoras del algoritmo en aras de obtener un ranking que sea los más útil posible para aquellos que se inician en Twitter y buscan tuiteros interesantes a quiénes seguir.
Algunas de las mejoras:
- No se contarán las auto-recomendaciones, para evitar autovotos en los agradecimientos.
- Solo se contará una recomendación por usuario, para evitar spam mediante la cooperación entre varias cuentas recomendándose mutuamente múltiples veces.
- Debido al gran volumen de #followfriday que se están realizando hemos tenido que renunciar al procesamiento del ranking en tiempo real para evitar perder Tweets. A partir de ahora los votos se verán reflejados con hasta 4 y 5 horas de retraso.
Además para ambas versiones estarán disponibles los widgets con los que se podrán promover tanto los perfiles de los usuarios como el ranking en general. En la derecha podéis ver un ejemplo del widget del ranking y aquí os dejo el widget de mi perfil:
Este es nuestro post número 1000, por lo que no puedo dejar de agradecer a todos los que habéis posteado en Bitácora de Webmaster y a todos los que nos seguís, comentáis y compartís nuestros posts desde el 2004. En especial a Juan García Gálvez (@jggweb) por dejar Bdw en mis manos con la gran responsabilidad de recuperar su comunidad y prestigio que en sus manos llegó a tener.

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: Social Media el día 15/Ene/2010
Según un estudio de Sysmos que analizó 13 millones de usuarios de Twitter entre octubre y diciembre del 2009, solo un 0.78% son cuentas españolas, por lo que estamos hablando de de poco más 100mil usuarios de la muestra estudiada.
El dato relevante es que España ocupa el lugar 14 en cuenta a número de usuarios por detrás de países como Francia, Filipinas o México.
Evidentemente EE.UU. se lleva el 50% de los usuarios y después para mi sorpresa Brazil con un 8.79% por encima de países como Reino Unido y Japón. Mis estadísticas en LocaFollow.com ya me habían alertado de Brazil pero no tengo tan claro que Japón tenga tan pocos usuarios pues en LocaFollow constituyen la segunda fuente de tráfico después de EE.UU.

Fuente: Sysomos.com
En FollowFriday tenemos algunas estadísticas interesantes pero tenemos que esperar algunos meses para sacar conclusiones, por lo pronto 22mil usuarios que se recomiendan desde España me parece una buena cifra que evidencia que independientemente de que no seamos tantos usuarios, sí generamos suficiente conversación para que en poco más de un mes hayamos encontrado recomendables a más de 22mil usuarios.
Otro dato del estudio que me interesó es que apenas un 0.23% de los usuarios estudiados tienen activada la nueva funcionalidad de geotagging, por lo que por ahora veo poco viable hacer cosas interesantes sobre la API de geolocalización. Es por ello que tanto en LocaFollow como en FollowFriday nos la hemos tenido que ingeniar por otras vías para geolocalizar los usuarios.
Fuente: Sysomos

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.
Autor: aartiles | Archivado en: Recursos, SEO el día 13/Ene/2010
Hace un par de días escribí sobre cómo estimar la influencia de una cuenta de Twitter según la cantidad de clicks que reciben los enlaces que comparte. José Luis Gato (@FranJuice), me dejó un comentario sobre cómo él utiliza un enlace acortado con bit.ly en su perfil de Twitter con el objetivo de monitorizar las estadísticas de visitas hacia su blog. La verdad es que es algo que siempre quise conocer y nunca me había detenido a buscar una solución.
Si bien la propuesta de José Luis es viable, le veo algunos problemas solucionables por otras vías:
- La URL original queda oculta y esto puede echar atrás a más de uno, ya que esta es una técnica muy utilizada por los spamers para enmascarar sus URLs.
- Por esta vía no podemos conocer a ciencia cierta si el click se produjo en el perfil de Twitter o desde cualquier otro sitio.
La solución que se me ocurre es bien evidente para cualquiera que tenga conocimientos mínimos de analítica web. Se trata de etiquetar la URL de la web que queremos poner en nuestro perfil de Twitter, de manera que le pasemos una serie de parámetros que la mayoría de herramientas de analítica web (ej. Google Analytics) comprenden.
Para ello el propio Google tiene una herramienta que nos permite construir fácilmente estas URLs: Google URL Builder. Es una herramienta bien sencilla, simplemente nos pregunta los valores de los parámetros y nos genera la URL:

Google URL Builder
- Website URL: en este campo escribimos nuestra URL
- Campaing Source: Lo que pongamos en este campo aparecerá en la sección Fuentes de Tráfico de
- Google Analytics. Para este caso podemos poner “twitter”.
- Campaign Medium: El valor de este campo aparece como el medio en Analytics ej cpc, cpm, banner, email, etc. Para este caso podemos inventarnos “link”. Así aparecerá clasificada como Otros en Analytics.
- Campaign Term: En este campo se suele poner la palabra clave que envió la visita, generalmente la utilizan los buscadores para especificarle a las herramientas analíticas la palabra clave. En este caso no lo necesitamos por lo que la podemos dejar en blanco.
- Campaign Content: Este campo solo se utiliza si estamos haciendo tests A/B para diferenciar los casos. Para este caso no es necesario por lo que lo dejamos vacío también.
- Campaign Name: En este campo le damos un nombre a nuestra campaña, útil si estamos realizando varia campaña para promover nuestro sitio, por ejemplo “Campaña de Navidad”. Para este caso vamos a poner “Perfil Twitter”
Y listo, le damos click al botón Generate URL y obtenemos la URL correctamente etiquetada que enviará toda la información que necesitamos hacia nuestras herramientas analíticas.
1
| http://www.bitacoradewebmaster.com/?utm_source=twitter&utm_medium=link&utm_campaign=PerfilTwitter |
Como veis la URL parametrizada queda bastante grande y fea, pero el área visible para la URL de nuestra web en el perfil de Twitter es bien pequeña, por lo que solo se alcanzará a ver la URL original y la mayoría de las veces tampoco caben.
Del lado de Google Analytics si vamos a Fuentes de Tráfico, veremos las visitas que tuvimos desde nuestro perfil de Twitter.

Fuentes de Tráfico - Google Analytics - Visitas desde Twitter
Hacemos click en twitter/link y veremos estadísticas detalladas sobre esta fuente de tráfico:

Estadísticas de visitas desde el perfil de Twitter
Enlace: Google URL Builder

Soy Alfredo Artiles, Co-Fundador de
equipo24 y
e24Presenter. Mi pasión es el AJAX, SEO, SEM y emprender todo lo que se me ponga por delante. Si me necesitas estoy 24x7 en Twitter
@aartiles24.