thinkClear » php

En este post, voy a mostrar como colaborar con un proyecto open source (en este caso en PHP) utilizando como herramientas PDT (PHP development tools) y Subclipse (Plugin de subversion para eclipse) .

Lo primero que vamos a hacer es descargar el código del proyecto que nos interese colaborar. Lo vamos a hacer con el framework de Zend .

Dentro del eclipse, creamos un proyecto del tipo “Checkout projects from SVN”, dentro del tipo “otros”.

Y agregamos la URL con la dirección de los archivos del proyecto.

Indicamos el directorio del cual traemos los archivos y luego a los archivos del svn los ponemos en un proyecto PHP

Ahora que ya tenemos los archivos con los que vamos a trabajar, necesitamos saber en que cosas podemos ayudar al framework. Por lo que nos dirijimos al topic “Most wanted” del framework de Zend para ver si podemos colaborar con algún bug abierto.

Si encontramos algún otro bug que no está en la lista, o nos damos cuenta de alguna mejora, lo que debemos hacer es (si no tenemos privilegios para postear bugs en el wiki de Zend) mandar un email a Zend con el patch correspondiente y una descripción del bug / mejora.

Acá les dejo un ejemplo.

Una vez que tengamos código para enviar, vamos a crear un patch. Hacemos click derecho sobre el editor, Vamos a Team –> Create Patch y guardamos el texto generado en un archivo con extensión .diff.

Espero que este post sea de utilidad ya que es importante que proyectos como este tengan muchas colaboraciones para lograr tener un framework estable y con muchas buenas características.

Últimamente, me estoy interiorizando bastante en temas de eficiencia en transacciones web y quería comentarles que estuve haciendo pruebas en un servidor que tengo en casa con varias aplicaciones, pero que por sobre todo, es un servidor de aprendizaje (aconsejo que cualquiera que tenga una máquina vieja, digasé Pentium 1, pentium 2, o partes de máquinas de amigos que no les sirvan, se armen una y hagan su propio server). Eso es lo que hice yo :). Y funciona como servidor web con soporte php, python, servidor svn, servidor jabber, mysql, etc. Obvio que la usa muy poca gente…..pero sirve perfectamente.

En una de estas pruebas, me dispuse a probar un servidor web llamado lighttpd. Este servidor se está haciendo bastante conocido y está siendo utilizado por sitios como youtube, algunos servers de la wikipedia, etc.

Realmente, noté que este servidor web es MUY rápido, sobre todo en comparación con apache2. En la página de este, podemos ver un benchmark que lo demuestra. Si no confian mucho en estas estadísticas, por estar en la pagina de lighttpd, pueden buscar por internet, hay miles.

En comparación con apache2, lighttpd ofrece muchas menos características.

Otra cosa (además del servidor web) que me parece muy importante, tiene que ver ya con PHP. Debido a que PHP es un lenguaje de compilación dinámica, cada script es compilado y ejecutado en tiempo de ejecución. Lo que hace que no se guarde el script compilado y este se regenere cada vez que se ejecute.
Debido a esto, existen aceleradores PHP que lo que hacen es compilar los script y cachearlos. Este tipo de aceleración puede hacer que las aplicaciones que se realicen utilizando PHP, se ejecuten hasta un 50% más rápido, lo que obliga a utilizar cacheadores PHP en sistemas en producción que necesiten realmente una respuesta rápida.

Uno se podría preguntar:
Si esto es así, porque no estan los aceleradores en el core de PHP?
La respuesta es muy facil. Zend, la empresa que brinda PHP tiene su propio “Optimizer” que por supuesto, hay que pagarlo.
En PHP6, va a venir por defecto APC, dentro del core de PHP.

Yo en mi caso probé con eaccelerator.
Y la verdad es que noté otra gran mejora en el rendimiento.

Instalación del source de eaccelerator: http://eaccelerator.net/wiki/InstallFromSource

Página principal de lighttpd: http://lighttpd.net

PHP es muy conocido por la facilidad de aprendizaje, por su documentación y por la cantidad de funciones que este provee a la hora de encarar un determinado problema.

