Imagen de avatar anacareaga
Ana Lilia Careaga

Pintando sinfonías en al Web: prográmalas con Symphony y PHP

Abstract

When surfing the web you look at and use many different websites but, have you ever wondered how they work? Websites use many different technologies and web development techniques that all work in unison to create the designed layout, the text content and the mechanics. There are many different programming languages that can make a website work and most of them talk with each other to create a website that performs well and looks great. The languages used for front-end (client side) are pretty generic across the web design industry and you have probably heard of a few of them. The major ones are HTML/XHTML, Java and Javascript. On the other hand, the back-end (server side) programming languages are very different to their front-end counterparts, but generally they need to work together to make design and function come together as one. The main back-end languages are PHP, ASP and JSP. These languages are used for what is called dynamic website. Dynamic websites are normally connected to a database which stores information for the website and be updated using a content management system CMS like Symphony CMS. Symphony CMS uses a beautifully minimal PHP+MySQL based CMS that uses XML as its backbone.

———————————————————————————————————
Introducción

Aún recuerdo los enormes discos de acetato en la antigua consola tocadiscos de la sala  con los que todos los domingos, casi sin excepción,  mi padre reproducía las grabaciones imponentes  de las nueve sinfonías de Ludwig van Beethoven dirigidas por Herbert von Karajan o Leonard Bernstein. Cuando comencé a escuchar la música de Beethoven, era muy pequeña y aún no era capaz de identificar ideas y valores de la Antigua Grecia y mucho menos los ideales de libertad y desarrollo individual que impulsaron la creatividad musical de este compositor. Para mi corta edad, la música simplemente se traducía en colores y uno de los conflictos que tenía era decirle a la gente que yo veía colores cuando escuchaba a Beethoven. Las melodías iban trazando mágicas nebulosas o misteriosos paisajes al mismo tiempo en que  los acordes elegían armoniosamente los colores y sus tonos de acuerdo al instrumento que emitía los sonidos. Y así, por ejemplo, el piccolo y la flauta se manifestaban con colores pastel que generaban una luz celeste muy clara, y los sonidos más graves como los del violoncello pintaban un azul  marino profundo mientras que contrabajos y tubas expresaban las maderas de los árboles y oscuridad nocturna. Cada sinfonía que escuchaba era un lienzo de tamaño infinito que se convertiría en una gran experiencia cromática única e irrepetible porque la mayor magia de la música es precisamente su capacidad de  hacernos sentir emociones diferentes. De todas las sinfonías de Beethoven, quizá, la más colorida es la No. 6 en Fa Mayor “Pastoral”, porque su ingenuidad y sencillez de carácter rústico impregna  de color todas sus melodías y armonías. Los sonidos de los instrumentos se convierten  en colores que pintan la naturaleza y su música resulta tan alegre e inagotable como el canto de los pájaros. La sencillez se combina con un sentimiento acogedor que va envolviéndonos con su inefable gracia hasta que seis acordes altos preceden un final que lentamente se va sumergiendo en un profundo silencio para introducirnos  a la paz y quietud de un arroyo con su  continuo  fluir del agua.

Violoncellos con sordina cantan la eterna canción del arroyo mientras que los pájaros gorjean en las ramas de los árboles una melodía prolongada que se agita a lo lejos en el aire y que con una suave coda se desvanece hasta desaparecer tranquilamente para invitarnos a  la fiesta campestre  del Allegro donde los músicos de la aldea no consiguen dominar sus instrumentos, pero esto no es motivo para impedir el baile que es interrumpido por un pesado ritmo francés que al final se hace tan alegre que los danzantes , absortos en su diversión no pueden escuchar el lejano rumor de la tempestad que se acerca. De pronto, la tormenta llega con su furia y aquí la música se vuelve violenta y vívidamente descriptiva. Pero esa fuerza es apagada por el sonido radiante del oboe. De nuevo brilla el sol y una escala ascendente de la flauta conduce tranquilamente a un canto de acción de gracias de los pastores. Sin embargo, de manera inesperada dos acordes altos irrumpen violentamente en sus tranquilas y nostálgicas meditaciones y en esta inesperada nota decisiva termina esta pastoral sinfonía, compuesta en 1808 y catalogada como Opus 68 , pero a pesar de ser tan descriptiva y programática, en realidad fue considerada como una de las excepciones que rompieron  no solo el estilo clásico de la sinfonía por tener cinco movimientos, sino el estilo “beethoveniano” que se desarrollaba de manera casi paralela en una de sus más famosas y fantásticas sinfonías, la Quinta  , en Do menor Opus 67.

