jueves, 27 de marzo de 2008

Enseñanza Multiplataforma

Para la comprensión del presente artículo se considera necesario el conocimiento de lo que sería Enseñanza Multiplataforma. La enseñanza multiplataforma viene dada al capacitar a los estudiantes en áreas de software que sean tanto privativas como libres, que los estudiantes aprendan a desempeñar las mismas funciones tanto en software privativo como en software libre.

Definido esto, puede procederse a la lectura del artículo.

En la actualidad se puede decir que los individuos somos dependientes de la tecnología. Si no están de acuerdo conmigo, verifiquen las estadísticas sobre temas tales como: Aumento en el uso de tecnologías móviles, Lectura de noticias vs e-news y otros por el estilo.

Aún siendo dependientes de la tecnología, no nos damos cuenta de muchas cosas que pasan a nuestro alrededor y que vienen a ser consecuencias directas del uso de la tecnología. Por ejemplo, tenemos sistemas de votación electrónicos (muestra excepcional de tecnología) que registran la cantidad de votantes por cada candidato. Lo que no sabemos es que dicho sistema está hecho en software libre (lo que permite garantizar que el código se mantiene limpio y que todos los que lo deseen puedan verlo y con un poco de esfuerzo entender que hace el mismo. Así se asegura que el proceso sea total y cabalmente legal, en teoría). Esto, tal y como lo indican en la página web del día del software libre (http://softwarefreedomday.org/SoftwareFreedom.es) indica que "las libertades básicas que como ser humano Ud. da por sentadas son sólo tan libres como la tecnología en la cual se basan".

Poco ha poco hemos comenzado a hacer uso de estándares libres y de plataformas libres, así como también de formatos libres (tal y como se indica en el artículo anterior http://ojedareinaldo.blogspot.com/2008/03/primer-da-mundial-para-la-libertad-de.html) y esto nos permite asegurar que en un futuro podremos ver esos documentos sin problema alguno con las versiones o los programas que decidamos hacerlo.

Sin embargo el objetivo del presente artículo no es defender netamente el uso de formatos libres, sino hacer notar el hecho de que en las instituciones educativas aún se enseñe en un alto porcentaje única y exclusivamente software propietario.
Surjen entonces estas interogantes:
  • ¿Por qué no entrenar a los estudiantes, en vez de educarlos?,
  • ¿Por qué no mostrarles que pueden hacer uso de software propietario y también de software libre para ejecutar las mismas acciones?,
Entiéndase que la computación multiplataforma es lo que se debería enseñar, es sobre esto que se debería capacitar a los estudiantes (en el área de informática por lo menos). Se necesita que los estudiantes entiendan y aprendan los conceptos, no recetarios de cómo hacer determinadas acciones con determinado software exclusivamente.
Si se enseña sobre software específico no se logrará una capacitación plena del estudiante, sino más bien una venta y comercialización de un producto. En cambio, si se enseñan los conceptos para determinadas acciones, demostrando como hacerlas con diferentes softwares, se lograría entrenar al estudiante y capacitarlo así plenamente para un campo de trabajo. Esto soignificaría capacitarlo para que se pueda enfrentar tanto a software propietario como software libre, al igual que a estándares abiertos y cerrados;, que al fin y al cabo (la mayoría de las veces) terminan cumpliendo las mismas funciones aunque de diferentes maneras.

Recordemos que aquellos estudiantes que aprenden a programar solo en lenguajes propietarios, podrán únicamente trabajar en sitios donde se haga uso de esos lenguajes y de esos estándares. No obstante, si se les enseña como programar, en su base más estable, y se les demuestra como hacerlo en diferentes tipos de lenguajes, ellos estarán preparados para enfrentarse a un campo laboral en el cual se usan estándares de diferentes tipos.

Existe una Carta Abierta Para Instituciones Educativas "Open Letter to Educational Institutions" en la cual se toca con más profundidad lo que en el presente artículo se ha denominado como Enseñanza Multiplataforma.
La versión original se encuentra en: http://softwarefreedomday.org/openletter/education/en (inglés)
Una traducción al español puede ser vista en: http://softwarefreedomday.org/openletter/education/es

También puede ver más información en: http://softwarefreedomday.org/
En dicha página puede leer un artículo interesante sobre la Libertad del Software denominado "Libertad de software, apuntalando sus derechos humanos"
Su versión original está en: http://softwarefreedomday.org/SoftwareFreedom
Una traducción al español puede ser vista en: http://softwarefreedomday.org/SoftwareFreedom.es

26-03-08 Primer día mundial para la Libertad de Documentos

Primer día mundial de la Libertad de los Documentos (The world's first Document Freedom Day), y así se celebró, muy poco sabido por los informáticos, sin embargo es un hecho que se espera se convierta en histórico y tracendental, pues se planea celebrar todos los 26 de Marzo el día mundial de la Libertad de Documentos.

Todos se preguntarán, ¿Qué es la libertad de documentos?
Básicamente la libertad de documentos es el hecho de guardar sus documentos (valga la redundancia) en un formato libre. Por ahora, el único formato que respalda del todo el DFD es el formato .ODF (tal como lo indica Wikipedia, 2008 "ODF, es un formato de fichero estándar para el almacenamiento de documentos ofimáticos tales como hojas de cálculo, memorandos, gráficas y presentaciones)."

El DFD (acrónimo de Día para la Libertad de Documentos, que en inglés sería Document Freedom Day) Es el día global para la liberación de documentos y es un día para esforzarce en educar sobre la importancia de los formatos libres para documentos y estandares abiertos en general.

Hay grupos alrededor de todo el mundo que se inscribieron para participar y colaborar en informar a los ciudadanos sobre la Libertad de Documentos, la idea fue presentarse en instituciones educativas para dar una charla, por lo menos en Mérida, Vzla el evento no se celebró, sin embargo existe y se espera más asistencia y ayuda para el año que viene.

Este es otro punto positivo para los amantes de los estándares abiertos.

La página oficial del DFD es http://www.documentfreedom.org/Main_Page, se encuentra en inglés, sin embargo existe una traducción al español para la página inicial.

miércoles, 19 de marzo de 2008

Hablar en código

En España han hecho un festival premiado, el cual denominaron, relatos cortos de hackers de la UPC.
Este que verán en el link es un artículo que ganó uno de los premios, le leí y me vi obligado a colocar el vínculo en mi blog.
La autoría del artículo pertenece a Benjamí Villoslada.
http://gallir.wordpress.com/2007/11/22/p0wned/

domingo, 16 de marzo de 2008

Local Server en Linux (LAMP)

LAMP

Primero que nada debo disculparme con los lectores por la ausencia, sin embargo estaba finalizando semestre en donde estudio y por lo tanto el presente Blog pasó a 3ero en mi orden de prioridades.


Por mi trabajo y mis estudios me he visto obligado a hacer un servidor local en mi máquina, para empezar tuve que hacerlo en Windows ya que ese es el sistema que se utiliza en la institución y ya sabía como montarlo. Por lo tanto procedí a instalar primero un paquete denominado WAMP (acrónimo de Windows, Apache, MySQL y PHP), para instalar dicho paquete solo es necesario tener el programa y seguir sus instrucciones (como casi todo en Windows) sin embargo, poco tiempo después me percaté de que ese paquete generaba algunos problemas con PHP5 y procedí a desinstalarlo para comenzar entonces con "appserver" (el cual funciona a las mil maravillas en Windows). Bueno, se me presentó un gran problema que contaré luego en otro artículo, para no salir del tema (el artículo lo llamaré, "PHP y MySQL sin conexión Windows"). Sin embargo, al tener un poco más de tiempo, he hecho lo que todo linuxero hace (a mi parecer) demostrar que las cosas funcionan bien en GNU/Linux, y procedí a instalar mi WebServer en Debian Lenny cumpliendo los pasos que indicaré.

Vale acotar que cuando se instala GNU/Linux Debian en el último paso nos pregunta si deseamos instalar las aplicaciones de Server, lo mejor es decir que si desde ese momento, pero que pasa si no queremos reinstalar, tranquilos, todo tiene solución.

Lo primero es saber ¿qué necesitamos para un WebServer en Linux?
ara mi caso yo necesito un LAMP (acrónimo de Linux, Apache, MySQL y PHP) así que procedí a instalar con nuestro querido comando apt-get install

1.- Primero instalaremos Apache
"apt-get install apache2" nos mostrará una salida en pantalla en la cual se informa que posee las siguientes dependencias: "apache2-mpm-worker, apache2-utils apache2.2-common, libapr1, libaprutil1, libpq4, libsqlite3-0", las cuales serán instaladas, aceptamos para que prosiga la instalación de apache.

2.- Bien, luego de esto, instalaremos MySQL:
"apt-get install mysql-server" nos mostrará una salida en pantalla indicando que sus dependencias son: "libbdb-mysql-perl, libdbi-perl, libmysqlclient15off, libnet-daemon-perl, libplrpc-perl, mysql-client-5.0, mysql-common, mysql-server-5.0; aceptamos instalarlas todas y comenzará automáticamente el proceso, en determinado momento nos solicitará indicar el nombre del servidor (indicar localhost) el nombre de usuario (aconsejo indicar root) y una contraseña (por seguridad aconsejo que sea algo que recuerden).


3.- Ahora procederemos a instalar PHP5:
"apt-get install PHP5" igual que en los casos anteriores, se nos indicará las dependencias de ese paquete, las cuales son: "apache2-mpm-prefork, libapache2-mod-php5, php5-common" e igualmente debemos aceptar para que se instalen todas.

4.- Perfecto, aparentemente ya tenemos todo lo que necesitamos, sin embargo en la mayoría de los casos es necesario que se active la extensión de MySQL para PHP, en mi caso así lo fue, por lo tanto procedí a instalarla con el siguiente comando: "apt-get install php5-mysql"

Nota: debe repetirse ese paso para cada extensión que se desee.

Ahora si tenemos instalado todo lo que necesitamos, solo falta configurar algunos detalles menores.
En el archivo "php.ini", que se encuentra en la ruta "/etc/php5/apache2/" debemos activar la extensión de MySQL, descomentando la línea "extension=msql.so", para esto debemos abrir el archivo con permisología de root. (En caso de que no sepan muy bien como abrir el archivo con permisología de root, les indico que una de las formas más fácil es hacer uso del comando "sudo nautilus" que nos abrirá el explorador de ficheros y desde allí podremos buscar y dar apertura al archivo).

Ahora, para que ese cambio sea tomado por el sistema (no es necesario reiniciar :D) solo tendremos que reiniciar el servicio de apache, lo cual se logra haciendo uso del comando "/etc/init.d/apache2 restart"

El único dato que no les he indicado y considero importante es indicar donde están los ficheros de instalación de cada programa y donde deben colocar las páginas Web que desean ver en su servidor local.
Ficheros de instalación de los programas

  1. Apache2: "/etc/apache2/"
  2. PHP5: "/etc/php5/"
  3. MySQL: "/etc/mysql/"


Las páginas Web que desean ver en su servidor local deben estar en la carpeta www: "/var/www/".

Para poder ver en un navegador sus páginas web debe indicar en la barra de direcciones lo siguiente "http://localhost.com/" (en caso de que todas sus páginas web las haya puesto en la carpeta www; si creó un subdirectorio, entonces debe indicar, luego del "...com/" el nombre de la carpeta, recuerde que por defecto el servidor web siempre abrirá la página denominada index, bien sea html o php).

Nota final: He comprobado que en Linux las cosas pueden ser más fáciles que en Windows por lo menos en lo que a servidores web se refiere.