Luego de casi 2 años de problemas de performance, Twitter está planeando abandonar Ruby on Rails como su framework y comenzar de cero con PHP o Java (otra solución es quedarse con Ruby como lenguaje y sacar el framework Rails).

El ex jefe de arquitectura Blaine Cook dije que Rails era facilmente escalable en Abril de 2007, pero los problemas persistieron luego de que Cook haya dicho que resolvió el problema. El servicio recientemente tuvo una caida de 3 días afectando a sus usuarios.

Otros sitios masivos en Ruby on Rails son Scribd, Hulu y la aplicación popular de Facebook Friends for Sale.

Dejar de lado Rails no resolverá todos los problemas de Twitter. Ellos tienen casi 2 años de infraestructura ya creada , al cambiar de framework se crearán otros problemas. Mientras Twitter considera dejar de lado Rails, algunas compañias están haciendo lo contrario. El año pasado, Yellowpages.com cambió Java por Rails y ahora está segundo en el unofficial Rails 100 wiki.

Rails siempre trajo controversia. Desarrolladores han argumentado que tiene muchas fallas y es inescalable; otros argumentan lo contrario. A principios de año, uno de los principales miembros de la comunidad Rails y creador del popular servidor web Rails Mongrel abandonó el framework dejando shockeados a muchos desarrolladores del framework.

Noticia original : http://www.techcrunch.com/2008/05/01/twitter-said-to-be-abandoning-ruby-on-rails/

Hace algunos días Mike Hostetler , debido a diferentes opioniones con Mike Ho (creador de Qcodo), decidió crear zcodo.

La razón de ser de Zcodo, sacado de su página web:

“Zcodo es ahora un branch oficial del  Framework de PHP5 Qcodo. He creado este proyecto debido a las frustraciones con la “apertura a la comunidad”  de este framework de código abierto.”

En este momento, en el sitio se están debatiendo los pasos a seguir con este branch. Que desarrolladores podrán tener acceso al “core de desarrollo”. Que control de versiones usar, estandar de código, etc.

Me parece muy importante en un proyecto open source que se tenga en cuenta a la comunidad para aportar en el desarrollo de un framework. Igualmente, hay que estar agradecidos a Mike Ho por haber creado una herramienta de trabajo tan buena.

Un buen momento para participar!

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.

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.

Buscando en la red sobre el outsourcing a América Latina, encontré este pdf que me pareció una muy buena fuente de información sobre el tema.

Este pdf demuestra claramente cuales son las ventajas y desventajas para invertir en los paises de América Latina más desarrollados en tecnología. En el se puede ver una comparación entre paises como Argentina, Brasil, Chile, Mexico, Colombia y Costa Rica entre otros destacando puntos como “habilidad en el lenguaje”, “afinidad cultural”, “conocimientos tecnológicos”, etc.

Otro de los puntos a favor que encontré en esta lectura tiene que ver con que el escrito se encuentra muy actualizado, mostrando realmente un estudio profundo sobre el tema.

El escrito original está escrito en inglés. Si encuentro alguna traducción, actualizo el post.

Es realmente un muy buen documento para aquellos CIOs que no dan a basto de trabajo o para aquellos quienes están buscando alternativas para lograr una mejor producción en su trabajo.

Ú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?

El hit del verano!

Sacado de http://comandoabm.com.ar

Mi abm es el mejor

Hoy no me pude dormir
y me puse con el Delphi
me agarro la inspiracion
y me hice un ABM

Como lo quise hacer bien
le puse un page control
un treeview y diez edits
y un bitmap en el fondo

Estribillo

Lo podes abrir y datos cargar
tirar un lookup y mandar a grabar
y mi ABM es el mejor

Valida muy bien, tambien es veloz
y si lo usas mal te tira un error
y mi ABM es el mejor

Para que ande muy bien
le puse un poco de assembler
y para no recompilar
lo meti en una DLL

Este ABM que hice
tambien es compatible
no solo usa BDE
tambien ADO y DBExpress

Estribillo

Para que no tenga igual
le exporte una interface
ya es un objeto COM
y lo herede de otra clase

Tambien le redefini
sus metodos virtuales
y le agregue en published
a todas sus propiedades

Estribillo

Todos a cantar!!


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

Hoy a la mañana, en uno de los foros de discución de Ebay parece que un usuario se infiltró y puso al descubierto información privada de aproximadamente 1200 usuarios del sitio, entre la que se encontraba información como tarjetas de teléfono, email, etc.

Ebay, al enterarse de este suceso, dio de baja rápidamente los foros sin notar que antes de darlo de baja, un usuario grabó un video del suceso y lo subió a youtube.

Aquí está el link en cuestión http://youtube.com/watch?v=_q9m2iFsz9M (retirado ahora por la gente de youtube)

Ebay aseguró que los damnificados no sufriran ninguna consecuencia y se comunicará telefonicamente con cada uno de ellos para asegurarlos de esto.

Nota en el blog de ebay sobre el suceso: Trust & Safety forums issue this morning