Pero, ¿cuál es el estilo “beethoveniano”? Desde mi punto de vista, todas las sinfonías poseen el estilo Beethoven de principio a fin. Pero para aseverar lo anterior primero habría que definir cuál es ese estilo de  Beethoven.

A grandes rasgos, la estructura sinfónica de Beethoven empieza con un conflicto que se encara afirmando su individualidad (normalmente al final del primer movimiento). Después de establecer su “verticalidad”, Beethoven busca sintonizarse con el mundo, moviéndose hacia la “horizontalidad”, trabajando desde adentro para llegar a una unión que generalmente es extática .Este modelo fue copiado por la mayoría de los sinfonistas posteriores del siglo XIX. Sin embargo, lo que no pudieron copiar fue el proceso interno y especialmente la convicción de la afirmación individual.

Beethoven fue un compositor principalmente de música instrumental, a través de la cual no solo expresó emociones sino también ideas. Creo que todos hemos sentido emociones escuchando música. Sin embargo, expresar ideas sin palabras puede parecernos imposible a primera vista. En la música de Bach, uno puede apreciar cómo la música, por si sola, puede expresar una armonía cósmica. Pero Beethoven fue más allá, expresando ideas concretas sobre la vida, el destino, el coraje, el desafío y la libertad. Después de él, muchos compositores sintieron la necesidad de hacer lo mismo, pero en muchos de ellos, la idea de la muerte se convirtió en la idea dominante, mientras que  Beethoven, curiosamente, estaba más interesado en la vida. La música de Beethoven busca la libertad. Él nos expresa no sólo la emoción de ser libre, sino también el proceso para lograrlo. Aquí es donde encontramos las ideas y los valores de sus obras   . Beethoven fue un artista revolucionario por las ideas de libertad con las que se identificó y fue un artista revolucionario en la forma en que expresó estas ideas. Además, al enfatizar el desarrollo individual en el proceso de liberación, podemos deducir que Beethoven asociaba la libertad con la posibilidad de crecimiento y creatividad, y no sencillamente la ausencia de autoridad externa.

La coherencia interna de las obras de Beethoven es evidente hasta para los musicólogos. Esta coherencia se da a varios niveles. Ciertamente se escucha a nivel musical: cada nueva sección de la obra parece un desarrollo orgánico de la anterior. A veces inclusive se escucha a nivel temático. Sin duda esta coherencia explica  por qué Beethoven pasaba tanto tiempo forjando sus sinfonías. Pero la coherencia más importante y también más difícil es la que le da sentido a la obra. En Beethoven parece que cada nota está ahí para servir el sentido general: nada falta, nada sobra. A veces sucede que la integración es tal, y todo suena tan natural, que no nos damos cuenta de importantes señales en el camino. Basta ejemplificar con los finales de los primeros movimientos sinfónicos de Beethoven tienden a ser particularmente fuertes y salvajes: un puño que cae y rompe todo lo que se le resista. ¿De dónde viene esa convicción, esa confianza en sí mismo que se impone como si fuera una fuerza de la naturaleza?

Como las obras de ingeniería, estas últimas notas son los productos de unas facultades conscientes, de un talento elaborador, pero no existirían sin esos arrebatos de inspiración melódica que vienen del inconsciente. No sabemos cuál es la extraña fuerza interior que actúa en los temas y en las melodías finales, pero nos inclinamos admirados ante sus resultados…

