FirePHP
Hace tiempo ya que uso Firebug a diario, me hace la vida mucho más sencilla a la hora del desarrollo web. Para los que no la conocen, Firebug es una extensión para Firefox que nos permite realizar operaciones de debug sobre diversos aspectos de la página web que estamos viendo, incluso modificarla “en vivo” y es especialmente útil a la hora de trabajar con javascript. En todo este tiempo siempre quise encontrar algo similar, pero para debuguear PHP (la aparición del “paradigma” Ajax ha hecho un tanto más engorroso el debug de nuestro código PHP). Mis ruegos se terminaron hace unas semanas, cuando me topé con FirePHP.
FirePHP es una extensión para Firefox que se agrega a Firebug de forma tal que este puede recibir información de debug de nuestros scripts PHP. “Cómo funciona esto?” se preguntarán. Pues muy fácil, con sólo bajarnos una pequeña librerÃa e incluirla ya podremos hacer uso de la función fb() que nos permitirá “arrojar” todo tipo de estructuras de datos (desde variables hasta objetos) a la consola de Firebug, haciendonos mucho más facil la vida de manera casi instantánea.
php&Beers 2.0 !

Hace dos meses iniciábamos una convocatoria, para conocernos personalmente, charlar y tomarnos unas cervezas. Asà es como nacÃa php&Beers Buenos Aires. Y ya es momento de relanzar la llamada e invitarlos a todos a la segunda edición del encuentro!
Volvemos a juntarnos entonces, en CervecerÃa Antares (Armenia 1447, Palermo), este Jueves 24 de Julio, a las 19:30 horas. La idea sigue siendo la misma, juntarnos a tomar unas cervezas, a comer algo y charlar sobre el desarrollo de aplicaciones (o mujeres, o fútbol, o lo que venga al caso). No es necesario ser desarrollador en PHP para asistir, desarrolladores de cualquier tecnologÃa relacionada, serán bienvenidos.
Entonces, la propuesta está hecha. Si tienen alguna duda o desean confirmar su asistencia, pueden utilizar los comentarios de la entrada. Espero entonces verlos este jueves!
Conclusiones del primer PHP&Beers Buenos Aires
Un poco tarde, pero querÃa dejarles mis conclusiones sobre el primer PHP&Beers Buenos Aires que organizó ZonaPHP el pasado Jueves 24.
El primero en llegar fue Enrique Place, programador Uruguayo más conocido como PHPSenior. Estuvimos charlando hasta que más tarde apareció Federico Finos, programador estrella de DigiKnow. Más tarde, se acercó Gerardo Benitez, programador en Core Security Technologies (ex-compañero de trabajo), y finalmente llegaron Guillermo y Hernán de ElWebmaster.com (aunque ellos no se identifiquen con el sitio
).
De izq. a der: Enrique Place, Hernán Kleiman, Guillermo Narbaitz, Gerardo Benitez, Federico Finos y Pablo Rigazzi.
La charla fue amena en todo momento, y enseguida comenzó la degustación de cervezas (muy recomendada la CervecerÃa Antares), mientras la conversación tocaba distintos temas: desde la utilización de frameworks, como Zend, Symphony o algún framework propio; la demanda de programadores con mayor conocimientos del lenguaje y de programación orientada a objetos, asà como la necesidad de capacitar a la gente en estos menesteres; hasta las maneras en las que se participa de una comunidad de desarrolladores. Si quieren más detalle, Gerardo BenÃtez lo detalla mucho mejor que yo.
Cómo una primera experiencia, yo creo que ha sido muy satisfactoria, y la conversación con gente del ambiente siempre es reconfortante, para nutrirse de las experiencias y conocimientos de otros. Queda la propuesta abierta para organizar otros PHP&Beers en el futuro, ya sea en Buenos Aires nuevamente, o para los grupos del interior del paÃs (se vió levantar la mano a la gente de Córdoba y de Rosario). Desde ZonaPHP van a contar con el apoyo y la difusión necesarias.
PHP&Beers Buenos Aires – Confirmado!
Es hora de que la comunidad PHP en Argentina se conozca. ¿Y qué mejor oportunidad para hacerlo, que en un barcito tomando unas cervezas? Con Enrique Place (que ahora está viviendo en Argentina) hace tiempo que tenemos ganas de organizar este tipo de eventos, asà que aquà se lanza la propuesta:
La idea es juntarnos a tomar algo y conocernos, preferentemente en CervecerÃa Antares (Armenia 1447, Palermo), el Jueves 24 de Abril, a las 19:30 horas. Este bar posee una ambientación fantástica, es muy grande y nos ofrece siete variedades artesanales de cerveza… ¿qué más pedir?
Además, ya que la convocatoria en Buenos Aires puede dejar a muchas personas afuera, los invito a que organicen otros PHP&Beers en otros puntos dentro de Argentina, y desde los paises en que estén leyendo ZonaPHP, ya que la oportunidad de conocer a personas que están haciendo lo mismo que nosotros, es imperdible.
Ahora que ya está confirmado el lugar, la fecha y la hora, les pido que si pueden ser tan amables, confirmen su asistencia o no, para poder estar al tanto de cuántos esperar aproximadamente. Saludos a todos y espero verlos el Jueves.
Disponible Zend Framework 1.5 Preview
Hace mucho realmente que no publico nada en este blog, y me disculpo por ello. Deben ser muchas las personas que aún acceden por los contenidos que existen y que aún hoy sirven para aprender algo de PHP. Pero esta vez me acerco nuevamente, porque querÃa compartir esta noticia: ya se liberó la versión 1.5 (Preview) del Zend Framework.
ÿltimamente le estoy prestando mucha atención a Zend Framework, más que nada porque estoy muy de acuerdo con su filosofÃa de desarrollo y porque sus componentes, si bien en algunos casos son simples de usar, guardan una buena relación de complejidad y flexibilidad. Es probable que no dentro de mucho haya más información de este Framework en Zonaphp.
Una pequeña y resumida lista de las caracterÃsticas nuevas de Zend Framework 1.5:
- Nuevo componente Zend_Form con soporte para AJAX
- Nuevos Action Helpers y View Helpers para facilitar peticiones y dar respuestas basadas en AJAX.
- Autenticación basada en Infocard, OpenID y LDAP.
- Soporte para búsquedas Lucene más complejas, con wildcards o rangos de fechas.
- Soporte para para el formato de Ãndice de busquedas Lucene 2.1.
- Nuevos View Helpers para realizar composiciones y renderizado más complejos de vistas.
- Nuevo componente Zend_Layout para facilitar la composición de vistas.
- Soporte UTF-8 para la creación de PDFs.
- Nuevos controles para acceder a Webservices de Technorati, Slideshare y Remember The Milk.
En particular, pongo mi entera atención en el componente Zend_Layout y Zend_Form que son completamente nuevos y de los más necesarios a la hora de hacer un sitio web fácilmente. Espero que más pronto que tarde, pueda estar publicando algunos breves tutoriales de Zend Framework aquà en ZonaPHP.
Para descargar esta versión, solo deben acceder a http://framework.zend.com/download.
GoPHP5 y sentencia para PHP4
GoPHP5 es un proyecto creado por varios desarrolladores, muchos de ellos de algunos de los programas hechos en PHP más utilizados, para darle un nuevo impulso al PHP 5.x, que ya va a cumplir tres años desde su lanzamiento. Lo que este grupo aclama es que PHP4 ya ha cumplido un servicio a la comunidad, y muchos ( cuando no casi todos ) los problemas de esa versión, se resolvieron en PHP5, pero aún asà la transición en estos tres años ha sido muy lenta.
Por eso nace este compromiso, patrocinado por GoPHP5 y adoptado por desarrolladores y web hostings, de darle soporte completo a PHP 5.2 a partir del 5 de Febrero de 2008. Explicándolo mejor: a partir de esta fecha, todos los proyectos que se adhieren a GoPHP5, deben requerir para correr PHP 5.2 al menos, o la versión más actualizada a esa fecha. Asà mismo, las empresas de Hosting se comprometen a tener instalado en sus servidores la misma versión de PHP.
A todo esto se suma el anunio hecho hoy por PHP.net, de que ya no darán más soporte a PHP4 a partir del 31 de Diciembre de 2007, asà como tampoco lanzarán más versiones de la rama 4.4.x de este lenguaje, centrándose por completo en PHP 5.x y en el próximo a aparecer, PHP6.
Foros de Discusión en ZonaPHP!
Se que lo mencionamos hace bastante tiempo ya, pero finalmente hemos podido cumplir con nuestra promesa (más vale tarde que nunca), asà que aqui estrenamos los nuevos Foros de Discusión de ZonaPHP!. Básicamente, queremos ofrecerles un espacio para ustedes, donde puedan interactuar con otros programadores hispanos, compartir ideas, resolver problemas o quizás, iniciar algún proyecto nuevo.
Como antes que nada, somos creyentes de que “Lo bueno, si simple, dos veces bueno“, es que intentamos encontrar un foro que sea muy sencillo de utilizar. No es necesario registrarse nuevamente, ya pueden ingresar al Foro con su usuario de ZonaPHP y comenzar a interactuar con otros programadores como ustedes.
Hemos abierto un tema para que nos dejen sus comentarios e impresiones sobre el Foro, y como medio de contacto (medio primitivo, pero algo al fin) con las personas que hacemos zonaPHP. Gracias al Foro, y con el tiempo, creemos que llegaremos a conocernos un poco más, y surgirán nuevos proyectos que nutrirán el sitio y servirán como herramientas para todos.
Hasta entonces… nos vemos en el Foro!
PHP Freelance
En caso de que estés buscando un proyecto nuevo en el que trabajar, o te interese comenzar a trabajar como Freelance en PHP, entonces te dejo aquà una lista de sitios donde buscar trabajo como programador PHP
Es probable que al ingresar en alguno de los sitios, no parezcan tener relación con PHP. Tan solo utiliza sus buscadores con la palabra ‘PHP’ y aparecerán los avisos.
Perfeccionarse o morir.
Desde la evolución en adelante, todo se trata sobre mejorar o caer en el intento. Y esta es una de esas verdades innegables. Y los programadores PHP tampoco estamos exentos de esta regla. Es hora de que el programador en PHP de un paso evolutivo, cuantitativo y cualitativo, y se aleje de a poco de los conocidos y cómodos scripts o “código chorizo”, y se anime a los “nuevos” y desconocidos terrenos de la programación orientada a objetos, pero más que nada, a la “Arquitectura de Software“.
PHP5 ya se encuentra lo suficientemente maduro como para crear sobre él algunas piezas excepcionales de software, pero no se ve un avance en ese sentido, ni en la aceptación o implementación de frameworks de desarrollo, que facilitan la creación de soluciones de gran escala, o con una larga vida.
En torno a esta idea, les quiero recomendar la opinión de Enrique Place, una persona con la que he intercambiado ideas y que ha escrito Los “Desarrolladores PHP” debemos profesionalizarnos o quedaremos descartados por obsoletos (largo tÃtulo, lo sé, pero lectura recomendada). Allà comparte con nosotros una serie de pensamientos respecto a la necesidad del programador en PHP de avanzar, o quedarse atrás, considerado solo para “sitios menores” o para “resolver problemitas”.
see details on music editor free
Generadores de Documentación
Por motivos laborales, me vi en la necesidad de documentar grandes cantidades de código últimamente, un proyecto muy grande con muchos objetos ubicados en distintos directorios. Además, sumado al hecho de que es muy probable que se agreguen más programadores, la necesidad de tener una documentación del código ya no era por el mero hecho de la mala memoria propia, sino que se tornaba realmente necesario para que puedan ponerse al dÃa rápidamente.
Asà que buscando en Google, caà rápidamente en dos proyectos, creados en PHP, para generar documentación en base al código. Uno llamado PHPDocumentor y el otro PHPDoc (el que diga que los programadores no tienen imaginación a la hora de poner nombres, que sepa que se equivoca). El primero, parece que se erigió como el standar en la generación de documentación, mientras que el segundo, era una opción interesante a la hora de encontrar un reemplazo. Lo que no esperaba era encontrarme con un leve problema: Ninguno de los dos funcionó en mi máquina de desarrollo, ni bien instalados. Muy extraño, porque recuerdo haberlos utilizado en el pasado, pero esta vez, no hubo caso. Les edité el código fuente, cambié extensiones y constantes. Nada.
Asà es como caà en las dos soluciones que estoy utilizando actualmente y con las cuales, tengo resuelto el tema de la documentación en el mediano plazo. El primero de ellos, es un proyecto llamado Doxygen, muy conocido en el ámbito de Java y C++, pero que me sorprendió gratamente al ver que también funcionaba con PHP. Mucha gente lo utiliza (por ejemplo, la gente de KDE) y ya veo por qué: crea la documentación separada en lista y jerarquÃa de clases, por archivos, módulos o estructuras de datos. Además ofrece la posibilidad de generar archivos HTML, CHM, RTF, PDF, LaTeX, PostScript o man pages.
PHPXref.com
Esto parecerÃa ser suficiente, si no fuera porque encontré otro generador, llamado PHPxRef, con una caracterÃstica muy interesante: linkea toda llamada de un método, función, variable o constante, hacia el lugar del código donde está definido (aunque sea en otro archivo). Complementa a la perfección a Doxygen y como éste, son aplicaciones que se instalan en la PC (si usan windows, aunque también están disponibles para linux) y pueden utilizarse sin problemas, y sin tener PHP instalado. Si quieren ver un ejemplo de PHPxRef, pueden acceder a PHPxRef.com, donde hay una lista de documentación generada de algunas aplicaciones Open Source conocidas.
¿Pero como se documenta el código?
Esto merecerÃa ser parte de un artÃculo aparte, lo cuál esto no pretende ser, pero básicamente, un standar en la documentación de código, es utilizar la sintáxis JavaDoc o PHPDoc (básicamente, lo mismo, pero con otro nombre). Si tuviéramos una clase definida en un archivo, la sintáxis PHPDoc serÃa:
-
/**
-
* MiClase
-
*
-
* @uses OtraClase, Logger
-
* @package Framework
-
* @version $id$
-
* @author Pablo Rigazzi
-
*
-
* Description: Esta es una clase de ejemplo, solo para asegurarnos que todos entiendan como va la cosa.
-
*
-
*/
-
class MiClase extends OtraClase {
-
}
AsÃ, como verán, el comentario en vez de comenzar como usualmente lo hace, con /*. lo hace con un doble asterisco: /**. Esta sutil diferencia, permite que un programa pueda leer los comentarios cercanos a las declaraciones de clases o métodos, y agregar el contenido a la documentación. Asà como ven palabras clave especiales (@uses, @author, @version, @package, etc), hay muchas otras para indicar, por ejemplo, los tipos de parámetros que recibe una función (@param) o el valor que la misma devuelve (@return). Para los más curiosos, les dejo una explicación sobre Como documentar código.
