October 23rd, 2011 Category: Curso Uncategorized Zend Framework
15 Comments »
Se hizo esperar este ultimo capitulo, la verdad es que tuve algunos problemas con los codecs, y poco tiempo para resolver este problemita.
Lo prometido es deuda y hoy les voy a mostrar como crear un sitio multidioma.
Como primera medida me baje las banderitas desde iconfinder y las agregue en el top bar de la aplicacion.
Aca les dejo el video para que vean lo simple que es crear un sitio multiidioma con Zend Framework.
March 9th, 2009 Category: Oracle php5 Uncategorized
12 Comments »
Este ultimo tiempo estuve bastante ocupado cerrando algunos proyectos por eso la falta de post en el blog.
El proyecto que mas me ocupo mi tiempo es Personal Book que desarrollamos en Easytech. Basicamente PBOOK es un sistema de ventas de libro online, con el agregado que podes agregarle una dedicatoria a cualquier libro que compres. Atras de este proyecto esta una de las empresas grandes de Chile, Dimacofi.
Despues de viajar a Chile para ultimar detalles sobre el cierre del proyecto, hoy por fin se hace publica la pagina para que cualquier Chileno (por ahora), pueda comprar libros de forma online, sin la necesidad de depender de un stock y sin moverse de su casa.
Para el proyecto se decidio usar Drupal para el manejo del sitio, y los contenidos y Zend Framework para todo el resto. Se uso 2 motores de base de datos, mysql para Drupal, y Oracle XE para el resto.
El sitio cuenta con varios subsistemas, que se comunican entre si a traves de colas de ActiveMQ, un sistema de colas de la gente de Apache Software Foundation, el cual nos resulto excelente para esta funcion.
Si tienen la oportunidad naveguen el sitio y vean como pueden trabajar en perfecta armonia Zend Framework y Drupal .
site: www.personalbook.cl
November 27th, 2008 Category: Programacion Uncategorized
24 Comments »
Un problema recurrente con los sistemas grandes y/o multidominio es mantener la sesion de usuarios entre diferentes dominios.
Es imposible hacerlo con las cookies ya que por cuestiones de seguridad los browser no dejan leer o escribir cookies con diferente dominio al actual.
Lo mismo pasa con las sesiones, si uno accede a una pagina y genera un sesion cuando pasa a otro dominio pierde esa sesion.
La solucion no es nada simple. En el ultimo web and beer se hablo de una solucion, pero esa solucion no me dejo nada convencido, y me quede pensando en la idea.
Actualmente en Easytech estamos trabajando en un proyecto, que inicialmente iba a tener el mismo problema, pero lo solucionamos usando un unico dominio, ya que no era necesario otro. Solo tuvimos que unir varios sistemas, bajo el mismo dominio, pero esto es mucho mas facil, ya que podemos pasar un hash que nos permita buscar la info del usuario en una base de datos o en el file system a traves de las cookies.
Pero este problema de los multidominios tiene solucion, de hecho tenemos un google account, que administra las claves de diferentes dominios, ya sea www.gmail.com, www.google.com, www.youtube.com, www.orkut.com, www.picasaweb.com, etc.. Si google lo resolvio porque no nosotros?
Una manera de resolver este probelma, es guardar los datos de sesion en una base de datos, y los enlaces a los diferentes dominios agregarle el hash que hace de indice en esta base para que pueda regenerar los datos de session. El problema es que si yo accedo directamente a un dominio eso no me va a funcionar muy bien.
Una alternativa a este problema es que todo siempre se redireccione a un dominio, cheque si hay una sesion, y despues redirigirlo, como hace google.
Por ejemplo, cada vez que nosotros accedemos a www.orkut.com, este nos redirecciona a https://www.google.com/accounts/ServiceLogin y envia todos los parametros que necesita para identificar al usuario.
Desde este dominio de autenticacion, generamos la cookie correspondiente con el hash necesario. Y lo volvemos a redireccionar al sitio que quiere acceder con un parametro hash, con el indice para que obtenga los datos.
La solucion parece bastante simple, y creo que lo es pero queria compartirla ya que se me quedo colgada en el ultimo web and beer.
Vamos a ver ahora un ejemplo practico
Yo tengo el dominio www.mail.com, el dominio www.calendar.com, y el dominio de mi empresa que se llama www.cloacas.com.
Un usuario ingresa en www.mail.com, ingresa los datos de su cuenta, este formulario envia un post a http://account.cloacas.com/, valido los datos, genero la autenticacion, y lo redirecciono a http://www.mail.com/?id=1231534232, el dominio mail.com, sabe que tiene que generar la sesion con los datos que va a obtener de la base de datos, con el indice que le paso en id.
Con esto tengo que haber logrado autenticarme en www.mail.com. Ahora el usuario, en otro tab de su browser escribe, www.calendar.com.
Calendar.com, hace lo mismo que www.mail.com, y lo redirecciona a account.cloacas.com, este se fija sino tiene ninguna cookie seteada, y si la tiene busca el hash que guardo en la cookie y la compara con el de la base de datos, si todo esta ok, redirecciona al usuario a www.calendar.com/?id=1231534232, sin la necesidad que el usuario ingrese sus datos, porque ya lo habia hecho en www.mail.com
August 21st, 2008 Category: Uncategorized
No Comments »
Buscando alguna herramienta para manipular pdfs me encontre con Pdftk , les recomiendo que lean la doc, pero basicamente lo que podemos hacer es, tomar un rango de paginas y crear otro pdf a partir de ese rango, mergear 2 pdfs, encriptar desenciptar un pdf, y alguna cosita mas. Para usar esta aplicacion dentro de mi sistema, cree una api para que genere el comando que ejecute pdftk.
Si yo necesito usar pdftk dentro de mi sistema lo puedo hacer con la siguiente linea.
init()
->file($file)
->cat($range)
->output($fileResult);
$command->execute();
?>
Lo que hacemos aca es generar un string valido, cuando tengo el string lo ejecuto, el comando anterior le pide al pdftk que le devuelva un pdf, a partir de un rango de hojas que obtiene de un pdf x.
Si les interesa la api la pueden descargar de aca
July 29th, 2008 Category: Uncategorized
No Comments »
Hace dos días murió Randy_Pausch.
El cual hace varios meses dio un discurso muy emotivo sobre la vida, el discurso esta filmado hace varios meses y se llamo “The last learning.” (la ultima lección). Un discurso que dura 90 minutos, y que cuenta un poco su historia de vida. Lo vi hace unos meses, pero hoy lo escuche otra vez en la radio, y creo que esta bueno compartirlo.
Acá les dejo una primer parte de 10 minutos subtitulados en español.
July 16th, 2008 Category: Uncategorized
No Comments »
Es una realidad que el desarrollo web no es solo un lenguaje, y no solo una tecnologia. Nosotros trabajamos en diferentes plataformas (Win, Linux, Max), desarrollamos en varios lenguajes (php, .net, jsp, js, flex, ruby, etc). Cada lenguaje, y herramienta nos permiten crear ciertas caracteristicas que podemos usar para cierto proyecto. Por eso decir que yo solo programo en PHP no solamente nos limitamos en el mercado laboral, sino en la potencia de nuestros desarrollos. Hoy en dia estan sonando tecnologias muy fuerte a nivel web como Flex, Air, RoR, y no son herramientas que un desarrollador web tenga que despreciar. Pensar en un sistema que integre varios lenguajes no es una locura, de hecho no lo hacemos acaso?
Cuando creamos una web, minimamente usamos PHP, JS, Html, y Css. Porque no agregar Flex, o RoR.
Un ejemplo seria hacer el front end de una web con PHP5 y el backend con Flex, o RoR. No es una locura, y me parece que el resultado final puede darnos muchos reditos.
Por esto decidi cambiar la idea de Zend Hispano, por Desarrollador Web. Porque no tenemos que ser fundamentalistas de un solo lenguaje, y de absolutamente de nada, porque un viejo loco siempre decia, que todo es relativo.
Entre los cambios que van a ver en el blog contamos.
Cambio de dominio. Ahora sera http://blog.pablo-morales.com
Cambio de imagen y de herramientas. Vamos a usar wordpress, y espero que les guste este divertido themes.
Cambio de visor de PDF, ahora voy a usar Scrib que genera PDF mucho mas grandes, y claros.
Cambio de contenidos. Ahora vamos a estar mas orientado a lo web, y no solo a PHP5 y Zend.
Espero que disfruten estos cambios, y son libre de dejar cualquier opinion al respecto