Ludwig van Beethoven nació el 16 de diciembre de 1770 en Bonn, Alemania y murió el 26 de marzo de 1827 en Viena, Austria. Fue hijo y nieto de músicos, por lo que su padre, Johann, le inició en este arte. Por aquel entonces Mozart causaba asombro desde temprana edad por  toda  Europa,  pero  no  más  que  su  padre,  Leopold,  el  cual  había  instruido  al  niño prodigio. Al padre de Beethoven, Johann, le fascinaba el magisterio tan fructífero de Leopold e intentó hacer lo mismo con su hijo. Pero Beethoven aprendía más despacio que Mozart y eso exasperaba a Johann enormemente; aun así, el joven músico era presentado a concursos públicos ocultando su verdadera edad para que su interpretación causara más asombro.

Beethoven no tuvo una infancia feliz, eran frecuentes las palizas que le propinaba su padre cuando éste le oía improvisar ante el clavicordio. Sin embargo, la disposición que sentía por la música era tan fuerte que supo obviar todo este clima. Los problemas familiares  no desalentaron a Beethoven, y compone su primera obra importante, la “Cantata a la muerte de José II”. En 1792 encuentra por fin su estabilidad  como compositor y, sobre todo, como pianista, era ya requerido para tocar ante celebridades como  el rey Federico Guillermo II. Por fin en 1800 da su primer concierto, pero desafortunadamente al poco tiempo empezaron sus problemas de oído, algo que sin duda frenó la vertiginosa velocidad con la  que  se  introducía  en  el  mundo  de  la interpretación. Aquí comienzan las angustias de un Beethoven que parecía consumirse como  persona,  al  tiempo  que  se  consolidaba como compositor. Se estaba quedando sordo. Pero la sordera aportó mucho a Beethoven; configuró esa personalidad dura y trabajadora que le caracterizó toda su vida, y empujó con fuerza el ritmo de su trabajo como compositor. Cuartetos, conciertos   , la ópera Fidelio, sonatas para piano…, todo parecía entrar en sus planes. Pero sin duda es en las sinfonías donde mejor se ve su evolución como compositor. Desde la primera sinfonía, compuesta a los treinta años, hasta la novena, todo parecía conducir a la misma meta: componer una obra grande con la que se  le identificara por siempre. Ese era su máximo anhelo. Beethoven encontró en la sinfonía el soporte perfecto para lograr ese objetivo, y así en 1824 compuso su novena  sinfonía, la “coral”, que contiene el celebérrimo “himno de la alegría”. Sus antecedentes serían las fugas y sonatas de Bach, los conciertos de Vivaldi y Corelli, y, claro, el magisterio de Haydn. Pero por encima de toda influencia, Beethoven fue fiel a sí mismo, a su trayectoria, a su personalidad.

Muy pocos músicos renovaron tanto las  corrientes artísticas del momento, creando un estilo nuevo y fértil; tanto es así, que  habría que esperar a que llegaran  Bruckner y Mahler para encontrar otra manera de  entender la sinfonía, y eso sucedió casi  cincuenta años después de la muerte de Beethoven, pero 170 años después, la tecnología reconoce en las sinfonías de Beethoven esa  gran labor de orquestación e intenta captar no solo su esencia, sino su filosofía y crea  así también sus propias corrientes y maneras de entender  las sinfonías son sus propios lenguajes, ritmos y orquestas.

…Y así, paralelamente al mundo musical, en el mundo de las Tecnologías de Información, tenemos varios tipos de sinfonías, a saber:

  • Symphony OS, o Symphony Linux, que es una distribución del sistema operativo Linux y cuyo navegador se llama Orchestra
  • Symphony CMS, que básicamente es un sistema de gestión de contenidos, en otras palabras, es un programa que permite crear una estructura de soporte (framework) para la creación y administración de contenidos en  páginas web  construido sobre PHP (lenguaje de programación para el diseño de páginas web dinámicas)
  • Symfony, que es un framework diseñado también en PHP para optimizar el desarrollo de aplicaciones web.

