7 de agosto de 2007

La Web de contenidos (Web 2.0)

En sus orígenes la web era básicamente una herramienta de publicación de contenidos que vino a integrar los servicios clásicos de internet (ftp, gopher, correo electrónico), de manera que permitió una mejora en la experiencia de los usuarios. De cualquier forma, la dinámica estaba basada en la premisa de que los autores de contenido eran muy pocos, éstos, privilegiados del conocimiento del HTML, los servidores UNIX y el ftp (entre otras cosas), podían subir a los servidores web sus documentos y dejarlos para servir como fuente de consulta. Básicamente se trataba de una web de sólo lectura en la que las referencias a temas relacionados estaban prácticamente restringidas a las hiper ligas.

Poco a poco este concepto ha evolucionado radicalmente hasta recientemente. Ahora contamos con herramientas de autoría de contenidos gratuitas esparcidas en toda la red mediante las cuales prácticamente todo el mundo puede crear el contenido que más le agrade para mostrarlo al mundo. Ya no es necesario saber todos esos obscuros comandos para subir una página a la web, es más, ya ni siquiera necesitamos un dominio propio ni nada de eso. Hablamos por ejemplo de los blogs (Blogger y WordPress), de las galerías de fotografías (flickr, picasaWeb, photobucket), o sitios como MySpace, Facebook o Linkedln cuya intención es la de crer redes sociales entre individuos con intereses afines. Los wikis (como la Wikipedia), sin dejar a un lado los sitios de publicación de videos como YouTube o Brightcove y hasta los foros de discusión, esto entre otros. Ahora el paradigma cambia y la web se ha vuelto de lectura-escritura en la que los contenidos ya no son más texto y unas cuantas imágenes, si no expresiones multimedia.

La idea ahora es compartir experiencia y quizás hasta conocimientos y generar redes sociales a partir de intereses comunes. Esta idea se expresa claramente como uno de los principios fundamentales de la Web 2.0, que dice más o menos que “..nadie lo sabe todo pero cada uno de nosotros sabe algo..”, algo que se puede reducir al término de Inteligencia Colectiva.

Por cierto, si uno de estos días no tienen mucho que hacer los invito a darse una vuelta por estos sitios:

http://www.flickr.com/photos/jaramillo (Algunas fotos que me gustaron bastante)

http://picasaweb.google.com/alfredo.campos (Mis galerías de fotos), y

http://blogspot.com/alfredo.campos (mi blog, que contiene muchos de los art´ículos que he escrito a lo largo de mi vida).

Oportunidades de desarrollo a partir del Manifiesto para mejorar sitios .gob

A finales del mes de julio, representantes de 22 gobiernos estatales (entre ellos Puebla), del Distrito Federal y de tres presidencias municipales asumieron el compromiso de crear y mantener sitios web gubernamentales que sean útiles y fáciles de usar para el público más amplio, en el marco del Seminario Internacional de Usabilidad y Accesibilidad para la Web (UAWEB) celebrado en la ciudad de Monterrey.

Los 10 compromisos son:

  1. Asegurar el acceso democrático, inclusive a personas con discapacidad, a los portales gubernamentales cumpliendo con los estándares del W3C
  2. Facilitar la creación, el archivo y la administración del contenido utilizando sistemas accesibles
  3. Asegurar que el contenido y los servicios sean fáciles de encontrar, descubrir y usar según las mejores prácticas de diseño y desarrollo web
  4. Garantizar la transparencia de la información, específicamente en el uso de recursos públicos
  5. Facilitar y promover la participación ciudadana en los temas gubernamentales, así como la colaboración entre gobiernos
  6. Promover la convergencia de sistemas gubernamentales en los niveles federal, estatal y municipal para una interacción sin barreras
  7. Aprovechar el potencial de las tecnologías de información para mejorar la atención a los ciudadanos
  8. Asegurar que el contenido sea entendido fácilmente por todas las personas siguiendo las recomendaciones de Lenguaje Ciudadano
  9. Promover los ideales y los conceptos expresados en este manifiesto
  10. Mejorar constantemente las metodologías referidas en este documento

Lo anterior nos deja ver que al menos en el plano de las intenciones, existiría un compromiso para consolidar y unificar la gran variedad de servicios de información existentes en los varios niveles de gobierno a fin de brindar al ciudadano medios de acceso a servicios e información, de rápido y fácil acceso.

Ahora, un enfoque interesante desde el punto de vista funcional sería la creación puntos de acceso a los servicios, en un esquema basado en capas. ¿Cómo es esto?

De entrada se retomaría el esquema de aplicaciones de tres capas y se llevaría algunos pasos más allá introduciendo capas dentro de las tres principales. Las tres capas tradicionales en el desarrollo de sistemas en web son: presentación, reglas del negocio y acceso a los datos.

