Hoy salió a la luz una noticia importante para todos aquellos desarrolladores de PHP, pues Facebook acaba de mostrar su entorno de ejecución de PHP con el fin de optimizar hasta un 50% o más (dependiendo de los casos) la ejecución de scripts en este lenguaje. Tal vez le parezca un poco de optimización pero cuando eres una empresa grande como Facebook que cuenta con 50000 servidores aproximadamente y sirve a 300000000 de usuarios, un 50% mas de rendimiento por el mismo hardware, es bastaste.

Lo que hizo esta gente es crear un traductor de PHP a C++, donde luego se compila a lenguaje de máquina utilizando G++ (el compilador GNU de C++), permitiendo «migrar» aplicaciones PHP a lenguaje de máquina y ejecutarse con mayor velocidad, obviamente se pierde las voluntades del lenguaje dinámico e interpretado  junto a la eliminacion de algunos comandos que no se pueden adaptar a C++, como el caso de eval() que evalúa código PHP en tiempo de ejecución, el uso de $$ y otras funciones mas.

En el screencast del lanzamiento su creador comentó que este proyecto no busca sustuir el entorno de ejecución de PHP ni hacer que la gente compile todo a C++, sino que en ambientes de alta demanda, utilizar PHP con servidores web tradicionales en el momento de desarrollo y luego cuando se esté listo para producción compilarlo en C++ y obtener mayor rendimiento.

Cabe destacar que HipHop PHP también es un servidor web para servir estas páginas generadas y que se esta trabajando en un interprete para PHP, sin embargo es muy temprano para dar opiniones ya que apenas hoy se hizo el anuncio y liberación del codigo en Github , esperemos a ver que ofrece el futuro del proyecto de código abierto.

Mas informacion: https://developers.facebook.com/blog/post/2010/02/02/hiphop-for-php–move-fast/

Para los lectores / amigos que me leen, saben que siempre en las vacaciones suelo programar algo por diversión como: el resolvedor de sudokus, el cheater para Word Challenge, el Skate or Dice para el PSP. Pues esta vez realicé un widget para WordPress utilizando la librerí­a jQuery, el cual consiste en mostrar los archivos de los artí­culos en una lista contraida, al hacer clic en cada uno de los items se despliega el contenido con un efecto de acordeón o de desvanecimiento tal como se puede observar en la sección de Archivos en la parte izquierda de esta página.

Entre las principales caracterí­sticas que posee son:

  • Utiliza el script de jQuery de WordPress por lo que no sobrecarga las páginas.
  • Sencillo y fácil de configurar.
  • Permite mostrar o no la cantidad de artí­culos por año o mes.
  • Permite mostrar o no los artí­culos que hay en cada mes.
  • Permite seleccionar el formato del mes a mostrar.
  • Se puede utilizar dentro de páginas o artículos.
  • Seleccionar efectos de jQuery.
  • Carga el script en un archivo separado para mejor ejecución y permitir guardarlo en caché.
  • Permite seleccionar el sí­mbolo de la viñeta.

Sé que es sencillo y no ofrece mucho, pero dependiendo del uso y si pueden colaborar con donaciones podré dedicarle mas tiempo con el fin de agregar mas caracterí­sticas configurables. Por ahora, pues descárguenlo e instálenlo, cualquier sugerencia o corrección pueden hacerlo por mensaje privado y/o un comentario en esta entrada.

La licencia del mismo es GPL2 y pueden descargarlo desde el siguiente enlace:

http://wordpress.org/extend/plugins/jquery-archive-list-widget/

Si les gustó mucho el widget y desean colaborar con el desarrollo de futuras versiones pueden ayudar con una donación libre usando el siguiente botón.

Cambios en las versiones: Leer los cambios de esta versión

Contribuye con la creación de este plugin

Si son desarrolladores web profesionales y les gustan / obligan a crear páginas de alta calidad totalmente validadas por el estándar w3c, me imagino que su proceso es subir la página a Internet y luego validarla con el HTLM Validator, es un proceso tedioso si estas comenzando a aprender sobre XHTML o deseas validar páginas que dependen de acciones, entre otras cosas.

Para ello, existe un excelente plugin para firefox llamado HTML Validator, no se porqué no está en la página oficial de extensiones de firefox, sin embargo pueden entrar a la página del plugin y descargarlo para su arquitectura y sistema operativo. (posee soporte para Windows, Linux, FreeBSD,OpenBSD para 32 y 64 bits)

Al instalarlo, observarán en la esquina derecha inferior, un sí­mbolo verde si la página aprueba el estándar o rojo si ocurre lo contrario. Al hacer clic sobre él, se abrirá una ventana mostrando el código fuente de la página junto a la lista de errores, lo interesante es que al leer sobre cada error, se explica como deberí­a hacerse correctamente a través de ejemplos para poder corregir el error posteriormente y no volverlo a cometer.

Ventana del plugin html validator

Ventana del plugin html validator

Es muy importante si eres desarrollador web, seguir el estándar w3c ya que garantizarás que tus trabajos sean visibles de forma correcta en el 95% de los navegadores (Internet Explorer es el único navegador que no respeta esto y poco a poco le ha tocado adaptarse al estándar) y darás mayor calidad a tus páginas.

Hoy me encontré con esta página que relata la Historia de los buscadores de Internet y decidí­ compartirla a través de mi  blog, porque aparte de ser interesante, me recordó como ha cambiado esto a lo largo de los años. Además, para aquellas personas que tenemos mucho tiempo usando Internet, recordemos los navegadores que hemos usado.