¿Quieres saber qué sucede cuando quieres entrar a algún sitio web e  inscribes” http:” en tu navegador? ¿Quieres escuchar las sinfonías de las Tecnologías de Información?

…..si es afirmativa tu respuesta, da clic aquí para escuchar la sinfonía Pastoral de Beethoven  , y continua  leyendo…

http://www.youtube.com/watch?v=Yb0gToHRaL4&feature=relmfu

———————————————————————————————————

La gran Orquesta de Internet ¿Cómo funciona una página web?

La composición de los servicios web es parecida a la composición musical. La composición musical tiene como objetivo la creación de un mundo imaginario de interacciones coherentes, seductoras y satisfactorias, a través del sonido y la imaginación, mientras que en el caso de los servicios web su objetivo es la creación de interacciones abstractas hombre/máquina en un mundo virtual por medio de interacciones y mensajes que proporcionen al hombre un beneficio determinado. Internet , la World Wide Web o simplemente,  “web” puede ser comprendida como una gran orquesta donde no sólo se comparte y se muestra información, sino también es un espacio de interacción, colaboración y convivencia.

Utilizando la Web como plataforma, los usuarios, de forma remota, pueden solicitar no solo información de texto o multimedia, sino un servicio que algún proveedor ofrezca en la red .Lo anterior no es una tarea fácil porque  para que esta  interacción funcione, deben existir unos mecanismos de comunicación estándares entre diferentes aplicaciones. Estos mecanismos deben poder interactuar entre sí para presentar la información de forma dinámica al usuario.

Cuando navegas por la red,  visitas y observas  diferentes sitios de Internet o websites , pero ¿te has preguntado alguna vez cómo funcionan? Los sitios de Internet emplean una gran variedad de tecnologías y diferentes lenguajes de programación que trabajan al unísono  y en armonía con el fin de crear un despliegue de página funcional y estético.

Los sitios web, que a su vez contienen una o varias páginas,  se basan en un lenguaje de características especiales llamado HTML HyperText Markup Language (“lenguaje de marcado de hipertexto”), o XML (Extensible Markup Language) que permite no solo que la información pueda ser vista como un documento de hipertexto (que sea capaz de contener otros enlaces o “links” que nos conduzcan a su vez a otros sitios web) sino que las aplicaciones compartan información y que además invoquen funciones de otras aplicaciones independientemente de cómo se hayan creado dichas aplicaciones y del sistema operativo o plataforma en que se ejecuten.

Una página web es un  documento de información electrónica adaptada para la  World Wide Web,  y  puede ser accedida mediante un  navegador (también llamado browser, como por ejemplo Internet Explorer, Google Chrome, Mozilla Firefox o Safari)  para mostrarse en una pantalla de computadora o cualquier otro dispositivo conectado a Internet. Con el  navegador web, el usuario visualiza  los sitios web  compuestos de  páginas  que contienen texto, imágenes, videos o cualquier contenido multimedia y  puede “navegar” a través de ella empleando  hiperenlaces o hipervínculos. El navegador es una especie de aplicación capaz de interpretar las órdenes recibidas en  código HTML o XHTML fundamentalmente y convertirlas en las páginas que son el resultado de dicha orden.

