jueves, 23 de enero de 2014

Crear una sesion en 2 dominos distintos con PHP y Curl no es posible (creo)


Siempre se da la ocasión que necesitas crear una sesión en una aplicación y al mismo tiempo tiene que crearse una sesión para el mismo usuario en otro sistema en otro dominio, porque de alguna manera comparten datos o cosas por el estilo.

Para hacer esto podemos hacer uso de http://enable-cors.org/ que permite comunicación entre dos dominios distintos. Otra forma de hacer esto es usando JSONP , que no es mas que un simple truco para superar las restricciones de "same domain policy" en peticiones Ajax.

Pero hoy quiero hablar de tratar de crear una sesión desde PHP usando Curl , Curl nos permite hacer peticiones a una URL desde PHP y recibir los datos en el mismo script. Lo lógico de pensar  es que si puedo hacer una petición desde PHP y enviar parámetros en la petición, entonces puedo enviar las credenciales del usuario al mismo tiempo para crear la sesión en 2 sistemas distintos.

Bueno en teoría si funciona, el script al que hagas la petición desde PHP recibirá los datos y responderá como se espera pero lo que no funciona es al momento de crear la sesión. Si tratas de crear la sesión usando JSONP enviando los datos en la query string funcionara perfectamente pero con Curl no funcionara.
El problema es con la identificación de la sesión, normalmente cuando tu inicias una sesión con PHP se crea un identificador único el cual luego es pasado a nuestro navegador en forma de cookie ó GET , ese identificador es guardado en el servidor y la próxima vez  que un script llama a  "session_start()" PHP verifica ese  identificador en el servidor, si lo encuentra entonces hay una sesión creada. En caso de no encontrar el identificador de la sesión PHP creara uno nuevo.

Entonces la petición Curl no puede recibir el identificador de la sesión que se creo en PHP , por lo tanto cuando visitas el sitio B  no existe el identificador en el servidor para tu navegador. Este comportamiento no pasa con JSONP.

Puedes hacer pruebas usando las funciones session_name() , session_id() de PHP y podrás comprobar que los identificadores de las sesión no son los mismos usando Curl en el sitio A y B.

He leído en algunas paginas que puedes pasar el identificador se sesion del sitio A al B en los parámetros para usar el mismo ID, pero no lo he llegado a comprobar no tengo idea de como hacerlo. No soy un experto en PHP si me he equivocado por favor corríjanme para poder aprender también.

He escrito esta entrada  por si alguna persona también tuvo la idea como yo de usar Curl para crear sesiones y no tiene idea de por que no funciona.



http://saulburgos.com/books/googlemaps.html



lunes, 20 de enero de 2014

Que es un OKR ? ( Objective and Key Result )

No tenia idea de que diablos era un OKR , pero en este video los chicos de mejorando.la queda muy bien explicado. Hasta ahora me estoy dando cuenta de la buena herramienta que son. Esta es una corta definicion sacada de la web de mejorando.la.

" La idea de los OKRs es manejar objetivos personales medibles y enfocados a la visión de la empresa. Los OKRs deben ser públicos, y su función será medir el crecimiento a nivel de empleado, equipo u organización. "

Y aqui el video:


Link : https://mejorando.la/

viernes, 17 de enero de 2014

Explicacion como trabaja la programacion orientada a objetos en javascript

El siguiente es un video donde explican detalladamente como funcion la programacion orientada a objetos ( OOP ) en Javascript , mejor explicacion no puedes conseguir. Recomendado en caso que no sepas como trabaja o simplemente quieras reafirmar tus conocimientos.

Bueno el unico problema es que esta en ingles, pero si habilitas los subtitulos y con la ayuda de google translate podras entenderlo sin problemas. No olvides visitar el link de la pagina oficial , por que ofrecen una herramienta para visualizacion de objectos muy buena donde puedes practicar y ver como tus objectos estan formados y su herencia.









miércoles, 15 de enero de 2014

Como comunicar 2 iframe con diferentes dominios

Mas que escribir un tutorial sobre este tema quiero compartir los link donde yo he encontrado la respuesta a esta duda, basicamente existe una nueva API window.postMessage que permite enviar eventos desde dentro de un iframe hacia su padre contendor.

Los publico por que me fue muy dificil encontrar estos link y quiero ayudar a otros con el mismo problema.

En el siguiente link podras encontrar una explicacion detallada de como funciona este metodo cuando no usamos la API HTML5

 http://softwareas.com/cross-domain-communication-with-iframes

Este es la definicion de la API :

https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage

Aqui un tutorial de como usar la API

http://davidwalsh.name/window-postmessage

Los mejores 100 codigos de Codepen del 2013

El sitio Codepen ha publicado sus 100 mejores codigos publicados del 2013 basado en un algoritmo ninja que ellos tienen. Recomiendo revisar la lista por que hay unos experimentos realmente interesantes que puedes reutilizar en tus propios sitios web, como por ejemplo butones, loader, menus , ect.

link: http://codepen.io/2013/popular


Utilisima herramienta para crear screenshot de tus web Apps





Piensa en esta situacion :

Pasas el tiempo programando una aplicacion web super cool y ahora quieres presentarla a tu audiencia de una forma muy atractiva en situaciones comunes de la vida real y en un determinado dispositivo. Bueno lo primero que piensas es en bajar un template photoshop de un iphone por ejemplo y hacer el montaje tu mismo como por ejemplo en este link : http://365psd.com/day/2-219/

Bueno supongamos que no quieres hacer el montaje tu mismo ó que no sabes como usar photoshop, la verdad que no hay mucho que hacer en estas situacion hasta ahora.

Les presento : Placeit.net una herramienta para hacer este tipo de montajes automaticamente por ti, solo tienes que subir tu imagen y seleccionar el tipo de situacion de la vida cotidiana que mas te guste, pero eso no es todo tambien puedes usar la url de tu sitio web y placeit.net automaticamente creara un screenshot de tu sitio web, y el resultado es muy bueno.

Por ejemplo la imagen de presentacion de esta entrada es de este blog, ha quedado super cool aah? El servicio ofrece una opcion gratuita y de pago.

link : https://placeit.net/#!/stages/listening-music-black-iphone-4

Interesante concepto de tienda online para vender tus productos conoce : Junkstr

La idea de vender productos en linea no ha cambiado nada en los ultimos años, es por eso que esta idea me ha gustado mucho. Basicamente replica la venta por lotes de productos en la web, la misma dinamica usada en los mercados de pulgas.

El proyecto fue desarrollado pro Patricio VidalRodolfo Berríos , desde mi blog los felicito por su idea me parece muy util. Para saber mas sobre como function Junkstr mira el siguiente video. ( por cierto me gusta mucho el nombre )



Ttambien tienes la opcion de que puedes regalar un articulo, me parece excelente.

Link : http://www.fayerwayer.com/2014/01/junkstr-vende-tus-cachureos-por-lotes-fw-startups/