Con las versiones de PHP5, PHP incorpora una biblioteca standard de clases que proveen una manera eficiente de solucionar problemas comunes, facilidad de acceso a datos, etc.

Acá hay un manual bastante interesante sobre como usar alguna de estas clases.

A mi entender, creo que la madurez de SPL hará que muchos programadores que siguen utilizando PHP estructurado, puedan pasarse a POO. Sería muy bueno que la documentación sea tan buena como lo es actualmente con las funciones nativas.

Ahora, ya pasaron más de 3 años desde que salió PHP5, pero sin embargo, muchos hostings todavía no soportan las últimas versiones de este lenguaje. ¿No es hora de actualizarse?

Día a día encontramos sitios que ofrecen hosting gratuito con diversas prestaciones. En esta oportunidad, les quiero comentar uno de estos sitios que merece darle una chance, ya que posee características mas que interesantes:

  • PHP Versión 5.1.6
  • 10 Base de Datos MySql
  • S.O: Linux
  • 1GB de Espacio en disco
  • 10GB de Transferencia
  • Conexion FTP
  • PHPMyAdmin
  • AWStats para el Control de Estadisticas del Sitio
  • Instalador de Aplicaciones (para instalar facilmente algunas aplicaciones Open Source como WordPress, Joomla,Mambo,phpBB2,osCommerce,Xoops,etc)
  • Sin Publicidad: mmm, bueno, en verdad viene con un link al final de cada página…
  • Free Web Hosting by Joolo.com
    Mucho no molesta…

  • Soporte DNS.(para enlazar el hosting con algun dominio de nuestra propiedad)
  • etc

Este Hosting se denomina JOOLO(www.joolo.com) que como comentaba previamente, ofrece sus DNS, siendo estos ns1.joolo.com y ns2.joolo.com. Este dato nos viene bárbaro si queremos por ejemplo, enlazar este hosting con algun dominio .com.ar que hayamos tramitado tambien gratuitamente en www.nic.ar . Para lograr este enlace tenemos que hacer algunas cositas:

1) Obtener un www.dominio.com.ar en www.nic.ar.(Hay diversos tutoriales dando vuelta por la web, solo hay que googlear un poco)
2) Obtener un dominio.joolo.com(hay que registrarse en joolo… es una registración tipica)
3) En “Tramites Web” dentro www.nic.ar tenemos que dar de alta(o modificar)la delegacion de nuestro dominio.com.ar a los DNS que nos brinda Joolo. Como nic.ar nos exige tambien la IP de los DNS, tenemos que averiguar las IP de los DNS haciendo desde la consola de comandos “ping ns1.joolo.com” y “ping.ns2.joolo.com”. Igualmente, tomen nota: ns1.joolo.com(75.126.157.98) y ns2.joolo.com (75.126.157.97).
4)Loguearse en www.joolo.com y dentro ya del Control Panel, entrar en Account Settings. Luego, en la sección “Extra Domain” hay que setear “www.dominio.com.ar”.
5) LISTO!



del.icio.us, el sitio famoso por permitir compartir “favoritos” va a tener una nueva cara. Para su nuevo formato, Yahoo, la empresa que está por detrás de este, ha decidido utilizar symfony.

Symfony es uno de los frameworks más conocidos de PHP5 y tiene como características principales el rápido desarrollo de aplicaciones.

Una vez más, Yahoo vuelve a poner su apoyo a PHP y junto con este a symfony (ya utilizado en bookmarks.yahoo.com )

Según Dustin Whittle de Yahoo, algunas de las caracteristicas para usar el framework fueron:

  • Gran documentación ( Libro gratuito + Documentación de la API + Wiki )
  • Desarrollo constante
  • Gran comunidad de usuarios
  • Flexibilidad - Diseño + configuración + plugins
  • Reutilización de componentes probados en vez de “inventar de nuevo la rueda”

Es una alegría para nosotros que Yahoo esté utilizando el framework con el que trabajamos en thinkclear ya que su utilización traerá más gente a este framework :D