En estos momentos parece gracioso comentar como en una época no tan lejana, los buscadores (recuerdo que Yahoo era así­) eran mantenidos por personas, donde eran contratados para navegar todo el dí­a buscando páginas web para agregar al í­ndice del buscador (Recuerdo haber mandado por ahi en el 1999 mi primera página personal, la ascendete de skatox.com, hospedada en el extinto Geocities). Hoy en dí­a,serí­a imposible hacer eso, pero gracias a los robots y sus algoritmos secretos, los buscadores pueden indexar muchisimas páginas por segundo y darnos información de ellas casi instantáneamente.

Bueno, lean el artí­culo http://www.searchenginejournal.com/search-engine-history/13152/ y si les gustó, o desean hablar del tema, comenten aquí­ en el blog.

Esta entrada del blog, la escribo porque fué algo que surgió en el trabajo y al buscar información en la red casi no conseguí­ por lo que decidí­ colocar esto en mi blog. Además, también mostraré como agregar campos nuevos que se incluyen a cada usuario mediante el módulo profile al formulario de registro.

El método a usar va a ser una moficación del tema, especí­ficamente para la página de registro de usuario (user/register), para ello utilizaremos una serie de cosas que nos provee Drupal. Lo que haremos es editar el archivo template.php que se encuentra dentro de la carpeta de nuestro tema y agregar la siguiente función:

function ELNOMBREDETUTEMA_theme($existing, $type, $theme, $path) {
  return array(
    // tell Drupal what template to use for the user register form
    'user_register' => array(
      'arguments' => array('form' => NULL),
      'template' => 'user-register', // this is the name of the template
    ),
  );
}

Recuerda cambiar ELNOMBREDETUTEMA por el nombre del tema que estas usando y que corresponde el archivo template.php, esta función lo que hará es que al entrar a la página user/register obliga a usar el template con el nombre de user-register.tpl.php. Bueno ahora lo siguiente que haremos es crear el archivo user-register.tpl.php de acuerdo a nuestras necesidades. En el caso que voy a poner aquí­ es un registro sencillo que imprime: el texto de registro, el nombre usuario, el correo electrónico a usar, un campo personalizado del módulo profile, los campos ocultos y obligatorios del formulario el boton de enviar.

<div id="registration_form">
 <?php print drupal_render($form['user_registration_help' ]); ?>
<div class="field">
    <?php print drupal_render($form['account']['name']); ?>
  </div>
<div class="field">
    <?php print drupal_render($form['account']['mail']); ?>
  </div>
<div class="field">
    <?php print drupal_render($form['category']['profile_field']); ?>
  </div>
<div class="field">
    <?php
      print drupal_render($form['form_id']);
          print drupal_render($form['form_build_id']);
      ?>
   </div>
<div class="field">
    <?php print drupal_render($form['submit']); ?>
   </div>

Ya con eso solo les falta jugar y modificar las cosas a su antojo.

Viendo un artí­culo (que les recomiendo) sobre 16 animaciones Javascript tipo Flash, observé como cada dí­a se ven mas páginas con esta tecnologí­a en incluso vemos como los navegadores se enfocan en obtener excelente rendimiento para ejecutar código Javascript. Recuerdo al principio del internet como Flash  era el salvador al momento de hacer animaciones excelentes en las páginas web y de darle mejor apariencia, pero con el tiempo fue quedando atras ya que empezaron a salir mas obstáculos para esta plataforma: dispositivos móviles , sistemas operativos nuevos, arquitecturas nuevas. Donde en ellas muchas veces no está soportada esta tecnologí­a.

Cada vez, se observa como las páginas mas reconocidas utilizan Javascript para hacer páginas complejas y con mejor apariencia: ejem, Gmail, Facebook, Google Docs, Youtube, WordPress, etc. Y el uso de Flash en ellas es absolutamente nulo, bueno en el caso de Youtube, solo es usado para reproducir ví­deo, sin embargo, con HTML 5 no necesitaremos el plugin de Flash para ver ví­deos en Youtube.

Con el nuevo estandar de HTML, necesitaremos mucho menos a Flash ya que con el soporte etiquetas como audio, video y canvas, teóricamente se podrá hacer todo lo que se podí­a hacer con flash. Cosa que ha asustado a Adobe y le ha hecho mejorar sus tecnologí­a y dar soporte a mayor cantidad de dispositivos, esperemos que sucederá de esto.

Creo que Flash nunca desaparecerá del todo, pero si se disminuirá muchisimo su uso en la web, al igual que el uso de Silverlight y JavaFX.  Tal vez falte mucho tiempo para que HTML 5 sea usado de forma masiva, pero en el mundo de la informática todo esto sucede rápidamente, ademas, HTML5 y Javascript seran estandar, abierto y soportado en casi todos lados.

  • Si quieres probar algunas tecnologí­as de HTML  5, puedes entrar a: http://htmlfive.appspot.com

Recuerda que debes tener un navegador que soporte esta tecnologí­a como Firefox, Safari, Chrome u Opera.

¿Quién dijo que la música geek era mala? Con el siguiente video que me pasó Cisco #2 (del ex-blog cafeinageek.com) veremos un excelente rap (musicalmente) hecho por The SEO Rapper sobre el uso de estandares web, css y muchas cosas mas.

Si les gustó, les recomiendo entrar a la página The SEO Rapper y observen mas ví­deos de este grandioso artista geek.