25 de febrero de 2009

Codigo para Blogspot: Leer Mas

Como habrán visto aparece ahora al final de mis post un hermoso "Leer Mas". Lo he colocado (aparte de que queda bien) por que para las estadísticas de Google si uno entra en una página pero en 30 minutos no pulsa un enlace cuenta como un rebote, Estoy usando google analitycs y ahí es donde ví que la cantidad de rebotes era del 60%.

Por lo que con el vínculo de "leer más"...

lo que se logra es que los usuarios y visitantes tengan que hacer click en ese enlace para seguir leyendo y su visita deje de contar como rebote y cuente como una visita en toda regla.

Creo que es algo muy útil a tener en cuenta esto de los 30 minutos para comenzar a mejorar un poquito más las técnicas SEO. Muy probablemente lo aplique al resto de mis webs.

Lo obtenido de este blog, donde podrán encontrar todo el código y las instrucciones para usarlo.

Resto
Leer más...

24 de febrero de 2009

Otra Vez?

Esta mañana estuvo Gmail, para el acceso via web ya que por POP si funcionaba, caído durante casi 4 horas. Actualmente está funcionando.

No es la primera vez que pasa, pero hace muy poco hubo también problemas con respecto a las páginas buscadas.

Esto llama a la reflexión. Nada ni nadie es infalible. Actualmente Google maneja muchísimos datos cada uno de sus servicios es utilizado por millones de usuarios diariamente... caídas de este tipo pueden causar muchos problemas.

Que pasaría si Gmail dejara de funcionar un día entero?

En la página de ayuda de Google muestran este mensaje:
2/24/2009
We're aware of a problem with Gmail affecting a number of users. This problem occurred at approximately 1.30AM Pacific Time. We're working hard to resolve this problem and will post updates as we have them. We apologize for any inconvenience that this has caused. Leer más...

23 de febrero de 2009

Uno, dos tres... probando... probando... AJAX!!!

Siguiendo con el proyecto este que les comentaba estoy metiéndome más con AJAX. Como también habrán leído (eso espero!) estoy trabajando con Codeiginiter como framework de PHP. La comunidad ha desarrollado una libreria para integrarlo.

Sin embargo me embarqué en la tarea de desarrollar aparte, no mi librearía integrada, sino el AJAX basado en Jquery, usandolo en Codeigniter (en adelante CI). Lo que me pareció interesante para comentarles de este caso es la manera en la que manejo la presentación en las funciones a las que llamo.
Dada la manera en la que CI trabaja las llamadas debían ser a metodos públicos de los controladores. La cuestión era.... de donde saco el HTML para presentar los datos que mi metodo ha tratado?

Muy sencillo! En el metodo del controlador cargo el view (la vista) que deseo y le paso los datos como normalmente se hace en CI y en el Seccess del AJAX recupero todo lo devuelto.

Abajo les dejo el código:
En el view donde hago la llamada a AJAX


El javascript con el ajax de Jquery


En el controlador
Leer más...

18 de febrero de 2009

Facebook lo quiere todo!!!