Para atacar los puntos uno y cinco, se podría inclusive pensar en que la aplicación no solamente maneje interfaces en web, si no también aplicaciones ligeras (agnósticas especto al sistema operativo), para instalarse directamente en las computadoras de escritorio. Obviamente se requerirá de expertos en funciones de usabilidad de las interfaces de usuario, tanto en formato web como de escritorio. Del mismo modo será necesario contar con datos de contacto de los ciudadanos a fin de hacerles llegar información de interés sobre temas de la comunidad, el estado o incluso el país.

Respecto al punto número dos, es necesario contar con alguna herramienta de administración de contenidos que proporcione flexibilidad y capacidades a los autores de contenido para modificar y personalizar la información desplegada de acuerdo a los perfiles de usuarios. Así mismo será necesario que se identifique la información más importante para el usuario a fin de ponerla más al alcance de éste, garantizando también el punto número tres.

Para el punto número seis será necesario crear conectores hacia cada una de las fuentes de información y sistemas de cada una de las entidades participantes. Un conector de cada lado y un traductor para que haga las veces de punte entre estos y que as su ves medie la autenticación y la seguridad de las transacciones.

Como se ve, esta tarea es ardua y complicada, pero a su ves, esto abre una oportunidad de negocio para las empresas regionales dedicadas al desarrollo de software, tanto para web, como de escritorio, middleware; así como para aquellas dedicadas a la consultoría en seguridad informática y varios otros rubros. Inclusive hasta sería una buena oportunidad para las universidades.

Ojalá que el gobierno del estado tome en cuenta todos los factores que involucran el desarrollo de sistemas como los que se proponen según el manifiesto, así mismo, que se de cuenta de todo el potencial que existe en las empresas de desarrollo de la región y apueste por manufactura local a fin de crear un mercado interno de producción de software.

(Más información en: http://www.uaweb.org.mx/content/view/61/79/lang,es/).

Sistemas pequeños y modulares en la economía regional del software.

Hace algunos años ya estuve muy involucrado en el desarrollo de sistemas de administración escolar para universidades y por experiencia propia pudo decirles que es un proceso complicado el adaptar uno de estos sistemas a la medida de cualquier cliente. ¿La razón? Pues que algunos usan sistemas de créditos y otros no, pero incluso algunos más usan híbridos de los anteriores. Por otro lado, cada quién maneja sus procesos de control escolar de maneras tan diversas, cada quién tiene requisitos diferentes y procesos que no se semejan en mucho a los del resto de las instituciones. Incluso en algunas de estas universidades las materias pueden tener varios nombres (¡Haga usted el favor!).

Ahora imagínense la tarea que representa implantar un sistema genérico bajo estas condiciones. Es una ardua tarea a todas luces.

Esto es sólo un ejemplo de lo que puede representar la adopción de un sistema genérico de grandes proporciones en cualquier empresa (o institución académica, en el ejemplo).

Pero qué sucedería si en lugar de instalar una aplicación que haga de todo un poco, adoptamos una solución mucho más reducida pero que cumpla una función en específico.

Supongamos que solamente necesitamos aplicaciones muy específicas como por ejemplo llevar una lista de los alumnos, los profesores, las materias que se imparten en un semestre determinado y en base a ello generar re portes de horas por profesor, listas de asistencia, horarios de alumnos y grupos, entre otros.

Ahora, digamos que mi escuela ahora quiere llevar los contenidos de sus cursos a la web en un formato en el que el estudiante pueda descargar información, presentar exámenes, subir tareas, etc. Después podemos agregar un bloque para que los profesores guarden las calificaciones de lo alumnos. De aquí obtendremos también historias académicas de los alumnos y tendremos también las bases para la creación de un módulo para que los alumnos se puedan inscribir por Internet.

¿Y cómo lo armamos?

Simple, si se quiere diseñar una aplicación casera basta con instalar un servidor con un sistema operativo adecuado (Linux por ejemplo), un servidor de web robusto (Apache), una base de datos potente (PostgreSQL) y lo más importante, hacer todo esto con un lenguaje de programación que sea simple pero poderoso como PHP. El costo básicamente se reduce al aprendizaje. Ahora, si lo que queremos es que alguien más lo haga la historia quizás sea diferente.

¿Qué tal comenzar poco a poco con sistemas pequeños, a la medida y no muy caros, hechos en casa o por alguna empresa de la región, con software abierto y flexible? ¿Esto no nos ayudaría a darle un empujoncito al mercado del software en Puebla?

En general, este tipo de recetas se puede aplicar no sólo a las universidades, si no a muchas más áreas tanto productivas como académicas. Inclusive sería interesante encargar desarrollo de software a las universidades o bien, a algunas empresas que empleen de manera parcial y a manera de tercerizados a algunos estudiantes.

Que quede claro que no estoy en contra de las soluciones grandes, finalmente también han invertido dinero en el mejoramiento de sus productos, pero ¿para qué comprar un cañón para matar moscas?