Pero, ¿cómo  solicitamos una página o sitio web? Simplemente introduciendo su URL   ,(uniform resource locator) que es el formato con el que se escribe una dirección de Internet en el navegador  . La URL se traduce en una dirección IP usando la base de datos distribuida de Internet conocida como DNS (Domain Name System).Esta dirección IP es un número binario de 32 bits (IPv4) o 64 bits (IPv6) necesaria para contactar con el servidor web (computadora que almacena varias páginas web) donde se encuentra la página  solicitada. La petición se ejecuta  mediante el comando http :// .El servidor web recibe solicitud del recurso y en el caso de una página web típica, primero se solicita el texto HTML y luego es inmediatamente analizado por el navegador, el cual, después, hace peticiones adicionales para los gráficos y otros archivos  que formen parte de la página. Al recibir los archivos solicitados desde el servidor web, el navegador renderiza la página tal y como se describe en el código HTML y otros lenguajes web. Al final se incorporan las imágenes y otros recursos para producir la página que ve el usuario en su pantalla. Por otra parte, cuando nosotros pinchamos sobre un enlace hipertexto, en realidad lo que pasa es que establecemos una petición de un archivo HTML residente en el servidor  el cual es enviado e interpretado por nuestro navegador.

Para comprender bien todo este proceso, es importante considerar que la web funciona siguiendo el modelo cliente-servidor. El servidor es  una computadora que  se encarga de prestar el servicio a las otras, que se denominan clientes. De manera que es lógico pensar que hay diferentes programas o aplicaciones del lado del cliente (usuario que solicita la página web) que del lado del servidor.

Así pues, podemos hablar de lenguajes de lado servidor (o lenguajes back-end) que son aquellos lenguajes  que son reconocidos, ejecutados e interpretados por el propio servidor (como el PHP, ASP y JSP) y que se envían al cliente en un formato comprensible para él. Por otro lado, los lenguajes de lado cliente (front-end) que son más genéricos (entre los cuales no sólo se encuentra el HTML/XHTML sino también el Java y el JavaScript incluidos o embedidos en el código HTML) y pueden ser directamente “digeridos” por el navegador ya que  no necesitan un pre tratamiento. A continuación se esquematiza este proceso.

Sin embargo, este ejemplo solo representa una página web estática, es decir aquellas donde el contenido no cambia frecuentemente y la mayor parte de las páginas resultan ser dinámicas por lo que es necesario almacenar los contenidos en una base de datos (como MySQL)  y actualizarlos con un gestor de contenidos (CMS) como Symphony CMS. En el siguiente esquema se muestra un ejemplo de una página web dinámica donde se pueden identificar algunas aplicaciones de software del lado del cliente y del lado del servidor web.

Observaciones importantes:

  • Las páginas que se ejecutan en el servidor pueden realizar accesos a bases de datos, conexiones en red y otras tareas para crear la página final que verá el usuario
  • El usuario solamente recibe una página con el código HTML
  • Existen varios lenguajes de programación (“scripts”) con los que puede ser diseñada una página web. La elección del lenguaje dependerá en gran medida de la plataforma en que corra el servidor web.
  • PHP es un lenguaje para el diseño de páginas web muy conocido por estar embebido en HTML.
  • Es un tecnología desarrollada por Apache Software Foundation y puede ser utilizado en cualquiera de los principales sistemas operativos del mercado, incluyendo Linux, muchas variantes Unix (incluido HP-UX, Solaris y OpenBSD), Microsoft Windows, Mac OS X, RISC OS

PHP

PHP es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web  dinámicas. Se usa principalmente para la interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos   o en la creación de otros tipos de programas incluyendo aplicaciones con  interfaz gráfica.

PHP es un acrónimo que significa PHP Hypertext Pre-processor (inicialmente PHP Tools, o, Personal Home Page Tools). Fue creado originalmente por Rasmus Lerdford  en 1994; sin embargo la implementación principal de PHP es producida ahora por The PHP Group y sirve como el estándar de facto para PHP al no haber una especificación formal. Publicado bajo la PHP License, la Free Software Foundation considera esta licencia como software libre.