Ayer me enteré de esta noticia y la verdad que me quedé muy sorprendido. Parece que todas las compañías no se quieren perder la posibilidad de ser tu Gran Hermano (antes fue Google o de poseer toda tu e-vida. Si hasta ahora nos quejabamos de Microsoft y sus prácticas de monopolio vamos a tener que cambiar de "villano" y mirar con más atención a internet. Lo "bueno" del asunto es que el intento quedó fallido debido a que se levantó toda su comunidad para protestar y han dado marcha atrás... fue un buen intento(en inglés aqui.

Y hablando de e-vida (esta semana empezó movida con las noticias...) aquí un artículo de como te puedes quedar sin ella en menos de un día. Leer más...

16 de febrero de 2009

Encuentro en el metro

Era tarde. El subterráneo llevaba los cuerpos de adormecidas personas de vuelta a sus hogares donde se sentirían seguros una noche más.
Me subí cuando finalmente frenó luego de un largo chirrido.
Busqué a mi alrededor un lugar libre para sentarme. No reparé mucho en quienes estaban a los lados del sitio que encontré...
Unos minutos después, en la oscuridad de los túneles que trasiega el subterráneo alumbrada por la artificial luz y movido por el tedio miré a mi lado... El pelo negro revuelto que escaseaba en algunas zonas de su cabeza, el bigote tupido tapando el labio superior y haciendo de tapete a una nariz prominente pero no deforme, de venas visibles. Una chaqueta de negro añejo y usado de tiempos mejores. Todo el con un aura extraña pero no amenazante, concentrado en su lectura.
Miré por encima de su hombro. El libro tenía las páginas algo amarillentas y pronto reparé que no era castellano, sino latín. Esto aumentó mi curiosidad que pronto se cruzó con la mirada amenazante de su lector. Aparte la mía como si no hubiera sido a mi a quien miraba y al poco volví a buscar el título de aquel libro que tan poderosamente atraía mi atención;pero no lo logré hasta que estaba en la puerta a punto de bajarme y miré para atrás en un último intento que fue satisfecho. Ante mí y en letras gastadas aparecía el terrible título del aquel terrible libro, sostenido en las manos de aquel hombre en la linea circular del metro de Madrid en su interminable recorrido.
Me quedé atónito unos instantes mientras el tren se marchaba con su terrible carga dentro... y entonces me pregunté ¿Volvería a ver 'El Necronomicon? Leer más...

13 de febrero de 2009

Objetos de atributos dinámicos

Me encuentro ahora mismo en medio de un proyecto importante y muy interesante, desarrollando una aplicación algo compleja.
La "complejidad" radica en que desconozco absolutamente los campos de los formularios que han de llenarse con lo que. Tengo que recuperarlos de una BBDD según una ID, crear el formulario, hacer el control del formulario y luego guardarlo en una tabla con el ID inicial, el ID de cada campo y la información.

Lo estamos realizando con POO en PHP5 y con el framework Codeigniter. A pesar de que Codeigniter tiene compatibilidad con PHP4 y por tanto no es full OO, se pueden utilizar la mayoría de las opciones de PHP5.

Para ello cree una clase Lbase desde la cual heredarían todas las demás con los dos o tres métodos que utilizaran todos mis objetos. Cuales son? Pues son los métodos get y set para los atributos ya que estos son totalmente configurables por los usuarios de la aplicación. Quiere decir que yo tengo que recuperar los atributos de mi objeto desde una bbdd y no se cuales serán.

Lo hice de la siguiente manera (no son las mismas variables, sino unas más descriptivas):



De esta forma generamos atributos dinámicamente. Eso sí perdemos el encapsulamiento ya que, de momento, no he encontrado forma de asignarles la propiedad "protected" o "private" a cada uno de ellos.

Así es como resolví el tema de los atributos dinámicos para le método get. Para el set es algo parecido:



Como ven no es tan complicado una vez se sabe.

Espero que si ven algo mejorable o tienen alguna otra idea me lo hagan saber, estaré encantado. Leer más...

6 de febrero de 2009

Lo que faltaba....

Cuando leí esta noticia sobre el nuevo producto de Google el Google Latitude quedé realmente... anonadado.

¿Por qué? se preguntarán... Pues por que más allá de las implicaciones que como IT me preocupan (aqui) cada vez me sorprende más la necesidad de la gente de saber hasta el último detalle de la vida de los demás... y de que todos sepan de tu vida.

En eso baso yo el éxito de las redes sociales. Que las hay a miles! Por eso también triunfa la prensa rosa. Por la curiosidad!!!!!

Y Google Latitude es la guinda (de momento). Saber donde están tus "amigos" en cada momento, poder rastrearlos o por que no, saber que hábitos de movilidad tiene, a que zona de bares va... si te ha dicho que iba a un lado y fue a otro... 0 privacidad entre "amigos".

Así es que en mi tendencia hacia el lado contrario de la moda y por que me parece una barbaridad, me niego a Latitude. Es un paso más hacia el Gran Hermano. Leer más...

2 de febrero de 2009

Y el día del juicio llegó... y Google cayó

Me hago eco de las muchas noticias que han aparecido (una aquí, con vínculos a muchas otras) sobre la supuesta "caída" de Google. Aparentemente un error en el tipo de fichero buscado colocó a todas las páginas como páginas "malas" o con programas maliciosos.

En otros blogs comparan a Google con Microsoft en cuanto a su "monopolio". Pero es difícil hablar de monopolio en la red. Hay muchas otras opciones para buscar y herramientas para utilizar. Sin embargo la calidad de los productos que ofrece google no han sido alcanzados por otros o bien, no han sabido hacerse con el gran público.

Sin embargo la "googledependencia" que existe ahora mismo es tal que el menor fallo en google puede arruinarle a más de uno la mañana.

Que Santa Tecla no lo permita!!! Leer más...