PHP-Nuke prácticamente se convirtió parte del folklore de Internet, su historia ya parece casi una leyenda urbana: no importa en qué lugar de la red nos encontremos, nunca estaremos lejos de un portal hecho con PHP-Nuke. Sin embargo, ¿Está PHP-Nuke preparado para soportar su éxito? ¿Hay vida más allá de PHP-Nuke?
Una gran medida de las fantasías de quienes todavía buscan una presencia en Internet es la posesión de su propio Portal, supercargado de servicios, con un diseño impactante y, como no, miles de visitantes diarios. Pero por supuesto, convertir este sueño en realidad es una historia distinta... por lo menos hasta hace poco.
Hace aproximadamente un año y medio surgió un nuevo proyecto de software libre, con todas la potencialidades de convertirse en la aplicación matadora para Internet, capaz de hacer casi todo lo anterior y un poco más. Hablamos, obviamente, de PHP-Nuke el hacedor de portales que en sólo meses populó la red de redes con miles y miles de sitios de todo tipo y color, con los más dispares resultados.
Este breve artículo no intenta ser una revisión completa de PostNuke (eso vendrá después) ni de PHP-Nuke (nota disponible anteriormente), sino una personal confrontación entre dos modelos de desarrollo distintos de dos aplicaciones que comparten una misma visión: Convertirse en el futuro de la Web. Una producto de la otra, ambas representan las ambiciones y las necesidades de miles (¿millones?) de Webmasters deseosos de conquistar su lugar en la red. No es por ello menos importante que sepamos optar sabiamente por una o por otra, teniendo en cuenta aspectos que no son muy evidentes a primera vista.
El éxito de PHP-Nuke puede achacarse a varios motivos, pero sin duda, el más importante es su facilidad de instalación, configuración, personalización y administración. En poco tiempo PHP-Nuke recibió el apoyo de cientos (¿miles?) de desarrolladores que dedicaron sus esfuerzos ha crear toda una variedad de agregados (llamados ahora módulos), y hasta portar sus ya existentes aplicaciones PHP para hacerlas compatibles con PHP-Nuke. Así fué que en un lapso excepcionalmente breve, PHP-Nuke se convirtió en una verdadera plataforma de desarrollo para aplicaciones de Internet. Irónicamente, este enorme flujo de desinteresada aceptación no sólo supuso el reconocimiento del éxito de este proyecto, sino que también planteó la interrogante más crítica en su historia: ¿Está PHP-Nuke preparado para soportar su éxito?
¿Por qué me interesa el futuro de PHP-Nuke?
Comencemos a responder la pregunta anterior con otra: ¿Por qué debe importarme el criterio con el que se desarrolla PHP-Nuke? La decisión de adoptar PHP-Nuke para nuestro sitio no es una decisión menor, por cuanto todo (literalmente todo) su contenido, administración y servicios dependerá de él, de sus fortalezas y debilidades. Para muchos, la mayoría, el sólo hecho de su éxito es muestra suficiente de su idoneidad para toda tarea, incluída queramos imponerle particularmente. Pero quienes conocemos un poco más del proceso de desarrollo del software libre, sabemos cuál es la mejor receta para producir una aplicación madura, estable y segura, en la que poder confiar nuestra información y la de nuestros visitantes. Si por lo menos los tres anteriores aspectos son también de tu preocupación, entonces también es de tu incumbencia el criterio con el que se desarrolla PHP-Nuke, antes de implementarlo en tu sitio.
El orden natural de las cosas (libres)
Personalmente conozco PHP-Nuke desde su versión 1.0, con la que inauguré mi sitio VivaLinux.com.ar (un weblog de noticias relacionadas con GNU/Linux) hace un año y medio; y fué en el pico de mi entusiasmo con la performance demostrada en aquel que escribí la revisión PHP-Nuke 4, el futuro de la Web. En aquellos días de optimismo comenzaron a surgir los primeros forks, o divisiones del desarrollo de PHP-Nuke hechos por grupos independientes, que, ahora podemos reconocerlo, sólo intentaron capitalizar el éxito logrado por el proyecto original. Ejemplos de ellos fueron: TheBomb, Nucleus, DarkPortal, y muchos más (sólo busquen phpnuke en SourceForge.net).
Pero por sobre todas las cosas, aquellos primeros forks comenzaban a indicar una clara necesidad: Una aplicación con las ambiciones y posibilidades de convertirse en la aplicación matadora para Internet necesariamente debería desarrollarse como cualquier otro proyecto de software libre comparable en envergadura:
- Con un desarrollo descentralizado que garantice el libre flujo de ideas independientes
- Dividiendo tareas y responsabilidades para maximizar el tiempo de cada desarrollador
- Consensuando nuevas características, para que su soporte exista permanentemente y su mantenimiento sea constante
- Adoptando un calendario de lanzamientos acorde con el grado de desarrollo y estabilidad alcanzados, como con cualquier otro ejemplo de software libre, incluído el mismo Kernel Linux
En este momento y ya desde hace tiempo, algunos argumentarán que siempre, el proyecto PHP-Nuke falló al no adherirse con las premisas anteriores. Un hecho que ninguno de sus partidarios puede rebatir, y quizás tampoco, lamentablemente, explicar.
PostNuke, después de PHP-Nuke
Es con la frustración de un pequeño grupo de programadores que surge lo que sería hasta la fecha el fork más exitoso y prometedor de PHP-Nuke:
PostNuke (literalmente, después de Nuke). PostNuke sí cumple con las 4 condiciones fundamentales de desarrollo anteriormente mencionadas, por lo que no es sorpresa alguna que los resultados de su trabajo ya hayan comenzado a sorprender gratamente.
Al momento de escribir esto la versión actual de desarrollo de PostNuke es la 0.7-Rogue (comparemos con la nomenclatura de la última versión de PHP-Nuke: v5.3.1, recordando que PostNuke nace como un fork de PHP-Nuke 5.0), con su inmediatamente anterior versión como la considerada estable, la 0.6.4-Mutant, la misma con la que ahora corre VivaLinux.com.ar
Más allá de su script de instalación y migración desde PHP-Nuke, que últimamente produjo un éxodo masivo de sitios a PostNuke, el verdadero beneficio que obtiene el webmaster común y corriente con su adopción es simple pero invaluable: 95 desarrolladores de 5 continentes son los encargados de mejorar, corregir y ampliar las capacidades de PostNuke. Y esa diferencia no es poca: PostNuke puede compatir casi todas sus características con PHP-Nuke, pero son 188 ojos más cazando sus errores y 94 mentes más decidiendo sobre su futuro (la cuenta puede ser mayor en el momento en que leas esto).
PostNuke 1.0-Tranquility está planeado para ser lanzado antes de fin de año, resultando en la primera versión oficial estable de ese proyecto, bendecida por todo su equipo para ser usado en cualquier sitio con un asegurado nivel de estabilidad y confiabilidad. Cuando finalmente esté disponible, su resultado será mayor que la suma de sus partes, pues será el producto de una verdadera comunidad de decenas de programadores con un objetivo común, enriquecido por la experiencia de muchos más satisfechos webmasters concientes del verdadero modelo de desarollo del software libre.
PHP-Nuke, perdónanos
Nadie desmerece el esfuerzo, creatividad y visión de Francisco Burzi (el autor original de PHP-Nuke), y tampoco nadie puede dejar de reconocer su contribución al software libre y a la presencia dinámica de miles de sitios en Internet. Por las puertas y posibilidades que abrió su idea, nukelite ya tiene asegurado un lugar destacado en los anales de la historia reciente del software libre. Y nadie puede negarlo.
Sin embargo, creo que los días de PHP-Nuke como un proyecto unipersonal están contados, o bien su autor decide finalmente abrir su proyecto a un desarrollo cooperativo, o lo condena a una espiral de autodestrucción inevitable. Queda entonces en manos de nukelite evitar que PHP-Nuke se convierta en una trágica historia con un triste final.
El mundo del software libre está lleno de ejemplos que comenzaron como proyectos casi personales, para que posteriormente el estado de su desarrollo fuera tal que la continuidad de su existencia terminara delegada a un grupo más grande y más organizado de desarrolladores, que pudieran asegurar no sólo su mantenimiento, sino su también su evolución. Recordemos al Kernel Linux (Linus Torvalds), el lenguaje PHP (Rasmus Lerdorf) o Perl (Larry Wall). ¿Qué tiene PHP-Nuke de especial para ser la excepción?
PostNuke no es perfecto
Al contrario que PHP-Nuke, PostNuke tiene como requerimiento mínimo PHP4. Esta dependecia de la última versión del lenguaje PHP tiene muy buenos motivos, y fué una de las primeras diferencias que lo alejaron de PHP-Nuke. Sin embargo, si PostNuke dependerá cada vez en mayor medida de la evolución de PHP, su adopción debería ser total y en todo ámbito. Es por ello que me resulta incomprensible la selección de las librerías ADODB como las encargadas de proveer la conectividad independiente con todas las bases de datos soportadas. Siendo un poco más coherentes con el requerimiento de PHP4, se debería haber adoptado la clase Pear::DB para esas tareas. (PHP-Nuke usa sus propias funciones de abstracción de bases de datos, mantenidas por, obviamente, nukelite)
Aunque una buena parte de PostNuke ya ha sido reescrita, todavía se mantiene la decisión de conservar compatibilidad con algunas partes de PHP-Nuke, notablemente, los temas. Personalmente considero que cualquier lazo de compatibilidad hacia atrás resultará contraproducente a mediano plazo, por cuanto será imposible conservarla en algún momento.
Conclusión
Los beneficios del modelo aplicado de desarrollo de PostNuke ya son evitentes: en su sitio oficial el conglomerado de información y recursos sobre este proyecto es simplemente impresionante (tanto para desarrolladores como para Webmasters ávidos de implementarlo) y más que un weblog de anuncios de sus usuarios, es un centro de debate y coordinación de esfuerzos, que usa eficientemente las características de programación colaborativa de SourceForge.net. Pero más importante que eso, PostNuke está comenzando a cosechar los frutos de sus aciertos y sus errores, a medida que más y más desarrolladores aprenden a trabajar en equipo, un beneficio vedado para PHP-Nuke.
Para el Wemaster y el desarrollador Web perspicaz estos beneficios ya son también los propios. Para quienes necesiten más indicios, éste año verán cómo las aguas se dividen mucho más, y quizás también las pasiones. ¿Será este el inicio de una nueva guerra santa: PostNuke vs. PHP-Nuke? Difícilmente. Para que eso suceda se necesitan por lo menos 2 equipos comprometidos con su visión, con la constancia y los recursos necesarios para concretarla.
Finalmente, el único ganador será el usuario, que en cualquier caso verá como el software libre puede producir para él un sistema de administración de contenidos, usuarios, links y downloads de primer nivel, sólo comparable a productos comerciales de miles de U$S.
(Invito a todos aquellos que quieran compartir sus experiencias con PostNuke o PHP-Nuke a dejar su comentario)
Links de Interés
- PostNuke, sitio oficial
- PostNuke, el futuro hasta Tranquility
- PostNuke en Español
- ¿PHP-Nuke abandona el Open Source?
©2002 Cristian R. Arroyo


Links