PHP puede ser desplegado en la mayoría de los servidores web y en casi todos los sistemas operativos y plataformas sin costo alguno. El lenguaje PHP se encuentra instalado en más de 20 millones de sitios web y en un millón de servidores, el número de sitios en PHP ha compartido algo de su preponderante dominio con otros nuevos lenguajes no tan poderosos desde agosto de 2005. Por ejemplo,  el sitio web de Wikipedia está desarrollado en PHP. y es también el módulo Apache más popular entre las computadoras que utilizan Apache como servidor web .Aprendiendo PHP podrás crear foros, libros de visitas, sistemas de noticias, blogs, etc.

Symphony CMS (sistema de gestión de contenidos)

Un sistema de gestión de contenidos (en  inglés Content Management System, abreviado CMS ) es un programa open source (código abierto) que permite crear una estructura de soporte  (framework) para la creación y administración de contenidos, principalmente en páginas web, por parte de los administradores, editores, participantes y demás roles.

Symphony es un sistema de gestión de contenidos que consiste en una interfaz capaz de  controlar  una o varias  bases de datos donde se aloja el contenido del sitio web. El sistema permite manejar de manera independiente el contenido y el diseño. Así, es posible manejar el contenido y darle en cualquier momento un diseño distinto al sitio web sin tener que darle formato al contenido de nuevo, además de permitir la fácil y controlada publicación en el sitio a varios editores. Un ejemplo clásico es el de editores que cargan el contenido al sistema y otro de nivel superior (moderador o administrador) que permite que estos contenidos sean visibles a todo el público.

Principales características:

  • Es modular y extensible por medio de componentes
  • Posee un completo sistema de publicación que permite organizar, editar y publicar páginas, notas, imágenes, etc
  • Es multiusuario
  • Integra FTP lo que permite editar tanto en el servidor como en el editor favorito

Requerimientos:

  • PHP 5.2 para Symphony release 2,3
  • MySQL 4.1 o superior

Si quieres saber más detalles o lo quieres descargar, consulta;

http://symphony-cms.com/

———————————————————————————————————
Conclusiones

Tal vez exista una analogía entre el lenguaje del discurso, el lenguaje computacional y el lenguaje musical. Porque en toda frase hablada, código de programa  o  aún en el sonido del teclado de una computadora, puede estar latente una melodía y  el simple ritmo generará, independientemente del sonido, una frase musical.

Dicen que cualquiera puede componer una melodía musical y codificar un programa computacional. Para componer una melodía musical, basta darle a cada nota de la escala musical, un número como lo hacen los chinos .Así, podemos convertir nuestro número telefónico o nuestra matrícula de la universidad en una sucesión de notas que nos dé el tema de una pequeña melodía. Y cualquiera puede escribir un programa computacional porque cada instrucción designa un objeto   , idea u operación matemática que queramos realizar. Pero todos sabemos que tanto  las más conocidas melodías del mundo  como los más elaborados programas no se hacen así de fácil y la mayoría ni siquiera está asociada a ningún lenguaje, sino que llegan simplemente sin previo aviso .Llegan de quién sabe qué lugar y sólo les caen en suerte a los más grandes genios musicales o científicos.

5 respuetas para “Pintando sinfonías en al Web: prográmalas con Symphony y PHP”

  1. […] y seguridad de la red; y no podía faltar como cada mes @anacareaga esta vez nos presenta Symphony y PHP para programar sinfonías en la […]

  2. MARIA ANTONIA dice:

    Interesante analogía, así es motivante querer saber más de la tecnología y poder sentir esa interacción con la cultura, la sensibilidad de la músca que seguramente también la tendrá aprender y apasionarse por las Tics. Gracias

  3. Como siempre ingeniera nos sorprende con esa manera de interacción. Sus artículos son excelentes! Y de mucho aprendizaje.

    Saludos

  4. Wow!! Increíble ingeniera siempre que veo sus blogs me entusiasta el que nos comparta la forma de ver las cosas, totalmente una perspectiva diferente y de gran ayuda. 😀

  5. carlos damian dice:

    Excelente investigación… Beethoven un visionario y adelantado a su tiempo. Su cerebro debió de tener muchas conexiones entre sus neuronas.

Deja un comentario