<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://gluc.unicauca.edu.co/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>http://gluc.unicauca.edu.co/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=LibardoPantoja</id>
		<title>Grupo GNU/Linux de la Universidad del Cauca - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="http://gluc.unicauca.edu.co/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=LibardoPantoja"/>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Especial:Contribuciones/LibardoPantoja"/>
		<updated>2026-05-25T06:48:07Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.21.3</generator>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/DIGU</id>
		<title>DIGU</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/DIGU"/>
				<updated>2014-02-19T22:34:16Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Muchos estudiantes, en sus programas de formación, han aprendido a programar aplicaciones en lenguajes como C, C++ o java. Sin embargo, no han hecho mucho énfasis en la interfaz gráfica de usuario. En la actualidad, la interfaz en un componente fundamental de cualquier aplicación y hay áreas de la computación como la Ingeniería de la Usabilidad, que recalcan la importancia de hacer interfaces de usuario amigables y agradables.&lt;br /&gt;
&lt;br /&gt;
El objetivo de este grupo de estudio del GLUC es estudiar las librerías GTK y QT que permiten hacer Intefaces de usuarios para entornos GNOME y QT respectivamente, de tal forma, que se genere documentación y tutoriales en español, que faciliten el aprendizaje a estudiantes que estén interesados en este tema.&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/DIGU</id>
		<title>DIGU</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/DIGU"/>
				<updated>2014-02-19T22:15:05Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Muchos estudiantes, en sus programas de formación, han aprendido a programar aplicaciones en lenguajes como C, C++ o java. Sin embargo, no han hecho mucho énfasis en la interfaz gráfica de usuario. En la actualidad, la interfaz en un componente fundamental de cualquier aplicación y hay áreas de la computación como la Ingeniería de la Usabilidad, que recalcan la importancia de hacer interfaces de usuario amigables y agradables.&lt;br /&gt;
&lt;br /&gt;
El objetivo de este grupo de estudio del GLUC es estudiar las librerías GTK y QT que permiten hacer Intefaces de usuarios para entornos GNOME y QT respectivamente, de tal forma, que se genere documentación y tutoriales en español, que faciliten el aprendizaje a estudiantes que estén interesados en su aprendizaje.&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/DIGU</id>
		<title>DIGU</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/DIGU"/>
				<updated>2014-02-19T21:06:01Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «El objetivo de este grupo de estudio es estudiar las librerías GTK y QT.»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;El objetivo de este grupo de estudio es estudiar las librerías GTK y QT.&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Grupos_de_Estudio</id>
		<title>Grupos de Estudio</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Grupos_de_Estudio"/>
				<updated>2014-02-19T21:05:19Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: /* Grupos Activos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Los '''Grupos de Estudio del [[GLUC]]''' son asociaciones de dos o más personas que se reunen para profundizar en uno o varios temas relacionados con Software Libre o Software de Código Abierto.&lt;br /&gt;
&lt;br /&gt;
No es necesario que todos los integrantes del Grupo de Estudio sean Miembros Activos del GLUC, pero si que el grupo exprese su intención de participar y hacernos participe de los avances y resultados que alcancen.&lt;br /&gt;
&lt;br /&gt;
== Grupos Activos ==&lt;br /&gt;
&lt;br /&gt;
*[[Vultur|Vultur: Grupo de Aplicación en Software Libre]]&lt;br /&gt;
*[[DIGU|DIGU: Grupo de Desarrollo de Interfaces Gráficas de Usuario para entornos de escritorio GNOME y KDE]]&lt;br /&gt;
&lt;br /&gt;
== Grupos Inactivos ==&lt;br /&gt;
&lt;br /&gt;
* [[GrupoMono| Grupo de Estudio en Mono]]&lt;br /&gt;
&lt;br /&gt;
* [[Grupo Debian|Grupo de Estudio sobre Debian]]&lt;br /&gt;
&lt;br /&gt;
* [[Grupo LAMP| Grupo de Estudio en Aplicaciones Web]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Grupos de Estudio]] &lt;br /&gt;
[[Categoría:Actividades]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Columnas_Ordenadas_por_Fecha</id>
		<title>Columnas Ordenadas por Fecha</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Columnas_Ordenadas_por_Fecha"/>
				<updated>2013-12-04T10:25:05Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''aquí'''.  == Junio de 2.012...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
== Junio de 2.012 ==&lt;br /&gt;
* Junio 23 de 2.012: [[Go 101: Primeros Pasos]]. Por [[Usuario:TYR|Óscar Andrés López]]&lt;br /&gt;
&lt;br /&gt;
== Junio de 2.011 ==&lt;br /&gt;
* Junio 29 de 2.011: [[Autorización Basada en Reglas con Drools]]. Por [[Usuario:TYR|Óscar Andrés López]]&lt;br /&gt;
&lt;br /&gt;
== Junio de 2.010 ==&lt;br /&gt;
* Junio 30 de 2.010: [[Lenguajes Dinámicos en la Java Virtual Machine]]. Por [[Usuario:TYR|Óscar Andrés López]]&lt;br /&gt;
&lt;br /&gt;
== Agosto de 2.008 ==&lt;br /&gt;
*Agosto 30 de 2.008: [[Algunas consideraciones sobre la utilizacion de Software Libre en las Instituciones Educativas]]. Por [[Usuario:Ulises|Ulises Hernandez Pino]] y [[Usuario:Sanaya|Sandra Lorena Anaya Díaz]]&lt;br /&gt;
&lt;br /&gt;
== Julio de 2.008 ==&lt;br /&gt;
*Julio 3 de 2.008: [[Footprint_Gestor_Cetificados_Digitales|Footprint: Gestor de Certificados Digitales]]. Por [[Usuario:Jorarome|José Raúl Romero]].&lt;br /&gt;
&lt;br /&gt;
== Enero de 2.008 ==&lt;br /&gt;
*Enero 9 de 2.008: [[Streaming_video_Ubuntu_Feisty| Streaming de Video en Ubuntu Feisty]]. Por [[Usuario:Jorarome|José Raúl Romero]].&lt;br /&gt;
&lt;br /&gt;
== Octubre de 2.007 ==&lt;br /&gt;
*Octubre 29 de 2.007: [[Maquinas Virtuales y la Virtualizacion| Maquinas Virtuales y Virtualización]]. Por [[Usuario:kapineda|Cristian Pineda]].&lt;br /&gt;
&lt;br /&gt;
== Febrero de 2.006 ==&lt;br /&gt;
*Febrero 14 de 2.006: [[Evolucion de la Filosofia del Conocimiento en las Metodologias de Desarrollo Software]]. Por [[Usuario:Dipaz|Diego Mauricio Paz Carrillo]].&lt;br /&gt;
&lt;br /&gt;
== Julio de 2.005 ==&lt;br /&gt;
*Julio 26 de 2005. [[Desarrollo web empresarial con PHP4]]. Por [[Usuario:Dipaz|Diego Mauricio Paz Carrillo]]&lt;br /&gt;
&lt;br /&gt;
== Abril de 2.005 ==&lt;br /&gt;
*Abril 25 de 2005. [[Colecciones de Orden Superior en Java]]. Por [[Usuario:TYR|Óscar Andrés López]].&lt;br /&gt;
&lt;br /&gt;
== Marzo de 2.005 ==&lt;br /&gt;
*Marzo 28 de 2005. [[Migrándose a GNU Linux y Software libre]]. Por [[Usuario:Wpantoja|Wilson Libardo Pantoja Y]].&lt;br /&gt;
*Marzo 4 de 2005. [[Código Abierto y Software Libre]]. Por [[Usuario:TYR|Óscar Andrés López]].&lt;br /&gt;
&lt;br /&gt;
== Febrero de 2.005== &lt;br /&gt;
*Febrero 14 de 2.005. [[Programación con Ncurses]]. Por [[Usuario:Wpantoja|Wilson Libardo Pantoja Y]].&lt;br /&gt;
*Febrero 7 de 2005. [[Inconvenientes con el Software Libre Educativo]] Por [[Usuario:Yenny|Yenny Alexandra Méndez Alegría]].&lt;br /&gt;
&lt;br /&gt;
== Enero de 2.005 ==&lt;br /&gt;
*Enero 26 de 2.005. [[TAO Framework: un acercamiento la multimedia multiplataforma.]] Por [[Usuario:Ceronman|Manuel Alejandro Cerón E]].&lt;br /&gt;
*Enero 17 de 2.005. [[Acerca de DeStar]] Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
&lt;br /&gt;
== Diciembre de 2.004 ==&lt;br /&gt;
*Diciembre 13 de 2.004. [[Migrando el Sitio Web del GLUC]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Diciembre 6 de 2.004. [[Razones para Usar Software Libre en las Universidades]]». Por [[Usuario:Wpantoja|Wilson Libardo Pantoja Y]].&lt;br /&gt;
*Diciembre 1 de 2.004. [[Seguridad Linux Vs Windows. Lo que Todos Prefieren Ignorar]].  Por [[Usuario:NKT|NKT]].&lt;br /&gt;
&lt;br /&gt;
== Noviembre de 2.004 ==&lt;br /&gt;
*Noviembre 22 de 2.004. The Battle for Wesnoth: El mejor juego libre que existe. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]].&lt;br /&gt;
*Noviembre 15 de 2.004. Acerca de Perl. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Noviembre 8 de 2.004. [[Servicios Web  con Perl]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]]&lt;br /&gt;
*Noviembre 1 de 2.004. TOP 10 de las Vulnerabilidades y Amenazas en Linux. Por [[Usuario:NKT|NKT]].&lt;br /&gt;
&lt;br /&gt;
== Octubre de 2.004 ==&lt;br /&gt;
*Octubre 25 de 2.004. FreeBSD: el otro sistema operativo libre. Por Manuel Alejandro Cerón Estrada.&lt;br /&gt;
*Octubre 18 de 2.004. Acerca de Apache. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Octubre 6 de 2.004. Necesitamos un nuevo sistema de paquetes de software para GNU/Linux. Por[[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
&lt;br /&gt;
== Septiembre de 2.004 ==&lt;br /&gt;
*Septiembre 29 de 2.004. [[Radiografía de GNU/Linux en Popayán, Primera Parte: Colegio Mayor del Cauca]].Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Septiembre 24 de 2.004.Software libre para recordar los viejos tiempos. Por &lt;br /&gt;
[[Usuario:Ceronman|Manuel A. Cerón Estrada]].&lt;br /&gt;
*Septiembre 21 de 2.004. Ideas acerca de la difusión y la promoción del Software Libre. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Septiembre 17 de 2.004. [[Visión Propuesta para las Actividades del GLUC]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Septiembre 15 de 2.004. Un vistazo al proyecto Mono. Segunda Parte: ¿Por qué clonar la tecnología de MS?. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Septiembre 13 de 2.004. ¿Cómo podemos ayudar todos al Software Libre?. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Septiembre 7 de 2.004. [[Jabber vs MSN: Por una Mensajería Instantánea Justa]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]]&lt;br /&gt;
*Septiembre 7 de 2.004. Un vistazo al Proyecto Mono. Primera Parte. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]].&lt;br /&gt;
*Septiembre 6 de 2.004. El auto aprendizaje en el Software Libre. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
&lt;br /&gt;
== Agosto de 2.004 ==&lt;br /&gt;
*Agosto 30 de 2.004. [[Sobre el Curso Básico de Introducción a GNU/Linux del GLUC]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Agosto 30 de 2.004. [[Software Libre para MS Windows]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Agosto 30 de 2.004. Software Propietario: una muestra de nuestro atraso. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Agosto 25 de 2.004. Problemas en el desarrollo de Software Libre. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]].&lt;br /&gt;
*Agosto 24 de 2.004. Averigua por tí mismo que tan &amp;quot;(In)segura&amp;quot; es tu máquina Linux. Parte 2. Por [[Usuario:NKT|NKT]]&lt;br /&gt;
*Agosto 24 de 2.004. ¿Se está acabando el Software Libre?. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Agosto 16 de 2.004. El Sistema X Window. Cuarta Parte: Escritorios y Administradores de Ventanas. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]].&lt;br /&gt;
*Agosto 16 de 2.004. Los &amp;quot;Enemigos&amp;quot; del Software Libre. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Agosto 9 de 2.004. El compilador GNU de C - Tercera parte. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Agosto 9 de 2.004. El Sistema X Window. Tercera Parte: Nuevas Tecnologías en X. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Agosto 9 de 2.004. [[Wikipedia, La Enciclopedia Libre]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]]&lt;br /&gt;
*Agosto 3 de 2.004. Averigua por tí mismo que tan &amp;quot;(In)segura&amp;quot; es tu máquina Linux. Parte 1. Por [[Usuario:NKT|NKT]]&lt;br /&gt;
*Agosto 3 de 2.004. El Sistema X Window. Segunda Parte: XFree86 y X.org. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Agosto 3 de 2.004. [[¿Por qué usar Software Libre en Windows? (parte II)]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Agosto 2 de 2.004. El compilador GNU de C - Segunda parte. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
&lt;br /&gt;
== Julio de 2.004 ==&lt;br /&gt;
*Julio  5 de 2.004: Formatos Libres. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Julio 12 de 2.004. Hackers, una Especie en V&amp;amp;iacute;a de Extinci&amp;amp;oacute;n. Por [[Usuario:NKT|NKT]]&lt;br /&gt;
*Julio 12 de 2.004: Haciendo m&amp;amp;aacute;s f&amp;amp;aacute;cil el cambio de Windows a GNU/Linux. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Julio 12 de 2.004: [[Patentes de Software y el TLC entre los Andinos y Estados Unidos (parte II)]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Julio 12 de 2.004: Software Libre y Negocios: otra de la razones para unirse. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Julio 19 de 2.004. Desarrollando Software Libre con GNU/Linux. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Julio 28 de 2.004. El Sistema X Window. Primera parte: Generalidades . Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Julio 28 de 2.004. Implementando Esquemas de Registro y&lt;br /&gt;
Auditor&amp;amp;iacute;a en tus Aplicaciones JAVA .Por [[Usuario:NKT|NKT]]&lt;br /&gt;
*Julio 26 de 2.004. El compilador GNU de C - Primera parte. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Julio 26 de 2.004. [[¿Por qué usar Software Libre en Windows? (parte I)]].Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Julio 20 de 2.004.  Seguridad Nacional y Dominaci&amp;amp;oacute;n Tecnol&amp;amp;oacute;gica. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Julio 19 de 2.004. Protegiendo Zonas Críticas de Código. Por [[Usuario:NKT|NKT]]&lt;br /&gt;
*Julio 6 de 2.004: Software Propietario y Software Libre: &amp;amp;quot;Los mitos&amp;amp;quot;. Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Julio 5 de 2.004: [[Patentes de Software y el TLC entre los Andinos y Estados Unidos]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Julio 5 de 2.004: Políticas de Seguridad para Aplicaciones Java. Por [[Usuario:NKT|NKT]]&lt;br /&gt;
&lt;br /&gt;
== Junio de 2.004 ==&lt;br /&gt;
*Junio 28 de 2.004: Niveles de Ejecución en Linux. Por [[Usuario:NKT|NKT]]&lt;br /&gt;
*Junio 28 de 2.004: [[Software Libre: ¿un medio o un fin?]] Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Junio 28 de 2.004: [[¿Cómo hacer una tesis de grado libre en Unicauca?]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
*Junio 28 de 2.004: ¿Software Libre o Software de Fuente Abierta?. Por [[Usuario:Ceronman|Manuel A. Cerón Estrada]]&lt;br /&gt;
*Junio 22 de 2.004: [[Un muy peque&amp;amp;ntilde;o tutorial de URPMI, una herramienta que facilita la instalaci&amp;amp;oacute;n y manejo de paquetes en Mandrake GNU/Linux]] Por [[Usuario:Ceronman|Manuel Cerón]].&lt;br /&gt;
*Junio 21 de 2.004: [[¿Qué es y qué no es Software Libre?]] Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Junio 15 de 2.004: [[Estudiando el archivo /etc/passwd]]. Por [[Usuario:NKT|NKT]]&lt;br /&gt;
*Junio 15 de 2.004: [[Sobre las declaraciones de Hommes y Santanilla]]. Por [[Usuario:Alerios|Alejandro Rios Peña]].&lt;br /&gt;
*Junio 15 de 2.004: [[Un pequeño análisis de wxWidgets. Un framework para desarrollar aplicaciones multiplataforma]]. Por [[Usuario:Ceronman|Manuel Cerón]].&lt;br /&gt;
*Junio 9 de 2.004: [[Internet, otros de los medios...]] Por [[Usuario:Dasenjo|Diego Andrés Asenjo G.]]&lt;br /&gt;
*Junio 8 de 2.004: [[Algunos Factores Importantes a la Hora de Instalar Linux por Primera Vez]]. Por [[Usuario:Alerios|Alejandro Ríos Peña]].&lt;br /&gt;
&lt;br /&gt;
== Marzo de 2.004 ==&lt;br /&gt;
*Marzo 15 de 2.004: [[Tutorial de Instalación de Kylix3]]. Por [[Usuario:Pabloz|Pablo Alejandro Zúñiga Muñoz]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Sanaya</id>
		<title>Usuario:Sanaya</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Sanaya"/>
				<updated>2013-12-04T10:23:26Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «=Sandra Lorena Anaya Díaz=  &amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;  == Registro histórico en el GLUC ==  '''Miembro activo del gluc desde:''' Mayo de 2005  '''...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Sandra Lorena Anaya Díaz=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Registro histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde:''' Mayo de 2005&lt;br /&gt;
&lt;br /&gt;
'''Área de Trabajo:''' Investigación y Desarrollo&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Algunas_consideraciones_sobre_la_utilizacion_de_Software_Libre_en_las_Instituciones_Educativas</id>
		<title>Algunas consideraciones sobre la utilizacion de Software Libre en las Instituciones Educativas</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Algunas_consideraciones_sobre_la_utilizacion_de_Software_Libre_en_las_Instituciones_Educativas"/>
				<updated>2013-12-04T10:22:47Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «Agosto 30 de 2.008  Por Ulises Hernandez Pino y Sandra Lorena Anaya Díaz  = ¿Qué es el Software Libre? =  El Software Libre se refi...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Agosto 30 de 2.008&lt;br /&gt;
&lt;br /&gt;
Por [[Usuario:Ulises|Ulises Hernandez Pino]] y [[Usuario:Sanaya|Sandra Lorena Anaya Díaz]]&lt;br /&gt;
&lt;br /&gt;
= ¿Qué es el Software Libre? =&lt;br /&gt;
&lt;br /&gt;
El Software Libre se refiere a un tipo de programas informáticos donde los autores han dado la autorización explicita para que las personas podamos ejecutar, copiar, distribuir, estudiar y adaptar estos programas. De modo más preciso, se refiere a cuatro libertades que los creadores de los programas le entregan a los usuarios[1]:&lt;br /&gt;
&lt;br /&gt;
# Libertad para ejecutar el programa con cualquier propósito.&lt;br /&gt;
# Libertad para estudiar y modificar el programa según sus necesidades, para ello es condición necesaria contar con el Código Fuente del programa.&lt;br /&gt;
# Libertad para redistribuir copias, tanto gratis como por un precio, con la condición de entregar el Código Fuente del programa.&lt;br /&gt;
# Libertad para distribuir versiones modificadas del programa, de tal manera que otras personas puedan beneficiarse con sus mejoras, esto requiere entregar el Código Fuente del programa modificado.&lt;br /&gt;
&lt;br /&gt;
El desarrollo de Software Libre se realiza por la firma convicción de poder armonizar una visión de negocio con el fomento de importantes valores sociales. Como negocio, el Software Libre se basa en un modelo de prestación de servicios, lo que significa que no se cobra por el producto sino por los servicios asociados, que en este caso pueden ser: capacitación, desarrollo, consultoría, adaptación de nuevos módulos del programa, etc. Como fomento de valores sociales, el Software Libre propende por la colaboración, al permitir compartir los programas que tengo si otro lo necesita (sin restricciones legales o económicas); la libertad, ya que se pueden utilizar los programas con cualquier propósito sin necesidad de pedirle permiso nadie y la posibilidad de escoger que programas utilizó, que versiones y en que computadores sin que la moda lo imponga; y la autonomía, al impulsar verdaderos procesos de apropiación, desarrollo tecnológicos y pertinentes de acuerdo con nuestro contexto.&lt;br /&gt;
&lt;br /&gt;
Si bien la funcionalidad del Software Libre puede ser equiparable, e inclusive superar, la funcionalidad de otros tipos de software (que se mencionaran más adelante), no se debe esperar lo mismo en el vínculo social. Con el Software Libre no se compra un producto, por lo tanto no se trata de esperar un servicio técnico comercial (aunque hay empresas que se especializan en este aspecto para el Software Libre), sino que se entra a ser parte de una Comunidad de Usuarios y Desarrolladores. Esta diferencia en el vínculo social en torno al software, requiere que las personas tengan una actitud de aprendizaje autónomo y de apoyo mutuo, lo que significa que en estas comunidades se recibe en la medida en que se da.&lt;br /&gt;
&lt;br /&gt;
Para evitar que el Software Libre pierda su propósito, tiene dos importantes restricciones: en primer lugar, cuando se redistribuye un programa, no se pueden agregar restricciones para denegar a otras personas las libertades que se han recibido; en segundo lugar, si una persona o empresa desarrolla un programa utilizando partes de este tipo de software, el resultado debe entregarse como Software Libre[2].&lt;br /&gt;
&lt;br /&gt;
También es importante indicar la diferencia entre el Software Libre y otros tipos de software[3]. La diferencia entre el Software Libre y el Software Privativo esta en la prohibición explicita, de este último que hace a los usuarios, para redistribuir, estudiar y modificar el software, ya que su modelo de negocios esta centrado en la venta de productos (en este caso licencias de uso). Es el software que está en la mayor parte de los computadores.&lt;br /&gt;
&lt;br /&gt;
La diferencia entre el Software Libre y el Software Gratuito (Freeware), es que este último es limitado en el tipo de uso que se puede hacer, y en que no permite el estudio y mucho menos la modificación a pesar que se obtiene sin pagar por el. Generalmente las personas confunden estos dos tipos de software, ya que la mayor parte del Software Libre también se puede descargar de Internet, sin pagar por el.&lt;br /&gt;
&lt;br /&gt;
La diferencia entre el Software Libre y el Software de Prueba (Shareware), es que este último tiene funcionalidades limitadas y/o por un tiempo, después del cual, si se quiere seguir usando, se debe pagar.&lt;br /&gt;
&lt;br /&gt;
El Software Libre es también Software Comercial porque no se contrapone con la idea de utilizarlo como negocio. La diferencia con el Software Privativo (que también es Software Comercial) es que el modelo de negocio no esta en la venta de licencias del producto, sino en los servicios asociados. Por lo tanto, lo importante del Software Libre no es el precio sino lo que los usuarios puede hacer con el producto (las libertades).&lt;br /&gt;
&lt;br /&gt;
= ¿Mitos sobre el Software Libre? =&lt;br /&gt;
&lt;br /&gt;
* El Software Libre no es de buena calidad, es inestable y presenta muchos errores. Sin embargo, muchos de los servicios críticos de Internet están basados en Software Libre, y en la actualidad, programas como Firefox (Navegador Web), Open Office (Programas de Ofimática), Thunderbird (Cliente de Correo), entre otros, han demostrado ser mucho más estables y con mayores funcionalidades. Además, ninguna empresa o persona que desarrollo software da garantía, lo cual siempre queda explicito en las licencias.&lt;br /&gt;
&lt;br /&gt;
* El Software Libre es muy difícil de manejar y por lo tanto sólo lo pueden hacer expertos. Esto se debe a la idea de regresar al uso de comandos, pero desde hace varios años, existe la tecnología para manejar el computador y los programas a través de ventanas también con Software Libre. Uno ejemplo, es el Sistema Operativo Ubuntu.&lt;br /&gt;
&lt;br /&gt;
* Pasarse a Software Libre es mucho más costoso que la utilización de soluciones Privativas. Generalmente esta visión solo considera los costos de instalación y soporte de software, pero no considera la dependencia en la renovación y actualización de los programas y el hardware en el tiempo.&lt;br /&gt;
&lt;br /&gt;
* Son muy pocos los programas de Software Libre que existen. Debido a que casi no se escucha hablar de Software Libre, se cree que existen muy pocos programas, o que los que existen son sólo para programadores. La realidad es que existen miles de programas para cualquier propósito, incluso existen páginas web que ayudan a encontrar equivalencias libres de programas que habitualmente son privativos[4].&lt;br /&gt;
&lt;br /&gt;
* El Software Libre utiliza formatos de archivo incompatibles. Esta idea surge porque algunos archivos de Software Privativo no se puede abrir en Software Libre, pero lo cierto es que en su afán por vender licencias de Software Privativo, son estas las empresas que no siguen estándares, buscando con ello que los archivos solo se puedan abrir en sus programas. Por el contrario, el Software Libre busca utilizar formatos de archivo estándar y libres para que se puedan ver y modificar en cualquier computador, con cualquier programa.&lt;br /&gt;
&lt;br /&gt;
= ¿Por qué utilizar Software Libre en las Instituciones de Educación? =&lt;br /&gt;
Adaptación de [5]&lt;br /&gt;
&lt;br /&gt;
* Si las instituciones de educación enseñan a utilizar Software Libre, entonces los estudiantes utilizarán Software Libre cuando se gradúen, con lo cual se esta favoreciendo un cambio en la mentalidad de la sociedad al promover la cooperación (esta bien compartir los programas que tengo si otro lo necesita), el valor de la libertad (puedo utilizar los programas con cualquier propósito y no necesito pedirle permiso a nadie sobre lo que hago con ellos) y la emancipación del consumismo tecnológico (yo escojo que programas utilizó, que versiones y en que computadores sin importarme la moda).&lt;br /&gt;
&lt;br /&gt;
* El Software Libre generalmente se puede utilizar sobre diferentes sistemas operativos (GNU/Linux, Macintosh, BSD, Solaris e incluso Windows) por lo tanto, si un estudiante aprende a utilizar estos programas, puede estar casi seguro que podrá utilizar ese programa en cualquier computador del mundo. Si se acostumbra a utilizar solo software privativo, muy probablemente tendrá dificultades si en alguna ocasión tiene que utilizar un computador con un sistema operativo diferente al convencional.&lt;br /&gt;
&lt;br /&gt;
* El software privativo esta por todas partes. Si se enseña software privativo se le estará cerrando la posibilidad a los estudiantes de conocer otras alternativas. Además se promueve la Piratería Informática, ya que si en el colegio se utiliza un programa que el estudiante no tiene en casa, lo más probable es que lo copie así la licencia del programa lo prohíba, ya que de lo contrario no podrá presentar los trabajos que le dejan en la institución de educación. Si se enseña Software Libre en las Instituciones de Educación no sólo se esta incentivando a los estudiantes el respeto por los derechos de autor del software, sino que además se esta promoviendo habilidades como la flexibilidad, al estar en capacidad de utilizar varios programas para hacer la misma tarea.&lt;br /&gt;
&lt;br /&gt;
* La adolescencia es una etapa en la que se despierta la curiosidad, la búsqueda, la exploración todas ellas factores esenciales en el aprendizaje. Si los adolescentes tiene la oportunidad de ver como esta hechos los programas que se utilizan a diario, muy probablemente se estará dando la semilla para formar muy buenos programadores, y con ellos una masa critica para el desarrollo tecnológico de nuestro país. El software privativo restringe el conocimiento, promueve el individualismo, el interés únicamente por lo económico. El Software Libre por su parte anima a a aprender, a compartir el conocimiento que se tiene, a valorar aspectos que pueden ser de beneficio para nuestra sociedad.&lt;br /&gt;
&lt;br /&gt;
* Otra razón es el ahorro económico que supone para la institución educativa, pero esta es una razón superficial, ya que aunque las empresas de software privativo hicieran descuentos o realizaran convenios para regalar licencias de software, lo cierto es que las versiones futuras pueden no tener los descuentos o los convenios se pueden acabar. Pero lo más importante es la dependencia tecnológica que crea, ya que cuando los estudiantes se gradúen, las empresas no les harán ningún descuento si quieren utilizar estos programas en sus casas o empresas.&lt;br /&gt;
&lt;br /&gt;
= ¿Que se necesita para utilizar Software Libre en una Institución Educativa? =&lt;br /&gt;
&lt;br /&gt;
* Entender que lo importante del Software Libre no esta en el producto, sino en el tipo de valores (colaboración, autonomía, libertad) y dinámicas sociales (comunidades, desarrollo tecnológico endógeno) que se quieren promover. Por lo tanto, el primer paso para la utilización de este tipo de software en una institución educativa esta en el cambio de actitud frente a la tecnología por parte de los directivos y profesores. Esto implica desarrollar predisposición para el autoarendizaje, habilidades de trabajo colaborativo y de resolución de problemas, y una profunda persistencia.&lt;br /&gt;
&lt;br /&gt;
* Es indispensable contar, como mínimo, con uno o dos profesores que tengan facilidad para manejar y aprender cosas nuevas relacionadas con los computadores, y que estén encargados de la sala de computo. En contextos como el nuestro, la clave del Software Libre esta en el desarrollo de competencias endógenas, por lo tanto, no se puede esperar a que personas de fuera vengan a hacer el trabajo.&lt;br /&gt;
&lt;br /&gt;
* Contar con conexión a Internet. El Software Libre es desarrollado fundamentalmente por comunidades virtuales, lo que significa que en Internet se encuentra buena parte del archivo histórico sobre el desarrollo, resolución de problemas y dudas acerca de este tipo de programas. Además, es el medio más efectivo para entrar en contacto con personas que puedan ofrecer ayuda.&lt;br /&gt;
&lt;br /&gt;
* Relacionarse con algún grupo o comunidad local que promueva el uso de Software Libre. Así podrá estar al tanto de nuevos programas, eventos, proyectos en los que pueda estar interesada las personas o la Institución Educativa, y a su vez compartir lo que ha aprendido o lo que ha hecho en torno al Software Libre[6]. Estos grupos o comunidades pueden ser un buen apoyo en el proceso de migración del software privativo al Software Libre, pero es necesario tener presente que lo importante del Software Libre no esta en el producto, sino en los procesos que desarrolla, por lo tanto el trabajo de instalación, configuración y resolución de problemas, debe iniciarse desde la propio institución para lograr un desarrollo endógeno de competencias.&lt;br /&gt;
&lt;br /&gt;
= Referencias =&lt;br /&gt;
[1] http://www.gnu.org/philosophy/free-sw.es.html&lt;br /&gt;
&lt;br /&gt;
[2] La licencia más conocida para el Software Libre, se denomina GNU General Public License (GPL): http://www.spanish-translator-services.com/espanol/t/gnu/gpl-ar.html &lt;br /&gt;
&lt;br /&gt;
[3] http://www.gnu.org/philosophy/categories.es.html&lt;br /&gt;
&lt;br /&gt;
[4] http://alts.homelinux.net/ &lt;br /&gt;
&lt;br /&gt;
[5] http://www.gnu.org/philosophy/schools.es.html &lt;br /&gt;
&lt;br /&gt;
[6] En Popayán existe el Grupo GNU/Linux de la Universidad del Cauca – GLUC: http://gluc.unicauca.edu.co &lt;br /&gt;
&lt;br /&gt;
= Licencia =&lt;br /&gt;
[http://creativecommons.org/licenses/by-sa/2.5/co/ http://i.creativecommons.org/l/by-sa/2.5/co/88x31.png]&lt;br /&gt;
&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Jorarome</id>
		<title>Usuario:Jorarome</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Jorarome"/>
				<updated>2013-12-04T10:22:20Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «= Información de Contacto =  :'''Nombre:''' José Raul Romero Mera.  :'''Email:''' jrromero (en) unicauca(nospam-nosolicitado).edu.co  :'''Usuario Linux:'''imagen:377848...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Información de Contacto =&lt;br /&gt;
&lt;br /&gt;
:'''Nombre:''' José Raul Romero Mera.&lt;br /&gt;
&lt;br /&gt;
:'''Email:''' jrromero (en) unicauca(nospam-nosolicitado).edu.co&lt;br /&gt;
&lt;br /&gt;
:'''Usuario Linux:'''[[imagen:377848.png|http://counter.li.org/]]&lt;br /&gt;
&lt;br /&gt;
:'''Ubicación Actual:''' Popayán, Colombia.&lt;br /&gt;
&lt;br /&gt;
:'''Blog en Español:''' En construccion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Profesión =&lt;br /&gt;
* Estudiante de [http://www.unicauca.edu.co Ingenieria en Electrónica y Telecomunicaciones] de la [http://www.unicauca.edu.co Universidad del Cauca] con Enfasis de Telecomunicaciones. Proyecto de grado en desarrollo &amp;quot;Solución de Alta Disponibilidad (HA) y balanceo de carga para el Servicio Web de la Red de Datos de la Universidad del Cauca&amp;quot;&lt;br /&gt;
&lt;br /&gt;
= Estudios Realizados =&lt;br /&gt;
* Bachiller Técnico Industrial Especialidad Dibujo Técnico del Instituto Técnico Industrial Superior de Popayán.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Experiencia Profesional =&lt;br /&gt;
&lt;br /&gt;
* Coordinador de Soporte Técnico de [http://www.caucanet.net.co/ CAUCANET], Servicio Internet en [http://www.caucatel.com.co/ Caucatel S.A. E.S.P.].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Participación en Comunidades =&lt;br /&gt;
&lt;br /&gt;
* '''[http://gluc.unicauca.edu.co GLUC]''' - Grupo GNU/Linux de la Universidad del Cauca (Popayán - Colombia).&lt;br /&gt;
&lt;br /&gt;
* '''[http://el-directorio.org El-Directorio]''' - Comunidad de Software Libre en Colombia.&lt;br /&gt;
&lt;br /&gt;
* '''[http://www.popayanwireless.net PopayanWireless]''' - Comunidad de Popayan Wireless.&lt;br /&gt;
&lt;br /&gt;
* '''[http://www.debiancolombia.com Debian Colombia]''' - Comunidad de Debian Colombia.&lt;br /&gt;
&lt;br /&gt;
* '''[http://www.flisol.info/ FLISoL]''' - Comunidad Organizadora del Festival Latinoamericano de Instalación de Software Libre. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Idiomas =&lt;br /&gt;
&lt;br /&gt;
* Español&lt;br /&gt;
* Inglés (Lectura, hablado poco).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Intereses Académicos =&lt;br /&gt;
&lt;br /&gt;
* Administración y gestión de redes de telecomunicaciones.&lt;br /&gt;
* Comunicaciones IP e Inalambricas.&lt;br /&gt;
* Desarrollo de Aplicaciones Web&lt;br /&gt;
* Aplicación del Software Libre y de Código Abierto (FLOSS) tanto en entornos empresariales y educación como para uso en general.&lt;br /&gt;
* Planeación y desarrollo de proyectos de telecomunicaciones y servicios telemáticos teniendo en cuenta nuevos estándares con preferencia abiertos.&lt;br /&gt;
* Seguridad Informática.&lt;br /&gt;
* Metodologias de Evaluación de Calidad de Software Libre y Open Source (FLOSS).&lt;br /&gt;
* Administración y gestión de CPD's (Centros de Cómputos).&lt;br /&gt;
&lt;br /&gt;
= Participación en Proyectos =&lt;br /&gt;
* [http://git.ucauca.edu.co/ehas/ EHAS] - Implementención de un servicio de Call Center empleando [http://www.asterisk.org Asterisk] y desarrollo de un sistema de comunicación entre radios y una red VoIP.(Terminado)&lt;br /&gt;
&lt;br /&gt;
* [[Proyecto_eStreaming|eStreaming]] - Exploración de Software Libre para la Implementación del Servicios de Streaming (Activo)&lt;br /&gt;
&lt;br /&gt;
* Solución de Alta Disponibilidad (HA) y balanceo de carga para el Servicio Web de la Red de Datos de la Universidad del Cauca (En desarrollo)&lt;br /&gt;
&lt;br /&gt;
= Registro Histórico de Actividades =&lt;br /&gt;
&lt;br /&gt;
== Segundo Semestre de 2011 ==&lt;br /&gt;
* Participación en el II Encuentro Internacional y VI Nacional de Investigación en Ingeniería de Sistemas e Informática EIISI-2011 Tunja el 5, 6 y 7 de Octubre de 2011 en la Universidad Pedagógica y Tecnológica de Colombia como Ponente de  “[http://www.uptc.edu.co/export/sites/default/eventos/2011/eiisi/documentos/Articulo_11.pdf Análisis de Modelos de Evaluación de Calidad de Software Libre]”&lt;br /&gt;
&lt;br /&gt;
== Primer Semestre de 2010 ==&lt;br /&gt;
* Participación en el Festival Latinoamericano de Instalación de Software Libre [http://www.flisol.info/FLISOL2010/Colombia/Popayan?highlight=%28\bCategoryCity\b%29 FLISoL2010] en Popayán el 24 de Abril de 2010 como Ponente de la Charla &amp;quot;[http://wiki.openstreetmap.org/wiki/ES:Main_Page OpenStreetMap]: Cartografiando el mundo para beneficio de la humanidad&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Primer Semestre de 2009 ==&lt;br /&gt;
* Participación en el VIII Encuentro de la Red Nodal de Semilleros de Investigación del Cauca en Popayán el 20 y 21 de Mayo de 2009 en la Corporación Universitaria Autónoma del Cauca como Ponente Semilleros de Investigación en la categoría Proyecto terminado “[http://gluc.unicauca.edu.co/wiki/index.php/Footprint_Gestor_Certificados_Digitales footprint - Gestor de Certificados de Asistencia en Formato Digital]”&lt;br /&gt;
&lt;br /&gt;
* Participación en el Festival Latinoamericano de Instalación de Software Libre [[FLISOL_2009|FLISoL2009]] en Popayán el 25 de Abril de 2009 como Miembro del equipo organizador.&lt;br /&gt;
&lt;br /&gt;
== Segundo Semestre de 2008 ==&lt;br /&gt;
* Publicación del articulo [http://gluc.unicauca.edu.co/wiki/index.php/Footprint_Gestor_Certificados_Digitales footprint - Gestor de Certificados de Asistencia en Formato Digital] el 3 de Julio de 2008&lt;br /&gt;
&lt;br /&gt;
== Primer Semestre de 2008 ==&lt;br /&gt;
* Presentación de la emisión de streaming de video en [http://www.flisol.info/FLISOL2008/flisoltv Flisol TV 2008] en un Stand de demostración del Festival Latinoamericano de Instalación de Software Libre [[FLISOL_2008|FLISoL2008]] en Popayán el 26 de Abril de 2008 y Miembro del equipo organizador de este evento.&lt;br /&gt;
&lt;br /&gt;
* Publicación del articulo [http://gluc.unicauca.edu.co/wiki/index.php/Streaming_video_Ubuntu_Feisty MiniTutorial Streaming de video en Ubuntu Feisty Fawn (7.10)] el 9 de Enero de 2008&lt;br /&gt;
&lt;br /&gt;
== Primer Semestre de 2007 ==&lt;br /&gt;
* Presentación de la Suite [http://www.openoffice.org OpenOffice] en un Stand del Festival Latinoamericano de Instalación de Software Libre [[FLISOL_2007|FLISoL2007]] en Popayán el 28 de Abril de 2007 y Miembro del equipo organizador de este evento.&lt;br /&gt;
&lt;br /&gt;
== Segundo Semestre de 2006 ==&lt;br /&gt;
* Participación en el [http://gluc.unicauca.edu.co/wiki/index.php/Vultur_Seminario_Taller_Ubuntu Seminario-Taller de Software Libre: Instalación y Configuración de Ubuntu] desde el 18 al 21 de Diciembre de 2006&lt;br /&gt;
&lt;br /&gt;
== Primer Semestre de 2005 ==&lt;br /&gt;
* Vinculación al [[Vultur|Grupo de Estudio Vultur]] en Febrero de 2005.&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde:''' Marzo 2003&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Footprint_Gestor_Cetificados_Digitales</id>
		<title>Footprint Gestor Cetificados Digitales</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Footprint_Gestor_Cetificados_Digitales"/>
				<updated>2013-12-04T10:21:57Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Julio 3 de 2.008.'''  ''Por José Raul Romero Mera.''  ''' footprint - Gestor de Certificados de Asistencia en Formato Digital '''  Debido al compro...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Julio 3 de 2.008.'''&lt;br /&gt;
&lt;br /&gt;
''Por [[Usuario:Jorarome|José Raul Romero Mera]].''&lt;br /&gt;
&lt;br /&gt;
''' footprint - Gestor de Certificados de Asistencia en Formato Digital '''&lt;br /&gt;
&lt;br /&gt;
Debido al compromiso y responsabilidad que se tiene de elaborar los certificados de asistencia al Festival de Instalaciones de Software Libre Flisol 2008 Popayán, los cuales son numerosos, por la cantidad de participantes a este importante evento que la comunidad de software libre realiza, se vio la necesidad de contar con aplicaciones o herramienta que permitiera la gestión en la generación y publicación en línea de los certificados, de tal forma, que cada persona interesada descargue e imprima el certificado digital según su deseo.&lt;br /&gt;
&lt;br /&gt;
Con este objetivo, durante varios días en el motor de búsqueda de Google, se evidenció que hay casi nada de herramientas, de uso libre, pero con paciencia se logró localizar un sitio web de un proyecto denominado '''footprint'''[1].&lt;br /&gt;
&lt;br /&gt;
Con este articulo, se pretende mostrar una forma de gestionar los certificados de asistencia en formatos digitales para cualquier tipo de evento. La intención es brindar una guía paso a paso sobre la instalación, configuración básica y puesta en marcha de una aplicación que permiten gestionar la generación y remisión de los certificados de asistencia a los participantes de los diversos eventos que la Comunidad programa y que generalmente la concurrencia de participantes a estos es muy numerosa, lo que dificulta, el manejo del tema de elaboración de los certificados.&lt;br /&gt;
&lt;br /&gt;
Para este propósito, se ha efectuado una prueba y posteriormente se hizo una adaptación para emitir parte de los certificados de asistencias al Flisol 2008 en Popayán, para lo cual, se contó con lo siguiente:&lt;br /&gt;
&lt;br /&gt;
# Un Pc con Sistema operativo GNU/Linux Ubuntu 7.10 Feisty Fawn con acceso a la red Internet.&lt;br /&gt;
&lt;br /&gt;
== Descripción del proyecto footprint ==&lt;br /&gt;
&lt;br /&gt;
La meta del proyecto footprint es producir un conjunto de herramientas para generar y distribuir documentos firmados digitales, estas herramientas fueron inicialmente planeadas para generar certificados de asistencia para los eventos de los Grupos de Usuarios de Java, mas conocidos como JUG, aunque también ha sido usadas para crear otros documentos parametrizados. La licencia del proyecto es LGPL.&lt;br /&gt;
&lt;br /&gt;
El proyecto emplea aplicativos Open Source como:&lt;br /&gt;
&lt;br /&gt;
* '''iText'''[2] - Una librería Java-PDF&lt;br /&gt;
* '''Legion of the Bouncy Castle'''[3] - APIs de criptografía Java&lt;br /&gt;
* '''CsvJdbc'''[4] - driver JDBC para Java empleado para archivos CSV (Comma Separated Value) como tabla de base datos.&lt;br /&gt;
* '''OpenOffice'''[5] - Suite de oficina para producir las plantillas de los certificados.&lt;br /&gt;
* '''JAXB 2.+'''[6] - Arquitectura Java para XML Binding.&lt;br /&gt;
&lt;br /&gt;
El último release del proyecto '''footprint''' es '''FOR''', un JDBC Publisher Demo, el cual genera documentos PDF firmados desde una base de datos jdbc y los remite a través de un servidor SMTP a direcciones electrónicas contenidas en la base de datos. Este demo emplea un archivo CSV como fuente de datos origen y una plantilla del certificado en PDF la cual ha sido creada con OpenOffice, además incluye un archivo demo de keystore para el certificado digital.&lt;br /&gt;
&lt;br /&gt;
La configuración de footprint se efectúa mediante un archivo XML, el cual puede ser usado para validar configuraciones y/o generar plantillas de sus archivos de configuración.&lt;br /&gt;
&lt;br /&gt;
El algoritmo de footprint trabaja de la siguiente forma:&lt;br /&gt;
# Lee el archivo de configuración XML, el cual contiene muchas definiciones como conexiones JDBC, detalles de la plantilla PDF y el archivo keystore, y usa JAXB para construir una representación de objeto de la configuración.&lt;br /&gt;
# Lee la plantilla PDF.&lt;br /&gt;
# Accede a la base de datos por conexión JDBC y lee cada dato del listado del archivo CSV. Por cada dato del listado del archivo CSV se hace:&lt;br /&gt;
## Llena la plantilla PDF con los datos del integrante de la lista: nombre, email, etc.&lt;br /&gt;
## Genera un nuevo archivo PDF con la información del integrante.&lt;br /&gt;
## Firma y sella el nuevo archivo PDF.&lt;br /&gt;
## Envía el nuevo archivo PDF firmado a la dirección email del participante.&lt;br /&gt;
&lt;br /&gt;
== Requisitos e Instalación de footprint ==&lt;br /&gt;
&lt;br /&gt;
'''2.1. Verificación de instalación de J2RE 1.6 o superior.'''&lt;br /&gt;
&lt;br /&gt;
En la terminal se digita:&lt;br /&gt;
&lt;br /&gt;
 $ java -version&lt;br /&gt;
&lt;br /&gt;
Si no se tiene debe instalarse.&lt;br /&gt;
Para instalar J2RE 1.6 en GNU/Linux Debian Lenny, Ubuntu 7.10 Gutsy Gibbon o Ubuntu 8.04 Hardy Heron, en la terminal se usa:&lt;br /&gt;
&lt;br /&gt;
 # apt-get install sun-java6-jre&lt;br /&gt;
&lt;br /&gt;
'''2.2. Descarga e instalación de footprint'''&lt;br /&gt;
&lt;br /&gt;
Del sitio de '''footprint'''[1] se descarga el último release, a la fecha de este documento, es '''FOR''', se descarga y se extrae en algún directorio del PC, al extraer se genera un directorio llamado release el cual contiene dos directorios llamados '''lib''' y '''resources''' y tres archivos: '''FootprintDemo.class''', '''FootprintDemo.java''' y '''README.txt'''.&lt;br /&gt;
&lt;br /&gt;
En el directorio '''/release/resources''' se encuentran los archivos que pueden adaptarse de acuerdo a la necesidad y son:&lt;br /&gt;
&lt;br /&gt;
* '''configExample.xml''': archivo de configuración&lt;br /&gt;
* '''demo.cvs''': base de datos de los que se debe certificar en formato CVS&lt;br /&gt;
* '''demo.keystore''': archivo demo que contiene la llave digital para la firma&lt;br /&gt;
* '''selo.gif''': archivo demo con el cual se sella y firma digitalmente el certificado&lt;br /&gt;
* '''template.demo.odt''': Plantilla demo de certificado creada con OpenOffice&lt;br /&gt;
* '''template.demo.pdf''': Plantilla demo de certificado en PDF&lt;br /&gt;
&lt;br /&gt;
'''2.3. Obtener un certificado Digital &amp;quot;Class 2&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
En la Wikipedia[11], la definición de un Certificado Digital es &amp;quot;''un documento digital mediante el cual un tercero confiable (una autoridad de certificación) garantiza la vinculación entre la identidad de un sujeto o entidad y su clave pública''&amp;quot;, por lo que es importante que los eventos de la comunidad cuenten con certificados digitales oficiales para emplearlos.&lt;br /&gt;
&lt;br /&gt;
Se puede obteber un certificado digital gratuito en CaCert [7] o comprar uno ante una entidad certificadora.&lt;br /&gt;
&lt;br /&gt;
Para obtener un certificado digital en CaCert [7], se debe crear una cuenta en el sitio web de CaCert [7], luego de verificar en su cuenta de correo, se logue a CaCert [7], y se solicita un certificado. Para firmar documentos, se debe obtener un certificado denominado certificado cliente, para esto, en el menu se escoge Client Certificates y se escoge  New Link. Se siguen las instrucciones y una vez que el certificado es creado, se escoge el enlace que se da para instalar el certificado en el navegador. Una vez que se verifique que el Certificado esta instalado en el navegador, se importa y se graba en algún directorio del PC y queda listo para usar.&lt;br /&gt;
&lt;br /&gt;
'''2.4. Crear la plantilla del certificado en PDF'''&lt;br /&gt;
&lt;br /&gt;
Para ello se usa OpenOffice para crear y diseñar la plantilla que contiene campos de datos para formularios, una vez que se tenga definido la plantilla se exporta al formato PDF&lt;br /&gt;
&lt;br /&gt;
'''2.5. Contar con un archivo .gif, .jpg o .png'''&lt;br /&gt;
&lt;br /&gt;
Para emplearlo como sello para el certificado, preferiblemente puede ser el emblema del grupo o del evento al cual se va a certificar.&lt;br /&gt;
&lt;br /&gt;
== Configuración de footprint ==&lt;br /&gt;
&lt;br /&gt;
El archivo '''demo.cvs''' contiene los siguientes datos:&lt;br /&gt;
&lt;br /&gt;
 nome,email&lt;br /&gt;
 Felipe Gaucho,fgaucho@gmail_notspam_.com&lt;br /&gt;
&lt;br /&gt;
Este se puede modificar con datos propios para probarlo.&lt;br /&gt;
&lt;br /&gt;
El archivo '''configExample.xml''', se debe modificar, en especial, la parte email para la remisión o distribución de los certificados:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;email smtp.user=&amp;quot;'''SUCUENTA@SUSERVIDOR.COM'''&amp;quot; smtp.password=&amp;quot;'''SUCONTRASEÑA'''&amp;quot;&lt;br /&gt;
  		msg.from=&amp;quot;'''SUCUENTA@SUSERVIDOR.COM'''&amp;quot; smtp.transfer.protocol=&amp;quot;smtp&amp;quot;&lt;br /&gt;
  		smtp.star.ttls.enable=&amp;quot;true&amp;quot; smtp.host=&amp;quot;'''SMTP.SUSERVIDOR.COM'''&amp;quot;&lt;br /&gt;
  		smtp.content.type=&amp;quot;text/plain&amp;quot; smtp.auth=&amp;quot;true&amp;quot; socks.proxy.port=&amp;quot;&amp;quot;&lt;br /&gt;
  		socks.proxy.host=&amp;quot;&amp;quot; msg.subject=&amp;quot;'''ASUNTO'''&amp;quot;&lt;br /&gt;
  		post.processing.type=&amp;quot;RENAME&amp;quot;&amp;gt;&lt;br /&gt;
  		&amp;lt;msg.body&amp;gt;&lt;br /&gt;
  			&amp;lt;![CDATA[&lt;br /&gt;
 &lt;br /&gt;
 '''Escribir aquí el cuerpo del mensaje o adecuar el mensaje de ejemplo colocado...''' &lt;br /&gt;
  ___________&lt;br /&gt;
 This certificate was generated by The Footprint Project (footprint.dev.java.net)&lt;br /&gt;
  			]]&amp;gt;&lt;br /&gt;
  		&amp;lt;/msg.body&amp;gt;&lt;br /&gt;
  	&amp;lt;/email&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ejecución de footprint ==&lt;br /&gt;
&lt;br /&gt;
Una vez definida la configuración y el archivo CVS, se procede a ejecutar el programa, desde la terminal, estando en el directorio '''release''', se emplea el siguiente comando:&lt;br /&gt;
&lt;br /&gt;
 $java -cp .:./lib/bcprov-jdk16-136.jar:./lib/csvjdbc.jar:./lib/footprint-config.jar:./lib/footprint-core.jar:./lib/itext-2.0.2.jar:./lib/mail.jar FootprintDemo&lt;br /&gt;
&lt;br /&gt;
== footprint y los Certificados de Asistencia al FLISoL 2008 Popayán ==&lt;br /&gt;
&lt;br /&gt;
Para los certificados de asistencia del Flisol 2008 Popayán[8], se tomó el diseño del certificado oficial y se creó la plantilla  con Openoffice con los campos de texto y luego se exportó a PDF con el nombre de '''plantillafinal.pdf'''.&lt;br /&gt;
&lt;br /&gt;
Se creó el archivo CVS '''listado.cvs''' con la estructura requerida, tal como se muestra a continuación:&lt;br /&gt;
&lt;br /&gt;
 nombre,cedula,email&lt;br /&gt;
 &amp;quot;Felipe Gaucho&amp;quot;,XYZXYZXYZ,fgaucho@gmail_nospam_.com&lt;br /&gt;
 &amp;quot;José Raul Romero Mera&amp;quot;,7631XYZ4,jrromero@unicauca_nospam_.edu.co&lt;br /&gt;
&lt;br /&gt;
Las modificaciones que se efectuaron en el archivo de configuración '''configExample.xml''' fueron:&lt;br /&gt;
&lt;br /&gt;
En la parte de '''template'''&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;template pdf.template.filename='''&amp;quot;resources/plantillafinal.pdf&amp;quot;'''&lt;br /&gt;
      pdf.generated.prefix=&amp;quot;&amp;quot; pdf.generated.path=&amp;quot;generated&amp;quot;&lt;br /&gt;
      pdf.generated.extension=&amp;quot;.pdf&amp;quot; pdf.generated.charset=&amp;quot;UTF-8&amp;quot;&lt;br /&gt;
      pdf.template.charset=&amp;quot;UTF-8&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la parte de Seguridad '''security''', no se logró obtener un certificado digital para el evento, por lo que se empleó el archivo '''demo.keystore''' que venía incluido en el proyecto '''footprint''' y se empleó el emblema del grupo GLUC[9] como sello de la firma digital. Se modifica la certificación digital que se va a emplear, se indica la ubicación y nombre del archivo imagen que se empleará como sello, además se indica la posición donde se desea que quede el sello en el Certificado&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;security keystore.type=&amp;quot;JKS&amp;quot; keystore.pk.provider=&amp;quot;SUN&amp;quot;&lt;br /&gt;
 		keystore.pk.alias=&amp;quot;fpdemo&amp;quot;  keystore.filename=&amp;quot;resources/demo.keystore&amp;quot;&lt;br /&gt;
 		keystore.password=&amp;quot;footprint&amp;quot; keystore.pk.password=&amp;quot;footprint&amp;quot;&lt;br /&gt;
 		signature.contact.mail=&amp;quot;'''gluc@unicauca.edu.co'''&amp;quot;&lt;br /&gt;
 		signature.location=&amp;quot;'''Popayan CAUCA Colombia'''&amp;quot;&lt;br /&gt;
 		signature.reason=&amp;quot;'''Flisol 2008 Popayan'''&amp;quot;&amp;gt;&lt;br /&gt;
 		&amp;lt;signature.stamp&lt;br /&gt;
 			signature.stamp.image.filename=&amp;quot;'''resources/tux-gluc.jpg'''&amp;quot;&lt;br /&gt;
 			signature.stamp.x1=&amp;quot;'''140'''&amp;quot; signature.stamp.y1=&amp;quot;46&amp;quot;&lt;br /&gt;
 			signature.stamp.x2=&amp;quot;'''165'''&amp;quot; signature.stamp.y2=&amp;quot;70&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/security&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la parte Base de Datos '''database''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;database jdbc.query=&amp;quot;SELECT first_name FROM '''listado'''&amp;quot;&lt;br /&gt;
 	              . . .&lt;br /&gt;
  		&amp;lt;driver.properties&lt;br /&gt;
                         . . .                   &lt;br /&gt;
 			&amp;lt;driver.properties value='''&amp;quot;UTF-8&amp;quot;''' name=&amp;quot;charset&amp;quot; /&amp;gt;&lt;br /&gt;
 		&amp;lt;/driver.properties&amp;gt;&lt;br /&gt;
 	&amp;lt;/database&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En la parte '''pdf2jdbc''' se aplicó:&lt;br /&gt;
&lt;br /&gt;
 	&amp;lt;pdf2jdbc&amp;gt;&lt;br /&gt;
 		'''&amp;lt;mapping pdfField=&amp;quot;nombre&amp;quot; databaseColumnName=&amp;quot;nombre&amp;quot; /&amp;gt;'''&lt;br /&gt;
 		'''&amp;lt;mapping pdfField=&amp;quot;cedula&amp;quot; databaseColumnName=&amp;quot;cedula&amp;quot; /&amp;gt;'''&lt;br /&gt;
 	&amp;lt;/pdf2jdbc&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Y finalmente en la parte '''email''', se modificó&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;email smtp.user=&amp;quot;'''micuenta@caucanet.net.co'''&amp;quot; smtp.password=&amp;quot;'''XXXXXXXX'''&amp;quot;&lt;br /&gt;
 		msg.from=&amp;quot;'''gluc@unicauca.edu.co'''&amp;quot; smtp.transfer.protocol=&amp;quot;smtp&amp;quot;&lt;br /&gt;
 		smtp.star.ttls.enable=&amp;quot;true&amp;quot; smtp.host=&amp;quot;'''smtp.caucanet.net.co'''&amp;quot;&lt;br /&gt;
 		smtp.content.type=&amp;quot;text/plain&amp;quot; smtp.auth=&amp;quot;true&amp;quot;  socks.proxy.port=&amp;quot;&amp;quot;&lt;br /&gt;
 		socks.proxy.host=&amp;quot;&amp;quot; msg.subject=&amp;quot;'''Certificado de Asistencia  FLISOL 2008 Popayan'''&amp;quot;&lt;br /&gt;
 		post.processing.type=&amp;quot;RENAME&amp;quot;&amp;gt;&lt;br /&gt;
 		&amp;lt;msg.body&amp;gt;&lt;br /&gt;
 			&amp;lt;![CDATA[&lt;br /&gt;
 '''Cordial saludo,'''&lt;br /&gt;
 '''Se adjunta Certificado Digital de Asistencia al evento Flisol 2008 Popayan.'''&lt;br /&gt;
 '''Agradecemos mucho, su participacion. Proximamente estaremos programando otros  eventos, los cuales, estaremos anunciando oportunamente con el fin de contar con  su compañia.'''&lt;br /&gt;
 '''Cualquier inquietud, con gusto se atendera'''&lt;br /&gt;
 '''Comite Coordinador Flisol 2008'''&lt;br /&gt;
 ''' __________''&lt;br /&gt;
 '''This certificate was generated by The Footprint Project  (footprint.dev.java.net).'''&lt;br /&gt;
 			]]&amp;gt;&lt;br /&gt;
 		&amp;lt;/msg.body&amp;gt;&lt;br /&gt;
 	&amp;lt;/email&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Una vez se tuvieron los archivos necesarios, se procedió a ejecutarlo:&lt;br /&gt;
&lt;br /&gt;
 jorarome@spongebob:~/JoseRaul/certificados/release$  java -cp .:./lib/bcprov-jdk16- 136.jar:./lib/csvjdbc.jar:./lib/footprint-config.jar:./lib/footprint-core.jar:./lib/itext- 2.0.2.jar:./lib/mail.jar FootprintDemo&lt;br /&gt;
 28/06/2008 05:58:51 PM net.java.dev.footprint.publisher.JdbcPublisher publish&lt;br /&gt;
 INFO: executing query: SELECT first_name FROM demo&lt;br /&gt;
 28/06/2008 05:58:52 PM net.java.dev.footprint.publisher.JdbcPublisher publish&lt;br /&gt;
 INFO: file generated/fgaucho@gmail_nospam_.com.pdf successfully published.&lt;br /&gt;
 28/06/2008 05:59:15 PM net.java.dev.footprint.mailer.DefaultMailerStrategy postProcess&lt;br /&gt;
 GRAVE: mailer.sent.rename.failure&lt;br /&gt;
 28/06/2008 05:59:15 PM net.java.dev.footprint.mailer.DefaultMailerStrategy send&lt;br /&gt;
 INFO: PDF successfully sent to fgaucho@gmail_nospam_.com&lt;br /&gt;
 28/06/2008 05:59:16 PM net.java.dev.footprint.publisher.JdbcPublisher publish&lt;br /&gt;
 INFO: file generated/jrromero@unicauca_nospam_.edu.co.pdf successfully published.&lt;br /&gt;
 28/06/2008 05:59:39 PM net.java.dev.footprint.mailer.DefaultMailerStrategy postProcess&lt;br /&gt;
 GRAVE: mailer.sent.rename.failure&lt;br /&gt;
 28/06/2008 05:59:39 PM net.java.dev.footprint.mailer.DefaultMailerStrategy send&lt;br /&gt;
 INFO: PDF successfully sent to jrromero@unicauca_nospam_.edu.co&lt;br /&gt;
 jorarome@spongebob:~/JoseRaul/certificados/release$ &lt;br /&gt;
&lt;br /&gt;
De esta forma es como algunos certificados fueron generados y remitidos por correo electrónco a los diferentes destinatarios que participaron en el Flisol 2008 Popayán[8], cada uno ha encontrado en su correo electrónico un mensaje con el adjunto del certificado, similar a este [[Media:Jrromero@unicauca_nospam_.edu.co.pdf | Certificado Demo de Asistencia FLISoL 2008]], el cual puede ver y/o descargarlo.&lt;br /&gt;
&lt;br /&gt;
== Conclusiones ==&lt;br /&gt;
&lt;br /&gt;
El proyecto footprint cuenta con licencia LGPL y el código fuente completo esta disponible en el repositorio SVN[10], soportara i18n., es casi el único de uso libre que hay a la fecha, con el que puede administrar los certificados asistencia de lo muchos asistentes a eventos que se realicen de una manera sencilla y ágil, teniendo en cuenta lo desgastante que es atender la organización de eventos, solo basta tener un listado con los datos esenciales de cada uno de ellos.&lt;br /&gt;
&lt;br /&gt;
Un inconveniente que no se logró superar fue en la suite OpenOffice, usada para la creación de la plantilla,  ya que los campos de texto para formularios, no tienen la posibilidad de transparencia, por lo que impiden que las decoraciones o filigramas colocadas como fondo de la plantilla se vean sino que muestran una mancha que desentona con la estética del certificado.  &lt;br /&gt;
&lt;br /&gt;
En general, el proyecto footprint, pinta bien, ya hay ciertas características que se implementarán a futuro como una GUI que permita una configuración más amigable y un sistema de gestion de documentos. Solo queda por invitar a personas que posean o no destrezas en Java, pero con deseos de aportar, para que colaboren con el desarrollo de este proyecto o que a partir de esta grandiosa idea, se generen nuevos y mejores proyectos.&lt;br /&gt;
&lt;br /&gt;
== Referencias ==&lt;br /&gt;
&lt;br /&gt;
[1] footprint: Project Home Page  https://footprint.dev.java.net/ (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[2] iText, a Free Java-PDF Library: Home Page  http://www.lowagie.com/iText/ (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[3] The Legion of the Bouncy Castle Java Cryptography APIs  http://www.bouncycastle.org/java.html (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[4] SourceForge.net: CsvJdbc - CSV file JDBC driver  http://sourceforge.net/projects/csvjdbc (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[5] OpenOffice.org - The Free and Open Productivity Suite  http://www.openoffice.org/ (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[6] jaxb:JAXB Reference Implementation  https://jaxb.dev.java.net/ (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[7] CAcert.org  http://www.cacert.org/ (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[8] FLISOL 2008 Popayán - Grupo GNU/Linux de la Universidad del Cauca  http://gluc.unicauca.edu.co/wiki/index.php/FLISOL_2008 (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[9] Grupo GNU/Linux de la Universidad del Cauca - Grupo GNU/Linux de la Universidad del Cauca  http://gluc.unicauca.edu.co/ (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[10] footprint: Subversion  https://footprint.dev.java.net/source/browse/footprint/ (Consultada Mayo 2008)&lt;br /&gt;
&lt;br /&gt;
[11] Certificado digital - Wikipedia, la enciclopedia libre http://es.wikipedia.org/wiki/Certificado_digital/ (Consultada Julio 2008)&lt;br /&gt;
&lt;br /&gt;
== Licencia ==&lt;br /&gt;
&lt;br /&gt;
Este articulo esta bajo una Licencia de Creative Commons:&lt;br /&gt;
[http://creativecommons.org/licenses/by-nc-sa/2.5/co/ http://i.creativecommons.org/l/by-nc-sa/2.5/co/88x31.png]&lt;br /&gt;
&lt;br /&gt;
== Otros ==&lt;br /&gt;
&lt;br /&gt;
Agradecimiento muy especial a [http://weblogs.java.net/blog/felipegaucho/ Felipe Gaucho] quien por su idea y creación del proyecto footprint, ha sido un aporte muy valioso para nuestro evento.&lt;br /&gt;
&lt;br /&gt;
Este articulo está dedicado a cada uno de los compañeros que con su valioso aporte, con su esfuerzo, su dedicación y cariño, colaboraron en la organización del FLISoL 2008 en la Ciudad de Popayán, siendo un éxito.&lt;br /&gt;
También es dedicado a mi pequeño hijo, quien, cumple un año mas de vida, el dia en que se publica este articulo.&lt;br /&gt;
&lt;br /&gt;
Opiniones, Comentarios, Correcciones, dudas e inquietudes son bienvenidas en [[Discusión:Footprint_Gestor_Cetificados_Digitales|Discusión footprint Gestor Certificados Digitales]].&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Kapineda</id>
		<title>Usuario:Kapineda</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Kapineda"/>
				<updated>2013-12-04T10:21:34Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «=MI PERFIL=  Mi nombre es Cristian David Pineda Bravo, tengo 19 años y soy estudiante de Ingeniería Electrónica y Telecomunicaciones de la Universidad del Cauca.  ==AREA...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MI PERFIL=&lt;br /&gt;
&lt;br /&gt;
Mi nombre es Cristian David Pineda Bravo, tengo 19 años y soy estudiante de Ingeniería Electrónica y Telecomunicaciones de la Universidad del Cauca.&lt;br /&gt;
&lt;br /&gt;
==AREAS DE INTERÉS==&lt;br /&gt;
&lt;br /&gt;
*Participiación en el proyecto Debian&lt;br /&gt;
*Aplicacions y desarrollo con Software Libre&lt;br /&gt;
*Programación con Python&lt;br /&gt;
*Administración de Sistemas&lt;br /&gt;
&lt;br /&gt;
== [http://decan7.blogspot.com/ Mi Blog] ==&lt;br /&gt;
&lt;br /&gt;
==GRUPOS A LOS QUE PERTENEZCO==&lt;br /&gt;
&lt;br /&gt;
* [http://www.gluc.unicauca.edu.co GLUC] - Grupo GNU/Linux de la Universidad del Cauca.&lt;br /&gt;
* [http://www.vultur.unicauca.edu.co vultur] - Grupo de de Aplicación de Software Libre.&lt;br /&gt;
&lt;br /&gt;
==PROYECTOS==&lt;br /&gt;
&lt;br /&gt;
..POR LLENAR Y RELLENAR  :)&lt;br /&gt;
&lt;br /&gt;
=ARCHIVO=&lt;br /&gt;
&lt;br /&gt;
==Segundo Semestre de 2006==&lt;br /&gt;
&lt;br /&gt;
* Me uno al grupo vultur de la Universidad del Cauca&lt;br /&gt;
&lt;br /&gt;
* Participación en el '''IV Seminario Internacional Tecnologías Internet (SITI-2006)''', Popayán - Octubre 5 -7 de 2006.&lt;br /&gt;
&lt;br /&gt;
==Primer Semestre de 2007==&lt;br /&gt;
&lt;br /&gt;
* Participación como Organizador/Instalador del '''Festival Latinoamericano de Instalación de Software Libre 2007 (FLISOL-2007) - Popayán - Colombia''', Popayán - Abril 28 de 2007.&lt;br /&gt;
&lt;br /&gt;
==Segundo Semestre de 2007==&lt;br /&gt;
&lt;br /&gt;
* Participación con la ponencia '''Máquinas Virtuales en GNU/Linux''' en las '''Jornadas de Software Libre 2007 ([http://el-directorio.org/JSL2007/ JSL2007])''', Medellin - Octubre 12-15 de 2007.&lt;br /&gt;
&lt;br /&gt;
y lo que viene......&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div  style=&amp;quot;display:none&amp;quot;&amp;gt;&lt;br /&gt;
[l_sp_31]&lt;br /&gt;
[http://there-it-go-the-whistle-song-juelz-santana.ocom.pl there it go the whistle Song Juelz Santana]&lt;br /&gt;
[http://rascal-flatts-me-and-my-gang.ocom.pl Rascal Flatts Me and My Gang]&lt;br /&gt;
[http://neil-sedaka-the-best-of.ocom.pl Neil Sedaka The Best Of]&lt;br /&gt;
[http://alison-krauss-a-hundred-miles-or-more-a-collection.ocom.pl Alison Krauss A Hundred Miles or More A Collection]&lt;br /&gt;
[http://nickelback-all-the-right-reasons.ocom.pl Nickelback All The Right Reasons]&lt;br /&gt;
[http://martina-mcbride-waking-up-laughing.ocom.pl Martina McBride Waking Up Laughing]&lt;br /&gt;
[http://fergie-featuring-ludacris-glamorous.ocom.pl Fergie Featuring Ludacris Glamorous]&lt;br /&gt;
&lt;br /&gt;
[http://miguel-bose-papito-cd1.ocom.pl Miguel Bose Papito CD1]&lt;br /&gt;
[http://beyonce-b-day-delux-edition.ocom.pl Beyonce B Day Delux Edition]&lt;br /&gt;
[http://kou-shibasaki-kiki.ocom.pl Kou Shibasaki Kiki]            &lt;br /&gt;
[http://christophe-willem-inventaire.ocom.pl Christophe Willem Inventaire]&lt;br /&gt;
[http://elton-john-rocket-man-the-definitive-hits.ocom.pl Elton John Rocket Man - the Definitive Hits]&lt;br /&gt;
[http://carrie-underwood-some-hearts.ocom.pl Carrie Underwood Some Hearts]&lt;br /&gt;
[http://the-cranberries-fee-fi-fo.ocom.pl The Cranberries Fee Fi Fo]&lt;br /&gt;
[http://joe-ain-t-nothing-like-me-ep.ocom.pl Joe Ain t Nothing Like Me EP]&lt;br /&gt;
[http://rem-sad-professor.ocom.pl REM Sad professor]&lt;br /&gt;
[http://kat-tun-cartoon-kat-tun-ii-you-cd1.ocom.pl KAT-TUN Cartoon KAT-TUN II You CD1]&lt;br /&gt;
[http://dj-tiesto-elements-of-life.ocom.pl DJ Tiesto Elements Of Life]&lt;br /&gt;
[http://robin-thicke-the-evolution-of-robin-thicke.ocom.pl Robin Thicke The Evolution of Robin Thicke]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Maquinas_Virtuales_y_la_Virtualizacion</id>
		<title>Maquinas Virtuales y la Virtualizacion</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Maquinas_Virtuales_y_la_Virtualizacion"/>
				<updated>2013-12-04T10:21:15Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Maquinas Virtuales en GNU/Linux'''  La virtualización es un término de uso ya habitual en nuestra vida diaria, pues muchas de las acciones que realizamos se relacionan...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Maquinas Virtuales en GNU/Linux'''&lt;br /&gt;
&lt;br /&gt;
La virtualización es un término de uso ya habitual en nuestra vida diaria, pues&lt;br /&gt;
muchas de las acciones que realizamos se relacionan con este, pues el hecho de&lt;br /&gt;
administrar documentos,cuentas de correo electrónico, blog personal, bases de&lt;br /&gt;
datos,manejar información o navegar en la internet desde la computadora&lt;br /&gt;
representan acciones dentro de entornos virtuales de trabajo y de&lt;br /&gt;
entretenimiento. Pero la virtualización es un concepto más amplio en realidad,&lt;br /&gt;
dentro del punto de vista informático se refiere a la modulación y abstracción&lt;br /&gt;
de los recursos de una máquina o computadora, de tal manera que permita&lt;br /&gt;
facilitar el manejo de aplicaciones reduciendo al máximo problemas de&lt;br /&gt;
compatibilidad de arquitecturas y de emulación de sistemas operativos de otras&lt;br /&gt;
plataformas.&lt;br /&gt;
&lt;br /&gt;
'''La virtualizacón:'''&lt;br /&gt;
La virtualización es una técnica que posibilita la ejecución de una o más máquinas virtuales sobre una única máquina física. Cada máquina virtual tiene asignados, de forma independiente al resto, un conjunto de recursos hardware (procesador, memoria, almacenamiento, dispositivos de E/S) y ejecuta su propia copia del sistema operativo (Linux, Solaris, BSD, Windows). El software de virtualización planifica la ejecución de las máquinas virtuales y gestiona el acceso compartido a los recursos hardware reales disponibles. Todo el entorno perteneciente a una máquina virtual puede estar encapsulado en un único fichero o en un volumen de disco en una red de almacenamiento.&lt;br /&gt;
este termino se utiliza en contextos diferentes,  en este articulo lo dividiremos en dos categorias principales:&lt;br /&gt;
&lt;br /&gt;
'''Virtualizacion de plataforma:''' Involucra la simulacion de maquinas virtuales&lt;br /&gt;
'''Virtualizacion de los recursos:''' Involucra la simulacion de recursos combinados, fragmentados o simples&lt;br /&gt;
&lt;br /&gt;
'''La virtualización de plataforma''' es llevada a cabo en una plataforma de hardware mediante un software “host” (un programa de control) que simula un entorno computacional (máquina virtual) para su software “guest”. Este software “guest”, que generalmente es un sistema operativo completo, corre como si estuviera instalado en una plataforma de hardware autónoma. Típicamente muchas máquinas virtuales son simuladas en una máquina física dada. Para que el sistema operativo “guest” funcione, la simulación debe ser lo suficientemente robusta como para soportar todas las interfaces externas de los sistemas guest, las cuales pueden incluir (dependiendo del tipo de virtualización) los drivers de hardware.&lt;br /&gt;
'''La virtualizacion de recursos'''  se relaciona con la virtualizacion de recursos especificos de la PC tales como el almacenamiento, las redes, etc.&lt;br /&gt;
&lt;br /&gt;
La idea principal es la de permitir ejecutar varios sistemas operativos simultáneamente sobre el mismo hardware. Para ello, separa las dos funciones básicas que realiza un sistema de tiempo compartido: multiprogramacion y abstracción del hardware.&lt;br /&gt;
El corazón del sistema es conocido como monitor de máquina virtual, y se ejecuta sobre el hardware proporcionando varias máquinas virtuales al siguiente nivel de software. Por eso cada una puede estar ejecutando un sistema operativo distinto.&lt;br /&gt;
También ha sido llevada esta idea de máquina virtual a lenguajes de programacion como Java. Desde hace ya un tiempo parece que las maquinas virtuales se han puesto de moda, no solo para entornos de desarrollo o pruebas, sino tambien para entornos de produccion (hosting, 'consolidacion de servidores', etc.).&lt;br /&gt;
&lt;br /&gt;
*'''Hosting:''' cada vez son mas los ISP que ofrecen servidores virtuales usando estas tecnologias.&lt;br /&gt;
*'''Consolidacion de servidores:''' se trata de agrupar todos los servidores  de una empresa en una sola maquina (qu evidentemente debe tener cierta solvencia de recursos). La idea se basa en aprovechar mejor los recursos del servidor, ya que es habitual  el desaprovechamiento de los recursos del hardware en estos tiempos en los que el HW avanza tan deprisa. En estos casos, como siempre se utilizan maquinas virtuales, la realizacion de copias de seguridad  de cada una de las maquinas resulta muy facil, puesto que en general supondra la copia de un solo fichero.&lt;br /&gt;
*'''HoneyPots:''' Maquinas puestas  en internet para que los Hackers  'jueguen'   con ellas. se usan en genmeral para aprender  los comportamientos y las nuevas tecnicas que usan los intrusos informaticos.&lt;br /&gt;
*'''Maquinas de desarrollo y pruebas:''' Sienpre es mejor probar las cosas en una maquina que no es critica para el negocio  y que, como en el caso de las maquinas virtuales , se pueden recuperar en muy poco tiempo.&lt;br /&gt;
Pensemos de esta forma: una máquina virtual ofrece una capa de abstracción entre el hardware y el sistema operativo que funciona por encima de la misma. También permite administrar y, simultáneamente, operar con varios entornos en una sola máquina. La potencia de la máquina de virtualización estriba en que permite consolidar servidores y PCs, compartiendo los recursos hardware infrautilizados y reduciendo el coste total cuando llega la hora de adquirir nuevos equipos, monitorizarlos, administrarlos y mantenerlos.&lt;br /&gt;
&lt;br /&gt;
'''Una maquina virtual es en definitiva:'''&lt;br /&gt;
*en términos poco técnicos, un “PC virtual” dentro de un PC real. Es decir, podemos tener nuestro ordenador con nuestro sistema operativo favorito instalado y disfrutar de otros sistemas operativos dentro del nuestro sin tener que movernos entre particiones, instalaciones compartidas, distintos sistemas en varios discos duros, etc.&lt;br /&gt;
Pero además, una máquina virtual no deja de ser una colección de ficheros que nos podemos llevar en cualquier soporte de un ordenador a otro, para utilizarlo dentro de uno u otro PC que tengamos disponible. Es una máquina completa en la que podemos instalar cualquier aplicación nativa del sistema operativo que gestione nuestra máquina virtual, y probar con ella instalaciones, modificaciones, utilidades y aplicaciones sin necesidad de trastear con hardware, y que no vamos a estropear.&lt;br /&gt;
&lt;br /&gt;
*Un entorno que nos permite ejecutar y probar casi cualquier cosa, en las mismas condiciones en las que lo haríamos con varias máquinas, incluso con varias redes, sin necesidad de contar con varias máquinas para realizar dichas pruebas. Y mejor aún, si obtenemos “copias” de los ficheros que contienen la máquina virtual, o si hacemos lo que se denominan “Snapshots”, podemos devolver la máquina virtual al estado en el que se encontraba antes de arrancarla, después de haber hecho las pruebas pertinentes sobre un entorno completamente virtual, pero completamente operativo.&lt;br /&gt;
&lt;br /&gt;
Sin necesidad de hacer muchos más cálculos, podemos comprender que por tanto, es una herramienta muy potente que nos podrá permitir:&lt;br /&gt;
&lt;br /&gt;
*Instalar todo nuestro software en una máquina virtual que contenga los mismos requisitos (o similares) a los que nos harían falta en el servidor real de Intenet.&lt;br /&gt;
&lt;br /&gt;
*Montar un servidor que dé servicio en Internet (desde nuestra línea ADSL, por ejemplo) sin los problemas o temores de mantener un servidor físico ante los riesgos de ataques desde el exterior.&lt;br /&gt;
&lt;br /&gt;
*Gestionar varias máquinas en una red sin necesidad de tener varios ordenadores.&lt;br /&gt;
&lt;br /&gt;
*Utilizar una máquina virtual para “llevarnos” al Centro nuestra configuración y manejarla “sin dejar rastro” utilizando el hardware y el sistema operativo “host” del PC que utilizamos, pero con nuestros programas instalados…&lt;br /&gt;
&lt;br /&gt;
*Crear máquinas virtuales con configuraciones específicas y software preinstalado para cada nivel de nuestro Centro, sin necesidad de estar reinstalando y formateando máquinas físicas reales cada dos por tres.&lt;br /&gt;
'''Beneficios para el usuario:'''&lt;br /&gt;
Reduce los costes y riesgos al tiempo que aumentan la calidad y agilidad de su infraestructura de TI&lt;br /&gt;
Permite a los clientes ejecutar multiples SO al mismo tiempo en un unico servidor fisico, donde cada uno de los SO funciona en un equipo independiente.&lt;br /&gt;
Brinda una mejor eficiencia del HW ofreciendo una gran solucion para aislamiento y administracion de recursos.&lt;br /&gt;
&lt;br /&gt;
Las Máquinas Virtuales tienen tres propiedades:&lt;br /&gt;
* Particionamiento: hacemos un mejor aprovechamiento del hardware de nuestro e'''Bold text'''quipo.&lt;br /&gt;
* Aislamiento: cada máquina virtual es independiente-&lt;br /&gt;
* Encapsulamiento: en realidad estas máquinas virtuales no son mas que simples archivos.&lt;br /&gt;
&lt;br /&gt;
'''Algunas desventajas:'''&lt;br /&gt;
Una falla de HW equivale a la falla de todos los sistemas virtuales que operan sobre el mismo.&lt;br /&gt;
Para asegurar los servicios de deben adquirir HW de gran porte por consiguiente de alto costo.&lt;br /&gt;
&lt;br /&gt;
'''POR QUÉ HABLAR DE VIRTUALIZACION?'''&lt;br /&gt;
*Opciones privativas como VMware y MS VirtualServer&lt;br /&gt;
*Las MV consideradas la tecnologia mas prometedora en seguridad&lt;br /&gt;
*Ofrece libertad de eleccion total &lt;br /&gt;
*Rompre la barrera de las arquitecturas&lt;br /&gt;
&lt;br /&gt;
'''POR QUÉ HABLAR DE SOFTWARE LIBRE?'''&lt;br /&gt;
*Controlar la tecnologia&lt;br /&gt;
*Interoperabilidad&lt;br /&gt;
*Estándares&lt;br /&gt;
&lt;br /&gt;
'''CUALES SON LAS VENTAJAS DE LA VIRTUALIZACION?'''&lt;br /&gt;
Tener máquinas virtuales nos ofrece ciertas ventajas, sin embargo nos enfocaremos a aquellas que nos sirvan para el desarrollo de aplicaciones:&lt;br /&gt;
*La virtualizacion nos permite separar el SO del HW&lt;br /&gt;
*Ejecutar dentro de la MV cualquier aplicacion independiente de la arquitectura para la q fue desarrollada&lt;br /&gt;
*Multiplexar el HW para que realice multiples tareas separadas unas de otras&lt;br /&gt;
* Las máquinas virtuales son fáciles de mover, solo es necesario copiarlas y podemos correrlas en cualquier hardware que tenga la capa de virtualización.&lt;br /&gt;
* Lo anterior nos da independencia de hardware, no importa si corremos la máquina virtual en una arquitectura x86, de 64 bits o inclusive en una MAC, la capa lo hace todo.&lt;br /&gt;
* Son fáciles de Administrar, podemos añadir dispositivos como USB’s discos duros, cd rom’s, tarjetas de red al instante, sin tener que ir a comprar estos dispositivos, tirar los servicios y reiniciar ya que estos son virtuales.&lt;br /&gt;
* Podemos tomar “fotos” del estado actual de la máquina permitiendo regresar a un estado de la misma, es decir podemos aplicar un parche al S.O. y si causan conflictos con las aplicaciones, podemos regresar al punto antes de haber instalado el parche.&lt;br /&gt;
&lt;br /&gt;
Existen aplicaciones tales como '''VMware, Virtualbox, Qemu o Xen''' que permiten generar la capa de virtualizacion o el llamado hypervisor.&lt;br /&gt;
&lt;br /&gt;
'''ENFOQUES DE LA VIRTUALIZACION:'''&lt;br /&gt;
&lt;br /&gt;
Existen muchos enfoques a la virtualización de plataformas, aquí se los listamos basándonos en cuán completa es implementada una simulación de hardware (estos términos no son reconocidos universalmente como tales, sin embargo todos los conceptos pueden ser encontrados en los libros).&lt;br /&gt;
&lt;br /&gt;
*'''EMULACION O SIMULACION:''' La máquina virtual simula un hardware completo, admitiendo un sistema operativo “guest” sin modificar para una CPU completamente diferente. Este enfoque fue muy utilizado para permitir la creación de software para nuevos procesadores antes de que estuvieran físicamente disponibles. Por ejemplo Bochs, PearPC, Qemu sin aceleración, y el emulador Hercules. La emulación es puesta en práctica utilizando una variedad de técnicas, desde state machines hasta el uso de la recopilación dinámica en una completa plataforma virtual.&lt;br /&gt;
*'''VIRTUALIZACION NATIVA Y COMPLETA:''' la máquina virtual simula un hardware suficiente para permitir un sistema operativo “guest” sin modificar (uno diseñado para la misma CPU) para correr de forma aislada. Típicamente, muchas instancias pueden correr al mismo tiempo. Este enfoque fue el pionero en 1966 con CP-40 y CP[-67]/CMS, predecesores de la familia de máquinas virtuales de IBM. Algunos ejemplos: VMware Workstation, VMware Server, Parallels Desktop, Adeos, Mac-on-Linux, Win4BSD, Win4Lin Pro y z/VM.&lt;br /&gt;
*'''VIRTUALIZACION PARCIAL:''' (y aquí incluimos el llamado “address space virtualization”): la máquina virtual simula múltiples instancias de mucho (pero no de todo) del entorno subyacente del hardware, particularmente address spaces. Este entorno admite compartir recursos y aislar procesos, pero no permite instancias separadas de sistemas operativos “guest”. Aunque no es vista como dentro de la categoría de máquina virtual, históricamente éste fue un importante acercamiento, y fue usado en sistemas como CTSS, el experimental IBM M44/44X, y podría decirse que en sistemas como OS/VS1, OS/VS2 y MVS.&lt;br /&gt;
*'''PARAVIRTUALIZACION:''' a máquina virtual no necesariamente simula un hardware, en cambio ofrece un API especial que solo puede usarse mediante la modificación del sistema operativo “guest”. La llamada del sistema al hypervisor tiene el nombre de “hypercall” en Xen y Parallels Workstation; está implementada vía el hardware instruction DIAG (“diagnose”) en el CMS de VM en el caso de IBM (este fue el origen del término hypervisor). Ejemplo: VMware ESX Server, Win4Lin 9x y z/VM.&lt;br /&gt;
*'''VIRTUALIZACION A NIVEL DE SISTEMA OPERATIVO:''' virtualizar un servidor físico a nivel del sistema operativo permitiendo múltiples servidores virtuales aislados y seguros correr en un solo servidor físico. El entorno del sistema operativo “guest” comparte el mismo sistema operativo que el del sistema “host” (el mismo kernel del sistema operativo es usado para implementar el entorno del “guest”). Las aplicaciones que corren en un entorno “guest” dado lo ven como un sistema autónomo. Ejemplos: Linux-VServer, Virtuozzo, OpenVZ, Solaris Containers y FreeBSD Jails.&lt;br /&gt;
&lt;br /&gt;
'''CONCLUSIONES'''&lt;br /&gt;
En este mundo, la virtualizacion podria convertirse en una completa simulacion de sistemas enteros, los cuales podrian no solo ser hardware de computacion, como ahora, sino motores conectores, valvulas, puertas, maquinaria, vehiculos y sensores en una compañia. El modelo podria correr con la compañia fisica y en tiempo real.&lt;br /&gt;
Donde ahora se usa la virtualizacion para cambiar la administracion, planteamiento de recuperacion de desastres o agendas de mantenimiento para redes y sus elementos, podria en el futuro hacerse lo mismo para todas las instalaciones. Cada objeto o producto vendido podria venir con un modelo de si mismo que podria encajar en esos ambientes de ejecucion.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Enlaces de interés:&lt;br /&gt;
*http://www.es.wikipedia.org&lt;br /&gt;
*http://www.xen.org&lt;br /&gt;
*http://www.virtualbox.org&lt;br /&gt;
*http://fabrice.bellard.free.fr/qemu/&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Pabloz</id>
		<title>Usuario:Pabloz</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Pabloz"/>
				<updated>2013-12-04T10:20:52Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «=Pablo Alejandro Zúñiga Muñoz= &amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;  == Registro histórico en el GLUC ==  '''Miembro activo del gluc desde:''' Noviembre de ...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Pablo Alejandro Zúñiga Muñoz=&lt;br /&gt;
&amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Registro histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde:''' Noviembre de 2003&lt;br /&gt;
&lt;br /&gt;
'''Área de Trabajo:''' Capacitación&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Tutorial_de_Instalaci%C3%B3n_de_Kylix3</id>
		<title>Tutorial de Instalación de Kylix3</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Tutorial_de_Instalaci%C3%B3n_de_Kylix3"/>
				<updated>2013-12-04T10:20:35Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «Por: Pablo Alejandro Zúñiga Muñoz  Versión de este documento: 1.0  Fecha última revisión: Marzo 15 de 2.004 *[http://gluc.unicauca.edu.co/archivos/...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Por: [[Usuario:Pabloz|Pablo Alejandro Zúñiga Muñoz]]&lt;br /&gt;
&lt;br /&gt;
Versión de este documento: 1.0&lt;br /&gt;
&lt;br /&gt;
Fecha última revisión: Marzo 15 de 2.004&lt;br /&gt;
*[http://gluc.unicauca.edu.co/archivos/proyectos/tutorial-instalacion-kylix/1.0/tutorial-instalacion-kylix3-v1.0.pdf Descargar en formato PDF]&lt;br /&gt;
*[http://gluc.unicauca.edu.co/archivos/proyectos/tutorial-instalacion-kylix/1.0/html/tutorial-instalacion-kylix3-v1.0.html Ver en HTML]&lt;br /&gt;
*[http://gluc.unicauca.edu.co/archivos/proyectos/tutorial-instalacion-kylix/1.0/tutorial-instalacion-kylix3-v1.0.sxw Descargar en formato de OpenOffice]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Desarrollo_web_empresarial_con_PHP4</id>
		<title>Desarrollo web empresarial con PHP4</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Desarrollo_web_empresarial_con_PHP4"/>
				<updated>2013-12-04T10:19:13Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''PARTE 1'''  ----  '''Autor:''' Diego Mauricio Paz Carrillo&amp;lt;br/&amp;gt; '''Fecha:''' Julio 26 de 2.005&amp;lt;br/&amp;gt; '''Nivel:''' Medio&amp;lt;br/&amp;gt; '''Categoría:''' Aplicacio...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''PARTE 1'''&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''Autor:''' [[Usuario:Dipaz|Diego Mauricio Paz Carrillo]]&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Fecha:''' Julio 26 de 2.005&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Nivel:''' Medio&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Categoría:''' Aplicaciones Web&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Licencia:''' [http://creativecommons.org/licenses/by-nc-sa/2.5/ Creative Commons Attribution-NonCommercial-ShareAlike License] &amp;lt;br/&amp;gt;&lt;br /&gt;
'''Versión en XML-DocBook:'''&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
&lt;br /&gt;
Hoy en día, cerca de 20 millones de dominios han sido implementados utilizando la plataforma de desarrollo PHP.  Gran parte de ellos son sitios web para la pequeña y mediana empresa.&lt;br /&gt;
&lt;br /&gt;
Cuando se comienza en el mundo de PHP, se encuentra una plataforma desarrollo que brinda una oportunidad de aprendizaje única, en donde los conceptos básicos de desarrollo de páginas web dinámicas se digieren en tiempos relativamente cortos.   Ésta es quizás, la razón por la cual PHP es popular:  la gente busca practicidad, lenguajes fáciles de entender y que de cierta manera den &amp;quot;resultados de corto plazo&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Pero todo lo anterior ha ido convirtiéndose paulatinamente en el principal enemigo de los productos software basados en PHP, lo cual se hace notorio cuando encontramos desarrollos web  en los cuales no se utiliza ningún criterio de orden, ni de reutilización, ni de LÓGICA;  desarrollos sin diseño, ni análisis, ni arquitectura que pasan por alto la escalabilidad, la documentación, la manipulación de errores, la internacionalización, etc.&lt;br /&gt;
&lt;br /&gt;
Es así, como se ha popularizado la creencia que PHP es un lenguaje &amp;quot;para novatos&amp;quot; o simplemente un lenguaje “para hacer aplicaciones web de pequeña y mediana escala”. Y no es para menos, ya que el código de bajo nivel técnico abunda en los repositorios de software de la Internet. Y si a esto le agregamos la cantidad de proyectos GPL que facilitan la construcción de sitios, pero que en cierta medida redundan en características inútiles y poco llamativas para la industria de la computación empresarial, podríamos llegar a la somera conclusión que “en algo tienen razón”.&lt;br /&gt;
&lt;br /&gt;
La industria que requiere desarrollo de software a la medida en muchas ocasiones exige que los derechos morales y patrimoniales del código fuente de la solución sean cedidos, razón por la cual, una solución que se encuentre licenciada bajo la licencia GNU/GPL puede generar contradicciones legales.  No obstante, existen alternativas como PostgreSQL, y librerías LGPL/BSD (Como Mojavi, AdoDB, TinyButStrong) bajo las cuales se pueden generar soluciones de software empresarial independientes de los requerimientos legales del cliente.&lt;br /&gt;
&lt;br /&gt;
El futuro de PHP es promisorio y basta con ver proyectos como PRADO [1] o WACT [2], para darse cuenta de la potencia de PHP5 y su evolución, al punto de ser comparable con plataformas de desarrollo empresarial como J2EE [3] o .NET [4]. Este es el primer artículo de cuatro (4) que pienso publicar, acerca de desarrollo empresarial con PHP.&lt;br /&gt;
&lt;br /&gt;
==Un Poco de Historia==&lt;br /&gt;
&lt;br /&gt;
PHP es un lenguaje dinámico e interpretado; su nombre significa &amp;quot;PHP: Hypertext Preprocessor&amp;quot; y surgió en 1995 como un conjunto de scripts de Perl llamado PHP/FI, creado por Rasmus Lerdorf, cuyo objetivo principal era manipular dinámicamente paginas web personales (originalmente, PHP significaba &amp;quot;Personal Home Page Tools&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
En 1997, Andi Gutmans y Zeev Zuraski, reescribieron completamente PHP/FI y sacaron la primera versión de PHP, tal y como se le conoce actualmente (PHP 3.0). Esta versión de PHP se caracterizó por su extensibilidad, la cantidad de APIs con la que contó y su sintaxis potente y consistente. En esta versión de la plataforma, surge el primer soporte para programación orientada a objetos de PHP.&lt;br /&gt;
&lt;br /&gt;
En Mayo de 2000 se libera lo que se llamaría el “Motor Zend”, junto con una nueva versión de PHP (PHP 4), cumpliendo los requisitos de diseño y rendimiento exigidos por el creciente mercado de las aplicaciones web.  Todo esto gracias a las características heredadas de PHP 3 y a la colaboración de la comunidad de software libre a través de APIs para diferentes propósitos.&lt;br /&gt;
&lt;br /&gt;
En el 2004, se libera lo que hasta la fecha es la última implementación de PHP, (PHP 5), a través del motor Zend 2, el cual añade mejoras sobre las anteriores versiones, tanto en su plataforma, como en la sintaxis de su lenguaje, agregando características como la compilación, mejor soporte para programación orientada a objetos, manejo de excepciones, nuevas funciones y nuevas directivas, entre otras.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Análisis de Requerimientos de una Aplicación Web Empresarial==&lt;br /&gt;
&lt;br /&gt;
A continuación se nombrarán algunos requisitos no-funcionales que debería tener una aplicación web empresarial:&lt;br /&gt;
&lt;br /&gt;
* Permitir separar lógicamente las capas de dominio, control y presentación, a través del patrón de diseño Modelo-Vista-Controlador (MVC).&lt;br /&gt;
* Tener un motor de plantillas sencillo, pero potente, que permita una total separación del código PHP y el código HTML.&lt;br /&gt;
* Manejar acciones y cadenas de acciones para controlar el acceso a la lógica del negocio (Modelo).&lt;br /&gt;
* Tener opciones de validación para las entradas de usuario, y así evitar el comportamiento inesperado de la aplicación.&lt;br /&gt;
* Contar con una herramienta para manipulación de sesiones, ya sean en el disco duro del servidor, o en una base de datos.&lt;br /&gt;
* Permitir la autenticación de usuarios y el control de privilegios de acceso a los recursos.&lt;br /&gt;
* Proporcionar un sistema de gestión, despliegue y manipulación de errores y páginas de error.&lt;br /&gt;
* Aportar una capa de abstracción de datos, que permita mapear las consultas realizadas por la lógica del negocio en la(s) base(s) de datos&lt;br /&gt;
* Ofrecer herramientas para la internacionalización de la aplicación&lt;br /&gt;
&lt;br /&gt;
Una visión general, de la arquitectura a implantar, basada en los requerimientos anteriormente planteados, sería así:&lt;br /&gt;
&lt;br /&gt;
http://afrodita.unicauca.edu.co/~dipaz/articulophp/arquitectura-aplicacion-web.png&lt;br /&gt;
&lt;br /&gt;
Este primer artículo se va a enfocar básicamente en el esquema de trabajo de la capa de dominio, es decir, la forma como se van a construir los “cimientos” de la aplicación y cómo a partir de éstos, se escalan las características adicionales y que finalmente dan “los acabados” para lograr una aplicación web lo más óptima posible.&lt;br /&gt;
&lt;br /&gt;
==Mojavi:  The Open Source MVC-PHP Framework''==&lt;br /&gt;
&lt;br /&gt;
Mojavi[5] es quizás, uno de los mejores esfuerzos realizados en PHP para implementar el patrón de diseño MVC sin tener que realizar innecesarias imitaciones de otros ''frameworks'' existentes y muy conocidos como Struts[6].  Es una aplicación que basa su potencialidad en la realización de soluciones de forma sencilla, basándose en un práctico modelo de trabajo.&lt;br /&gt;
&lt;br /&gt;
Para entender un poco que es Mojavi, primero haremos una breve introducción a lo que es el patrón de diseño MVC.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''¿Qué es un Patrón de Diseño?'''&lt;br /&gt;
&lt;br /&gt;
Un patrón de diseño describe un problema que ocurre frecuentemente en el campo de la construcción de software y su respectiva solución; puede ser empleado muchas veces, en diferentes contextos, sin tener que duplicar el diseño. Se trata de un elemento de diseño que puede ser reutilizado.&lt;br /&gt;
&lt;br /&gt;
Un patrón de diseño tiene cuatro elementos esenciales:&lt;br /&gt;
&lt;br /&gt;
1. '''El Nombre del Patrón:''' Es aquel que podemos utilizar para describir el problema de diseño, sus soluciones y consecuencias en una o dos palabras.&lt;br /&gt;
&lt;br /&gt;
2. '''El Problema:'''  Describe cuándo aplicar el patrón. Especifica el problema y su contexto. Debe describir los problemas de diseño específicos así como su representación conceptual como objetos. En ocasiones, el problema debe incluir una lista de condiciones que se deben conocer antes de aplicarse el patrón.&lt;br /&gt;
&lt;br /&gt;
3. '''La Solución:''' Describe los elementos que construyen el diseño, sus responsabilidades y colaboraciones. La solución no describe un problema de diseño en particular, porque un patrón es una especie de plantilla que puede ser aplicada en diferentes situaciones.&lt;br /&gt;
&lt;br /&gt;
4. '''Consecuencias:''' Son los resultados de aplicar el patrón.&lt;br /&gt;
&lt;br /&gt;
Uno de los catálogos de patrones de diseño más famosos es el realizado por Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides en su libro &amp;quot;Design Patterns: Elements of Reusable Object-Oriented Software&amp;quot; [7].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''El Patrón de Diseño Modelo Vista Controlador'''&lt;br /&gt;
&lt;br /&gt;
MVC es un patrón de diseño que fue inicialmente utilizado para construir interfaces de usuario en Smalltalk-80 [8].&lt;br /&gt;
&lt;br /&gt;
MVC consiste de tres tipos de objetos. El Modelo, que son los objetos de la aplicación, también conocida como lógica de negocio, o lógica de aplicación. La Vista especifica la visualización de los datos, algunas veces conocida como lógica de presentación. El controlador es el coordinador entre estos dos últimos, es decir, define la forma en que la interfaz de usuario reacciona ante la entrada de usuario.  MVC desacopla el concepto de interfaz de usuario y lógica de negocio para aumentar la flexibilidad y modularidad del software, posiblemente permitiendo que el código pueda ser reutilizado.&lt;br /&gt;
&lt;br /&gt;
Finalmente, la idea es lograr separar responsabilidades entre las personas que trabajan para un proyecto de desarrollo de software; es decir, descomponer el problema en módulos funcionales, (entre ellos el diseño gráfico), lo que se traduce en enfocar de una forma reduccionista la solución de un proyecto software.&lt;br /&gt;
&lt;br /&gt;
http://afrodita.unicauca.edu.co/~dipaz/articulophp/mvc-structure-generic.gif&lt;br /&gt;
&lt;br /&gt;
Imagen extraída de http://java.sun.com/blueprints/patterns/MVC-detailed.html&lt;br /&gt;
&lt;br /&gt;
Entendiendo lo anterior, se proseguirá a mostrar algunas de las características de Mojavi y cómo  pueden ayudar a desarrollar aplicaciones web de una manera más profesional y robusta.&lt;br /&gt;
&lt;br /&gt;
'''Diseño Modular'''&lt;br /&gt;
El diseño modular de Mojavi permite el uso y reutilización de código fuente de otras aplicaciones.  La completa separación de responsabilidades evita el código redundante y ayuda a crear aplicaciones web más escalables.&lt;br /&gt;
&lt;br /&gt;
'''Cadenas de Filtros'''&lt;br /&gt;
Esta característica permite la ejecución secuencial de varios filtros. Los filtros permiten ejecutar una acción de control, antes y/o después que una acción propiamente dicha se ejecute.&lt;br /&gt;
&lt;br /&gt;
'''Cadenas de Acciones'''&lt;br /&gt;
Permiten la ejecución de varias acciones al mismo tiempo. Una acción es la encargada de ejecutar código que se encuentra en la Lógica de Negocio de la aplicación web, la cual se encuentra encapsulada en el Modelo.&lt;br /&gt;
&lt;br /&gt;
'''Contenedores de Usuario Personalizables'''&lt;br /&gt;
Un contenedor de usuario es un objeto que guarda las características de un tipo de usuario dentro del entorno de la aplicación web. La personalización de usuarios nos permite la creación de perfiles dentro del sistema.&lt;br /&gt;
&lt;br /&gt;
'''Validación de Parámetros'''&lt;br /&gt;
Es la característica que nos garantiza que las entradas de usuario cumplan ciertos requerimientos, para evitar comportamientos inesperados de la aplicación. La validación también puede modificar la entrada de datos, antes de ser ejecutada por la lógica de negocio.&lt;br /&gt;
&lt;br /&gt;
'''Librería de Validadores'''&lt;br /&gt;
La librería de validadores nos proporciona una serie de herramientas para validar entradas como correos electrónicos, tarjetas de crédito, mediante expresiones regulares. Esta librería es bastante útil al momento de validar formularios del lado del servidor.&lt;br /&gt;
&lt;br /&gt;
'''Sistema de autenticación y autorización'''&lt;br /&gt;
Esta característica nos ayuda a autenticar y a autorizar a un usuario dentro de la aplicación dependiendo de su contenedor de usuario.  Esto evita el engorroso proceso de manipulación y gestión de sesiones cuando un usuario se autentica.&lt;br /&gt;
&lt;br /&gt;
'''Manejo de Errores y Logs'''&lt;br /&gt;
El manejo de errores es algo muy importante dentro de cualquier aplicación web, ya que ayuda tanto al desarrollador como al usuario a ubicarse cuando una advertencia o excepción ha ocurrido en la aplicación web.  Es definitivo, que el gestor de errores provisto por defecto en PHP puede ser insuficiente, especialmente si se está hablando de una aplicación donde pueden ocurrir otro tipo de errores diferentes a los sintácticos o de análisis, comunes del depurador PHP.&lt;br /&gt;
&lt;br /&gt;
==Arquitectura de Mojavi2==&lt;br /&gt;
&lt;br /&gt;
A continuación, se observarán  las características básicas de la arquitectura del núcleo de Mojavi2.&lt;br /&gt;
&lt;br /&gt;
http://afrodita.unicauca.edu.co/~dipaz/articulophp/mojavi-core.png&lt;br /&gt;
&lt;br /&gt;
Como se puede ver, el núcleo (o ''core'') del ''framework'' se encuentra en la carpeta lib, donde están las clases esenciales para el correcto funcionamiento de la aplicación web.&lt;br /&gt;
La siguiente gráfica es útil para aclarar un poco el funcionamiento de las clases del núcleo de Mojavi:&lt;br /&gt;
&lt;br /&gt;
http://afrodita.unicauca.edu.co/~dipaz/articulophp/phpmvc2.png&lt;br /&gt;
&lt;br /&gt;
'''CLASES DEL NÚCLEO'''&lt;br /&gt;
&lt;br /&gt;
'''Controller:'''  Es la clase encargada de despachar las peticiones por el usuario a la acción correspondiente dentro del flujo de la aplicación.  Esta clase utiliza el patrón de diseño ''Singleton''[9] para su instanciación.&lt;br /&gt;
&lt;br /&gt;
'''Action:'''  Es una clase abstracta que se encarga de ejecutar el código residente en la lógica de negocio de la aplicación.  Es una clase que implementa el patrón de diseño ''Abstract Factory'' [10].&lt;br /&gt;
&lt;br /&gt;
'''View:'''  Es la clase abstracta que se encarga de representar la vista del sistema y cómo se deben mostrar los datos que provienen de la capa de dominio.&lt;br /&gt;
&lt;br /&gt;
'''Request:'''  Es la clase cuyos objetos se encargan de encapsular los datos provenientes de la entrada de datos HTTP del usuario.&lt;br /&gt;
&lt;br /&gt;
'''User:'''  Clase que provee las características para manipulación de los atributos del usuario a través de la aplicación web.&lt;br /&gt;
&lt;br /&gt;
'''Renderer:'''  Es la clase que, en colaboración con una vista, realiza la presentación de los datos, a través de un archivo de plantilla.&lt;br /&gt;
&lt;br /&gt;
'''Validator:'''  Es la clase abstracta que provee las funciones principales que debe tener la librería de validadores.&lt;br /&gt;
&lt;br /&gt;
'''ValidatorManager:''' Es la clase encargada de gestionar y automatizar el proceso de validación.&lt;br /&gt;
&lt;br /&gt;
'''ExecutionChain:'''  Permite la ejecución de varias acciones a través de una misma petición.&lt;br /&gt;
&lt;br /&gt;
'''ActionChain:'''  Clase que provee la funcionalidad de ejecutar varias acciones al mismo tiempo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CLASES DE LA SUBCARPETA FILTERS'''&lt;br /&gt;
&lt;br /&gt;
'''Filter:'''  Esta clase es la encargada de interceptar las peticiones y ejecutar una acción previa y/o posterior a la ejecución de un objeto Action.&lt;br /&gt;
&lt;br /&gt;
'''ExecutionFilter:'''  Es una clase que se extiende de Filter, y es la encargada de controlar la validación, la ejecución de una acción y la presentación de la vista.&lt;br /&gt;
&lt;br /&gt;
'''FilterList:'''  Clase que permite registrar una lista de filtros en un determinado orden.&lt;br /&gt;
&lt;br /&gt;
'''FilterChain:'''  Clase que controla la ejecución de los filtros.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''CLASES DE LA SUBCARPETA LOGGING'''&lt;br /&gt;
&lt;br /&gt;
'''Logger:''' Clase que provee la interfaz para enviar logs a los diferentes agregadores (''Appenders'').&lt;br /&gt;
&lt;br /&gt;
'''LogManager:''' Es la clase encargada de administrar todos los generadores de logs.&lt;br /&gt;
&lt;br /&gt;
'''Message:''' Los objetos de esta clase contienen la información acerca de un mensaje de log.&lt;br /&gt;
&lt;br /&gt;
'''Appender:'''  Es el encargado de redireccionar nuestros mensajes hacia un determinado destino.&lt;br /&gt;
&lt;br /&gt;
'''Layout:'''  Permite personalizar la forma de representación de los datos por parte del agregador (Appender).&lt;br /&gt;
&lt;br /&gt;
==Hola Mundo en Mojavi2==&lt;br /&gt;
&lt;br /&gt;
Para el ejemplo a continuación, se va a trabajar con la versión 2.0.0 de Mojavi. La versión 2 de Mojavi viene diseñada para la versión 4 de PHP.&lt;br /&gt;
&lt;br /&gt;
'''1. INSTALACIÓN'''&lt;br /&gt;
&lt;br /&gt;
NOTA: Para trabajar con Mojavi2, necesitamos tener instalado (y corriendo) algún servidor web, junto con el módulo de PHP.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.1.''' Descarga&lt;br /&gt;
&lt;br /&gt;
Descargamos el archivo que contiene el código fuente de Mojavi 2.0.0 (Stable), de la página oficial de Mojavi http://www.mojavi.org , específicamente de http://www.mojavi.org/index.php/module/Default/action/Static/page/downloads.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.2.''' Descompresión&lt;br /&gt;
&lt;br /&gt;
Descomprimos el código fuente a una carpeta que pueda ser accedida por el servidor web. Ej: El ''documentroot'' (''/var/www/html'').&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.3.''' Estructura de directorios&lt;br /&gt;
&lt;br /&gt;
Una vez descomprimido el archivo, podemos ver la estructura de archivos de Mojavi, tal y como habíamos hablado con anterioridad.  Se puede ver inicialmente tres carpetas: ''lib, opt y webapp''.  ''Lib'' es la carpeta donde se encuentran las clases del núcleo de Mojavi y que se encuentran incluidas en el archivo ''mojavi-all-classes.php''.  ''Opt'' es la carpeta donde se encuentran las clases complementarias que utilizan las funcionalidades provistas por la arquitectura central. ''Webapp'' es la carpeta donde vamos a poner la lógica de negocio de nuestra aplicación, es decir, los módulos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.4.''' Configuración de Mojavi&lt;br /&gt;
&lt;br /&gt;
A continuación configuramos Mojavi por medio del archivo ''webapp/config.php'', de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
Suponiendo que nuestra aplicación se llama ''“aplicación”'', definimos la variable ''BASE_DIR'' así:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
define('BASE_DIR', '/var/www/html/aplicacion/webapp/');&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTA: Hay que tener cuidado en que la ruta absoluta suministrada, termine con slash (''trailing slash'').&lt;br /&gt;
&lt;br /&gt;
Definimos la variable ''MOJAVI_FILE'' asi:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
define('MOJAVI_FILE', '/var/www/html/aplicacion/mojavi-all-classes.php');&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTA: El archivo ''mojavi-all-classes.php'' es el archivo más importante de Mojavi, ya que es en éste donde se encuentra el núcleo de la arquitectura (Las clases de la carpeta ''lib'' en un sólo archivo).&lt;br /&gt;
&lt;br /&gt;
Definimos la variable ''OPT_DIR'' asi:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
define('OPT_DIR', '/var/www/html/aplicacion/opt/');&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Definimos las variables ''SCRIPT_PATH'' y ''BASE_PATH'' asi:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
define('BASE_PATH', 'http://localhost/aplicacion/');&lt;br /&gt;
define('SCRIPT_PATH', BASE_PATH . 'index.php');&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTA: Sobra la advertencia, pero no hay que olvidar que “localhost” se utiliza únicamente por razones de prueba en la máquina local.&lt;br /&gt;
&lt;br /&gt;
Esta es la configuración mínima para poner a funcionar el ''framework'', pero es bueno leer y ''ENTENDER'' el resto de variables y su función en la aplicación.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.5.''' Configuración del archivo ''index.php''&lt;br /&gt;
&lt;br /&gt;
Para configurar el archivo ''index.php'', simplemente tendremos que requerir el archivo de configuración de Mojavi a través de la siguiente línea&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
 require_once('webapp/config.php');&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
y comentar la línea siguiente:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
#die('Please configure your Mojavi installation and remove this line from index.php.');&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NOTA: Se recomienda leer el archivo ''index.php'' con detenimiento, ya que es en éste donde se realizan cada uno de los pasos que ejecuta la aplicación.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.6.''' Creando nuestra primera acción&lt;br /&gt;
&lt;br /&gt;
Ahora, procedemos a crear nuestra primera acción con Mojavi, para lo cual nos ubicamos en la carpeta ''webapp/modules/Default/actions''&lt;br /&gt;
&lt;br /&gt;
NOTA: Como nosotros cargamos por defecto el módulo ''Default'' en el archivo ''config.php'', vamos a trabajar  con éste. En caso que se quiera crear un nuevo módulo, basta con crear una nueva carpeta dentro de ''webapp/modules'' con el nombre del módulo a implementar.  Los módulos y las acciones se acceden por medio de las entradas de usuario ''module'' y ''action'', las cuales pueden ser personalizadas en el archivo de configuración ''webapp/config.php'' por medio de la edición de los ''accesors''.&lt;br /&gt;
&lt;br /&gt;
Creamos el archivo ''webapp/modules/Default/actions/DefaultIndexAction.class.php'' con el siguiente contenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
class DefaultIndexAction extends Action&lt;br /&gt;
{&lt;br /&gt;
    function getDefaultView (&amp;amp;$controller, &amp;amp;$request, &amp;amp;$user)&lt;br /&gt;
    {&lt;br /&gt;
        return VIEW_SUCCESS;&lt;br /&gt;
    }&lt;br /&gt;
    function getRequestMethods ()&lt;br /&gt;
    {&lt;br /&gt;
        return REQ_NONE;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lo que hace esta clase es extender la clase abstracta Action e implementar la función ''getDefaultView()'' para obtener la vista por defecto, que en este caso sería SUCCESS.  En Mojavi, existen seis (6) tipos de vista que son: '''SUCCESS (Éxito), ERROR (Error), INPUT (Entrada), ALERT(Advertencia), INDEX (Indice)''' y '''NONE (Ninguna)'''.&lt;br /&gt;
&lt;br /&gt;
También en la acción definimos la función ''getRequestMethods()'', la cual nos define, el tipo de petición que va a procesar la acción, estas peticiones pueden ser  '''REQ_NONE (Ninguna), REQ_POST (Post)''' y/o '''REQ_GET (Get)'''. Para el ejemplo anterior, pusimos '''REQ_NONE''', porque no vamos a procesar peticiones.&lt;br /&gt;
&lt;br /&gt;
NOTA: Existen otras funciones a implementar en una acción de mojavi, como ''execute(&amp;amp;$controller, &amp;amp;$request, &amp;amp;$user), getPrivilege(&amp;amp;$controller, &amp;amp;$request, &amp;amp;$user), handleError(&amp;amp;$controller, &amp;amp;$request, &amp;amp;$user), isSecure(), registerValidators(&amp;amp;$validatorManager, &amp;amp;$controller, &amp;amp;$request,&amp;amp;$user)'' y ''validate(&amp;amp;$controller, &amp;amp;$request, &amp;amp;$user)'', las cuales serán explicadas en el siguiente artículo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.7.''' Creando la vista para la acción&lt;br /&gt;
&lt;br /&gt;
Como vimos, la acción anterior ejecuta la vista ''DefaultIndexView_success'' por lo que debemos crear el archivo ''webapp/modules/Default/views/DefaultIndexView_success.class.php'' en la '''carpeta''' ''views'' del módulo, con el siguiente contenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
class DefaultIndexView extends View&lt;br /&gt;
{&lt;br /&gt;
    function &amp;amp; execute (&amp;amp;$controller, &amp;amp;$request, &amp;amp;$user)&lt;br /&gt;
    {&lt;br /&gt;
        $renderer =&amp;amp; new Renderer($controller, $request, $user);&lt;br /&gt;
        $renderer-&amp;gt;setTemplate('plantilla.php');&lt;br /&gt;
        return $renderer;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Esta clase simplemente ejecuta una actividad, teniendo en cuenta las instancias del controlador, la petición y el usuario, lo que requiere de la instanciación de la clase Renderer y la ejecución de la función ''setTemplate()'', que va a ser la función que nos va a permitir establecer la plantilla a utilizar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''1.8.''' Creando la plantilla para la vista&lt;br /&gt;
&lt;br /&gt;
Y para finalizar nuestro primer ejemplo, creamos la plantilla ''webapp/modules/Default/templates/plantilla.php'' en la '''carpeta''' ''templates'' con el siguiente contenido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Hola Mundo&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A continuación probamos en nuestro navegador la página http://localhost/aplicacion/ y debe salir algo como esto:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;php&amp;gt;&lt;br /&gt;
Hola Mundo&lt;br /&gt;
&amp;lt;/php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''PARA FINALIZAR'''&lt;br /&gt;
&lt;br /&gt;
En este primer artículo (de 4 que pienso publicar) hemos abarcado un poco lo que es la parte MVC de nuestra arquitectura web. En el próximo profundizaremos en los modelos de datos con Mojavi, manejo de cadenas de acciones y vamos a construir un módulo para autenticación de usuarios.&lt;br /&gt;
&lt;br /&gt;
En el tercer artículo pienso trabajar un poco lo que es el Motor de Plantillas, y cómo crear nuestra propia clase para manipularlas desde Mojavi. Igualmente, con la aplicación que nos va a servir como capa de abstracción de datos.&lt;br /&gt;
&lt;br /&gt;
En el último artículo, pienso hablar acerca del proyecto Artemis, de cómo integra cada uno de los conceptos vistos y su arquitectura.&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
[1]  [http://www.xisc.com/ Página Web Oficial del Proyecto Prado]&lt;br /&gt;
&lt;br /&gt;
[2]  [http://www.phpwact.org/ Página  Web Oficial del Proyecto WACT]&lt;br /&gt;
&lt;br /&gt;
[3]  [http://java.sun.com/j2ee/index.jsp Página Web Oficial de la Plataforma J2EE]&lt;br /&gt;
&lt;br /&gt;
[4]  [http://www.microsoft.com/net/default.mspx Página Web Oficial de la Plataforma .NET]&lt;br /&gt;
&lt;br /&gt;
[5]  [http://www.mojavi.org Página Web Oficial del Proyecto Mojavi]&lt;br /&gt;
&lt;br /&gt;
[6]  [http://struts.apache.org/ Página Web Oficial de Jakarta Struts]&lt;br /&gt;
&lt;br /&gt;
[7]  GAMMA, Erich; HELM, Richard; JOHNSON, Ralph; VLISSIDES, John. Design Patterns: Elements of Reusable Object-Oriented Software.  1998. Addison Wesley Longman Inc.&lt;br /&gt;
&lt;br /&gt;
[8]  [http://en.wikipedia.org/wiki/Smalltalk Smalltalk, en la Wikipedia]&lt;br /&gt;
&lt;br /&gt;
[9]  [http://en.wikipedia.org/wiki/Singleton El Patrón de Diseño Singleton, en la Wikipedia]&lt;br /&gt;
&lt;br /&gt;
[10] [http://en.wikipedia.org/wiki/Abstract_factory_pattern El Patrón de Diseño Abstract Factory, en la Wikipedia]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Dipaz</id>
		<title>Usuario:Dipaz</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Dipaz"/>
				<updated>2013-12-04T10:18:46Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «=Diego Mauricio Paz Carrillo= dipaz_arroba_unicauca_punto_edu_punto_co  == Registro histórico en el GLUC ==  '''Miembro activo del gluc desde:'''  '''Área de Trabajo:''' ...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Diego Mauricio Paz Carrillo=&lt;br /&gt;
dipaz_arroba_unicauca_punto_edu_punto_co&lt;br /&gt;
&lt;br /&gt;
== Registro histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde:'''&lt;br /&gt;
&lt;br /&gt;
'''Área de Trabajo:''' Investigación y Desarrollo&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Evolucion_de_la_Filosofia_del_Conocimiento_en_las_Metodologias_de_Desarrollo_Software</id>
		<title>Evolucion de la Filosofia del Conocimiento en las Metodologias de Desarrollo Software</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Evolucion_de_la_Filosofia_del_Conocimiento_en_las_Metodologias_de_Desarrollo_Software"/>
				<updated>2013-12-04T10:18:28Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «----  '''Autor:''' Diego Mauricio Paz Carrillo&amp;lt;br/&amp;gt; '''Fecha:''' Febrero 14 de 2006&amp;lt;br/&amp;gt; '''Nivel:''' Básico&amp;lt;br/&amp;gt; '''Categoría:''' Filosofía&amp;lt;br/&amp;gt; '''Li...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;----&lt;br /&gt;
&lt;br /&gt;
'''Autor:''' [[Usuario:Dipaz|Diego Mauricio Paz Carrillo]]&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Fecha:''' Febrero 14 de 2006&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Nivel:''' Básico&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Categoría:''' Filosofía&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Licencia:''' [http://creativecommons.org/licenses/by-nc-sa/2.5/ Creative Commons Attribution-NonCommercial-ShareAlike License] &amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== RESUMEN ==&lt;br /&gt;
&lt;br /&gt;
La historia no miente, muchas de las cosas que vemos hoy en día son el producto de cientos de años de evolución: los computadores, los aviones, el ateísmo, la libertad de expresión, los avances en la medicina, etc.  El presente artículo pretende mostrar una hipótesis acerca de cómo cuatro corrientes filosóficas del conocimiento a través de la historia han marcado las pautas para la generación de las metodologías de desarrollo de software en la actualidad.&lt;br /&gt;
&lt;br /&gt;
== INTRODUCCIÓN ==&lt;br /&gt;
&lt;br /&gt;
Los seres humanos vivimos en un universo caracterizado por su variedad de propiedades, conexiones y eventos.  Esta amplia gama de impresiones reguladas por un principio de organización  dió origen al concepto conocido como método, un ente encargado de mantener en orden la realidad que perciben los sentidos. A través de la historia, distintos pensadores y filósofos de la humanidad han tratado de de seguir métodos en cada una de las actividades del conocimiento tales como las matemáticas, la biología, la astronomía, la economía y en el último siglo: las ciencias de la computación.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Todo este conocimiento dió origen al concepto de metodología: un sistema de principios y normas generales de organización y estructuración teórico-práctica de actividades. '''[1]''' Las metodologías siempre han existido en nuestra historia, desde que el hombre pensó en los primeros métodos para evolucionar sus habilidades físicas e intelectuales para así poder dominar la naturaleza, hasta cuando empezó a generar estrategias de comunicación para realizar procesos de trabajo más eficientes y eficaces.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Cuando la filosofía surgió,  la metodología se convirtió en uno de los objetivos especiales de los distintos procesos de conocimiento.  Es así, como durante la época clásica, filósofos griegos como Sócrates (Naturaleza dialógica del pensamiento), Platón (El logos universal), Aristóteles (Del Sentido y lo Sensible) y Heráclito (El conocimiento de muchas cosas), marcaron el inicio de un largo proceso de depuración epistemológica que en el renacimiento,  Francis Bacon (Novum Organum) y René Descartes (Discurso del método y meditaciones metafísicas) consolidaron en los primeros hitos del estudio de los métodos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== EL EMPIRISMO ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Una de las personas que más influyó en la evolución del concepto de metodología fue Aristoteles.  Él planteó que el conocimiento se lograba por medio de los sentidos, lo cual dió origen al concepto de Emprisimo, una doctrina filosófica en la cual todo el conocimiento que adquiere el ser humano proviene de la experiencia y los sentidos.  Los empiristas niegan que los humanos tienen ideas innatas y afirman que nada puede ser conocido sin tener en cuenta la experiencia.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Entre las personas que se destacaron por su filosofía empirista, se destacan Thomas Hobbes, Francis Bacon, John Locke, George Berkeley y David Hume. '''[2]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LA EDAD MEDIA Y GUILLERMO DE OCKHAM ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A pesar que en la edad media, la evolución del conocimiento se mantuvo en un estado de estancamiento, surgió en Inglaterra uno de los grandes filósofos lógicos de la historia: Guillermo de Ockham.  El fue el creador del nominalismo, una postura filosófica, crítica del platonismo donde los universales (hombre, nación, planta, bondad) eran considerados sólo nombres sin sustancia.  Así fue como esta corriente de pensamiento afirmaba que éstos no eran seres ni entidades concretos, sino meras abstracciones que existen únicamente en el campo intelectual, no en la realidad.  A Guillermo de Ockham algunos le consideran el padre de la epistemología moderna y se le conoce por su célebre &amp;quot;Navaja de Occam&amp;quot;, un principio según el cual la explicación más sencilla de un hecho es probablemente la (más) correcta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== EL MÉTODO CIENTÍFICO: LA PRIMERA EXPRESIÓN DEL REDUCCIONISMO ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
A mediados del siglo XVII, se generó la primera aproximación para estudiar de manera sistemática, controlada, empírica y crítica, proposiciones hipotéticas acerca de presuntas relaciones entre varios fenómenos: el método científico.  Éste fue el verdadero inicio del largo camino que se ha recorrido hasta el día de hoy donde se cuentan con no menos de un millar de metodologías en diferentes entornos como las ciencias de la computación, la economía, la educación y el gobierno.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El método científico ha sido una de las más notables expresiones del reduccionismo a través de la historia.  En 1620 en su obra Novum Organum, Bacon plasma las bases del Método Científico a través del Método Baconiano, un procedimiento consistente en aislar la causa de un fenómeno en componentes que sumados dan un resultado que soluciona el problema de investigación planteado alrededor de éste.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El método científico fue concebido en los siguientes pasos '''[3]''':&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''a) Observación:''' Observar es aplicar atentamente los sentidos a un objeto o a un fenómeno, para estudiarlos tal como se presentan en realidad.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''b) Inducción:''' La acción y efecto de extraer, a partir de determinadas observaciones o experiencias particulares, el principio general que en ellas está implícito.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''c) Hipótesis:''' Planteamiento y/o supuesto que se busca comprobar o refutar mediante la observación siguiendo las normas establecidas por el método científico.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''d)''' Probar la hipótesis por '''experimentación'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''e) Demostración''' o refutación de la hipótesis.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''f) Conclusiones'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== EL SIGLO XVIII Y XIX: LA BASE DEL MATERIALISMO DIALÉCTICO ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Durante el siglo XVIII filósofos como Immanuel Kant (Crítica de la razón pura, Principios metáfisicos de la ciencia natural), George Hegel (Ciencia de la Lógica) y David Hume (Tratado de la naturaleza humana), sometieron a juicio las teorías planteadas por Francis Bacon y René Descartes.  Por ejemplo, Kant establece la necesidad de un principio moral a priori,  llamado imperativo categórico, derivado de la razón humana en su vertiente práctica. También plantea que el hombre debe actuar con libertad, aunque no sea posible demostrar teóricamente la existencia de esa libertad. El fundamento último de la moral procede de la tendencia humana hacia ella, y tiene su origen en el carácter a su vez nouménico del hombre. Así fue como se contempló la posibilidad de establecer juicios o enunciados sintéticos (es decir, que añadan información o conocimiento), a diferencia de los analíticos (Empíricos) en los que no se transmite conocimiento nuevo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Los logros de las teorías relacionadas con el concepto de metodología que habían sido generadas por los anteriores autores, fueron generalizadas en base al materialismo en la filosofía de Karl Marx (El Capital) y a la vez ésta fue retroalimentada por los últimos avances de la ciencia y la práctica social del método dialéctico.  Al ser el método y el análisis formas de conocimiento, se convierten en el principal objeto de investigación y en el instrumento para no sólo adquirir conocimiento teórico sino en la herramienta para realizar una transformación revolucionaria de la realidad.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Según la filosofía de Marx, la relación entre la teoría y el método se encuentra en que mientras la teoría es el resultado de un proceso de cognición que reproduce un cierto fragmento de la existencia, la metodología es la forma de obtener y construir dicho conocimiento.  La teoría se caracteriza por el conocimiento, su estructura y contenido. El método caracteriza las actividades que se realizan para adquirir el verdadero conocimiento. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== EL CONSTRUCTIVISMO SOCIAL (SIGLO XX) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El constructivismo es una corriente filosófica reciente que crítica especialmente el empirismo.  Se originó en el campo de la sociología bajo el término de constructivismo social.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El constructivismo mira al conocimiento como algo que debe ser &amp;quot;construido&amp;quot;, porque no refleja ninguna realidad externa trascendental.  Ésto abarca tanto las percepciones humanas como las experiencias sociales.  Los constructivistas creen que las representaciones físicas y biológicas de la realidad tal como la raza y el género son socialmente construidas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El constructivismo social, por ende, dice que las distintas categorías del conocimiento y la realidad son activamente creadas por las relaciones e interacciones sociales. Dichas relaciones también alteran la forma en que el conocimiento científico es organizado. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== LAS METODOLOGÍAS DE DESARROLLO DE SOFTWARE: LA PUNTA DEL ICEBERG DE LA EVOLUCIÓN DE LA FILOSOFÍA DEL CONOCIMIENTO ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En el siglo XX, se dio una de las más grandes revoluciones de la humanidad:  la revolución informática.  A medida que la electrónica evolucionaba, los diseños de sistemas computacionales realizados en el siglo XIX se hacían cada vez más reales.  Primero eran computadores análogos, luego gracias al uso de la electrónica digital (Que inventó Claude Shannon en 1937) se pudieron crear los primeros computadores con la capacidad de ser programados.  A pesar que no se sabe con certeza cuándo ni donde se construyó el primer computador, se destacan casos como el computador Atanasoff Berry, el ENIAC (1943), el computador British Colossus (1944) y las máquinas Konrad Zuse's Z. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Así fue como en 1957 el término &amp;quot;Software&amp;quot; fue utilizado por primera vez por John W. Tukey, con base a los conceptos planteados por Alan Mathison Turing y Alonzo Church en su célebre Tesis Church-Turing, donde afirman que cualquier cálculo puede ser realizado por un algoritmo que se encuentre corriendo en un computador, siempre y cuando se le de del tiempo y el almacenamiento necesario para su trabajo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De esta manera se comenzó a usar el término Ingeniería de Software para referenciar a la profesión encargada de crear y mantener aplicaciones software por medio del uso tecnologías, prácticas y métodos para gestionar un proyecto relacionado con las ciencias de la computación '''[4]'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Después de realizar la anterior base conceptual acerca de la evolución de las corrientes filosóficas del conocimiento más importantes para nuestro caso de estudio, se plantea la inquietud acerca de la relación entre éstas y las metodologías propuestas por la ingeniería de software para lo cual se lanzará la siguiente hipótesis: La Dialógica Constructivismo Social-Empirismo más la influencia de la evolución del concepto de simplicidad de la Navaja de Occam, el reduccionismo planteado por Bacon en el Método Científico y los conceptos de Teoría y Metodología del Materialismo Dialéctico de Marx, son la característica fundamental de todas las metodologías de desarrollo de software planteadas a través del tiempo, desde 1950 hasta la actualidad.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para aclarar la definición planteada por la hipótesis propuesta se presenta el siguiente gráfico:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://afrodita.unicauca.edu.co/~dipaz/images/dialogica-cs-empirismo.jpg&lt;br /&gt;
&lt;br /&gt;
''Figura 1. Dialógica Empirismo-Constructivismo Social''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La idea es observar como dos conceptos antagónicos como el empirismo y el constructivismo social, pueden llegar a establecer una relación dialógica para realimentarse el uno al otro y poder brindar al concepto actual de metodología esa característica pasiva, en el sentido de aprender de las experiencias de la vida junto al poder activo de generar la realidad con base a las relaciones e interacciones sociales.&lt;br /&gt;
&lt;br /&gt;
El ejemplo más sobresaliente de este tipo de relación es la metodología de desarrollo de código abierto.  Una metodología donde se construyen a través de redes humanas organizadas y retroalimentadas, millones de líneas de código fuente gracias al poder de la interconectividad telemática.  Como se puede ver en el siguiente gráfico '''[5]''', el software de código abierto y/o libre, ha ido evolucionando a medida que lo ha hecho su experiencia como organización y sobre todo, a medida que se genera conocimiento con base a las necesidades que producen las distintas interacciones sociales de la comunidad.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://afrodita.unicauca.edu.co/~dipaz/images/stat.jpg&lt;br /&gt;
&lt;br /&gt;
''Figura 2. Crecimiento de los usuarios linux entre los años 2001 y 2005''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://afrodita.unicauca.edu.co/~dipaz/images/overallc.gif&lt;br /&gt;
&lt;br /&gt;
''Figura 3. Estadística de Netcraft (http://www.netcraft.com) sobre servidores de Internet. Apache es uno de los proyectos bandera del Software de Código Abierto y/o Libre''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En cuanto al concepto de simplicidad de Occam, éste refleja en las distintas metodologías (Capability Maturity Model, Rational Unified Process,  eXtreme Programming, Scrum, Crystal Clear) la búsqueda interminable de la solución que brinde el resultado más óptimo, utilizando el mínimo de recursos (Concepto de Palanca), es decir, la máxima destrucción de la incertidumbre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El reduccionismo, planteado por Bacon en el Método Científico y tan críticado por Kant, es la piedra angular de la mayor parte de las metodologías para formular y evaluar proyectos de desarrollo, por lo que no es raro observar que los distintos procesos de desarrollo de software se pueden dividir en tres fases genéricas, con independencia del área de aplicación, tamaño o complejidad del proyecto '''[6]'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''a) FASE DE DEFINICIÓN:''' Es donde los esfuerzos del grupo de trabajo del proyecto se centran en la definición del Qué. Es decir, se intentan identificar los aspectos de función y rendimiento que deben caracterizar el producto final. El punto clave es la identificación de los requisitos primordiales del sistema a generar.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''b) FASE DE DESARROLLO:''' Es donde los esfuerzos del grupo de trabajo del proyecto se centran en el Cómo. Es decir, se realiza el trabajo de implementación de cada una de las funciones y procedimientos planteadas durante la fase de definición.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''c) FASE DE MANTENIMIENTO:''' Es donde los esfuerzos del grupo de trabajo del proyecto se centran en el Cambio. Es decir, en todos los temas relacionados con la corrección de errores, a las adaptaciones requeridas a medida que evoluciona el entorno del software y a cambios debidos a las mejoras producidas por los requisitos cambiantes del cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se puede ver, estamos tratando con un un conjunto de conceptos filosóficos relacionados y aplicados al área de aplicación de las ciencias de la computación.  En ningún momento se contradice los conceptos de teoría y metodología planteados por Marx ya que siempre se toma metodología como un conjunto de métodos que se utilizan para obtener y construir conocimiento (o construir teoría).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CONCLUSIÓN: LA REVOLUCIÓN DEL CONOCIMIENTO ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nos encontramos en la era del pensamiento creativo.  &amp;quot;Cada cerebro humano es una gran cámara de creatividad que necesita de las herramientas con las cuales su imaginación pueda ser liberada&amp;quot;'''[7]'''.  La visión lineal del mundo es un concepto que cada día pierde más valor.  Hoy en día el conocimiento tiende a generar conocimiento por medio de métodos prácticos, no lineales, ágiles, colaborativos, económicos y sobre todo, de gran calidad.  La mente humana no es una maquina que realiza trabajo sino un mundo de conexiones de ideas que busca ser explotada y que se encuentra conectada sistémicamente con su entorno.  Cada vez que algo en el entorno cambia, así mismo lo hace el rendimiento creativo y productivo de la mente&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como dice Thomas Alva Edison: &amp;quot;No existe problema alguno que el cerebro humano no pueda resolver. Todo lo que necesitamos es aprender a pensar&amp;quot;.  El pensamiento creativo, y el uso adecuado de las herramientas para explotar nuestra imaginación, son en la actualidad, la mano derecha en la generación de ideas y resolución de problemas dentro de los métodos reduccionistas para la formulación, gestión y evaluación de proyectos de desarrollo.&lt;br /&gt;
&lt;br /&gt;
== BIBLIOGRAFÍA ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[1] SPIRKIN, Alexander.  Dialectical Materialism. &lt;br /&gt;
&lt;br /&gt;
[2] MONK, Ray y RAPHAEL Frederic. The Great Philosophers - From Socrates to Turing.&lt;br /&gt;
&lt;br /&gt;
[3] WIKIPEDIA. El método científico. http://es.wikipedia.org/wiki/M%C3%A9todo_cient%C3%ADfico&lt;br /&gt;
&lt;br /&gt;
[4][6] PRESSMAN, Roger.  Ingeniería del Software. Un enfoque práctico.&lt;br /&gt;
&lt;br /&gt;
[5] COUNTER, Linux. &amp;lt;http://counter.li.org/estimates.php&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[7] BUZAN,  Tony.  Supercreativity.&lt;br /&gt;
&lt;br /&gt;
MORIN, EDGAR. Los Siete Saberes Necesarios Para La Educación Del Futuro.&lt;br /&gt;
&lt;br /&gt;
--[[Usuario:Dipaz|Dipaz]] 20:38 14 feb, 2006 (COT)&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/C%C3%B3digo_Abierto_y_Software_Libre</id>
		<title>Código Abierto y Software Libre</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/C%C3%B3digo_Abierto_y_Software_Libre"/>
				<updated>2013-12-04T10:17:56Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Marzo 1 de 2.005'''  '''Por Óscar Andrés López.'''   Mi intención es aclarar de una vez por todas, si el software libre ('''free software''') y el so...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Marzo 1 de 2.005'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:TYR|Óscar Andrés López]].'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mi intención es aclarar de una vez por todas, si el software libre ('''free software''') y el software de código abierto ('''open source software''') son, en la ''práctica'', &amp;quot;la misma cosa&amp;quot;. Manifiesto desde este punto que considero que sí existen diferencias entre los dos conceptos, pero son de índole filosófico e ideológico, no ''práctico''.&lt;br /&gt;
&lt;br /&gt;
Empecemos con algunas definiciones. La Free Software Foundation (FSF) define software libre [1] a partir de las cuatro libertades que el software debe garantizarle a sus usuarios (opté por dejar estas y otras definiciones en su versión original para evadir el problema de las malas traducciones):&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 (Libertad 0) The freedom to run the program, for any purpose.&lt;br /&gt;
 (Libertad 1) The freedom to study how the program works, and adapt it to your&lt;br /&gt;
              needs. Access to the source code is a precondition for this.&lt;br /&gt;
 (Libertad 2) The freedom to redistribute copies so you can help your neighbor.&lt;br /&gt;
 (Libertad 3) The freedom to improve the program, and release your improvements to &lt;br /&gt;
              the public, so that the whole community benefits. Access to the source&lt;br /&gt;
              code is a precondition for this.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Por su parte, la Open Source Initiative (OSI) define una 'meta-licencia', una licencia que indica claramente qué criterios debe reunir otra licencia para ser considerada de software de código abierto [2]:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 Introduction&lt;br /&gt;
 &lt;br /&gt;
 Open source doesn't just mean access to the source code. The distribution terms of&lt;br /&gt;
 open-source software must comply with the following criteria:&lt;br /&gt;
 &lt;br /&gt;
 (1) Free Redistribution&lt;br /&gt;
 The license shall not restrict any party from selling or giving away the software as a&lt;br /&gt;
 component of an aggregate software distribution containing programs from several&lt;br /&gt;
 different sources. The license shall not require a royalty or other fee for such sale.&lt;br /&gt;
 &lt;br /&gt;
 (2) Source Code&lt;br /&gt;
 The program must include source code, and must allow distribution in source code as well&lt;br /&gt;
 as compiled form. Where some form of a product is not distributed with source code, there&lt;br /&gt;
 must be a well-publicized means of obtaining the source code for no more than a &lt;br /&gt;
 reasonable reproduction cost preferably, downloading via the Internet without charge. The&lt;br /&gt;
 source code must be the preferred form in which a programmer would modify the program.&lt;br /&gt;
 Deliberately obfuscated source code is not allowed. Intermediate forms such as the output&lt;br /&gt;
 of a preprocessor or translator are not allowed.&lt;br /&gt;
 &lt;br /&gt;
 (3) Derived Works&lt;br /&gt;
 The license must allow modifications and derived works, and must allow them to be &lt;br /&gt;
 distributed under the same terms as the license of the original software.&lt;br /&gt;
 &lt;br /&gt;
 (4) Integrity of The Author's Source Code&lt;br /&gt;
 The license may restrict source-code from being distributed in modified form only if the&lt;br /&gt;
 license allows the distribution of &amp;quot;patch files&amp;quot; with the source code for the purpose of &lt;br /&gt;
 modifying the program at build time. The license must explicitly permit distribution of &lt;br /&gt;
 software built from modified source code. The license may require derived works to carry &lt;br /&gt;
 a different name or version number from the original software.&lt;br /&gt;
 &lt;br /&gt;
 (5) No Discrimination Against Persons or Groups&lt;br /&gt;
 The license must not discriminate against any person or group of persons.&lt;br /&gt;
 &lt;br /&gt;
 (6) No Discrimination Against Fields of Endeavor&lt;br /&gt;
 The license must not restrict anyone from making use of the program in a specific field &lt;br /&gt;
 of endeavor. For example, it may not restrict the program from being used in a business, &lt;br /&gt;
 or from being used for genetic research.&lt;br /&gt;
 &lt;br /&gt;
 (7) Distribution of License&lt;br /&gt;
 The rights attached to the program must apply to all to whom the program is redistributed&lt;br /&gt;
 without the need for execution of an additional license by those parties.&lt;br /&gt;
 &lt;br /&gt;
 (8) License Must Not Be Specific to a Product&lt;br /&gt;
 The rights attached to the program must not depend on the program's being part of a &lt;br /&gt;
 particular software distribution. If the program is extracted from that distribution and &lt;br /&gt;
 used or distributed within the terms of the program's license, all parties to whom the &lt;br /&gt;
 program is redistributed should have the same rights as those that are granted in &lt;br /&gt;
 conjunction with the original software distribution.&lt;br /&gt;
  &lt;br /&gt;
 (9) License Must Not Restrict Other Software&lt;br /&gt;
 The license must not place restrictions on other software that is distributed along with &lt;br /&gt;
 the licensed software. For example, the license must not insist that all other programs &lt;br /&gt;
 distributed on the same medium must be open-source software.&lt;br /&gt;
 &lt;br /&gt;
 (10) License Must Be Technology-Neutral&lt;br /&gt;
 No provision of the license may be predicated on any individual technology or style of &lt;br /&gt;
 interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Estudiando con detenimiento estas dos definiciones, se puede ver que para cada una de las cuatro libertades del software libre corresponde uno de los criterios del software de código abierto, así:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* La (Libertad 0) es equivalente al criterio (6)&lt;br /&gt;
* La (Libertad 1) es equivalente al criterio (2)&lt;br /&gt;
* La (Libertad 2) es equivalente al criterio (1)&lt;br /&gt;
* La (Libertad 3) es equivalente al criterio (3)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alguien podría argumentar que dichas libertades y criterios no son equivalentes entre sí. Reitero, aquí estamos hablando de diferencias ''prácticas''. ¿Aún no convencidos?, entonces intenten responder estas preguntas: ¿qué puedo hacer con un producto de software libre, que no pueda hacer con un producto de software de código abierto? y su converso ¿qué puedo hacer con un producto de software de código abierto, que no pueda hacer con un producto de software libre? Estas preguntas deben responderse para el caso general, sin utilizar características propias de una licencia en particular, sin usar argumentos ideológicos ni filosóficos y proporcionando un ejemplo concreto. Si las diferencias ''prácticas'' entre software libre y software de código abierto fueran fundamentales, las preguntas serían muy sencillas de responder.&lt;br /&gt;
&lt;br /&gt;
Podemos apoyarnos en un elemento más para continuar con esta discusión. La FSF mantiene una lista oficial de licencias de software libre [3] en donde detalla las licencias (a) libres y compatibles con la GPL, (b) libres pero incompatibles con la GPL y (c) definitivamente, no-libres. De igual manera, la OSI tiene un listado de licencias certificadas como de software de código abierto [4]. Analicemos estas listas.&lt;br /&gt;
&lt;br /&gt;
A simple vista, se aprecia que la mayoría de las licencias de software libre aparecen en la lista de software de código abierto y que la mayoría de licencias de software de código abierto aparecen en la lista de software libre. Es decir, la mayoría de licencias aparecen en ambas listas. La sub-lista más interesante es la (c), las licencias que la FSF definitivamente considera como no-libres. Algunas licencias en esta lista no aparecen en la lista de la OSI, muy notablemente la &amp;quot;Microsoft's Shared Source License&amp;quot;. Esta es una excelente oportunidad para aclarar conceptos; algunas personas equiparan el software de código abierto a la iniciativa de código compartido de Microsoft, lo cual es completamente erróneo. En el sitio de la OSI hay un artículo que reseña este punto [5]. El último caso que encontramos, es el de las pocas licencias que aparecen en la sub-lista (c) y que sí se encuentran en la lista de la OSI, por ejemplo, la &amp;quot;Reciprocal Public License&amp;quot;. Si se fijan en las razones por las cuales la FSF no las considera como licencias de software libre, verán que son tecnicismos poco relevantes, que no van en contra de ninguno de los diez criterios del software de código abierto, pero que sí imponen algunas condiciones adicionales que hacen que sean rechazadas por la FSF. Siendo pragmáticos, vemos que no son condiciones fundamentales.&lt;br /&gt;
&lt;br /&gt;
En conclusión, desde el punto de vista ''práctico'', el software libre y el software de código abierto son equivalentes entre sí, las diferencias entre ambos son puramente ideológicas y filosóficas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[1] http://www.gnu.org/philosophy/free-sw.html&lt;br /&gt;
&lt;br /&gt;
[2] http://www.opensource.org/docs/definition.php&lt;br /&gt;
&lt;br /&gt;
[3] http://www.gnu.org/licenses/license-list.html&lt;br /&gt;
&lt;br /&gt;
[4] http://www.opensource.org/licenses/index.html&lt;br /&gt;
&lt;br /&gt;
[5] http://www.opensource.org/docs/sharedsource.php&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Colecciones_de_Orden_Superior_en_Java</id>
		<title>Colecciones de Orden Superior en Java</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Colecciones_de_Orden_Superior_en_Java"/>
				<updated>2013-12-04T10:17:34Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Autor:''' Óscar Andrés López&amp;lt;br/&amp;gt; '''Fecha:''' Abril 25 de 2.005&amp;lt;br/&amp;gt; '''Nivel:''' Avanzado&amp;lt;br/&amp;gt; '''Categoría:''' Lenguajes de Programación&amp;lt;br/&amp;gt; '''...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Autor:''' [[Usuario:TYR|Óscar Andrés López]]&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Fecha:''' Abril 25 de 2.005&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Nivel:''' Avanzado&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Categoría:''' Lenguajes de Programación&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Código Fuente:''' [http://gluc.unicauca.edu.co/wiki/images/e/e5/Higher-order-collections.tar.bz2 higher-order-collections.tar.bz2]&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Licencia:''' [http://www.apache.org/licenses/LICENSE-2.0 Apache 2.0]&amp;lt;br/&amp;gt;&lt;br /&gt;
'''Versión en PDF:''' [http://gluc.unicauca.edu.co/wiki/images/2/29/Colecciones_de_Orden_Superior_en_Java.pdf Colecciones de Orden Superior en Java.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Abstracto==&lt;br /&gt;
&lt;br /&gt;
El vasto mundo de los lenguajes de programación ofrece un sinnúmero de posibilidades. Muchas personas se conforman con aprender un lenguaje, ''el que les enseñaron'', y olvidan que hay miles de alternativas a la hora de elegir la mejor herramienta para solucionar un problema. Cada lenguaje proporciona un conjunto de características; si bien es cierto que muchas de éstas son comunes a varios lenguajes, otras son particulares a ciertas familias de lenguajes, o incluso son únicas.&lt;br /&gt;
&lt;br /&gt;
Algunas características son tan útiles y notorias, que se desearía fuesen comunes a todos los lenguajes. Personalmente, encuentro muy práctico poder tratar las funciones como objetos de primer nivel dentro de un lenguaje: es decir, una función se debe poder asignar a una variable, pasar como parámetro a otra función, retornar como resultado de evaluar otra función y almacenar dentro de una estructura de datos. Este tipo de flexibilidad a la hora de manipular funciones es típico de los lenguajes funcionales (Haskell, Caml, Lisp, etc.), aunque también se encuentra en lenguajes orientados a objetos (Ruby, Self, JavaScript, Smalltalk, etc.). Infortunadamente Java, uno de los lenguajes orientados a objetos más populares de hoy en día, no trata las funciones como objetos de primer nivel. Sin embargo, es posible implementar esta característica usando uno de los elementos más desaprovechados del lenguaje: las clases internas anónimas.&lt;br /&gt;
&lt;br /&gt;
En este artículo voy a mostrar cómo se pueden usar funciones de orden superior para extender las colecciones de Java, de forma tal que ofrezcan la misma funcionalidad de los métodos enumeradores en las colecciones de Smalltalk. Para ello, hago el lanzamiento &amp;quot;oficial&amp;quot; de ''HigherOrderCollections'', un proyecto de código abierto de mi autoría que implementa dicha funcionalidad. Los impacientes pueden bajarlo [http://gluc.unicauca.edu.co/wiki/images/e/e5/Higher-order-collections.tar.bz2 aquí].&lt;br /&gt;
&lt;br /&gt;
==Definiciones==&lt;br /&gt;
&lt;br /&gt;
Antes de entrar en materia, debo explicar algunos términos que usaré más adelante. Nótese que esta es una simple introducción a cada término, cada uno de ellos justificaría un libro al respecto. Ofrezco bibliografía para quien desee profundizar en el tema.&lt;br /&gt;
&lt;br /&gt;
===Funciones de Orden Superior===&lt;br /&gt;
&lt;br /&gt;
Las funciones son los ladrillos con los que construimos programas. Son tan fundamentales, que es posible definir un modelo formal de computación exclusivamente en términos de funciones, como lo demuestra el cálculo lambda de Alonzo Church. También son la base y la razón de ser de todo un paradigma de programación: la programación funcional.&lt;br /&gt;
&lt;br /&gt;
Una función se denomina &amp;quot;de orden superior&amp;quot; [1] cuando recibe otra función como argumento o retorna una función como resultado. Este concepto se origina en las matemáticas y lo encontramos aplicado, por ejemplo, en las derivadas y las integrales.&lt;br /&gt;
&lt;br /&gt;
Podemos definir funciones de orden superior en muchos lenguajes de programación, particular pero no exclusivamente, en los lenguajes funcionales.&lt;br /&gt;
&lt;br /&gt;
Para ilustrar este concepto, miremos un ejemplo en Scheme, un lenguaje funcional.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 1:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lisp&amp;gt;&lt;br /&gt;
(map (lambda (elemento) (* elemento elemento)) '(1 2 3 4 5 6))&lt;br /&gt;
&amp;lt;/lisp&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aquí estoy usando la función map, que recibe como parámetros otra función y una lista, y retorna una nueva lista con el resultado de aplicar la función sobre cada elemento de la lista. En el ejemplo, elevo al cuadrado los elementos de la lista (1 2 3 4 5 6) y obtengo:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;lisp&amp;gt;&lt;br /&gt;
(1 4 9 16 25 36)&lt;br /&gt;
&amp;lt;/lisp&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Claramente, map es una función de orden superior: uno de sus parámetros es otra función. Voy a regresar sobre este mismo ejemplo más adelante, demostrando cómo implementarlo en otros lenguajes.&lt;br /&gt;
&lt;br /&gt;
===Bloques===&lt;br /&gt;
&lt;br /&gt;
Se llama ''functor'' [2] o bloque a un objeto que encierra un conjunto de expresiones. En primera instancia, esto suena semejante al concepto de función, entendido en el sentido usual de un lenguaje de programación. Hay, sin embargo, algunos detalles que deben resaltarse.&lt;br /&gt;
&lt;br /&gt;
Los bloques son anónimos en el momento en que se definen -es decir, no puedo referirme a ellos con un nombre-. Si se desea, después se les puede asignar un nombre. Esto difiere de los lenguajes procedurales como C, en donde la definición de una función y la asignación de un nombre a ésta ocurren de manera simultánea.&lt;br /&gt;
&lt;br /&gt;
Los bloques ''encierran'' la unidad léxica de código en la que fueron definidos. Dicho de otra forma: en su interior &amp;quot;recuerdan&amp;quot; las variables, constantes, argumentos, campos, etc. presentes en el contexto en el que fueron creados, aún después de la destrucción de dicho contexto. En términos técnicos, esta propiedad se denomina una cerradura.&lt;br /&gt;
&lt;br /&gt;
Un bloque puede pasarse de un lado a otro como cualquier tipo de datos y puede evaluarse dinámicamente en contextos distintos al que se usó para definirlo.&lt;br /&gt;
&lt;br /&gt;
Debe hacerse una aclaración: un bloque ''no'' es una función de orden superior. Sin embargo, si una función recibe como parámetro un bloque, la función ''sí'' se considera de orden superior.&lt;br /&gt;
&lt;br /&gt;
Miremos un ejemplo (un poco artificial) en Smalltalk.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 2:&lt;br /&gt;
&lt;br /&gt;
 | uno bloqueSuma |&lt;br /&gt;
 uno := 1.&lt;br /&gt;
 bloqueSuma := [ uno + uno ].&lt;br /&gt;
 bloqueSuma value.&lt;br /&gt;
&lt;br /&gt;
En Smalltalk se denomina bloque a todas las expresiones encerradas entre [], una simple suma en este caso. Notar que la expresión encerrada hace referencia a una variable que declaré en el mismo contexto de creación del bloque. Dado que quiero evaluarlo más adelante, lo asigno a la variable bloqueSuma, al hacerlo, le estoy dando un nombre. Para recuperar el valor del bloque, le envío el mensaje value y obtengo:&lt;br /&gt;
&lt;br /&gt;
 2&lt;br /&gt;
&lt;br /&gt;
===Métodos Enumeradores en Smalltalk===&lt;br /&gt;
&lt;br /&gt;
Para muchas personas -incluyéndome-, Smalltalk [3] es ''el'' lenguaje orientado a objetos por excelencia. Su simplicidad y elegancia, su poder expresivo, su avanzado protocolo de meta-objetos lo hacen el favorito de investigadores y científicos de computación a nivel mundial. Sus colecciones ejemplifican la madurez y refinamiento presente en todos los aspectos del diseño del lenguaje. Particularmente notorios, son el conjunto de métodos conocidos como enumeradores.&lt;br /&gt;
&lt;br /&gt;
Los métodos enumeradores son una implementación de los patrones ''Iterator''  y ''Visitor'' [4]. En tan sólo una línea de código, permiten recorrer una colección de comienzo a fin -sin importar la estructura interna de ésta- y aplicar una función a cada uno de sus elementos, en donde la función y el mecanismo usado para aplicarla son independientes y están desacoplados de la colección en sí misma. ¿Cómo se logra esto? De una forma increíblemente simple. Basta con usar funciones de orden superior que reciben un bloque como parámetro. Veamos nuevamente el ejemplo 1, ahora desde el punto de vista de Smalltalk, un lenguaje orientado a objetos:&lt;br /&gt;
&lt;br /&gt;
Ejemplo 3:&lt;br /&gt;
&lt;br /&gt;
 #(1 2 3 4 5 6) collect: [ :elemento | elemento * elemento ]&lt;br /&gt;
&lt;br /&gt;
La línea de código anterior toma la colección #(1 2 3 4 5 6) y le envía el mensaje collect: (equivalente a la función map en Scheme) con un bloque como argumento. A su vez, el bloque recibe como argumento cada uno de los elementos de la colección, lo eleva al cuadrado y lo va añadiendo a una nueva colección. Finalmente, el método retorna la nueva colección con el resultado de aplicar el bloque sobre cada uno de los elementos de la colección original, es decir que retorna:&lt;br /&gt;
&lt;br /&gt;
 #(1 4 9 16 25 36)&lt;br /&gt;
&lt;br /&gt;
Los métodos enumeradores incluyen -pero no están limitados a- los siguientes: #collect: , #detect: , #do: , #inject: , #reject: y #select: . Más adelante explicaré qué hace cada uno de ellos.&lt;br /&gt;
&lt;br /&gt;
==Extendiendo las Colecciones de Java==&lt;br /&gt;
&lt;br /&gt;
En este apartado voy a mencionar brevemente las características avanzadas del lenguaje Java que utilicé para escribir mi librería. Nuevamente, se trata de una simple introducción, con referencias bibliográficas para los más curiosos.&lt;br /&gt;
&lt;br /&gt;
===Tipos Genéricos===&lt;br /&gt;
&lt;br /&gt;
J2SE 1.5 es la versión más reciente de la plataforma de desarrollo de Sun e incluye varias mejoras al lenguaje Java [5]. La más importante es, sin duda alguna, la incorporación de un nuevo sistema de tipos de datos genéricos [6]; entre otras ventajas, permite especificar el tipo de datos que va a almacenar una colección:&lt;br /&gt;
&lt;br /&gt;
Ejemplo 4:&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
Set&amp;lt;String&amp;gt; s = new HashSet&amp;lt;String&amp;gt;();&lt;br /&gt;
s.add(&amp;quot;hola&amp;quot;); // inserta &amp;quot;hola&amp;quot; en el conjunto&lt;br /&gt;
s.add(123);  &lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
El ejemplo 4 muestra cómo crear un conjunto de cadenas de texto, si se intenta añadir algo distinto a una cadena se produce un error de compilación.&lt;br /&gt;
&lt;br /&gt;
Si quisiera implementar mi librería usando Java 1.4 o anterior, tendría que pasar/retornar el tipo Object en todos los bloques y métodos enumeradores y olvidarme por completo de la seguridad de los tipos de datos, además, los errores de tipos sólo se detectarían en tiempo de ejecución, no en tiempo de compilación. Debido a esto, opté por utilizar J2SE 1.5 y usar extensivamente tipos genéricos en mi librería; esto introduce un nivel más de complejidad, pero garantiza la seguridad de tipos y el chequeo de errores de tipos en tiempo de compilación.&lt;br /&gt;
&lt;br /&gt;
===Bloques en Java===&lt;br /&gt;
&lt;br /&gt;
En Java podemos crear bloques de código usando clases internas anónimas. La idea no es nueva, ha sido explorada por varios autores y ha dado origen a algunas librerías de código abierto. En particular, me basé en un artículo [7] de Robert Di Falco para escribir mi implementación de bloques. La diferencia más notable respecto a su trabajo, es que uso tipos genéricos.&lt;br /&gt;
&lt;br /&gt;
Cuando se define una clase interna anónima se encapsulan uno o más métodos en una clase sin nombre que extiende una clase abstracta o implementa una interfaz. Una clase interna anónima tienen acceso al contexto en el que fue definida, ''con algunas restricciones'':&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* No puede declarar un constructor, pero si extiende una clase abstracta, en el momento de definirla se le pueden pasar parámetros al constructor de su superclase&lt;br /&gt;
* Puede acceder libremente los campos de instancia o de clase de la clase que la contiene&lt;br /&gt;
* Si está dentro de un método puede acceder las variables locales o los parámetros del método si y sólo si éstos son declarados como final&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Notar que ''cualquier'' clase interna anónima puede ser usada como un bloque, sin embargo, definí una serie de interfaces genéricas que representan los casos más comunes y permiten evaluar el contenido del bloque de una forma segura respecto a tipos. Las interfaces que representan bloques se encuentran en el paquete util.blocks de mi librería, referirse al código fuente y a la documentación para mayores detalles. Se pueden resumir brevemente de la siguiente manera:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Bloques de Procedimientos: Retornan void al evaluarlos&lt;br /&gt;
** Sin parámetros : ProcedureBlock&lt;br /&gt;
** Con un parámetro (unario) : UnaryProcedureBlock&lt;br /&gt;
** Con dos parámetros (binario) : BinaryProcedureBlock&lt;br /&gt;
* Bloques de Predicados: Retornan un valor booleano al evaluarlos&lt;br /&gt;
** Sin parámetros : PredicateBlock&lt;br /&gt;
** Con un parámetro (unario) : UnaryPredicateBlock&lt;br /&gt;
** Con dos parámetros (binario) : BinaryPredicateBlock&lt;br /&gt;
* Bloques de Funciones: Retornan un valor de un tipo arbitrario al evaluarlos&lt;br /&gt;
** Sin parámetros : FunctionBlock&lt;br /&gt;
** Con un parámetro (unario) : UnaryFunctionBlock&lt;br /&gt;
** Con dos parámetros (binario) : BinaryFunctionBlock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Todos los bloques se pueden asignar a una variable, pasar como parámetro a otro método, usar como valor de retorno de una función o almacenar en una estructura de datos; claramente, son elementos de primer nivel. Además, también son serializables siempre y cuando los tipos de datos que encierren también lo sean. Para evaluar un bloque, se le envía el mensaje value con cero, uno ó dos parámetros, ante el cual el bloque retornará void, un valor booleano o un valor de un tipo arbitrario, según corresponda al tipo de bloque.&lt;br /&gt;
&lt;br /&gt;
Voy a implementar nuevamente el ejemplo 2 usando bloques en Java:&lt;br /&gt;
&lt;br /&gt;
Ejemplo 5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
final Integer uno;&lt;br /&gt;
FunctionBlock&amp;lt;Integer&amp;gt; bloqueSuma;&lt;br /&gt;
&lt;br /&gt;
uno = 1;&lt;br /&gt;
bloqueSuma = new FunctionBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
  public Integer value() {&lt;br /&gt;
    return uno + uno; }};&lt;br /&gt;
&lt;br /&gt;
bloqueSuma.value();&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si imprimiera el resultado de la última expresión obtendría:&lt;br /&gt;
&lt;br /&gt;
 2&lt;br /&gt;
&lt;br /&gt;
Mi definición de bloques es muy sencilla, sólo plantea lo necesario para implementar métodos enumeradores sobre las colecciones de Java. Hay varias librerías que ofrecen una funcionalidad más extensa y compleja para manipular bloques, consultar [8], [9], [10], [11] para más información.&lt;br /&gt;
&lt;br /&gt;
===Métodos Enumeradores en Java===&lt;br /&gt;
&lt;br /&gt;
Cuando describí los métodos enumeradores de Smalltalk, mencioné que la clave para implementarlos reside en disponer de colecciones con funciones de orden superior que reciban un bloque como parámetro. En la sección anterior demostré cómo se pueden construir bloques, sólo queda faltando la segunda mitad del rompecabezas: ¿Cómo puedo definir funciones de orden superior sobre las colecciones de Java? Obviamente, volver a implementar las colecciones ¡no es una opción viable!; los patrones de diseño vienen a nuestro auxilio una vez más. Usando una combinación de ''Adapter'' y ''Factory Method'' [4], &amp;quot;envolví&amp;quot; las clases que implementan la interfaz Collection en mi interfaz HigherOrderCollection, escribí una implementación genérica de los métodos enumeradores en AbstractHigherOrderCollection y proporcioné un mecanismo estándar para crear nuevas instancias de las colecciones en HOCFactory. Referirse al código fuente y a la documentación del paquete util.higherOrderCollections para más detalles.&lt;br /&gt;
&lt;br /&gt;
La pieza central de la implementación es la interfaz HigherOrderCollection, que representa el contrato que debe cumplir una colección de orden superior. Las operaciones definidas en ella están basadas en los métodos enumeradores de Smalltalk, lo que efectivamente permite contar con la funcionalidad de dichos métodos en Java. Esto es algo muy notable, quien haya trabajado con Smalltalk sabe lo útiles y prácticos que son sus enumeradores, que permiten realizar las operaciones más comunes sobre una colección sin tener que escribir una y otra vez el mismo código para recorrerla y realizar alguna acción sobre cada uno de sus elementos.&lt;br /&gt;
&lt;br /&gt;
La siguiente sección explica cómo instanciar colecciones de orden superior y cómo usar los métodos enumeradores: es un pequeño tutorial de mi librería.&lt;br /&gt;
&lt;br /&gt;
==Librería ''HigherOrderCollections''==&lt;br /&gt;
&lt;br /&gt;
Naturalmente, el primer paso es bajarse la librería de [http://gluc.unicauca.edu.co/wiki/images/e/e5/Higher-order-collections.tar.bz2 esta] dirección. Al descomprimir el archivo higher-order-collections.tar.bz2 se va a encontrar la siguiente estructura:&lt;br /&gt;
&lt;br /&gt;
 doc/&lt;br /&gt;
 src/&lt;br /&gt;
     test/&lt;br /&gt;
     util/&lt;br /&gt;
          blocks/&lt;br /&gt;
          higherOrderCollections/&lt;br /&gt;
 LICENSE.txt&lt;br /&gt;
 higher-order-collections.jar&lt;br /&gt;
&lt;br /&gt;
El directorio doc/ contiene la documentación generada a partir del código, el directorio src/ incluye el código fuente de las pruebas y de la librería como tal; el archivo LICENSE.txt contiene una copia de la licencia Apache 2.0 [12], que cobija este trabajo y finalmente el archivo higher-order-collections.jar contiene la versión compilada del código, lista para ser utilizada.&lt;br /&gt;
&lt;br /&gt;
===Requerimientos e Instalación===&lt;br /&gt;
&lt;br /&gt;
Los usuarios de mi librería deben tener instalado J2SE 1.5.0 ó superior, e incluir en su CLASSPATH el archivo higher-order-collections.jar. Adicionalmente, el código debe importar los siguientes paquetes:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
import util.blocks.*;&lt;br /&gt;
import util.higherOrderCollections.*;&lt;br /&gt;
import static util.higherOrderCollections.HOCFactory.CollectionEnum.*;&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Pruebas===&lt;br /&gt;
&lt;br /&gt;
Todo proyecto de código abierto que se respete debe incluir pruebas unitarias. Las mías están bajo el directorio test/ y fueron hechas usando JUnit [13]. Los curiosos pueden encontrar muchos ejemplos de uso en HigherOrderCollectionTest, quien desee modificar mi librería debe asegurarse que las pruebas sigan funcionando después de las modificaciones, ya que ellas verifican exhaustivamente que se cumpla el contrato estipulado en la interfaz HigherOrderCollection.&lt;br /&gt;
&lt;br /&gt;
===¡Hola, Mundo!===&lt;br /&gt;
&lt;br /&gt;
Siguiendo una antigua tradición que data de 1973, cuando Brian Kernighan escribió un tutorial sobre el lenguaje B, vamos a imprimir &amp;quot;¡Hola, Mundo!&amp;quot; por pantalla usando mi librería. Este es un ejemplo completo, que demuestra todo lo que se debe hacer para utilizar colecciones de orden superior; se puede compilar y ejecutar directamente.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 6:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
import util.blocks.*;&lt;br /&gt;
import util.higherOrderCollections.*;&lt;br /&gt;
import static util.higherOrderCollections.HOCFactory.CollectionEnum.*;&lt;br /&gt;
&lt;br /&gt;
public class HolaMundo {&lt;br /&gt;
&lt;br /&gt;
    public static void main(String[] args) {&lt;br /&gt;
&lt;br /&gt;
        // declaro una colección de orden superior&lt;br /&gt;
        HigherOrderCollection&amp;lt;String&amp;gt; coleccion;&lt;br /&gt;
        // instancio un Vector&lt;br /&gt;
        coleccion = HOCFactory.newInstance(Vector);&lt;br /&gt;
&lt;br /&gt;
        // añado cadenas de texto&lt;br /&gt;
        coleccion.add(&amp;quot;¡Hola&amp;quot;);&lt;br /&gt;
        coleccion.add(&amp;quot;, &amp;quot;);&lt;br /&gt;
        coleccion.add(&amp;quot;Mundo!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
        /*&lt;br /&gt;
         * itero sobre los elementos de la colección y evalúo&lt;br /&gt;
         * sobre cada uno de ellos  el  bloque  que pasé como&lt;br /&gt;
         * parámetro. El bloque escribe por pantalla el valor&lt;br /&gt;
         * que recibe como argumento&lt;br /&gt;
         */&lt;br /&gt;
        coleccion.doBlock(new UnaryProcedureBlock&amp;lt;String&amp;gt;() {&lt;br /&gt;
            public void value(String elemento) {&lt;br /&gt;
                System.out.print(elemento); }});&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 ¡Hola, Mundo!&lt;br /&gt;
&lt;br /&gt;
===Instanciación de Colecciones de Orden Superior===&lt;br /&gt;
&lt;br /&gt;
Hay dos mecanismos disponibles para instanciar una colección de orden superior. El más sencillo y frecuente, es utilizando la clase HOCFactory para obtener instancias de las colecciones presentes en J2SE 1.5, como se ilustra a continuación.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 7:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
HigherOrderCollection&amp;lt;Double&amp;gt; lista;&lt;br /&gt;
lista = HOCFactory.newInstance(LinkedList);&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Detalles a tener en cuenta: La variable lista es declarada de tipo HigherOrderCollection, con un argumento de tipo &amp;amp;lt;Double&amp;amp;gt; indicando que se trata de una lista de elementos de tipo Double. A continuación instanciamos una LinkedList -una lista encadenada- como la colección subyacente a la colección de orden superior. En cualquier momento podemos recuperar la colección que se encuentra &amp;quot;envuelta&amp;quot; bajo la lista, como se mostrará en la siguiente sección (ver método '''getCollection''').&lt;br /&gt;
&lt;br /&gt;
HOCFactory proporciona envoltorios por defecto para las siguientes clases: ArrayList, ConcurrentLinkedQueue, CopyOnWriteArrayList, CopyOnWriteArraySet, HashSet, LinkedBlockingQueue, LinkedHashSet, LinkedList, PriorityBlockingQueue, PriorityQueue, Stack, TreeSet y Vector. En todas ellas, se utiliza el constructor por defecto -sin argumentos- para crear nuevas instancias de colecciones estándar que serán envueltas en una colección de orden superior.&lt;br /&gt;
&lt;br /&gt;
Ahora bien, si ''no'' se desea usar el constructor por defecto de una colección o si se necesita envolver una nueva colección que no está disponible en HOCFactory, debo utilizar el segundo mecanismo para instanciar una colección de orden superior: definir una pequeña clase (podría ser local) que extienda AbstractHigherOrderCollection y proporcione un constructor y una implementación para newInstance, su único método abstracto. Supongamos que se necesita instanciar un HashSet&amp;amp;lt;Number&amp;amp;gt; de orden superior, con una capacidad inicial de 100 elementos y un factor de carga de 0.50. Procedemos de la siguiente manera.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 8:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
final int capacidadInicial = 100;&lt;br /&gt;
final float factorCarga  = 0.50f;&lt;br /&gt;
&lt;br /&gt;
class HOHashSet&amp;lt;E&amp;gt; extends AbstractHigherOrderCollection&amp;lt;E&amp;gt; {&lt;br /&gt;
    private HOHashSet() {&lt;br /&gt;
        super(new HashSet&amp;lt;E&amp;gt;(capacidadInicial, factorCarga));&lt;br /&gt;
    }&lt;br /&gt;
    protected &amp;lt;E&amp;gt; HigherOrderCollection&amp;lt;E&amp;gt; newInstance() {&lt;br /&gt;
        return new HOHashSet&amp;lt;E&amp;gt;();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
HigherOrderCollection&amp;lt;Number&amp;gt; conjunto = new HOHashSet&amp;lt;Number&amp;gt;();&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Uso de Métodos Enumeradores===&lt;br /&gt;
&lt;br /&gt;
Finalmente, estudiaremos la interfaz HigherOrderCollection, el núcleo de mi librería. Voy a dar una breve descripción de cada método, junto con un fragmento de código mostrando cómo utilizarlo y el resultado de invocarlo. Consultar la documentación para mayores detalles.&lt;br /&gt;
&lt;br /&gt;
Todos los ejemplos utilizan la misma colección de Integers, definida a continuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
HigherOrderCollection&amp;lt;Integer&amp;gt; coleccion;&lt;br /&gt;
coleccion = HOCFactory.newInstance(ArrayList);&lt;br /&gt;
coleccion.add(1); coleccion.add(2); coleccion.add(3);&lt;br /&gt;
coleccion.add(4); coleccion.add(5); coleccion.add(6);&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Collection&amp;amp;lt;E&amp;amp;gt; getCollection()''' : Retorna la colección subyacente que fue usada para crear esta colección de orden superior. Puede ser convertida de manera segura al tipo de la colección original.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 9:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
ArrayList&amp;lt;Integer&amp;gt; lista = (ArrayList&amp;lt;Integer&amp;gt;)coleccion.getCollection();&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''void doBlock(UnaryProcedureBlock&amp;amp;lt;E&amp;amp;gt; aBlock)''' : Evalúa el bloque sobre cada uno de los elementos de la colección.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 10:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.doBlock(new UnaryProcedureBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
    public void value(Integer elemento) {&lt;br /&gt;
      System.out.print(elemento + &amp;quot; &amp;quot;); }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 1 2 3 4 5 6&lt;br /&gt;
&lt;br /&gt;
'''int count(UnaryPredicateBlock&amp;amp;lt;E&amp;amp;gt; aBlock)''' : Retorna el número de elementos que al ser evaluados sobre el bloque hacen que éste retorne true.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 11:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.count(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
    public boolean value(Integer elemento) {&lt;br /&gt;
        return elemento.intValue() % 2 == 0; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 3&lt;br /&gt;
&lt;br /&gt;
'''E detect(UnaryPredicateBlock&amp;amp;lt;E&amp;amp;gt; aBlock)''' : Retorna el primer elemento que al ser evaluado sobre el bloque hace que éste retorne true, o null si ninguno hace que el bloque retorne true.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 12:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.detect(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
    public boolean value(Integer elemento) {&lt;br /&gt;
        return elemento == 4; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 4&lt;br /&gt;
&lt;br /&gt;
'''E remove(UnaryPredicateBlock&amp;amp;lt;E&amp;amp;gt; aBlock)''' : Remueve de la colección y retorna el primer elemento que al ser evaluado sobre el bloque hace que éste retorne true, o retorna null si ninguno hace que el bloque retorne true.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 13:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.remove(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
    public boolean value(Integer elemento) {&lt;br /&gt;
        return elemento == 5; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 5&lt;br /&gt;
&lt;br /&gt;
'''HigherOrderCollection&amp;amp;lt;E&amp;amp;gt; removeAll(UnaryPredicateBlock&amp;amp;lt;E&amp;amp;gt; aBlock)''' : Remueve de la colección todos los elementos que al ser evaluados sobre el bloque hacen que éste retorne true. Retorna una nueva colección del mismo tipo que la colección original con los elementos que fueron removidos, o una colección vacía si no se removió ninguno.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 14:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.removeAll(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
    public boolean value(Integer elemento) {&lt;br /&gt;
        return elemento.intValue() % 2 != 0; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 1 3 5&lt;br /&gt;
&lt;br /&gt;
'''R inject(R thisValue, BinaryFunctionBlock&amp;amp;lt;R,E,R&amp;amp;gt; binaryBlock)''' : Acumula y retorna el resultado de evaluar el bloque sobre cada uno de los elementos. El primer parámetro sirve como valor inicial del acumulador. Por ejemplo, para sumar todos los elementos de la colección, haría lo siguiente.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 15:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.inject(0, new BinaryFunctionBlock&amp;lt;Integer,Integer,Integer&amp;gt;() {&lt;br /&gt;
    public Integer value(Integer subTotal, Integer elemento) {&lt;br /&gt;
        return subTotal + elemento; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 21&lt;br /&gt;
&lt;br /&gt;
'''HigherOrderCollection&amp;amp;lt;R&amp;amp;gt; collect(UnaryFunctionBlock&amp;amp;lt;E,R&amp;amp;gt; aBlock)''' : Evalúa el bloque sobre todos los elementos de la colección y va añadiendo cada valor retornado por el bloque a una nueva colección, que finalmente es retornada. La nueva colección tiene el mismo tipo que la colección original. Aquí demuestro cómo implementar los ejemplos 1 y 3 con mi librería.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 16:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.collect(new UnaryFunctionBlock&amp;lt;Integer,Integer&amp;gt;() {&lt;br /&gt;
    public Integer value(Integer elemento) {&lt;br /&gt;
        return elemento * elemento; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 1 4 9 16 25 36&lt;br /&gt;
&lt;br /&gt;
'''HigherOrderCollection&amp;amp;lt;E&amp;amp;gt; select(UnaryPredicateBlock&amp;amp;lt;E&amp;amp;gt; aBlock)''' : Añade a una nueva colección (que tiene el mismo tipo que la colección original) los elementos que al ser evaluados sobre el bloque hacen que éste retorne true. Retorna la nueva colección.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 17:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.select(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
    public boolean value(Integer elemento) {&lt;br /&gt;
        return elemento &amp;lt; 4; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 1 2 3&lt;br /&gt;
&lt;br /&gt;
'''HigherOrderCollection&amp;amp;lt;E&amp;amp;gt; reject(UnaryPredicateBlock&amp;amp;lt;E&amp;amp;gt; aBlock)''' : Añade a una nueva colección (que tiene el mismo tipo que la colección original) los elementos que al ser evaluados sobre el bloque hacen que éste retorne false. Retorna la nueva colección.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 18:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.reject(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
    public boolean value(Integer elemento) {&lt;br /&gt;
        return elemento &amp;lt; 4; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 4 5 6&lt;br /&gt;
&lt;br /&gt;
Como nota final, recordar que los métodos enumeradores pueden ser encadenados uno detrás de otro, permitiendo escribir complejas expresiones que actúan como filtros sobre una colección de datos.&lt;br /&gt;
&lt;br /&gt;
Ejemplo 19:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;java&amp;gt;&lt;br /&gt;
coleccion.collect(new UnaryFunctionBlock&amp;lt;Integer, Integer&amp;gt;(){&lt;br /&gt;
  public Integer value(Integer elemento) {&lt;br /&gt;
    return elemento * elemento; }})&lt;br /&gt;
      .select(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
        public boolean value(Integer elemento) {&lt;br /&gt;
          return elemento.intValue() % 2 == 0; }})&lt;br /&gt;
            .detect(new UnaryPredicateBlock&amp;lt;Integer&amp;gt;() {&lt;br /&gt;
              public boolean value(Integer elemento) {&lt;br /&gt;
                return elemento &amp;gt; 20; }});&lt;br /&gt;
&amp;lt;/java&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 36&lt;br /&gt;
&lt;br /&gt;
==Trabajo Futuro==&lt;br /&gt;
&lt;br /&gt;
El trabajo de un desarrollador nunca termina… Los métodos enumeradores de Smalltalk abarcan ''todas'' las colecciones, incluyendo los diccionarios. Una posible extensión para mi trabajo, sería implementar métodos equivalentes a los de la interfaz HigherOrderCollection, pero definidos sobre las clases que implementan la interfaz Map. Otra extensión relevante podría ser agregar nuevos métodos enumeradores, siguiendo la misma filosofía de los que ya están implementados. Es una propuesta abierta, sería interesante que alguien más se le midiera al trabajo. ¡Por algo es código abierto!&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
&lt;br /&gt;
En este artículo cubrimos bastante material. Explicamos qué es una función de orden superior, qué es un bloque y cómo la combinación de ambos aplicada a una colección produce métodos de gran poder expresivo. También vimos la utilidad de los tipos genéricos y las clases internas anónimas en Java, que permiten implementar métodos enumeradores similares a los encontrados en Smalltalk. Por último, vimos cómo utilizar la librería ''HigherOrderCollections'', que extiende las colecciones de Java y las enriquece con métodos enumeradores.&lt;br /&gt;
&lt;br /&gt;
Espero que muchos de mis lectores utilicen ''HigherOrderCollections'' en sus proyectos, mi correo (olopez _en_ uniandino.com.co) siempre estará abierto a dudas, correcciones y sugerencias. Confío en que lo expuesto aquí haya sido de utilidad a alguien.&lt;br /&gt;
&lt;br /&gt;
Unas palabras finales de agradecimiento… a Steve Vai, John Petrucci, Marty Friedman y muy especialmente a Uli Jon Roth, por interpretar la increíble música que acompañó este proyecto y sirvió para inspirar unas cuantas buenas ideas.&lt;br /&gt;
&lt;br /&gt;
==Bibliografía==&lt;br /&gt;
&lt;br /&gt;
[1]  http://www-128.ibm.com/developerworks/library/l-highfunc.html?ca=dgr-lnxw07Functions&lt;br /&gt;
&lt;br /&gt;
[2]  http://c2.com/cgi/wiki?FunctorObject&lt;br /&gt;
&lt;br /&gt;
[3]  Goldberg, Adele; Robson, David. Smalltalk-80: The Language and Its Implementation (&amp;quot;El Libro Azul&amp;quot;). Addison-Wesley, 1985.&lt;br /&gt;
&lt;br /&gt;
[4]  E. Gamma, R. Helm, R. Johnson and J. Vlissides. Design Patterns: Elements of Reusable Object Oriented Software. Reading, Mass.: Addison-Wesley, 1995.&lt;br /&gt;
&lt;br /&gt;
[5]  http://java.sun.com/j2se/1.5.0/docs/relnotes/features.html&lt;br /&gt;
&lt;br /&gt;
[6]  http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf&lt;br /&gt;
&lt;br /&gt;
[7]  http://c2.com/cgi/wiki?BlocksInJava&lt;br /&gt;
&lt;br /&gt;
[8]  http://jakarta.apache.org/commons/sandbox/functor/&lt;br /&gt;
&lt;br /&gt;
[9]  http://jga.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
[10] http://www.recursionsw.com/&lt;br /&gt;
&lt;br /&gt;
[11] http://www.jezuk.co.uk/cgi-bin/view/mango&lt;br /&gt;
&lt;br /&gt;
[12] http://www.apache.org/licenses/LICENSE-2.0&lt;br /&gt;
&lt;br /&gt;
[13] http://www.junit.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Lenguajes_Din%C3%A1micos_en_la_Java_Virtual_Machine</id>
		<title>Lenguajes Dinámicos en la Java Virtual Machine</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Lenguajes_Din%C3%A1micos_en_la_Java_Virtual_Machine"/>
				<updated>2013-12-04T10:16:59Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «Autor: Óscar Andrés López  Esta conferencia fue dictada originalmente durante la 3ra Campus Party en Bogotá (2010). En ella se muestra cómo la JVM pres...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Usuario:TYR|Óscar Andrés López]]&lt;br /&gt;
&lt;br /&gt;
Esta conferencia fue dictada originalmente durante la 3ra Campus Party en Bogotá (2010). En ella se muestra cómo la JVM presenta al desarrollador con un abanico de lenguajes que van más allá de Java. Se hace una breve introducción a Jython, JRuby, Scala y Clojure, mostrando cómo el uso de estos lenguajes dinámicos puede simplificar la creación de programas, su utilidad como lenguajes de scripting o de “pegamento”, y la sencillez con la que se puede establecer una relación simbiótica con Java y sus librerías.&lt;br /&gt;
&lt;br /&gt;
Los interesados pueden encontrar aquí las diapositivas, un ZIP con los ejemplos y un video con la conferencia:&lt;br /&gt;
&lt;br /&gt;
*[http://www.slideshare.net/campuspartycolombia/dynamic-jvm dynamic-jvm.pdf]&lt;br /&gt;
&lt;br /&gt;
*[http://dynamic-jvm.googlecode.com/files/src-dynamic-jvm.zip src-dynamic-jvm.zip]&lt;br /&gt;
&lt;br /&gt;
*[http://www.youtube.com/watch?v=hehCUSVbQDo video]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Cursos]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Autorizaci%C3%B3n_Basada_en_Reglas_con_Drools</id>
		<title>Autorización Basada en Reglas con Drools</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Autorizaci%C3%B3n_Basada_en_Reglas_con_Drools"/>
				<updated>2013-12-04T10:16:40Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «Autor: Óscar Andrés López  Esta conferencia fue dictada originalmente durante la 4ta Campus Party en Bogotá (2011). Se introduce Drools como motor de in...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Usuario:TYR|Óscar Andrés López]]&lt;br /&gt;
&lt;br /&gt;
Esta conferencia fue dictada originalmente durante la 4ta Campus Party en Bogotá (2011). Se introduce Drools como motor de inferencia, detallando su funcionamiento y utilidad para el desarrollo de aplicaciones web empresariales bajo la plataforma Seam, haciendo énfasis en el uso de reglas como una herramienta de seguridad que facilita la implementación de políticas de autorización y control de acceso.&lt;br /&gt;
&lt;br /&gt;
Los interesados pueden encontrar aquí las diapositivas y un ZIP con los ejemplos de código:&lt;br /&gt;
&lt;br /&gt;
*[http://www.slideshare.net/t__y__r/autorizacin-basada-en-reglas-con-drools-9493437 drools-authorization.pdf]&lt;br /&gt;
&lt;br /&gt;
*[http://dynamic-jvm.googlecode.com/files/src-drools-authorization.zip src-drools-authorization.zip]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Cursos]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:TYR</id>
		<title>Usuario:TYR</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:TYR"/>
				<updated>2013-12-04T10:16:23Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «== Información de Contacto ==  :'''Nombre:''' [http://gluc.unicauca.edu.co/wiki/index.php/Usuario:TYR Óscar Andrés López Paruma]  :'''Email:''' olopez (en) uniandes (pu...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Información de Contacto ==&lt;br /&gt;
&lt;br /&gt;
:'''Nombre:''' [http://gluc.unicauca.edu.co/wiki/index.php/Usuario:TYR Óscar Andrés López Paruma]&lt;br /&gt;
&lt;br /&gt;
:'''Email:''' olopez (en) uniandes (punto) edu (punto) co&lt;br /&gt;
&lt;br /&gt;
:'''Skype:''' oscar.andres.lopez&lt;br /&gt;
&lt;br /&gt;
:'''Facebook:''' [http://www.facebook.com/oscar.andres.lopez Óscar Andrés López]&lt;br /&gt;
&lt;br /&gt;
:'''Google+:''' [https://plus.google.com/115482497150374945635 Óscar Andrés López]&lt;br /&gt;
&lt;br /&gt;
:'''Tuenti:''' [http://www.tuenti.com/#m=Profile&amp;amp;func=index&amp;amp;user_id=71586972 Óscar López]&lt;br /&gt;
&lt;br /&gt;
:'''LinkedIn:''' [http://co.linkedin.com/pub/óscar-andrés-lópez/0/a58/436 Óscar Andrés López]&lt;br /&gt;
&lt;br /&gt;
:'''Twitter:''' [http://twitter.com/oscar_lopez @oscar_lopez]&lt;br /&gt;
&lt;br /&gt;
:'''Delicious:''' [http://delicious.com/oscar.andres.lopez oscar.andres.lopez]&lt;br /&gt;
&lt;br /&gt;
:'''Stack Overflow:''' [http://stackoverflow.com/users/201359 Óscar López]&lt;br /&gt;
&lt;br /&gt;
:'''Slide Share:''' [http://www.slideshare.net/t__y__r/ Óscar López]&lt;br /&gt;
&lt;br /&gt;
:'''Ubicación Actual:''' Bogotá, Colombia&lt;br /&gt;
&lt;br /&gt;
== Estudios Realizados ==&lt;br /&gt;
&lt;br /&gt;
* Master of Science in Computer Science de la [http://www.vub.ac.be/ Vrije Universiteit Brussel] en Bruselas, Bélgica; perteneciente al programa [http://www.emn.fr/x-info/emoose/alumni/#olopez EMOOSE] (2003-2004).&lt;br /&gt;
* Certificat de Formation Spécialisée, Spécialité Informatique de la [http://www.emn.fr/ Ecole Nationale Supérieure des Techniques Industrielles et des Mines de Nantes] en Nantes, Francia (2003-2004).&lt;br /&gt;
* Ingeniero de Sistemas y Computación de la [http://www.uniandes.edu.co Universidad de Los Andes] en Bogotá, Colombia (1997-2002).&lt;br /&gt;
* Bachiller Académico del Colegio Champagnat en Popayán, Colombia (1984-1995).&lt;br /&gt;
&lt;br /&gt;
== Distinciones Recibidas ==&lt;br /&gt;
&lt;br /&gt;
* Graduado Magna Cum Laude en el Master of Science in Computer Science de la Vrije Universiteit Brussel en 2004.&lt;br /&gt;
* Graduado con el Primer Puesto en la promoción de Ingenieros de Sistemas y Computación de la Universidad de Los Andes del primer semestre de 2002.&lt;br /&gt;
* Ganador de la beca Bachilleres por Colombia de ECOPETROL en 1996.&lt;br /&gt;
* Distinción Andrés Bello a nivel departamental para el calendario B en 1995.&lt;br /&gt;
&lt;br /&gt;
== Certificaciones Obtenidas ==&lt;br /&gt;
&lt;br /&gt;
* [http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=458&amp;amp;get_params=p_track_id:JEE5EA Oracle Certified Master Enterprise Architect] for Java Enterprise Edition 5 - Puntaje: 100% (Noviembre de 2012).&lt;br /&gt;
&lt;br /&gt;
* [http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=458&amp;amp;get_params=p_track_id:JEE5EA Sun Certified Enterprise Architect] for Java Platform Enterprise Edition Technology - Puntaje: 87% (Diciembre de 2008).&lt;br /&gt;
&lt;br /&gt;
* [http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=458&amp;amp;get_params=p_track_id:JSE5Prog Sun Certified Programmer] for the Java 2 Platform, Standard Edition 5.0 - Puntaje: 94% (Septiembre de 2006).&lt;br /&gt;
&lt;br /&gt;
* [http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=458&amp;amp;get_params=p_track_id:JavaSE5And6 Sun Certified Associate] for the Java Platform, Standard Edition - Puntaje: 92% (Junio de 2007).&lt;br /&gt;
&lt;br /&gt;
== Cursos y Conferencias ==&lt;br /&gt;
&lt;br /&gt;
* Curso &amp;quot;Programación Segura en Java&amp;quot; (40 horas), impartido por [http://www.fluidsignal.com FluidSignal] - Bogotá, Colombia. Noviembre de 2011.&lt;br /&gt;
* Conferencia &amp;quot;Pruebas de Desempeño de Software&amp;quot;, organizado por la [http://www.acis.org.co/ ACIS] - Bogotá, Colombia. Diciembre de 2010.&lt;br /&gt;
* Conferencia &amp;quot;Enterprise Architecture as a Strategic Enabler: Aligning IT With your Business&amp;quot;, organizado por [http://www.asesoftware.com Asesoftware] - Bogotá, Colombia. Abril de 2010.&lt;br /&gt;
* Capacitación Centro de Datos, programa [http://www.gobiernoenlinea.gov.co Gobierno en Línea] - Bogotá, Colombia. Agosto de 2009.&lt;br /&gt;
* Conferencia &amp;quot;Arquitectura de Software para Líderes de Tecnología&amp;quot;, organizado por el capítulo de Ingenieros de Sistemas de la [http://www.uniandinos.org.co Asociación de Egresados de la Universidad de los Andes] - Bogotá, Colombia. Julio de 2009.&lt;br /&gt;
* Workshop on Managing Offshore Software Development Projects, organizado por el Centre for the Promotion of Imports from Developing Countries ([http://www.cbi.nl CBI]) y [http://www.proexport.com.co Proexport] - Bogotá, Colombia. Diciembre de 2006.&lt;br /&gt;
* Curso de Francés, Nivel 1. [http://www.alianzafrancesa.org.co Alianza Colombo Francesa] - Bogotá, Colombia. Febrero - Junio 2003.&lt;br /&gt;
&lt;br /&gt;
== Experiencia Profesional ==&lt;br /&gt;
&lt;br /&gt;
* [http://sistemas.uniandes.edu.co/sitio/nuestragente/profesoresdecatedra Profesor de Cátedra] en la facultad de Ingeniería de Sistemas y Computación de la [http://www.uniandes.edu.co Universidad de Los Andes] (Enero de 2006 - ).&lt;br /&gt;
* Arquitecto de Software en [http://web.heinsohn.com.co/ Heinsohn Business Technology] (Junio de 2010 - ).&lt;br /&gt;
* Arquitecto de Software, Líder Técnico y Líder de Desarrolladores de la UT [http://www.softmanagement.com.co SoftManagement] y [http://www.db-system.com DB System] (Abril de 2009 - Enero de 2010).&lt;br /&gt;
* Arquitecto de Software, Desarrollador, Consultor, Auditor e Interventor en [http://www.ingenian.com Ingenian Software] (Noviembre de 2005 - Mayo de 2008).&lt;br /&gt;
* Asistente de Investigación en el [http://prog.vub.ac.be/ Programming Technology Lab] (Marzo de 2004 - Agosto de 2004).&lt;br /&gt;
* Arquitecto de Software, Desarrollador en [http://www.princetonsa.com/ Princeton S.A.] (Septiembre de 2002 - Septiembre de 2003).&lt;br /&gt;
&lt;br /&gt;
== Publicaciones ==&lt;br /&gt;
&lt;br /&gt;
* [[Go 101: Primeros Pasos|Go 101: Primeros Pasos]] - Charla en el Tecnoparque del Sena, nodo Bogotá (2012).&lt;br /&gt;
* [[Autorización Basada en Reglas con Drools|Autorización Basada en Reglas con Drools]] - Conferencia en la 4ta Campus Party, Bogotá (2011).&lt;br /&gt;
* [[Lenguajes Dinámicos en la Java Virtual Machine|Lenguajes Dinámicos en la Java Virtual Machine]] - Conferencia en la 3ra Campus Party, Bogotá (2010).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/images/6/61/Ponencia_-_Colecciones_de_Orden_Superior_en_Java.pdf Colecciones de Orden Superior en Java] - Ponencia en la IV Semana de Software Libre en la Universidad Distrital (2005).&lt;br /&gt;
* [[Programación Funcional con Scheme|Curso de Programación Funcional con Scheme]] - Grupo GNU/Linux Universidad del Cauca (2005).&lt;br /&gt;
* [[Curso_de_C-Sharp|Curso de C#]] - Grupo GNU/Linux Universidad del Cauca (2005).&lt;br /&gt;
* [[Columnas_Ordenadas_por_Autor#TYR|Columnas]] en el Grupo GNU/Linux Universidad del Cauca (2005-).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/images/b/b3/Thesis.pdf A Forward-Chaining Inference Rule Engine for a Prototype-Based Language] - Tesis de Maestría en la Vrije Universiteit Brussel (2004).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/images/9/92/RulesMeetObjects.pdf Rules Meet Objects : Thesis Experience] - Ponencia en el Workshop on Prototype-Based Software Technology en Bruselas, Bélgica (2004).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/images/0/03/Comunicaciones_en_un_IDS_-_Dise%F1o_e_Implementaci%F3n.pdf Comunicaciones en un Sistema de Detección de Intrusos: Diseño e Implementación] - Tesis de Grado en la Universidad de Los Andes (2002).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/images/1/1d/InfoForense.pdf Informática Forense: Generalidades, Aspectos Técnicos y Herramientas] - I Congreso Iberoamericano de Seguridad en Morelia, México (2002).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/images/e/e0/IDS.pdf Arquitectura y Comunicaciones en un Sistema de Detección de Intrusos] - I Congreso Iberoamericano de Seguridad en Morelia, México (2002).&lt;br /&gt;
&lt;br /&gt;
== Grupos de Investigación ==&lt;br /&gt;
&lt;br /&gt;
* Miembro de [http://www.monocolombia.com/ Mono Colombia] desde Octubre de 2005.&lt;br /&gt;
* Miembro activo del [[Portada|Grupo GNU/Linux Universidad del Cauca]] desde Noviembre de 2003.&lt;br /&gt;
* Pertenecí al [http://prog.vub.ac.be/ PROG], el laboratorio de tecnologías de programación de la Vrije Universiteit Brussel.&lt;br /&gt;
* Pertenecí al grupo de investigación en sistemas de detección de intrusos de la Universidad de Los Andes.&lt;br /&gt;
&lt;br /&gt;
== Participación en Eventos de Investigación ==&lt;br /&gt;
&lt;br /&gt;
* [http://jsl.unicauca.edu.co Jornadas de Software Libre 2006] (Jurado) - Popayán, Colombia. Agosto de 2006.&lt;br /&gt;
* [http://glud.udistrital.edu.co/slud4/ IV Semana Linux de la Universidad Distrital] (Jurado, Ponente) - Bogotá, Colombia. Octubre de 2005.&lt;br /&gt;
* [http://www.senuma.unicauca.edu.co/cic2005/ II Encuentro Nacional de Computación e Información Cuántica] (Asistente) - Popayán, Colombia. Mayo de 2005.&lt;br /&gt;
* [http://smallwiki.unibe.ch/trait-basedlanguageinternationalworkshop/ Trait-Based Language International Workshop] (Asistente) - Berna, Suiza. Junio de 2004.&lt;br /&gt;
* [http://prog.vub.ac.be/~ellenvp/wopst.html Workshop on Prototype-Based Software Technology] (Ponente) - Bruselas, Bélgica. Abril de 2004.&lt;br /&gt;
&lt;br /&gt;
== Proyectos de Código Abierto ==&lt;br /&gt;
&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/index.php/Imagen:Numeric-tower.zip Numeric Tower] : Implementación meta-circular de una torre numérica en Scheme (licencia: MIT)&lt;br /&gt;
* [[Colecciones_de_Orden_Superior_en_Java|HigherOrderCollections]] : Una extensión a las colecciones de Java (licencia: Apache 2.0).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/index.php/Imagen:Fire4Self.zip FIRE4SELF] : Forward-Chaining Inference Rule Engine para [http://research.sun.com/self/language.html SELF] (licencia: GPL v2).&lt;br /&gt;
* Un [http://prog.vub.ac.be/~jfabry/irish/plugin.html plug-in] para conectar [http://prog.vub.ac.be/~jfabry/irish/index.html Irish] con [http://www.eclipse.org Eclipse] (licencia: GPL v2).&lt;br /&gt;
* [http://gluc.unicauca.edu.co/wiki/index.php/Imagen:IDS-com.zip IDS-com] : Módulo de comunicaciones para un Sistema de Detección de Intrusos (licencia: Apache 2.0).&lt;br /&gt;
&lt;br /&gt;
== Intereses Académicos ==&lt;br /&gt;
&lt;br /&gt;
Actualmente, mis áreas de investigación incluyen: Arquitectura de Software, Programación Funcional, Programación Orientada a Objetos, Programación Orientada a Aspectos, Componentes de Software, Concurrencia y Programación Distribuida, Seguridad Informática, Lenguajes de Programación, Sistemas Operativos, Teoría Formal de Computación, Diseño de Algoritmos, Desarrollo de Aplicaciones Web, Software de Código Abierto y la Enseñanza de la Programación.&lt;br /&gt;
&lt;br /&gt;
== Idiomas ==&lt;br /&gt;
&lt;br /&gt;
Hablo Español, Inglés y Francés.&lt;br /&gt;
&lt;br /&gt;
== Registro Histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
:'''Miembro Activo del GLUC Desde:''' Noviembre de 2003.&lt;br /&gt;
&lt;br /&gt;
:'''Área de Trabajo:''' [[Área de Investigación y Desarrollo|Investigación y Desarrollo]].&lt;br /&gt;
&lt;br /&gt;
:'''Cargos Desempeñados:''' Fui coordinador del área de [[Área de Investigación y Desarrollo|Investigación y Desarrollo]] en el 2005.&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Go_101:_Primeros_Pasos</id>
		<title>Go 101: Primeros Pasos</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Go_101:_Primeros_Pasos"/>
				<updated>2013-12-04T10:16:02Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «Autor: Óscar Andrés López  Esta charla fue dictada originalmente en el Tecnoparque del Sena, nodo Bogotá (2012). Se mostraron los fundamentos necesarios...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor: [[Usuario:TYR|Óscar Andrés López]]&lt;br /&gt;
&lt;br /&gt;
Esta charla fue dictada originalmente en el Tecnoparque del Sena, nodo Bogotá (2012). Se mostraron los fundamentos necesarios para empezar a usar el lenguaje de programación [http://golang.org/ Go], creado por Google.&lt;br /&gt;
&lt;br /&gt;
Los interesados pueden encontrar aquí las diapositivas:&lt;br /&gt;
&lt;br /&gt;
*[http://www.slideshare.net/t__y__r/go-101-primeros-pasosgo-lang go-lang.pdf]&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Cursos]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Algunos_Factores_Importantes_a_la_Hora_de_Instalar_Linux_por_Primera_Vez</id>
		<title>Algunos Factores Importantes a la Hora de Instalar Linux por Primera Vez</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Algunos_Factores_Importantes_a_la_Hora_de_Instalar_Linux_por_Primera_Vez"/>
				<updated>2013-12-04T10:15:29Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Junio 8 de 2.004'''  '''Por Alejandro Ríos Peña.'''  Me correspondió realizar la primera publicación de una columna en el GLUC. Esta será la pri...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Junio 8 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Me correspondió realizar la primera publicación de una columna en el GLUC. Esta será la primera de nuestras columnas semanales, escritas por los miembros del GLUC que deseen contribuir con pequeños textos, bien sean de opinión o técnicos.&lt;br /&gt;
Bueno, entrando en materia, en esta oportunidad quiero comentar algunos de los factores a mi parecer son de consideración cuando se va a realizar por primera vez la instalación de un computador con linux.&lt;br /&gt;
&lt;br /&gt;
A continuación expongo cada uno de estos factores:&lt;br /&gt;
&lt;br /&gt;
'''1.Escoger la distribución.'''&lt;br /&gt;
&lt;br /&gt;
Esto depende básicamente del uso que se le vaya a dar al computador. Siva a ser un servidor, lo mejor es debian, suse ó redhat. Si va a ser una estación de trabajo, lo mejor es debian, fedora, mandrake ó slackware.Si va a ser un computador de escritorio, lo más sensato sería instalar mandrake(para un usuario avanzado, debian es lo mejor en cualquier campo). Incluso hay distribuciones que no hay necesidad de instalar enel disco duro, sino que se corren desde el CDROM, como Knoppix yMorphix. Para empezar sin traumatismos con linux, lo mejor sería instalar Mandrake.&lt;br /&gt;
&lt;br /&gt;
'''2.Saber particionar el disco duro.'''&lt;br /&gt;
&lt;br /&gt;
Aunque si uno tiene sólo Linux el particionamiento del disco no esimportante, si uno quiere tener varios sistemas operativos a la vez pues el particionamiento se convierte en algo crítico. Para una instalación dual WIndows-Linux, se recomienda hacer lo siguiente (Voy a hacer el ejemplo con un disco duro de 10Gigas):&lt;br /&gt;
*Particionar el disco así: 3G para el sistema operativo Windows y los archivos de programa de windows(formateado con el sistema de archivosfat32), 3G para el sistema operativo Linux y sus respectivos archivos de programa(al hacer esta partición en windows se deja sin formatear, ya que al instalar linux se realiza el formato con el sistema de archivos ext3), y 4G para los documentos que van a compartir los dos sistemas operativos (formateado con el sistema de archivos fat32).&lt;br /&gt;
*Linux puede acceder a archivos que estén en particiones formateadas con el sistema de archivos de windows fat32, no a los que tengan el sistema de archivos NTFS, así que debe tenerse cuidado para no formatearen éste último. Para acceder a particiones FAT32 desde linux lo que se hace es montar el sistema de archivos con el comando 'mount'. Mandrake lo hace automáticamente, mientras otras distribuciones no.&lt;br /&gt;
*Se debe instalar primero Windows, ya que al instalar windows, éste sobreescribe la tabla de particiones. O sea que si se instala primer olinux y luego windows, el windows no da la posibilidad de escoger el sistema operativo con el que se quiere arrancar el computador cada vezque se prende.&lt;br /&gt;
*El particionamiento se puede hacer en caliente con un programa comoPartitionMagic, de tal forma que se pueden mantener los datos actuales del disco duro, o se puede hacer en frio, es decir, formateando todo el disco y luego particionándolo con fdisk desde un dico de arranque deMS-DOS.&lt;br /&gt;
*Dejar mínimo 2G para Linux, ya que este es el tamaño que tiene una instalación promedio . Una distribución de Linux no trae sólo el sistema operativo, sino una gran cantidad de aplicaciones de todo tipo.&lt;br /&gt;
*Si lo que se desea es tener sólo linux en el computador, se puede dividir el disco duro en dos particiones, una para el árbol de archivos raíz (&amp;quot;/&amp;quot;) de 3G y otro para el árbol de archivos de los documentos de usuario (&amp;quot;/home&amp;quot;) de 7G.&lt;br /&gt;
&lt;br /&gt;
'''3.Tener documentación y soporte a la mano.'''&lt;br /&gt;
&lt;br /&gt;
Hay que estar bien documentado para no sentir frustración cuando se inicia con Linux, ya que los cambios generan traumatismos. Uno siempre trata de utilizar una nueva tecnología que conoce para hacer lo quenecesita de la misma forma como lo hacía con la tecnología que ya conocía, antes de aprender la forma de hacer las mismas cosas de la manera en que la nueva tecnología se lo permite. Una de las mejores fuentes de documentación para linux es &amp;quot;The Linux Documentation Project&amp;quot;(http://www.tldp.org). Una buena forma de obtener soporte es unirse a una comunidad de usuarios y buscar las respuestas a las preguntas frecuentes en los foros, o pedir ayuda en el chat,etc. La comunidad de usuarios de Unicauca es el GLUC - Grupo GNU/Linux Universidad delCauca(http://gluc.unicauca.edu.co). Además, un documento interesante de la Comunidad de Usuarios de Software Libre de Colombia - Colibri, es este: http://bachue.com/colibri/faq/html&lt;br /&gt;
&lt;br /&gt;
'''4.Instalando Linux.'''&lt;br /&gt;
&lt;br /&gt;
A la hora de la instalación de linux se deben tener en cuenta varias cositas:&lt;br /&gt;
*Tener a la mano la información del hardware. En linux hay muchos problemas por falta de controladores para dispositivos como modems integrados en board y otros periféricos menos comunes como ratones inalámbricos y cosas así. Cada día hay menos problemas de este tipo,pero uno nunca sabe si le va a tocar cacharrear :)&lt;br /&gt;
*Tener una copia propia de los instaladores, ya que siempre se va a necesitar (siempre).&lt;br /&gt;
*Tomar nota de todo lo que se hace y se escoge en la instalación, y aque para poder pedir ayuda por internet se necesita tener la mayor cantidad de información respecto a lo que pudo haber causado el&amp;quot;problema&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''5. Conocer aplicaciones útiles.'''&lt;br /&gt;
&lt;br /&gt;
El software libre provee infinidad de aplicaciones, tanto para linux como para windows y muchos otros sistemas operativos y arquitecturas (no sólo PC, sino sparc, Mac, etc.). Algunas de las mejores fuentes de software libre son http://www.sourceforge.net (ó http://www.sf.net) y http://savanahh.gnu.org. Hace un tiempo hice una presentación donde realizaba un paralelo entre aplicaciones libres y propietarias para tareas comunes(ofimática, multimedia, etc):&lt;br /&gt;
http://gluc.unicauca.edu.co/archivos/vlvl/vlvl-2004-03-04/2002-03-04.html&lt;br /&gt;
Al final de la presentación hay un enlace a una tabla que tiene un paralelo muy completo y actualizado de estas aplicaciones. Algunas delas aplicaciones que menciono corren sólo en linux, y otras corren también en Windows.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Sobre_las_declaraciones_de_Hommes_y_Santanilla</id>
		<title>Sobre las declaraciones de Hommes y Santanilla</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Sobre_las_declaraciones_de_Hommes_y_Santanilla"/>
				<updated>2013-12-04T10:15:07Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Junio 15 de 2.004'''  '''Por Alejandro Rios Peña.'''  Me entristece profundamente el oscuro panorama que se cierne sobre el futuro de la Industria d...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Junio 15 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Rios Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Me entristece profundamente el oscuro panorama que se cierne sobre el futuro de la Industria del Software y Tecnologías Relacionadas (ISTIR) en nuestro país, en otros momentos, por los pocos jóvenes ingenieros y técnicos emprendedores que salen de nuestras universidades, y hoy día, por la desinformación realizada por el señor Carlos Santanilla, Presidente de Fedesfot y por el señor Rudolf Hommes en sus últimas intervenciones reseñadas en los diarios nacionales, el día viernes 28 de Mayo de 2004.&lt;br /&gt;
&lt;br /&gt;
Y digo que me entristecen las declaraciones de estos influyentes personajes, porque para un joven estudiante de Ingeniería en Electrónica y Telecomunicaciones, que con 22 años se encuentra realizando su trabajo de grado, liderando un Grupo de usuarios de GNU/Linux en su Universidad y tratando de sacar adelante una empresa en Parquesoft, resulta un golpe terrible el ver que la opinión pública resulte mal informada respecto a las verdaderas ventajas y desventajas que puede tener la negociación de nuestra legislación interna sobre la protección a la propiedad intelectual en el TLC con Estados Unidos.&lt;br /&gt;
&lt;br /&gt;
Es triste además que negociemos nuestra autonomía para decidir nuestra propia construcción de la legislación interna para afrontar los cambios que en esta materia trae la popularización de las nuevas tecnologías de información y comunicación.&lt;br /&gt;
&lt;br /&gt;
No estoy diciendo que el TLC sea malo, como plantea el señor Hommes que muchos estudiantes hacemos, lo que digo es que es injusto que Estados Unidos manipule nuestra soberanía en materia legislativa a cambio de ciertos acuerdos comerciales, eso es simple y llano chantaje. Por un lado nos deja venderle legumbres y granos y por otro lado nos obliga a comprarle tecnología. Nunca podremos vender suficientes alimentos a Estados Unidos como para compensar todo el dinero que pagamos por la tecnología que ese país nos vende.&lt;br /&gt;
&lt;br /&gt;
Es triste para mi también que los lectores lleguen a pensar que realmente es bueno lo que sucede en casos como los de mis compañeros de Universidad y de Parquesoft que participan en el concurso Andino de Microsoft. Lo que este gigante de la informática está haciendo es únicamente aumentar su monopolio y aumentar la brecha digital que experimenta Colombia actualmente.&lt;br /&gt;
&lt;br /&gt;
Este tipo de concursos sólo buscan fomentar una dependencia por parte de nuestros desarrolladores de software hacia las tecnologías de esta empresa.¿Y qué da a cambio esta empresa por semejante cantidad de re-vendedores?, pues un conjunto de papelitos de licencias que dice que cuestan 3.000 dólares. Por Diós!, si solo son papeles y una libra de café cuesta tan sólo 75 centavos de dólar.&lt;br /&gt;
&lt;br /&gt;
Microsoft hace otras cosas tristes como &amp;quot;regalar&amp;quot; licencias para que sean usadas en la Agenda de Conectividad del gobierno. Esto es ridículo, ya que con lo que cuestan las licencias se podrían comprar el doble de computadores para todas las escuelas que cubre el programa. Y si microsoft no nos &amp;quot;regala&amp;quot; licencias, entonces ¿qué haremos?, ¿se quedarán nuestros niños sin alfabetización informática?.&lt;br /&gt;
&lt;br /&gt;
Hay muchas posibilidades. Yo hago parte del movimiento del software libre que tiene mucho que aportar en cuanto a soluciones. Sólo hay que estar atentos y mejor informados y no dejar que las empresas multinacionales nos deslumbren con sus regalos que no son ni una cienmillonésima parte de todo a lo que podemos obtener por otros medios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/%C2%BFC%C3%B3mo_hacer_una_tesis_de_grado_libre_en_Unicauca%3F</id>
		<title>¿Cómo hacer una tesis de grado libre en Unicauca?</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/%C2%BFC%C3%B3mo_hacer_una_tesis_de_grado_libre_en_Unicauca%3F"/>
				<updated>2013-12-04T10:14:45Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Junio 28 de 2.004'''  '''Por Alejandro Ríos Peña.'''  ==El Software y las Licencias Libres==  El software libre consiste en un conjunto de solucion...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Junio 28 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
==El Software y las Licencias Libres==&lt;br /&gt;
&lt;br /&gt;
El software libre consiste en un conjunto de soluciones informáticas que son liberadas bajo distintas licencias, facilitan la reutilización de la experiencia (al estilo del conocimiento científico) y permiten su uso generalizado y a bajo costo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Generalmente, el tipo de licencias utilizadas en el Software Libre tratan de garantizar cuatro libertades básicas:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''a) Libertad para usar el producto con cualquier propósito, incluidos el académico y el comercial.''&lt;br /&gt;
&lt;br /&gt;
''b) Libertad de distribuir el producto a otras personas.''&lt;br /&gt;
&lt;br /&gt;
''c) Libertad de estudiar el código fuente del producto, es decir, la libertad de saber cómo fue construido y cómo funciona, y poder modificarlo.''&lt;br /&gt;
&lt;br /&gt;
''d) Libertad de distribuir los trabajos derivados de las modificaciones hechas al producto original.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Esta forma de licenciar los productos software se ha extendido a una gran variedad de trabajos y productos, como documentos, obras musicales, diseños gráficos, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El Software Libre implica un cambio radical de una serie de paradigmas impuestos por la globalización y el afán de lucro de personas y corporaciones en todo el mundo. La libertad de generar, compartir, utilizar y mejorar el conocimiento con el fin de incrementar la calidad de vida de la sociedad, ha sido opacada por el anhelo desmedido de retribuciones económicas, más allá del bienestar colectivo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El Software Libre representa una enorme oportunidad para que países como el nuestro, acorten la brecha de desarrollo que afrontan respecto al mundo industrializado, a través de una nueva economía fundamentada en el conocimiento. El Software es una industria cuyo principal insumo es el talento humano, es limpia y rentable, respetuosa con los recursos naturales, con costos de producción mínimos y altos beneficios económicos.&lt;br /&gt;
&lt;br /&gt;
==La Universidad y El Software Libre==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Muchas universidades del mundo han sido capaces de desprenderse de las retribuciones económicas por la explotación de su producción intelectual, pasando a preocuparse por el cumplimiento de sus propósitos más altos, como la apropiación, creación, estudio y difusión del conocimiento para que éste contribuya efectivamente al mejoramiento del bienestar de la sociedad.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Uno de los ejemplos más impresionantes es el de la Universidad de Berkeley, en los Estados Unidos, donde se han desarrollado innumerables programas bajo la popular licencia BSD, incluidos el sistema operativo openBSD, el servidor de nombres de domino BIND y el motor de bases de datos PostgreSQL, entre otros.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==El Acta de Propiedad Intelectual==&lt;br /&gt;
&lt;br /&gt;
Al realizar el anteproyecto del trabajo de grado, los estudiantes, el director del proyecto y la Universidad, representada por el decano de la Facultad, firman un acta donde se estipuan las condiciones para el desarrollo y posible usufructo del proyecto. El acta se basa en el acuerdo número 008 del 23 de Febrero de 1999, del Consejo Superior de la Universidad del Cauca, donde se estipula todo lo concerniente a la producción intelectual en la Institución.&lt;br /&gt;
&lt;br /&gt;
La modificación al Acta de Propiedad Intelectual realizada con el fin de proteger la producción del trabajo de grado con licencias libres, radica en la adición de los siguientes tres (3) artículos:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
«'''Art. 10.'''-Los estudiantes, el docente y la Universidad acuerdan proteger todos los documentos generados durante el desarrollo del proyecto bajo la Licencia para Documentación Libre FDL1 (por sus siglas en inglés Free Documentation License)[3], de conformidad con los términos expuestos en el artículo 29 del acuerdo 008 del 23 de febrero de 1999 expedido por el Consejo Superior de la Universidad del Cauca.&lt;br /&gt;
&lt;br /&gt;
«'''Art. 11.'''-Los estudiantes, el docente y la Universidad acuerdan proteger todos los programas de computador generados durante el desarrollo del proyecto bajo la Licencia Pública General GPL2 (por sus siglas en inglés General Public License)[4], de conformidad con los términos expuestos en el artículo 29 del acuerdo 008 del 23 de febrero de 1999 expedido por el Consejo Superior de la Universidad del Cauca.&lt;br /&gt;
&lt;br /&gt;
«'''Art. 12.'''-Los estudiantes, el docente y la Universidad acuerdan proteger todos las metodologías generadas durante el desarrollo del proyecto bajo la Licencia para Metodologías Abiertas OML3 (por sus siglas en inglés Open Methodology License)[5], de conformidad con los términos expuestos en el artículo 29 del acuerdo 008 del 23 de febrero de 1999 expedido por el Consejo Superior de la Universidad del Cauca».&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Estas modificaciones se sustentan en lo dispuesto en el artículo 29 del acuerdo 008 del 23 de febrero de 1999 expedido por el Consejo Superior de la Universidad del Cauca, que se transcribe a continuación:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
«'''ARTICULO 29. PUBLICACIÓN, PATENTE, REGISTRO Y COMERCIALIZACIÓN DE LA PRODUCCIÓN'''&lt;br /&gt;
&lt;br /&gt;
«Cuando la Universidad del Cauca tenga derechos patrimoniales sobre la propiedad intelectual, tendrá preferencia para tramitar la solicitud de registro, o de patente, así como para divulgar y para comercializar los resultados, dentro del año siguiente a la finalización del trabajo, o del informe final, si lo hubiere. «'''Con todo, los partícipes podrán realizar a iniciativa propia tales actividades cuando así lo convengan con la Universidad, caso en el cual los beneficios de ésta, establecidos en el acta correspondiente, se reducirán a la mitad.'''&lt;br /&gt;
&lt;br /&gt;
'''«Quienes adelanten el tramite quedan obligados a rendir a la Universidad informes sobre las licencias o sobre cualquier tipo de contratación que realicen con terceros.'''&lt;br /&gt;
&lt;br /&gt;
«Cuando la solicitud de patente o de registro deba iniciarse en países cuya legislación no permite como solicitante a una persona jurídica, la Universidad tramitará la patente o el registro a nombre de los integrantes del equipo de investigación, previo convenio entre las partes en el cual se regulen la participación de ellas en los beneficios.&lt;br /&gt;
&lt;br /&gt;
«La misma regla se seguirá para las patentes o registros que se formulen en comunidad entre la Universidad y los partícipes.»&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Referencias&lt;br /&gt;
&lt;br /&gt;
[1] Artículo: &amp;quot;Software Libre en la Universidad&amp;quot;. Libro Blanco del Software Libre en España.&lt;br /&gt;
http://www.libroblanco.com/&lt;br /&gt;
&lt;br /&gt;
[2] Acuerdo número 008 del 23 de Febrero de 1999, del Consejo Superior de la Universidad del Cauca.&lt;br /&gt;
&lt;br /&gt;
[3] La versión oficial de esta licencia se puede conseguir en el sitio de Internet http://www.gnu.org/copyleft/fdl.html y una traducción no oficial de ella en el sitio http://gugs.sindominio.net/licencias/fdl-es.html&lt;br /&gt;
&lt;br /&gt;
[4] La versión oficial de esta licencia se puede conseguir en el sitio de Internet http://www.fsf.org/licenses/gpl.html y una traducción no oficial de ella en el sitio http://www.garaitia.com/new/gpl-spanish.php&lt;br /&gt;
&lt;br /&gt;
[5] La versión oficial de esta licencia se puede conseguir en el sitio de Internet http://www.isecom.org/oml.shtml y una traducción no oficial de ella en el sitio http://www.isecom.org/oml-es.shtml&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Patentes_de_Software_y_el_TLC_entre_los_Andinos_y_Estados_Unidos</id>
		<title>Patentes de Software y el TLC entre los Andinos y Estados Unidos</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Patentes_de_Software_y_el_TLC_entre_los_Andinos_y_Estados_Unidos"/>
				<updated>2013-12-04T10:14:15Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Julio 5 de 2.004'''  '''Por Alejandro Ríos Peña'''  En mi columna de hoy quiero compartir con ustedes algunas de las inquietudes, observaciones y c...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Julio 5 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]]'''&lt;br /&gt;
&lt;br /&gt;
En mi columna de hoy quiero compartir con ustedes algunas de las inquietudes, observaciones y consideraciones que nos han surgido a muchos de los que hemos participado en los conversatorios realizados por Parquesoft Popayán sobre el Tratado de Libre Comercio entre Colombia y Estados Unidos.:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Creemos que el software debe excluirse del espectro de elementos patentables y que se debe mantener la normatividad actual de derechos de autor para el mismo.&lt;br /&gt;
&lt;br /&gt;
*Creemos que la adopción de las patentes de software sería muy destructiva para la naciente industria del software y tecnologías relacionadas en el País, y bloquearía la actual innovación que presenta este sector.&lt;br /&gt;
&lt;br /&gt;
*Si bien las patentes de software son menos restrictivas que los derechos de autor, el registro de las patentes es un proceso burocrático muy costoso, ya que se debe hacer el registro dentro de cada país donde se requiera tener el reconocimiento de los derechos que esta figura provee.&lt;br /&gt;
&lt;br /&gt;
*Además, cuando se realiza el registro es muy difícil demostrar la novedad y utilidad de las invenciones, y es engorroso y costoso para un productor de software tener que verificar que su producto no viola alguna de las patentes existentes.&lt;br /&gt;
&lt;br /&gt;
*Si bien el TLC busca aumentar el territorio en el que una patente tiene validez, Estados Unidos puede imponer la experiencia que tiene su oficina de patentes, dando origen a discriminaciones hacia los andinos a la hora de otorgar las mismas.&lt;br /&gt;
&lt;br /&gt;
*Las patentes de software promoverían monopolios, cuando estos ya son comunes en la industria del software, dejando a los pequeños productores en condiciones desfavorables a la hora de abordar potenciales litigios por causa de violación de patentes.&lt;br /&gt;
&lt;br /&gt;
*La legislación actual que se basa en derechos de autor para proteger el software cumple con las necesidades de la creciente industria colombiana, sin estar completamente justificada la ventaja de empezar a usar las patentes de software.&lt;br /&gt;
&lt;br /&gt;
*En Colombia se producen muy pocos registros de patentes y de derechos de autor, mientras en Estados Unidos hay multinacionales que radican cientos de patentes a la semana.&lt;br /&gt;
&lt;br /&gt;
*Si bien las cortes de Estados Unidos han determinado que el software es un bien tangible debido a que se manifiesta físicamente a través del computador y sus dispositivos, el software es en realidad de naturaleza intangible, ya que está formado por un conjunto de instrucciones que el computador o un dispositivo hardware ejecuta, en forma similar a como una orquesta ejecuta una partitura de música ó a como un cocinero prepara una receta de cocina.&lt;br /&gt;
&lt;br /&gt;
*Aunque las patentes otorgan monopolios temporales, 20 años es un tiempo demasiado exagerado en términos de tecnología informática, la cuál ha sido la de mayor evolución en la historia de la humanidad.&lt;br /&gt;
&lt;br /&gt;
*No tenemos claridad respecto a la legislación actual en Estados Unidos en materia de protección a la propiedad intelectual en el sector de la información y la economía digital. ¿En este momento el software está regido por los dos marcos de protección (derechos de autor y propiedad industrial)?.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Referencias:==&lt;br /&gt;
&lt;br /&gt;
*http://www.progfree.org/Patents/knuth-to-pto.txt&lt;br /&gt;
*http://lpf.ai.mit.edu&lt;br /&gt;
*http://www.hipertek.com/orion&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Patentes_de_Software_y_el_TLC_entre_los_Andinos_y_Estados_Unidos_(parte_II)</id>
		<title>Patentes de Software y el TLC entre los Andinos y Estados Unidos (parte II)</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Patentes_de_Software_y_el_TLC_entre_los_Andinos_y_Estados_Unidos_(parte_II)"/>
				<updated>2013-12-04T10:13:51Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Julio 12 de 2.004'''  '''Por Alejandro Ríos Peña.'''  Hace dos semanas tuve la oportunidad de asistir a una reunión donde durante dos días se pre...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Julio 12 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Hace dos semanas tuve la oportunidad de asistir a una reunión donde durante dos días se presentaron los lineamientos de la estrategia de negociación y lo obtenido en las dos primeras rondas de negociación del tema de propiedad intelectual en el marco del Tratado de Libre Comercio entre Colombia y Estados Unidos. A continuación recojo las impresiones y la información que pude obtener durante esa reunión y mi viaje a Bogotá.&lt;br /&gt;
&lt;br /&gt;
==INFORME SEGUNDA RONDA DE NEGOCIACIONES EN ATLANTA==&lt;br /&gt;
&lt;br /&gt;
Con el fin de aclarar las inquietudes que se tienen al respecto del tema de Propiedad Intelectual, Parquesoft Popayán quiso atender la convocatoria a la reunión informativa sobre los resultados de la segunda ronda de negociaciones, llevada a cabo en Atlanta (E.U.) entre el 14 y 18 de junio. Esta reunión se llevó a cabo los días miércoles 30 de junio y jueves 1 de julio de 2.004, en la Plaza de los Artesanos, en la ciudad de Bogotá, con la asistencia de más de 300 personas representantes de los gremios económicos, de la academia y ONGs, entre otros.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En la mañana del miércoles 30 de junio, el jefe del equipo negociador de Colombia, el Embajador Hernando José Gómez, realizó una introducción a lo acontecido en la segunda rueda de negociaciones en Atlanta(E.U.), y a lo que se esperaba para los próximos días como preparación para la tercera ronda a realizarse en Lima(Perú) entre el 26 y 30 de julio.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El señor Gómez indicó las siguientes fechas importantes en la antesala a la ronda de negociaciones de Lima:&lt;br /&gt;
&lt;br /&gt;
*Julio 6: Cierre de peticiones internas de productos y servicios a ser incluidos en la canasta que cubrirá el tratado.&lt;br /&gt;
*Julio 19: Cruce de las propuestas entre los países Andinos.&lt;br /&gt;
*Julio 21: Cruce de ofertas individuales entre cada país Andino y Estados Unidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finalmente, el Embajador presentó la agenda para los dos días de reunión. Luego de esta introducción general, cada uno de los líderes de los equipos de negociación presentó un informe de lo que aconteció en su mesa durante la ronda de Atlanta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En este punto, el señor Luis Ángel Madrid, líder del equipo de Propiedad Intelectual, informó que tras cuatro intensos días de negociación en su mesa, podía resumir los resultados en cuatro puntos:&lt;br /&gt;
&lt;br /&gt;
*Los Andinos se han consolidado en un sólido frente común para negociar este tema. Colombia ha jugado un papel central en la negociación y se ha tenido el apoyo constante de miembros del sector público del país.&lt;br /&gt;
*El texto presentado por Estados Unidos, cercano a las 35 páginas, fue considerado maximalista y dejó muchas dudas y preocupaciones a los miembros del equipo negociador, las cuales fueron transmitidas oportunamente durante la ronda de Atlanta a la delegación Estadounidense.&lt;br /&gt;
*Los representantes de Perú realizaron una propuesta interesante en el tema de protección a los recursos genéticos y la biodiversidad, la cuál está basada en un trabajo previamente realizado en el marco de las negociaciones del ALCA.&lt;br /&gt;
*Se presentó un buen entendimiento y una buena relación entre los miembros de las delegaciones tanto de los Andinos como de Estados Unidos, lo cuál crea un ambiente apropiado para realizar la negociación.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Luego de la intervención del señor Madrid, presentaron su informe los líderes de los equipos de negociación de los demás capítulos del tratado: agricultura, servicios de telecomunicaciones, asuntos ambientales, compras del sector público, inversión, obstáculos técnicos al comercio, asuntos laborales, servicios transfronterizos, competencia, medidas sanitarias y fitosanitarias, acceso a mercados: trato nacional y acceso, procedimientos aduaneros, régimen de origen - textiles, servicios financieros, asuntos institucionales, solución de controversias y defensa comercial.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Mi comentario respecto a las intervenciones de los equipos de negociación va en el mismo sentido a lo expresado por el presidente de la ANDI: &amp;quot;El sector privado acrecienta la confianza en el equipo negociador colombiano. Es un equipo conocedor, hábil, que puede contra-argumentar con cualquiera de las delegaciones colegas, sean andinas o de los Estados Unidos, que tiene estudiados los asuntos de la negociación. Eso da mucha confianza&amp;quot;[3].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==TEXTOS PROPUESTOS POR ESTADOS UNIDOS==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Los textos propuestos por Estados Unidos para algunos de los Capítulos del Acuerdo se encuentran en la Sala de Lectura del Ministerio de Comercio, Industria y Turismo (Calle 28 No 13A-15, piso 4 de Bogotá), son confidenciales y sólo están disponibles para ser leídos por delegados acreditados de instituciones públicas, agremiaciones del sector privado, universidades y entidades sociales no gubernamentales que estén participando activamente del proceso de concertación de la posición de Colombia de cara a las negociaciones del acuerdo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Las personas que leen estos textos no pueden transcribir ni sacar copia de su contenido, sólo está permitido tomar notas, aunque se debe firmar un Compromiso de Mantenimiento de Reserva en el que se prohíbe estrictamente la divulgación de las mismas. La principal razón por la que estos textos se manejan en forma confidencial es que aún son materia de discusión y su divulgación podría llevar a malas interpretaciones acerca del proceso de negociación.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sin embargo, a continuación menciono los comentarios que tengo en relación a la lectura que hice de los textos para los capítulos de “Comercio Electrónico” y “Propiedad Intelectual” en representación de la Corporación Incubadora de Empresas de Software de Popayán, Parquesoft Popayán.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En general, se puede afirmar que los textos presentados por Estados Unidos son cercanos a lo que se esperaba, teniendo en cuenta lo visto en otros acuerdos similares como el TLC con Chile y el CAFTA[4].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En lo que respecta al texto propuesto para el capítulo de “Comercio Electrónico”, su intención principal es tratar de eliminar todos los gravámenes sobre la importación o exportación de productos digitales transmitidos electrónicamente, tratando de manera separada lo que se refiere a la importación, gravámenes y exportaciones del soporte físico de los productos digitales, como si fueran productos físicos normales.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===*Para el capítulo de “Propiedad Intelectual”:===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Aparentemente, por ahora no existe peligro respecto a una hipotética exigencia de Estados Unidos hacia Colombia sobre empezar a otorgar patentes de software. Ambos países están suscritos a otros tratados sobre la materia y se espera que este tema ni siquiera sea tratado durante las negociaciones del TLC.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Entre otros tratados multilaterales a los que hace referencia el texto propuesto para el Acuerdo están: WIPO(1996)[5], Patent Cooperation Treaty(1970)[6], Patent Law Treaty(2000)[7], Hague(1999)[8]. El texto también busca reafirmar el cumplimiento de disposiciones como el art. 18 del tratado de Berna(1971)[9] y el art. 14.6 del ADPIC[10].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Como se esperaba, el texto incluye apartados similares al art. 15.5.7 del CAFTA[4] sobre las limitaciones a varios procedimientos relacionados con las técnicas para protección de las obras, y al art. 15.6 del CAFTA[4].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Estados Unidos mantiene la presión sobre el patentamiento de plantas y animales[11], así como de métodos de diagnóstico, terapéuticos y quirúrgicos para el tratamiento de personas o animales;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionalmente, se incluyen unos apartados sobre mecanismos de compensación por el tiempo de retraso en el otorgamiento de patentes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==REUNIÓN MESA DE TRABAJO “PROPIEDAD INTELECTUAL”==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Durante la tarde del día jueves 1 de julio, participé de la reunión de la mesa de trabajo del tema de Propiedad Intelectual. Esta reunión se dividió en dos partes principales:&lt;br /&gt;
&lt;br /&gt;
#Informe y respuestas a inquietudes respecto a la segunda ronda de negociaciones realizada en Atlanta.&lt;br /&gt;
#Planteamiento de opciones y estrategias por parte de los asistentes, entre los que se encontraban representantes de gremios, universidades, y organizaciones sociales.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En la primera parte de la reunión, los miembros del equipo negociador comentaron que en Atlanta los Andinos expresaron su extrañeza frente a la ambición que mostró Estados Unidos en el texto que propuso para el tema de Propiedad Intelectual.&lt;br /&gt;
&lt;br /&gt;
Una de las asistentes preguntó acerca de la noticia que circula en la prensa nacional respecto a que Ecuador estudia la promulgación de un decreto similar al 2085 de Colombia para proteger a las multinacionales farmacéuticas. Los miembros del equipo negociador indicaron que estaban expectantes respecto al tema, ya que esta norma se convertiría en el piso de negociación estadounidense en materia de propiedad intelectual y podría debilitar los intentos de los países andinos por fortalecer una posición común.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Respecto al patentamiento de plantas y animales, los miembros del equipo negociador refirmaron la posición que mostraron los Andinos en Atlanta de no ceder a esta petición de Estados Unidos. La delegación Estadounidense se mostró atenta a esta posición y se comprometió a dar una respuesta luego de revisar mejor el régimen legal que manejan los Andinos en cuestión de patentes.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En Atlanta, la delegación de Perú lideró la formulación de una petición dirigida a solicitar el reconocimiento explícito en el tratado de la riqueza en biodiversidad que poseen los Andinos y su preocupación por mejorar las medidas de protección frente a la biopiratería.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Cuando planteé las inquietudes que tenía respecto a la posibilidad de que en futuros puntos de la negociación Estados Unidos hiciera explícita una petición de patentes de software, los miembros del equipo negociador explicaron que uno de los principales argumentos de Estados Unidos para ampliar el espectro de elementos patentables consiste en que el art. 27 del Acuerdo sobre los Aspectos de los Derechos de la Propiedad Intelectual relacionados con el Comercio (ADPIC)[10] de la Organización Mundial del Comercio (OMC) no obliga a patentar todo, sino que deja a discreción de sus miembros la posibilidad de excepciones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sin embargo, Colombia tiene como un posible contra-argumento en el caso de que Estados Unidos quiera pedir patentes de software, el hecho de que el ADPIC también especifica claramente en su art. 10 que los programas de computador, sean programas fuente o programas objeto, serán protegidos como obras literarias en virtud del Convenio de Berna (1971)[9]. El equipo negociador también aclaró que por ahora el interés de Colombia es no entrar a discutir detalles acerca de la exclusión del software del espectro de elementos patentables, ya que esto implicaría complicaciones a la hora de ponerse de acuerdo en los conceptos de tangibilidad y patentabilidad del software.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Durante esta parte de la reunión también se trataron los temas de los operadores de televisión, los Proveedores de Servicios de Internet (ISP) y las peticiones de Estados Unidos de ampliar la libertad del régimen de derechos de autor y derechos conexos respecto al reconocimiento de derechos morales y patrimoniales a personas naturales y jurídicas.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finalmente, en la segunda parte de la reunión se presentaron pocas intervenciones por parte de los asistentes, así que se decidió que todas las inquietudes, comentarios y aportes que tengan los gremios, entes públicos, universidades, y organizaciones sociales como insumo para los próximos pasos de la negociación serán recopilados por María Fernanda Hurtado en su correo electrónico: mariah@mincomercio.gov.co hasta el día lunes 12 de julio de 2.004.&lt;br /&gt;
&lt;br /&gt;
==CONCLUSIONES==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Estas son las conclusiones principales que me quedan tras el proceso que he documentado aquí:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Por ahora puedo dar un parte de tranquilidad respecto a la adopción de las patentes de software en Colombia. Estados Unidos aún no ha realizado una petición en ese sentido y Colombia prefiere mantener el status quo de su legislación en esta materia.&lt;br /&gt;
*El equipo de negociación parece estar muy bien preparado y tener mucho carácter a la hora de mostrar sus argumentos frente a Estados Unidos, esto me ha generado confianza. Además el gobierno tiene abiertas las puertas para que los gremios económicos, la academia, las ONGs, y en general los interesados en el TLC puedan acceder a la información del tratado y participar de cerca en el proceso con su opinión.&lt;br /&gt;
*Si bien Fedesoft tiene un espacio en el comité técnico asesor del equipo de negociación del tema de Propiedad Intelectual, es preciso que Parquesoft aumente su presencia en la discusión de éste y otros temas de interés, como compras del sector público, inversión, servicios transfronterizos, competencia, acceso a mercados y procedimientos aduaneros.&lt;br /&gt;
*Es preciso seguir de cerca el proceso de negociación y hacer sentir nuestra voz de opinión respecto a temas que nos afectan a todos los colombianos como el patentamiento de plantas y animales, los aspectos ambientales y la liberación del comercio de varios productos y servicios sensibles para el motor productivo del país.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==REFERENCIAS==&lt;br /&gt;
&lt;br /&gt;
[1]http://www.presidencia.gov.co/tlc/equipo.htm&lt;br /&gt;
&lt;br /&gt;
[2]http://www.derautor.gov.co&lt;br /&gt;
&lt;br /&gt;
[3]http://www.presidencia.gov.co/sne/2004/junio/24/02242004.htm&lt;br /&gt;
&lt;br /&gt;
[4]http://www.minec.gob.sv/default.asp?id=84&amp;amp;mnu=70&lt;br /&gt;
&lt;br /&gt;
[5]http://www.wipo.int/documents/en/diplconf/distrib/94dc.htm&lt;br /&gt;
&lt;br /&gt;
[6]http://www.wipo.int/pct/en/texts/articles/atoc.htm&lt;br /&gt;
&lt;br /&gt;
[7]http://www.wipo.int/clea/docs/en/wo/wo038en.htm&lt;br /&gt;
&lt;br /&gt;
[8]http://www.wipo.int/hague/en/pub_453/index.htm&lt;br /&gt;
&lt;br /&gt;
[9]http://www.wipo.int/clea/docs/en/wo/wo001en.htm&lt;br /&gt;
&lt;br /&gt;
[10]http://www.wto.org/spanish/tratop_s/trips_s/t_agm0_s.htm&lt;br /&gt;
&lt;br /&gt;
[11]http://eltiempo.terra.com.co/economia/2004-07-06/ARTICULO-WEB-_NOTA_INTERIOR-1729010.html&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Otras fuentes de información:&lt;br /&gt;
&lt;br /&gt;
*http://www.presidencia.gov.co/tlc/documentos/cartilla_tlc.pdf&lt;br /&gt;
*http://www.progfree.org/Patents/knuth-to-pto.txt&lt;br /&gt;
*http://lpf.ai.mit.edu&lt;br /&gt;
*http://www.hipertek.com/orion&lt;br /&gt;
*http://proinnova.hispalinux.es/nopatentes-motivos.html&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/%C2%BFPor_qu%C3%A9_usar_Software_Libre_en_Windows%3F_(parte_I)</id>
		<title>¿Por qué usar Software Libre en Windows? (parte I)</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/%C2%BFPor_qu%C3%A9_usar_Software_Libre_en_Windows%3F_(parte_I)"/>
				<updated>2013-12-04T10:13:20Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Julio 26 de 2.004'''  '''Por Alejandro Ríos Peña.'''  En esta columna quiero dar a conocer mi punto de vista sobre las razones que justifican el us...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Julio 26 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
En esta columna quiero dar a conocer mi punto de vista sobre las razones que justifican el uso de software libre por parte de personas que utilizan el sistema operativo Windows y que no son usuarias de GNU/Linux o al menos no lo esperan ser en el corto y mediano plazo.&lt;br /&gt;
&lt;br /&gt;
==¿Por qué todos usan Windows?==&lt;br /&gt;
&lt;br /&gt;
Muchas personas utilizan el sistema operativo Windows de Microsoft sin siquiera saber que deben pagar el costo de una licencia para poder utilizarlo. Esta alarmante situación de piratería de software no implica solamente que esta gigantesca compañía informática deje de percibir ingresos por estas copias ilegales de Windows, sino que es una de las más importantes bases de su monopolio en el mercado de los computadores personales.&lt;br /&gt;
&lt;br /&gt;
La explicación a este fenómeno está dada, entre otras muchas cosas, por el término “Efecto en Red” que en lo que respecta al software no es otra cosa que la masificación del uso de un producto debido a que las personas empiezan a intercambiar archivos codificados en el formato propietario del producto, haciendo que cada vez más personas tengan que empezar a usar ese producto con el fin de poder tener acceso a la información contenida en esos archivos.&lt;br /&gt;
&lt;br /&gt;
El ejemplo típico de esta situación es el programa Microsoft Word y su formato “.doc”. Para ilustrar mejor el ejemplo, imaginemos por un momento que un profesor de la universidad tiene en su casa o en su oficina de la universidad un computador perfectamente licenciado con MS Windows 2000 y MS Office. El profesor decide que va a poner una copia de sus notas de clase en su página de Internet para que sus alumnos puedan leerlas libremente. Sin embargo, el profesor pone el documento en formato “.doc”. Si un alumno quisiera leer las notas de clase, no tendría otro remedio que utilizar MS Office para hacerlo, lo cuál lo obligaría a conseguir un computador que tuviera este software o a ser tentado a piratearlo para poder verlo en su propio computador.&lt;br /&gt;
&lt;br /&gt;
En el contexto de Colombia, el “Efecto en Red” ha sido magnificado gracias a la alta tolerancia a la piratería que practican los vendedores de computadores y de software, quienes engañan a los consumidores haciéndoles pensar que no existen otras alternativas y dándoles a entender implícitamente con su actitud que la DIAN nunca los va a perseguir, que Microsoft no se va a dar cuenta de que su copia de Windows es ilegal y que prácticamente pueden hacer lo mismo con otros programas de computador protegidos por códigos de acceso.&lt;br /&gt;
&lt;br /&gt;
'''La única forma de minimizar el impacto de el “Efecto en Red” es tratar de evitar compartir información con archivos codificados en un formato propietario.''' Manuel Cerón realizó una columna hace un tiempo sobre las alternativas que existen en materia de formatos de archivos, la cuál se puede encontrar en [1].&lt;br /&gt;
&lt;br /&gt;
Bien, más allá de impulsar a las personas a que dejen de utilizar Windows y empiecen a utilizar GNU/Linux, lo que busco con esta columna es mostrar que existen otras alternativas diferentes a un cambio radical de sistema operativo, que por lo general solamente trae como consecuencia que las personas se frustren debido a su desconocimiento de las diferencias existentes entre Windows y Linux.&lt;br /&gt;
&lt;br /&gt;
En la segunda entrega de esta columna, trataré directamente las ventajas de usar Software Libre en Windows y las cruciales diferencias que existen entre el Software Libre, el Freeware y el Shareware o Trial.&lt;br /&gt;
&lt;br /&gt;
==Referencias==&lt;br /&gt;
&lt;br /&gt;
[1] [[Formatos Libres]]. Por Manuel A. Cerón Estrada.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Wikipedia,_La_Enciclopedia_Libre</id>
		<title>Wikipedia, La Enciclopedia Libre</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Wikipedia,_La_Enciclopedia_Libre"/>
				<updated>2013-12-04T10:12:46Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Agosto 9 de 2.004.'''  '''Por Alejandro Ríos Peña.'''  El proyecto [http://es.wikipedia.org Wikipedia] es uno de los más interesantes y conocidos ...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Agosto 9 de 2.004.'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
El proyecto [http://es.wikipedia.org Wikipedia] es uno de los más interesantes y conocidos en el mundo del Software Libre. Su principal característica consiste en pretender ser una enciclopedia de contenido libre basada en la tecnología [http://es.wikipedia.org/wiki/Wiki wiki]. Esta característica es la que resulta más interesante desde el punto de vista del software libre, ya que si una enciclopedia está definida como un compendio de conocimiento humano, pues qué mejor que gran parte de la humanidad se encargue de su construcción a través de Internet.&lt;br /&gt;
&lt;br /&gt;
[http://es.wikipedia.org La enciclopedia] está formada por cientos de miles de artículos en más de 50 idiomas diferentes, cada uno de los cuáles puede incluir imágenes y enlaces a otros artículos o referencias a otras páginas de Internet. [http://es.wikipedia.org Wikipedia] es miltilingüe y es desarrollada en forma colaborativa por cientos de voluntarios alrededor del mundo y en sus respectivos idiomas. [http://es.wikipedia.org Wikipedia] comenzó como un proyecto en inglés el 15 de enero de 2.001. Proyectos paralelos en otros idiomas comenzaron a surgir paulatinamente, iniciándose la Wikipedia en español en mayo de 2.001.&lt;br /&gt;
&lt;br /&gt;
Todos los artículos de [http://es.wikipedia.org Wikipedia] son licenciados al público bajo los términos y condiciones de la licencia de documentación libre GNU (GFDL), así que sus contenidos pueden ser modificados y distribuidos libremente por cualquier persona. Para que las contribuciones de las personas puedan ser publicadas, éstas deben haber sido escritas por ellas mismas ó haber sido copiadas desde el dominio público u otra fuente libre, lo cuál no es el caso de la mayoría de páginas de Internet.&lt;br /&gt;
&lt;br /&gt;
'''Contribuir con ésta enciclopedia libre en Internet es muy fácil''', ni siquiera se exige ser un usuario registrado del sitio, simplemente se debe leer [http://es.wikipedia.org/wiki/Wikipedia:Ayuda#C.C3.B3mo_colaborar_en_la_enciclopedia ésta página] y empezar a colaborar de una!. Las formas de colaborar van desde escribir artículos nuevos, hasta combatir el vandalismo, pasando por la corrección ortográfica o gramatical y la traducción de artículos en otros idiomas.&lt;br /&gt;
&lt;br /&gt;
Invito a todas las personas que comparten la filosofía de generar, compartir, divulgar, mejorar y utilizar el conocimiento en forma libre a que participen de éste proyecto y lo utilicen como referencia para su trabajo diario.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Software_Libre_para_MS_Windows</id>
		<title>Software Libre para MS Windows</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Software_Libre_para_MS_Windows"/>
				<updated>2013-12-04T10:10:14Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Agosto 30 de 2.004'''  '''Por Alejandro Ríos Peña.'''  Este es un resumen de lo que expuse en uno los eventos «Vive la Vida Linux» organizados po...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Agosto 30 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Este es un resumen de lo que expuse en uno los eventos «Vive la Vida Linux» organizados por el GLUC hace un tiempo. La idea es presentar algunas de las más conocidas y utilizadas aplicaciones Libres que se encuentran disponibles para usar en el sistema operativo MS Windows. Como ya lo he comentado en otras columnas, me parece importante hacer notar que el interés del Grupo GNU/Linux de la Universidad del Cauca no se centra únicamente en fomentar el uso del sistema operativo Linux, sino en divulgar las ventajas del Software Libre y promover su uso en todo tipo de plataformas, incluyendo el popular Windows de Microsoft.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sólo para refrescar la memoria de los lectores, el software libre se caracteriza por ser distribuido bajo una licencia que provee 4 libertades básicas: libertad de usar el programa con cualquier propósito, libertad de distribuirlo, libertad de estudiarlo y modificarlo, y la libertad de distribuir la modificaciones realizadas. La licencia Libre más conocida es la GPL (GNU General Public License), pero existen muchas otras que se rigen por los mismos principios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Las aplicaciones que menciono a continuación se distribuyen en su mayoría bajo los términos de la GPL, sin embargo, incluyo también algunas que tienen otro tipo de licencias que también son compatibles con el paradigma del Software Libre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Multimedia=&lt;br /&gt;
Las aplicaciones multimedia comprenden los programas de computador que sirven para ver y/o manipular imágenes, videos y sonidos. Entre las aplicaciones Libres de éste tipo que pude encontrar para Windows están las siguientes:&lt;br /&gt;
&lt;br /&gt;
==Audio==&lt;br /&gt;
*Audacity&lt;br /&gt;
Editor de audio. Permite grabar y reproducir sonidos, mezclar pistas, aplicar efectos, importar y exportar archivos WAV, AIFF, y MP3, entre otras muchas características. http://audacity.sourceforge.net&lt;br /&gt;
&lt;br /&gt;
*Zinf&lt;br /&gt;
Reproductor de audio simple. Soporta MP3, Ogg/Vorbis, WAV y Cds de audio, SHOUTcast/Icecast, difusión HTTP, difusión RTP. Incluye un navegador de canciones, temas de la interfaz y un gestor de descargas. http://www.zinf.org&lt;br /&gt;
&lt;br /&gt;
==Video==&lt;br /&gt;
*OpenDivx y The Playa&lt;br /&gt;
Conjunto de poderosos codecs de video y un reproductor sencillo. http://www.projectmayo.com&lt;br /&gt;
&lt;br /&gt;
*VLC&lt;br /&gt;
Reproductor de video y servidor de difusión(streaming). Soporta MPEG-1, MPEG-2, MPEG-4, DivX, mp3, ogg, DVDs, VCDs, y varios protocolos de streaming. http://www.videolan.org/vlc/&lt;br /&gt;
&lt;br /&gt;
==Gráficos==&lt;br /&gt;
*El Gimp&lt;br /&gt;
Popular programa de procesamiento de imágenes avanzado. http://www.gimp.org/&lt;br /&gt;
&lt;br /&gt;
*Sodipodi&lt;br /&gt;
Poderoso programa para la creación y edición de imágenes vectoriales. Usa como formato nativo el SVG del W3C. http://www.sodipodi.com/&lt;br /&gt;
&lt;br /&gt;
*Tux Paint&lt;br /&gt;
Divertido programa de dibujo para niños pequeños. http://www.newbreedsoftware.com/tuxpaint/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Ofimática=&lt;br /&gt;
&lt;br /&gt;
*OpenOffice&lt;br /&gt;
El paquete de aplicaciones para oficina más famoso en el mundo del software libre es OpenOffice (http://www.openoffice.org). Este poderoso paquete incluye programas para procesamiento de texto, hoja de cálculo, prensentaciones de diapositivas, editor de ecuaciones, dibujo vectorial y un editor Web.&lt;br /&gt;
&lt;br /&gt;
*PDFCreator&lt;br /&gt;
Esta herramienta puede utilizarse para crear documentos PDF desde cualquier aplicación, instalándolo como si fuera una impresora conectada al computador. http://sourceforge.net/projects/pdfcreator&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Utilidades=&lt;br /&gt;
&lt;br /&gt;
==Compresión==&lt;br /&gt;
*7-Zip&lt;br /&gt;
Poderosa herramienta de compresión. Soporta los formatos 7z, ZIP, CAB, RAR, ARJ, GZIP, BZIP2, TAR, CPIO, RPM y DEB. http://www.7-zip.org/&lt;br /&gt;
&lt;br /&gt;
==Copias de Seguridad==&lt;br /&gt;
*AbaKT&lt;br /&gt;
Herramienta para gestionar y automatizar copias de seguridad comprimidas. http://www.xs4all.nl/~edienske/abakt/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Internet – Navegadores=&lt;br /&gt;
*Mozilla&lt;br /&gt;
Popular navegador sobre cuyo núcleo se basan muchos otros navegadores Libres. Incluye además un cliente de correo electrónico, un lector de noticias, un cliente de chat IRC y un editor de HTML. http://www.mozilla.org&lt;br /&gt;
&lt;br /&gt;
*K-Meleon&lt;br /&gt;
Navegador liviano basado en algunos componentes de Mozilla. Cuenta con una interfaz similar a la de Internet Explorer. http://kmeleon.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
*Mozilla Firefox&lt;br /&gt;
Este nuevo navegador del proyecto Mozilla ha sido promocionado como pionero en la nueva generación de navegadores. Incluye una multitud de características novedosas e interesantes. http://www.mozilla.org/products/firefox/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Internet – Correo Electrónico=&lt;br /&gt;
*Mozilla Thunderbird&lt;br /&gt;
Cliente de correo y lector de noticias que el proyecto Mozilla lanza como complemento a su navegador Firefox. Incluye opciones para manejo de mensajes cifrados y un bloqueador anti-spam, entre otras. http://www.mozilla.org/products/thunderbird/&lt;br /&gt;
&lt;br /&gt;
*POPTray&lt;br /&gt;
Aplicación que muestra notificaciones al recibir correo en cuentas que permiten usar POP3. http://poptray.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Internet – Mensajería Instantánea=&lt;br /&gt;
*Gaim&lt;br /&gt;
Poderoso cliente de mensajería instantánea. Soporta AIM (protocolos Oscar y TOC), ICQ, MSN Messenger, Yahoo!, IRC, Jabber, Gadu-Gadu, y redes Zephyr. http://gaim.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
*AMSN&lt;br /&gt;
Clon del cliente de mensajería MSN de Messenger, con una interfaz y características muy similares al original. http://amsn.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
*Miranda&lt;br /&gt;
Otro cliente multiprotocolo y muy liviano. http://www.miranda-im.org/&lt;br /&gt;
&lt;br /&gt;
=Internet – Otros=&lt;br /&gt;
==FTP==&lt;br /&gt;
*FileZilla&lt;br /&gt;
Poderoso cliente FTP con una gran cantidad de características y una interfaz intuitiva. http://filezilla.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
==Acceso remoto==&lt;br /&gt;
*Putty&lt;br /&gt;
Popular cliente Telnet/SSH. http://www.chiark.greenend.org.uk/~sgtatham/putty/&lt;br /&gt;
&lt;br /&gt;
*RealVNC&lt;br /&gt;
Esta aplicación permite establecer una sesión remota en un equipo tal y como sería si el usuario se encontrase trabajando en forma local. http://www.realvnc.com/&lt;br /&gt;
&lt;br /&gt;
==Redes P2P (Pear to Pear)==&lt;br /&gt;
Este tipo de programas se usa para intercambiar archivos en Internet. Su uso es muy popular y un dolor de cabeza para muchas compañías productoras de música, video y otros medios digitales con derechos de autor reservados.&lt;br /&gt;
&lt;br /&gt;
*BitTorrent y muchísimos otros, como G2gui, MLDonkey, BitTorrent, BT++, TorrentSpy, Azureus, ABC, Shareaza, Dcon Pro, DC++, Shadows Direct Connect, eMule, Emule Morph Mod, Online Signature, Gnucleus, MyNapster, FreeWire, Phex y Qtella..&lt;br /&gt;
&lt;br /&gt;
==Descarga de Sitios==&lt;br /&gt;
*HTTrack&lt;br /&gt;
Este programa permite descargar sitios Web completos para poder navegarlos luego de desconectarse de Internet. http://www.httrack.com/&lt;br /&gt;
&lt;br /&gt;
=Seguridad=&lt;br /&gt;
*Windows Privacy Tools&lt;br /&gt;
Conjunto de aplicaciones para cifrado y firma digital de contenidos, basado en GnuPG. http://winpt.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Educación y Ciencia=&lt;br /&gt;
==Astronomía==&lt;br /&gt;
*Celestia&lt;br /&gt;
Aplicación que permite explorar el espacio exterior a través de una interfaz tridimensional. http://celestia.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
*Stellarium&lt;br /&gt;
Similar al anterior, pero enfocado a la exploración del cielo desde la tierra. http://stellarium.free.fr/&lt;br /&gt;
&lt;br /&gt;
==Matemáticas==&lt;br /&gt;
*Octave&lt;br /&gt;
Poderosa herramienta para procesamiento matemático. http://www.octave.org/&lt;br /&gt;
&lt;br /&gt;
*Scilab&lt;br /&gt;
Herramienta para procesamiento de datos científicos similar a Matlab. http://scilabsoft.inria.fr/&lt;br /&gt;
&lt;br /&gt;
==Biología==&lt;br /&gt;
Existe gran cantidad de librerías de programación y software disponible para investigación:&lt;br /&gt;
 &lt;br /&gt;
*ClustalX, GeneDoc, E-Cell, Open Bioinformatics Foundation, BioPython, BioPerl, BioJava, BioRuby, BioSQL/OBDA, BioMOBY, BioDAS, Artemis, Bioconductor y Staden.&lt;br /&gt;
&lt;br /&gt;
==Sistemas de Información Geográfica==&lt;br /&gt;
*GRASS GIS, MapServer, GDAL, OpenEV, Thuban, JUMP y Virtual Terrain Project. http://freegis.org/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Juegos=&lt;br /&gt;
*Pingus&lt;br /&gt;
Clon del popular juego Lemmings. http://pingus.seul.org/&lt;br /&gt;
&lt;br /&gt;
*Tux Racer&lt;br /&gt;
Juego de carreras con interfaz tridimensional protagonizado por la mascota de Linux, Tux. http://tuxracer.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
*Muchos otros:&lt;br /&gt;
AirStrike, Advanced Strategic Command, AutoREALM, BZFlag,Chromium B.S.U, Circus Linux!, Crack Attack!, Defendguin, DOSBox, a x86 emulator with DOS, Enigma, Free Civ, Frozen Bubble, Gem Drop X, GNU Chess, GNU Typist, Jump n Bump, Lbreakout2, LeoCAD, Luola, Mad Bomber, Maelstrom, NetHack - Falcon's Eye, NetHack - the real one (textmode), NJam - pacman-like multi-platforme, SnakeMe, Stratagus, Tower Toppler, Tux Paint - paint for children, TuxType, Vectoroids, WinPenguins, Xbill, xrick. http://www.happypenguin.org/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Referencias=&lt;br /&gt;
*[[¿Por qué usar Software Libre en Windows? (parte I)]]. Por Alejandro Ríos Peña.&lt;br /&gt;
*[[¿Por qué usar Software Libre en Windows? (parte II)]]. Por Alejandro Ríos Peña.&lt;br /&gt;
*GNU Win II. http://gnuwin.epfl.ch/apps/es/index.html&lt;br /&gt;
*CDLibre. http://www.cdlibre.org&lt;br /&gt;
*OSSWin. http://osswin.sourceforge.net/&lt;br /&gt;
*The Open CD. http://theopencd.sunsite.dk&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Sobre_el_Curso_B%C3%A1sico_de_Introducci%C3%B3n_a_GNU/Linux_del_GLUC</id>
		<title>Sobre el Curso Básico de Introducción a GNU/Linux del GLUC</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Sobre_el_Curso_B%C3%A1sico_de_Introducci%C3%B3n_a_GNU/Linux_del_GLUC"/>
				<updated>2013-12-04T10:08:42Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Agosto 30 de 2.004.'''  '''Por Alejandro Ríos Peña.'''  Durante tres semanas, comprendidas entre los días 3 y 24 de agosto de 2.004, el GLUC reali...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Agosto 30 de 2.004.'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Durante tres semanas, comprendidas entre los días 3 y 24 de agosto de 2.004, el GLUC realizó una nueva versión de éste curso, esta vez orientado no sólo a los estudiantes de primer semestre del programa de Ingeniería de Sistemas, sino a toda la comunidad académica de nuestra Universidad. Los resultados obtenidos fueron muy satisfactorios y la acogida que tuvo el curso fue espectacular. Contamos con 80 participantes repartidos en dos grupos de 30 personas y uno de 20. Es por esta razón que quiero aprovechar este espacio para hacer un recuento del contenido que sirvió de base para impartir el curso y que estaremos documentando de forma más adecuada para los próximos proyectos de capacitación que planea el Grupo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
La intensidad horaria del curso fue de 4 horas semanales. Se contó con dos de los grupos en los horarios de martes y miércoles de 6p.m. a 8 p.m. y un grupo los sábados de 8a.m. a 12m.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El contenido general planteado inicialmente para el curso fue el siguiente:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#Filosofía del Software Libre e Historia de GNU/Linux.&lt;br /&gt;
#Características de un Sistema Operativo GNU/Linux.&lt;br /&gt;
#Manejo de la consola.&lt;br /&gt;
#Soporte y Documentación.&lt;br /&gt;
#Sistema de archivos.&lt;br /&gt;
#Administración de Usuarios.&lt;br /&gt;
#Sobre los Procesos.&lt;br /&gt;
#Empaquetamiento y compresión de archivos e Instalación de Paquetes.&lt;br /&gt;
#Acceso Remoto&lt;br /&gt;
#Herramientas gráficas.&lt;br /&gt;
#Sobre la Instalación.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sin embargo, debido a que el curso es impartido por diferentes instructores, se presentaron algunas diferencias respecto a la forma de dictar el curso a los diferentes grupos. Los contenidos que muestro a continuación son los que planeamos Santiago Ruano y Yo para el grupo del cuál fuimos responsables. El contenido aquí descrito fue cubierto en un 90 % para la mencionada edición del curso.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=1. Filosofía del Software Libre e Historia de GNU/Linux=&lt;br /&gt;
==Café y Petróleo.==&lt;br /&gt;
*Esfuerzo casi en vano de nuestros exportadores: www.dnp.gov.co&lt;br /&gt;
-Libra de café: $0.75 USD&lt;br /&gt;
&lt;br /&gt;
-Barril de petróleo: $34.88 USD&lt;br /&gt;
&lt;br /&gt;
-Licencia de Windows XP: $299 USD&lt;br /&gt;
&lt;br /&gt;
-Licencia de Office 2003: $499 USD&lt;br /&gt;
&lt;br /&gt;
*Transferencia tecnológica e Inclusión Digital. www.agenda.gov.co&lt;br /&gt;
*Países subdesarrollados han utilizado Software Libre y reconocen sus ventajas (India, Corea, Brasil, Argentina, ...)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4 Libertades.==&lt;br /&gt;
*No es cuestión de precio, sino de libertad.&lt;br /&gt;
*Cuatro libertades:&lt;br /&gt;
-Libertad de uso&lt;br /&gt;
&lt;br /&gt;
-Libertad de estudio&lt;br /&gt;
&lt;br /&gt;
-Libertad de copia&lt;br /&gt;
&lt;br /&gt;
-Libertad de modificación y redistribución&lt;br /&gt;
&lt;br /&gt;
*Ejemplo: el proyecto wikipedia. http://es.wikipedia.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Cuando los dinosaurios caminaban sobre la tierra.==&lt;br /&gt;
*Hardware? Físico&lt;br /&gt;
*Software?&lt;br /&gt;
-Información e instrucciones&lt;br /&gt;
&lt;br /&gt;
-Código Fuente&lt;br /&gt;
&lt;br /&gt;
-Efecto en Red.&lt;br /&gt;
&lt;br /&gt;
*Sociedad del conocimiento, economía basada en el servicio y no en los bienes.&lt;br /&gt;
&lt;br /&gt;
==1984: Proyecto GNU.==&lt;br /&gt;
*Richard Stallman y la FSF. www.gnu.org&lt;br /&gt;
*Marco Legal de la protección a a la propiedad intelectual. www.derautor.gov.co&lt;br /&gt;
*Tipos de licencias (GPL, www.creativecommons.org)&lt;br /&gt;
&lt;br /&gt;
==Del apache y otros demonios.==&lt;br /&gt;
*El software libre es uno de los pilares de internet: http://news.netcraft.com/archives/web_server_survey.html&lt;br /&gt;
*DNS, Proxy, Correo Electrónico, etc.&lt;br /&gt;
&lt;br /&gt;
==1991: Aparece Linux.==&lt;br /&gt;
*Sistema Operativo Libre&lt;br /&gt;
*Similar a UNIX - POSIX&lt;br /&gt;
*Un kernel o núcleo muy potente&lt;br /&gt;
*Más de 400 mil desarrolladores&lt;br /&gt;
*Gran parte de los servidores del mundo&lt;br /&gt;
*Estable, escalable y potente&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GNU/Linux en Colombia, GLUC.==&lt;br /&gt;
*Colibrí. http://bachue.com/colibri&lt;br /&gt;
*Congresos.&lt;br /&gt;
*GLUC.&lt;br /&gt;
*Empresas y Certificaciones: LPI Certification 101 (release 2) Exam Prep. Por IBM Developer Works.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=2. Características de un Sistema Operativo GNU/Linux=&lt;br /&gt;
&lt;br /&gt;
==Generalidades.==&lt;br /&gt;
*Multiusuario y Multitarea.&lt;br /&gt;
*Trabajo en Red.&lt;br /&gt;
*Llevado a muchas plataformas.&lt;br /&gt;
*El Superusuario.&lt;br /&gt;
*Autenticación y Privilegios.&lt;br /&gt;
*Ejemplo: TTYs y los comandos 'who' y 'w'.&lt;br /&gt;
&lt;br /&gt;
==Componentes==&lt;br /&gt;
*Terminal o Consola.&lt;br /&gt;
*Utilidades y Librerías.&lt;br /&gt;
*Kernel o núcleo:&lt;br /&gt;
-Manejo de Procesos.&lt;br /&gt;
&lt;br /&gt;
-Manejo de Memoria.&lt;br /&gt;
&lt;br /&gt;
-Entrada / Salida (I/O).&lt;br /&gt;
&lt;br /&gt;
-Sistema de archivos.&lt;br /&gt;
&lt;br /&gt;
-Manejo de Usuarios y Seguridad.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Niveles de Ejecución y el Servidor X==&lt;br /&gt;
*Un repaso general al proceso de arranque.&lt;br /&gt;
*Los niveles de ejecución y el comando 'init'.&lt;br /&gt;
*El servidor X y el comando 'startx'.&lt;br /&gt;
&lt;br /&gt;
==Distribuciones.==&lt;br /&gt;
*Slackware&lt;br /&gt;
*Debian&lt;br /&gt;
*Redhat&lt;br /&gt;
*Fedora&lt;br /&gt;
*Suse&lt;br /&gt;
*Mandrake&lt;br /&gt;
*Knoppix&lt;br /&gt;
*http://www.distrowatch.com/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=3. Manejo de la consola=&lt;br /&gt;
*Los comandos, el intérprete de comandos (shell) y el comando 'echo'.&lt;br /&gt;
*El sistema de archivos, las rutas o paths y los comandos 'pwd', 'ls' y 'cd'.&lt;br /&gt;
*Ejemplo: konqueror con perfil “Midnight Commander”.&lt;br /&gt;
*Los comandos 'mkdir', 'touch', 'more', 'cp' y 'mv'.&lt;br /&gt;
*Ejemplo con las partes del cuerpo humano.&lt;br /&gt;
*El comando 'rm'.&lt;br /&gt;
&lt;br /&gt;
=4. Soporte y Documentación=&lt;br /&gt;
*El comando 'man'.&lt;br /&gt;
*Los comandos 'whatis' y 'apropos'.&lt;br /&gt;
*El comando 'info'.&lt;br /&gt;
*El directorio '/usr/share/doc/'.&lt;br /&gt;
*The Linux Documentation Project. www.tldp.org&lt;br /&gt;
*Foros, listas de correo, canales de irc, google.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=5. Sistema de archivos.=&lt;br /&gt;
*FHS. www.pathname.org/fhs&lt;br /&gt;
*Montaje de sistemas de archivos.&lt;br /&gt;
-Dispositivos hardware y puntos de montaje.&lt;br /&gt;
&lt;br /&gt;
-Tipos de formatos de los sistemas de archivos (ext3, vfat, iso9660, raizerfs, etc.).&lt;br /&gt;
&lt;br /&gt;
-EL archivo '/etc/fstab'.&lt;br /&gt;
&lt;br /&gt;
-Los comandos 'df', 'mount' y 'umount'.&lt;br /&gt;
&lt;br /&gt;
-Dar formato con 'mkfs'.&lt;br /&gt;
&lt;br /&gt;
*Los “inodes” y los enlaces duros y simbólicos.&lt;br /&gt;
*Empaquetamiento y compresión de archivos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=6. Admnistración de Usuarios.=&lt;br /&gt;
*¿Por qué existen los grupos?.&lt;br /&gt;
*Los comandos 'whoami', 'groups', 'id' y 'su'.&lt;br /&gt;
*los archivos '/etc/passwd', '/etc/shadow' y '/etc/group'.&lt;br /&gt;
*Los comandos 'useradd', 'groupadd' y herramientas más amigables.&lt;br /&gt;
*Los comandos 'usermod', 'chgrp' y 'chown'.&lt;br /&gt;
*Administración de permisos: el comando 'chmod'.&lt;br /&gt;
&lt;br /&gt;
=7. Sobre los Procesos.=&lt;br /&gt;
*¿Qué es un proceso?.&lt;br /&gt;
*Sobre el “pid” y los comandos 'top' y 'ps'.&lt;br /&gt;
*Lanzar procesos en el trasfondo (backgroud y foreground).&lt;br /&gt;
*Los comandos 'kill' y 'killall'.&lt;br /&gt;
*Comunicación entre procesos.&lt;br /&gt;
*Concatenar comandos y “shell scripting”.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=8. Empaquetamiento y compresión de archivos e Instalación de Paquetes.=&lt;br /&gt;
*Empaquetamiento con “tar”.&lt;br /&gt;
*Formatos de compresión: 'gzip', 'bz2', 'zip', etc.&lt;br /&gt;
*Compresión y descompresión en formatos comunes: '.tar.gz', '.tgz', '.tar.bz2', '.tbz2'.&lt;br /&gt;
*Herramientas gráficas.&lt;br /&gt;
*Instalación de un programa desde el código fuente. Ejemplo: nano.&lt;br /&gt;
*Manejo de paquetes 'RPM'.&lt;br /&gt;
*Instalación de un programa con 'rpm'. Ejemplo: BZFlag.&lt;br /&gt;
&lt;br /&gt;
=9. Acceso Remoto=&lt;br /&gt;
*Cliente - Servidor.&lt;br /&gt;
*Telnet.&lt;br /&gt;
*El servicio SSH.&lt;br /&gt;
*Terminal remota con 'ssh'.&lt;br /&gt;
*Transferencia de ficheros con 'sftp': comandos 'help', 'ls', 'cd', 'get' y 'put'.&lt;br /&gt;
*X remoto.&lt;br /&gt;
&lt;br /&gt;
=10. Herramientas gráficas.=&lt;br /&gt;
*Entorno de Escritorio.&lt;br /&gt;
*Configuración del Sistema.&lt;br /&gt;
*Aplicaciones de Oficina.&lt;br /&gt;
*Comunicaciones e Internet.&lt;br /&gt;
*Multimedia.&lt;br /&gt;
*Educación, Ciencia y Programación.&lt;br /&gt;
*Otros.&lt;br /&gt;
*www.sourceforge.net&lt;br /&gt;
&lt;br /&gt;
=11. Sobre la Instalación=&lt;br /&gt;
*Tareas previas.&lt;br /&gt;
*Particionamiento del Disco Duro.&lt;br /&gt;
*La partición swap.&lt;br /&gt;
*El MBR y los gestores de arranque 'grub' y 'lilo'.&lt;br /&gt;
*Versión del Kernel.&lt;br /&gt;
*Solución de problemas y otros tips útiles.&lt;br /&gt;
*Tareas posteriores.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;br /&gt;
[[Categoría:Cursos]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Jabber_vs_MSN:_Por_una_Mensajer%C3%ADa_Instant%C3%A1nea_Justa</id>
		<title>Jabber vs MSN: Por una Mensajería Instantánea Justa</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Jabber_vs_MSN:_Por_una_Mensajer%C3%ADa_Instant%C3%A1nea_Justa"/>
				<updated>2013-12-04T10:08:07Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Septiembre 7 de 2.004'''  '''Por Alejandro Ríos Peña.'''  Jabber y MSN son dos sistemas de mensajería instantánea a través de Internet. Un siste...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Septiembre 7 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Jabber y MSN son dos sistemas de mensajería instantánea a través de Internet. Un sistema de mensajería instantánea permite que las personas puedan conversar con sus amigos, familiares y conocidos a través de mensajes de texto, y está compuesto por dos partes principales: una red de servidores que almacenan la información de contacto de las personas suscritas al servicio y programas de computador que sirven para utilizar el servicio y empezar a «chatear» o conversar, mejor conocidos como programas «cliente».&lt;br /&gt;
&lt;br /&gt;
Jabber es un sistema de mensajería instantánea libre, lo cuál hace que no esté amarrado o controlado por una única empresa y permite que las personas puedan elegir entre muchas opciones de proveedores del servicio.&lt;br /&gt;
&lt;br /&gt;
El servicio MSN de Microsoft se ha convertido en el más popular de nuestro entorno, desplazando al ya casi olvidado ICQ y a sus competidores más cercanos: yahoo!, AIM, Gadu Gadu, etc.&lt;br /&gt;
&lt;br /&gt;
El procedimiento que generalmente utilizan las personas para utilizar el servicio MSN es:&lt;br /&gt;
&lt;br /&gt;
#Abrir una cuenta de correo en hotmail o passport.net.&lt;br /&gt;
#Usar el programa cliente MSN de Microsoft para conectarse al servicio.&lt;br /&gt;
#Agregar a su lista de contactos las direcciones de sus conocidos.&lt;br /&gt;
#Esperar a que éstos también se conecten al servicio para empezar a conversar con ellos.&lt;br /&gt;
#Convencer al resto de sus amigos, familiares y conocidos para que también utilicen el mismo servicio.&lt;br /&gt;
&lt;br /&gt;
Hasta este punto todo parece normal y sin problemas. De hecho es una maravilla, e incluso si los usuarios del servicio poseen una cámara Web, pueden verse el uno al otro mientras charlan con mensajes de texto. Además, a medida que más y más gente utiliza MSN, éste se convierte en una especie de estándar y comienza a hacer parte de la llamada cyber-cultura o cultura de Internet.&lt;br /&gt;
&lt;br /&gt;
Seguramente la gran mayoría de lectores de ésta columna utilizan éste servicio a diario, pero ¿se ha detenido alguna vez a leer las condiciones o términos legales bajo los cuáles usted está utilizando éste servicio?. Si no es así, le invito a que continúe leyendo y se entere de algunos apartes del mencionado contrato.&lt;br /&gt;
&lt;br /&gt;
=La Licencia del Servicio MSN de Microsoft=&lt;br /&gt;
&lt;br /&gt;
Uno de los factores que ha fomentado el crecimiento de los monopolios de las grandes empresas de tecnología del mundo como Microsoft es la ligereza con que las personas utilizan sus productos sin siquiera leer la licencia o los términos de uso a los que están accediendo cuando dan clic en el botón «Aceptar». A continuación mostraré y realizaré algunos comentarios sobre varios apartes de la licencia del MSN de Microsoft [1]:&lt;br /&gt;
&lt;br /&gt;
'''1. '''“'''Microsoft se reserva el derecho a supervisar en cualquier momento las comunicaciones en el Servicio y a revelar la información que Microsoft considere necesaria''' para (i) garantizar el cumplimiento por parte de usted del presente Contrato; (ii) cumplir con la ley, la normativa o los procedimientos legales aplicables; o (iii) proteger los derechos, la propiedad y los intereses de Microsoft, sus empleados o el público en general. '''Microsoft también se reserva el derecho a modificar, negarse a transferir o retirar cualquier información o material, en todo o en parte, a la entera discreción de Microsoft.'''”&lt;br /&gt;
&lt;br /&gt;
Bien, en el anterior párrafo pueden leerse dos cosas importantes. Por un lado, Microsoft parece preocupado por la seguridad de la comunidad en general, mostrándose dispuesto a grabar las conversaciones de los usuarios con el fin de colaborar con la institucionalidad y prevenir posibles ataques terroristas o cualquier otra expresión del temor humano y la paranoia generalizada de nuestros tiempos que promueven quién sabe cuántos hilos ocultos del capitalismo, etc. Sin embargo, por otro lado, MS también se reserva el derecho a modificar o manipular esa información a su entera discreción. Vaya, eso sí que no suena justo o al menos transparente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''2.''' “Usted se compromete a no exportar ni reexportar el Software, directa o indirectamente, a cualquiera de los países sujetos a restricciones de exportación de los Estados Unidos de América.”&lt;br /&gt;
&lt;br /&gt;
Esto significa que si usted tiene amigos, familiares o conocidos en Cuba o en muchos otros de los países autónomos que a Estados Unidos le encantaría invadir, olvídese de que va a poder «chatear» con ellos para ahorrarse la llamadita de larga distancia.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''3.''' “'''Microsoft puede modificar las Condiciones de uso en cualquier momento y dichos cambios entrarán en vigor de forma inmediata'''. Es su responsabilidad revisar periódicamente las Condiciones de uso. “&lt;br /&gt;
&lt;br /&gt;
Desde luego, usted debería revisar esta licencia periódicamente. No vaya a ser que de un momento a a MS de le por cambiar los términos y alguna de las cosas que usted hace mientras utiliza el servicio se vuelva ilegal.&lt;br /&gt;
&lt;br /&gt;
'''4.''' “Respecto a los materiales que envíe o proporcione de algún modo a Microsoft en relación con el Servicio (&amp;quot;Envío&amp;quot;), '''usted concede a Microsoft permiso para (1) utilizar, copiar, distribuir, transmitir, exhibir y ejecutar públicamente, reproducir, editar, modificar, traducir y rediseñar su Envío, siempre en relación con el servicio .NET Messenger, y (2) conceder bajo licencia estos derechos'''. Microsoft no abonará ninguna compensación por su Envío. Microsoft podrá retirar su Envío en cualquier momento. Para cada envío, usted reconoce que disfruta de todos los derechos necesarios para realizar las concesiones descritas en este apartado.”&lt;br /&gt;
&lt;br /&gt;
Diablos, en esta sí que se pasaron. Luego de leer ésto uno se pone a pensar en qué tan gratuito es éste servicio realmente. Yo no soy abogado ni algo parecido, pero como puede leer usted mismo(a), MS simplemente se está apropiando en forma descarada de los derechos patrimoniales de cualquier tipo de propiedad intelectual que usted envíe a través del MSN. Mejor dicho, si usted es un(a) dibujante y envía uno de sus trabajos a través del MSN, MS puede apropiarse del mismo y hacer con él lo que quiera, sin siquiera mencionar al autor original, es decir sin darle crédito a usted.&lt;br /&gt;
&lt;br /&gt;
'''5.''' “MICROSOFT PROPORCIONA EL SERVICIO Y EL SOFTWARE &amp;quot;TAL CUAL&amp;quot;, &amp;quot;CON TODOS LOS DEFECTOS&amp;quot; Y &amp;quot;COMO ESTÁ DISPONIBLE&amp;quot;, Y '''USTED ASUME TODO RIESGO RELACIONADO CON UN NIVEL DE CALIDAD, RENDIMIENTO, PRECISIÓN O ESFUERZO SATISFACTORIO.''' MICROSOFT, SUS FILIALES, REPRESENTANTES, DISTRIBUIDORES, PROVEEDORES DE SERVICIOS O SUMINISTRADORES (DENOMINADOS LOS &amp;quot;ASOCIADOS DE MICROSOFT&amp;quot;) NO OFRECEN GARANTÍA ALGUNA.”&lt;br /&gt;
&lt;br /&gt;
Bueno, como siempre, todo tipo de software, venga de quien venga, se distribuye sin garantía alguna. Así que no piense en reclamar a MS si el servicio no es lo que usted esperaba.&lt;br /&gt;
&lt;br /&gt;
=La Alternativa: Usar Jabber=&lt;br /&gt;
&lt;br /&gt;
Si lo que acaba de leer puede llegar a afectar sus decisiones como consumidor de tecnología informática, le tengo una buena noticia, en el mundo '''SÍ EXISTEN alternativas''' y usted y sus conocidos no están obligados a usar el MSN para disfrutar de las maravillas de la comunicación a través del Internet.&lt;br /&gt;
&lt;br /&gt;
«Jabber es un protocolo abierto basado en el estándar XML para el intercambio en tiempo real de mensajes y presencia entre dos puntos en Internet» [3]. «La principal aplicación de la tecnología Jabber es una extensible plataforma de mensajería y una red de MI (Mensajería Instantánea) que ofrece una funcionalidad similar a la de otros sistemas como AIM, ICQ, MSN Messenger y Yahoo.» [3]&lt;br /&gt;
&lt;br /&gt;
Jabber no se diferencia en mucho al servicio de MSN y está siendo adoptado masivamente en los entornos empresariales de muchos países, incluyendo Colombia.&lt;br /&gt;
&lt;br /&gt;
A diferencia de lo que ocurre con el sistema MSN, usted puede encontrar una amplia variedad de servidores Jabber. tanto gratuitos como comerciales. Está en sus manos la decisión de cuál servidor Jabber utilizar, lo interesante es que para comunicarse con sus familiares, amigos y conocidos no es necesario que todos tengan cuentas Jabber del mismo proveedor.&lt;br /&gt;
&lt;br /&gt;
Algunos de los servidores Jabber gratuitos más populares se encuentran listados en [2]. En Colombia, sólo conozco el servidor de xunilombia, jabberlombia.ccasoft.org&lt;br /&gt;
&lt;br /&gt;
Los programas libres más populares que sirven como clientes Jabber y que funcionan tanto en windows como en linux son Gaim [4] y Miranda [5]. Estos clientes soportan múltiples protocolos de mensajería, lo cuál significa que usted puede empezar a utilizar Jabber desde yá, y seguir usando su cuenta de MSN mientras convence a sus amigos de que se pasen a Jabber también (aunque lo ideal sería dejar de utilizarlo de una buena vez).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Referencias=&lt;br /&gt;
&lt;br /&gt;
*[1] Licencia del MSN de Microsoft. http://messenger.msn.com/Help/Terms.aspx&lt;br /&gt;
*[2] Servidores Listados en Open Jabber. http://www.jabber.org/user/publicservers.php&lt;br /&gt;
*[3] El Libro Jabber. http://www.jabberes.org/book/view/15&lt;br /&gt;
*[4] Gaim. Poderoso cliente de mensajería instantánea. Soporta AIM (protocolos Oscar y TOC), ICQ, MSN Messenger, Yahoo!, IRC, Jabber, Gadu-Gadu, y redes Zephyr. http://gaim.sourceforge.net&lt;br /&gt;
*[5] Miranda. Otro cliente multiprotocolo y muy liviano. http://www.miranda-im.org&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Visi%C3%B3n_Propuesta_para_las_Actividades_del_GLUC</id>
		<title>Visión Propuesta para las Actividades del GLUC</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Visi%C3%B3n_Propuesta_para_las_Actividades_del_GLUC"/>
				<updated>2013-12-04T10:07:46Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Septiembre 17 de 2.004'''  '''Por Alejandro Ríos Peña.'''  Hasta ahora el GLUC se las ha arreglado para crear y mantener múltiples espacios de div...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Septiembre 17 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Hasta ahora el GLUC se las ha arreglado para crear y mantener múltiples espacios de divulgación y encuentro para las personas de la comunidad de software libre de Popayán, siendo el principal de ellos el “Vive la Vida Linux”, evento realizado semanalmente en el Instituto de Postgrados de la Facultad de Ingeniería Electrónica y Telecomunicaciones de la Universidad del Cauca (IPET, campus de Tulcán).&lt;br /&gt;
&lt;br /&gt;
Sin embargo, siendo el GLUC un grupo extremadamente dinámico y en continua búsqueda de mejores formas para cumplir sus objetivos, ha llegado el momento de que se replanteen sus actividades y se traten de ofrecer los espacios que la comunidad poco a poco ha empezado a exigir a medida que crece y se consolida.&lt;br /&gt;
&lt;br /&gt;
A continuación planteo mi visión _personal_ (a muy corto plazo, claro está) de cómo deberían plantearse o replantearse cada uno de los espacios que ofrece el GLUC, de tal suerte que todas las personas interesadas puedan encontrar e integrarse a los espacios donde más se sientan a gusto. Hay que tener en cuenta que los espacios expuestos aquí no entran en conflicto con la división operativa del grupo en las tres áreas conocidas, ya que son éstas las que llegan a materializar todas las actividades del GLUC.&lt;br /&gt;
&lt;br /&gt;
Repito, lo expuesto a continuación no ha sido aprobado por la Junta Directiva del GLUC, es sólo una propuesta y hay que leerla como tal. Aclarado está, así que los dejo en compañía de mi visión a corto plazo de los espacios del GLUC:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Reunión Semanal del GLUC.=&lt;br /&gt;
==Descripción==&lt;br /&gt;
Es un espacio de socialización, discusión y encuentro para los miembros activos del GLUC y toda la comunidad de software libre de Popayán, personas que usan, divulgan o desarrollan software libre y comparten la filosofía de este movimiento. NO es una charla introductoria ni un curso.&lt;br /&gt;
==Dinámica==&lt;br /&gt;
Reuniones semanales, todos los jueves a las 6:00pm, en un salón del IPET. Dado el perfil de las personas a las que está dirigido el espacio, se asume que el número de personas es reducido y por tanto las actividades a realizar serán convenidas entre los asistentes. Los principales medios de comunicación de las personas relacionadas con éste espacio son la lista de correo gluc@listas.unicauca.edu.co , el portal http://gluc.unicauca.edu.co , el programa radial “Enlace Virtual” y el canal de IRC #gluc en irc.freenode.net&lt;br /&gt;
&lt;br /&gt;
Entre las actividades que se realizan están:&lt;br /&gt;
&lt;br /&gt;
*Ver y comentar videos y películas.&lt;br /&gt;
*Leer y comentar artículos de opinión, libros, noticias, etc.&lt;br /&gt;
*Presentar y discutir visiones, proyectos y otras iniciativas relacionadas con el movimiento.&lt;br /&gt;
*Socializar, comentar y discutir las actividades de la junta directiva del GLUC.&lt;br /&gt;
*Actividades lúdicas de integración como salidas a comer, a caminar, etc.&lt;br /&gt;
*Asambleas generales del GLUC, cuando sean convocadas según los estatutos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Grupos de Estudio y Desarrollo GLUC.=&lt;br /&gt;
==Descripción==&lt;br /&gt;
Los grupos de estudio y desarrollo GLUC son pequeños grupos de personas interesadas en abordar el estudio de temáticas especializadas y el desarrollo de proyectos de software relacionados con éstas temáticas.&lt;br /&gt;
==Dinámica==&lt;br /&gt;
Reuniones quincenales, acordadas a través de la lista de correo. Los integrantes de éstos grupos tienen completa autonomía sobre la dinámica que utilizan para su trabajo, sin embargo la idea es que entre todos se repartan temas de estudio, y luego se realimente lo aprendido por cada uno de los miembros y se saquen conclusiones, artículos, charlas e incluso ideas para proyectos de I+D. Los principales medios de comunicación de las personas relacionadas con éste espacio son la lista de correo gluc@listas.unicauca.edu.co y el canal de IRC #gluc en irc.freenode.net&lt;br /&gt;
&lt;br /&gt;
Entre las actividades que se realizan están:&lt;br /&gt;
&lt;br /&gt;
*Leer y comentar artículos técnicos, libros, programas, proyectos, etc.&lt;br /&gt;
*Construcción de artículos y charlas especializados en tecnologías de interés.&lt;br /&gt;
*Participación en proyectos de software libre relacionados con las tecnologías estudiadas.&lt;br /&gt;
*Proposición y creación de nuevos proyectos de desarrollo de software libre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Semillero de Investigación ( ¿... en TICs para el Desarrollo Humano Sostenible?.)=&lt;br /&gt;
==Descripción==&lt;br /&gt;
Este espacio (cuyo nombre y marco general aún no se han definido) ha sido creado en alianza con diferentes actores de la comunidad académica universitaria, y está dirigido a todas aquellas personas cuya vocación se centra en la investigación relacionada con la aplicación social de las Tecnologías de Información y Comunicación, especialmente el Software Libre.&lt;br /&gt;
==Dinámica==&lt;br /&gt;
Aún por definir.&lt;br /&gt;
&lt;br /&gt;
Los medios de comunicación de las personas relacionadas con éste espacio aún están por definir, pero podrían ser la lista de correo gluc@listas.unicauca.edu.co y el canal de IRC #gluc en irc.freenode.net&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Cursos GLUC.=&lt;br /&gt;
==Descripción==&lt;br /&gt;
Los cursos ofrecidos por el GLUC están dirigidos a todas aquellas personas que desean tener al alcance un proceso más formal de aprendizaje del software libre y en especial del sistema operativo GNU/Linux, con contenidos definidos y desarrollados a través de clases teórico-prácticas.&lt;br /&gt;
==Dinámica==&lt;br /&gt;
El Curso Básico de Introducción a GNU/Linux se pone a disposición dos veces por semestre, una antes de los primeros parciales, y otra entre éstos y los segundos parciales. La intensidad del curso es de 12 horas y los cupos y horarios varían de acuerdo a cada semestre.&lt;br /&gt;
&lt;br /&gt;
El Curso Intermedio GNU/Linux y el Curso Avanzado GNU/Linux con variantes de Desarrollo de Software Libre y Administración de Servicios de Red, están aún en sus etapas de análisis y planeación para ser ofrecidos en un futuro, al igual que un Diplomado o una Electiva.&lt;br /&gt;
&lt;br /&gt;
Los principales medios de comunicación de las personas relacionadas con éste espacio son la lista de correo gluc@listas.unicauca.edu.co , el portal http://gluc.unicauca.edu.co y el canal de IRC #gluc en irc.freenode.net&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Vive la Vida Linux (VLVL)=&lt;br /&gt;
==Descripción==&lt;br /&gt;
Es el principal espacio de divulgación que tiene el GLUC. Está dirigido a todo el público en general y trata temas que pretenden acercar a las personas al mundo del software libre, y en especial al sistema operativo GNU/Linux.&lt;br /&gt;
==Dinámica==&lt;br /&gt;
El VLVL se realiza el primer jueves de cada mes, a las 6:00pm, en el auditorio del IPET. Durante cada VLVL se presenta una charla que trata temas de interés general y con un nivel técnico ideal tanto para aquellas personas que están iniciando su camino de conocimiento en el mundo del software libre, como para las personas que aún no están familiarizadas con éstos temas. Las charlas son presentadas por miembros activos del GLUC, miembros reconocidos de la comunidad del software libre nacional o por otras personas destacadas en campos relacionados. Los principales medios de comunicación de las personas relacionadas con éste espacio son el portal http://gluc.unicauca.edu.co , el programa radial “Enlace Virtual” y el canal de IRC #gluc en irc.freenode.net&lt;br /&gt;
&lt;br /&gt;
Entre los temas tratados en el VLVL están:&lt;br /&gt;
&lt;br /&gt;
*Generalidades del SW Libre&lt;br /&gt;
*Aplicaciones de Internet (para windows y linux)&lt;br /&gt;
*Aplicaciones Ofimáticas (para windows y linux)&lt;br /&gt;
*Aplicaciones Multimedia y de Entretenimiento (para windows y linux)&lt;br /&gt;
*El Sistema Operativo Linux (para usuarios de windows)&lt;br /&gt;
*Los live CD&lt;br /&gt;
*La importancia de los formatos de archivos estándares.&lt;br /&gt;
*Comparación de las distribuciones de linux más populares.&lt;br /&gt;
*¿Cómo buscar, instalar y usar software libre para linux?&lt;br /&gt;
*¿Cómo cacharrear con hardware en linux cuando es necesario?&lt;br /&gt;
*¿Cómo participar en el desarrollo de un proyecto de software libre?&lt;br /&gt;
*Certificaciones del software libre.&lt;br /&gt;
*Modelos de negocio con software libre&lt;br /&gt;
*Actualizaciones de seguridad en Linux.&lt;br /&gt;
*¿Cuando y Cómo recompilar el kernel de linux?&lt;br /&gt;
*Entornos Gráficos de Escritorio.&lt;br /&gt;
*Administración de servicios de red en linux&lt;br /&gt;
*Herramientas educativas y científicas&lt;br /&gt;
*Herramientas de diseño gráfico&lt;br /&gt;
*Herramientas de colaboración y gestión de contenidos en el web&lt;br /&gt;
*Herramientas de desarrollo.&lt;br /&gt;
*Herramientas de Publicación.&lt;br /&gt;
*Herramientas misceláneas: por ejemplo para impresora y escáner, traducción, etc.&lt;br /&gt;
*Videos y películas.&lt;br /&gt;
*Proyectos y otras iniciativas relacionadas con el movimiento del software libre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Radiograf%C3%ADa_de_GNU/Linux_en_Popay%C3%A1n,_Primera_Parte:_Colegio_Mayor_del_Cauca</id>
		<title>Radiografía de GNU/Linux en Popayán, Primera Parte: Colegio Mayor del Cauca</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Radiograf%C3%ADa_de_GNU/Linux_en_Popay%C3%A1n,_Primera_Parte:_Colegio_Mayor_del_Cauca"/>
				<updated>2013-12-04T10:07:16Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Septiembre 29 de 2.004'''  '''Por Alejandro Ríos Peña.'''  Esta es la primera parte de una serie de columnas en las que estaré resumiendo las expe...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Septiembre 29 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
Esta es la primera parte de una serie de columnas en las que estaré resumiendo las experiencias que hemos podido conocer acerca de instituciones, empresas y particulares que han adelantado diferentes actividades alrededor del Software Libre en la Ciudad.&lt;br /&gt;
&lt;br /&gt;
El Colegio Mayor del Cauca es una institución pública de educación superior, que ofrece carreras tecnológicas en desarrollo de software, delineante de arquitectura, diseño artesanal, entre otras.&lt;br /&gt;
&lt;br /&gt;
Desde hace varias semanas, un grupo de estudiantes de segundo semestre del programa de Tecnología en Software del ColMayor ha venido trabajando en la creación de un nuevo grupo de usuarios de Linux. Se trata de Polux: Grupo Popayán Linux, nombre tomado de la mitología greco-romana y que asocia la imagen de un ángel con la idea de la libertad del software.&lt;br /&gt;
&lt;br /&gt;
Según Marta Cecilia Camacho, Ingeniera Electrónica de la Universidad del Cauca y docente del ColMayor, el grupo se había querido arrancar varias veces por parte de varios docentes desde hace casi dos años, pero sólo hasta ahora se están empezando a recoger los frutos de todo el trabajo realizado previamente.&lt;br /&gt;
&lt;br /&gt;
La corta duración de los programas, de tan sólo 3 años, sumada a la resistencia al cambio por parte de los estudiantes de últimos semestres, habrían sido las dificultades que habían tenido en el pasado. Es por eso que la nueva iniciativa arrancó con los estudiantes de primeros semestres y ahora, tras poco más de un mes de creado el grupo, éste cuenta ya con 22 entusiasmados integrantes.&lt;br /&gt;
&lt;br /&gt;
Para Juan Pablo, estudiante de segundo semestre, el Software Libre resulta muy interesante desde el punto de vista de los estudiantes de programación, ya que ofrece enormes oportunidades al poder usarlo y modificarlo libremente.&lt;br /&gt;
&lt;br /&gt;
Juan Pablo ya se había topado con Linux desde antes de ingresar al ColMayor, cuando trabajó en una institución educativa de la Ciudad que ofrece capacitaciones en sistemas. En ésa época, él intentó usar el sistema operativo por curiosidad y hoy recuerda sonriente cómo tuvo que pedir la ayuda de uno de los instructores para dar sus primeros pasos con éste software. Cuando entró al Mayor se dio cuenta de que Linux era en realidad muy accesible y le llamó la atención el modelo de desarrollo colaborativo que hace tan especial al Software Libre.&lt;br /&gt;
&lt;br /&gt;
Según Ximena Estrada, también estudiante de segundo semestre, la apariencia gráfica de Linux es muy llamativa y algo similar a la de Windows, por lo que ha podido seguir haciendo las cosas que hacía normalmente en el sistema operativo de Microsoft. Lo único que le ha costado algo de trabajo, y para lo cuál ha tenido que practicar con el fin de acostumbrarse, ha sido el montar y desmontar los dispositivos hardware de almacenamiento como el CD y el disquete.&lt;br /&gt;
&lt;br /&gt;
Sin embargo, Ximena aconseja a todo el mundo acercarse más a ésta tecnología, ya que no es algo raro ni complicado, para ella todo es cuestión de costumbre.&lt;br /&gt;
&lt;br /&gt;
Respecto al GLUC, Juan Pablo y Marta coincidieron en afirmar que les ha parecido muy constructiva, asequible e interesante la dinámica del grupo. Tanto ellos como muchos otros integrantes del Colegio Mayor han asistido a las actividades del GLUC y han participado activamente de ellas. Incluso Juan Pablo resultó ser uno de los ganadores del primer concurso de cometas “Vuela Libre”, realizado por el GLUC el pasado mes de agosto.&lt;br /&gt;
&lt;br /&gt;
Marta cuenta cómo ya en el pasado ha tenido la oportunidad de interactuar con personas de varios grupos a nivel nacional, cuando asistió a la segunda(2003) y la tercera(2004) versión del Congreso Nacional e Internacional de Software Libre, llevadas a cabo en Manizalez y Medellín, respectivamente. En la última oportunidad, le pereció bastante interesante el hecho de que cada vez se crean más y más grupos de usuarios en las más diversas regiones del país.&lt;br /&gt;
&lt;br /&gt;
Actualmente, el Grupo Polux está concentrado en arrancar fuertemente con su trabajo, y junto al GLUC, se prepara para asistir al Segundo Congreso Suroccidental de Software Libre a realizarse en Roldanillo, Valle, el próximo mes de noviembre.&lt;br /&gt;
&lt;br /&gt;
Finalmente, la ingeniera Marta recalca la importancia que ve en la economía que puede representar el Software Libre para las instituciones educativas, ya que implica un ahorro en licenciamiento de programas y la posibilidad de invertir más dinero en consecución de equipos y otros recursos educativos.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Servicios_Web_con_Perl</id>
		<title>Servicios Web con Perl</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Servicios_Web_con_Perl"/>
				<updated>2013-12-04T10:06:42Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Noviembre 8 de 2.004.'''  '''Por Alejandro Ríos Peña.'''  El lenguaje Perl cuenta principalmente con dos módulos que pueden ser usados para crear ...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Noviembre 8 de 2.004.'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
El lenguaje Perl cuenta principalmente con dos módulos que pueden ser usados para crear servicios web de manera fácil y rápida, desde cero o reutilizando aplicaciones de Perl ya existentes. Éstos módulos son SOAP::Lite y WSDL::Generator. A continuación se explicarán cada uno de ellos y se mostrará un ejemplo de su uso.&lt;br /&gt;
&lt;br /&gt;
=SOAP::Lite=&lt;br /&gt;
&lt;br /&gt;
SOAP::Lite es un conjunto de módulos de Perl que proveen una interfaz simple y liviana para el protocolo SOAP, tanto en el lado cliente como en el del servidor. SOAP::Lite es actualmente el kit de desarrollo de web services para Perl más difundido y utilizado. Su página en SourceForge ha registrado más de 10,700 descargas en casi 2 años.&lt;br /&gt;
&lt;br /&gt;
SOAP::Lite provee clases para implementar funcionalidades de un cliente SOAP, varios servidores, soporte a datos y muchas otras tareas. La siguiente es una lista resumida de sus características:&lt;br /&gt;
&lt;br /&gt;
'''Soporte de Protocolos'''&lt;br /&gt;
*Soporta las especificaciones SOAP 1.1 y SOAP 1.2.&lt;br /&gt;
*Incluye XMLRPC::Lite, una implementación del protocolo XML-RPC en el lado del cliente y del servidor. Entre los protocolos de trasporte disponibles, están HTTP, SMTP, POP3 y TCP.&lt;br /&gt;
*Soporta publicación y peticiones UDDI del lado del cliente, a través de un API.&lt;br /&gt;
&lt;br /&gt;
'''Interoperabilidad'''&lt;br /&gt;
*Se han realizado pruebas de interoperabilidad con diferentes implementaciones: Apache SOAP, Frontier, Microsoft SOAP, Microsoft .NET, DevelopMentor, XMethods, 4s4c, Phalanx, Kafka, SQLData, Lucin (en Java, Perl, C++, Python, VB, COM, XSLT).&lt;br /&gt;
&lt;br /&gt;
'''Protocolos de Transporte'''&lt;br /&gt;
*Provee implementaciones de servidores TCP con multiservidor “no-bloqueante”&lt;br /&gt;
*Soporta transporte sobre Jabber, MQSeries y SMTP.&lt;br /&gt;
*Provee compresión transparente para HTTP.&lt;br /&gt;
*Soporta el protocolo HTTPS.&lt;br /&gt;
*Provee soporte para proxy.&lt;br /&gt;
*Provee implementaciones de servidor POP3.&lt;br /&gt;
*Soporta M-POST y redirección HTTP.&lt;br /&gt;
&lt;br /&gt;
'''Soporte para WSDL'''&lt;br /&gt;
*Soporta el esquema WSDL con “stub” y acceso en tiempo de ejecución. Soporta descripciones de servicio por directivas y cortas (tModel).&lt;br /&gt;
&lt;br /&gt;
'''Otras'''&lt;br /&gt;
*Provee implementaciones de servidores CGI, daemon, mod_perl, Apache::Registry yFastCGI.&lt;br /&gt;
*Incluye los módulos de Apache mod_soap y mod_xmlrpc, los cuales permiten crear servidores SOAP o XML-RPC con algunas líneas en los archivos .htaccess o httpd.conf.&lt;br /&gt;
*Soporta el enlace dinámico y estático de clases y métodos.&lt;br /&gt;
*Provee un intérprete de comandos para sesiones SOAP interactivas.&lt;br /&gt;
*Incluye una gran cantidad de ejemplos.&lt;br /&gt;
&lt;br /&gt;
=WSDL::Generator=&lt;br /&gt;
WSDL::Generator es un módulo de Perl para crear archivos de descripción de servicios (WSDL) automáticamente a partir de módulos de perl expuestos como servicios web. Éste módulo, desarrollado por Pierre Denis &amp;lt;pdenis@fotango.com&amp;gt;, es tal vez el único que se ha creado hasta ahora con ésta funcionalidad en el mundo de Perl.&lt;br /&gt;
SOAP::Lite y WSDL::Generator en la Práctica&lt;br /&gt;
&lt;br /&gt;
=Ejemplo=&lt;br /&gt;
A continuación, se muestra un ejemplo de la utilización del lenguaje Perl para exponer un servicio web sencillo. En la documentación de los módulos puede encontrarse una descripción extendida de todas las funcionalidades que poseen y cómo utilizarlas.&lt;br /&gt;
&lt;br /&gt;
El siguiente es el código fuente de un módulo de Perl que implementa una clase llamada “Cafetera”, con un único método llamado “prepararCafe”, que recibe como parámetro el número de tasas y devuelve como resultado un mensaje indicando el número de tasas preparadas:&lt;br /&gt;
&lt;br /&gt;
'''Código del archivo Cafetera.pm'''&lt;br /&gt;
&amp;lt;perl&amp;gt;&lt;br /&gt;
 #!/usr/bin/perl -w&lt;br /&gt;
 # Servicio web de ejemplo&lt;br /&gt;
 package Cafetera;&lt;br /&gt;
 use strict;&lt;br /&gt;
 # Este es el constructor&lt;br /&gt;
 sub new{&lt;br /&gt;
  my $proto = shift;&lt;br /&gt;
  my $class = ref($proto) || $proto;&lt;br /&gt;
  my $tasas = 0;&lt;br /&gt;
  bless($tasas,$class);&lt;br /&gt;
 }&lt;br /&gt;
 sub prepararCafe{&lt;br /&gt;
  shift;&lt;br /&gt;
  my $tasas = shift;&lt;br /&gt;
  print STDERR &amp;quot;Llamado con el parámetro $tasas&amp;quot;;&lt;br /&gt;
  return &amp;quot;Se prepararon &amp;quot;.$tasas.&amp;quot; tasas&amp;quot;;&lt;br /&gt;
 }&lt;br /&gt;
 1;&lt;br /&gt;
&amp;lt;/perl&amp;gt;&lt;br /&gt;
A continuación se muestra el uso del módulo SOAP::Lite para exponer el módulo Cafetera como un servicio web, usando el servidor tipo SOAP::Transport::HTTP::Daemon:&lt;br /&gt;
&lt;br /&gt;
'''Código del archivo servidor.pl'''&lt;br /&gt;
&amp;lt;perl&amp;gt;&lt;br /&gt;
 #!/usr/bin/perl -w&lt;br /&gt;
 # Servidor SOAP&lt;br /&gt;
 use SOAP::Transport::HTTP;&lt;br /&gt;
 use Cafetera;&lt;br /&gt;
 #En el parámetro dispatch_to se especifica la ruta a los módulos disponibles&lt;br /&gt;
 my $daemonio = SOAP::Transport::HTTP::Daemon&lt;br /&gt;
  -&amp;gt; new(LocalAddr =&amp;gt; 'localhost', LocalPort =&amp;gt; 8070)&lt;br /&gt;
  -&amp;gt; dispatch_to('/home/tesis/thewala/preparacion/P.5-IP/productos/servicio-en-perl','Cafetera')&lt;br /&gt;
 ;&lt;br /&gt;
 print &amp;quot;La url del daemonio es:&amp;quot;.$daemonio-&amp;gt;url().&amp;quot; &amp;quot;;&lt;br /&gt;
 $daemonio-&amp;gt;handle();&lt;br /&gt;
&amp;lt;/perl&amp;gt;&lt;br /&gt;
Desde éste momento, cualquier aplicación puede empezar a consumir el servicio web, si sabe cómo invocarlo. A continuación se muestra un cliente del servicio hecho en Perl con SOAP::Lite:&lt;br /&gt;
&lt;br /&gt;
'''Código del archivo cliente.pl'''&lt;br /&gt;
&amp;lt;perl&amp;gt;&lt;br /&gt;
 #!/usr/bin/perl -w&lt;br /&gt;
 use strict;&lt;br /&gt;
 use SOAP::Lite;&lt;br /&gt;
 my $soap = SOAP::Lite&lt;br /&gt;
  -&amp;gt;uri('http://localhost:8070/Cafetera')&lt;br /&gt;
  -&amp;gt;proxy('http://localhost:8070/')&lt;br /&gt;
 ;&lt;br /&gt;
 my $resultado= $soap-&amp;gt;prepararCafe(5)-&amp;gt;result;&lt;br /&gt;
 print &amp;quot;Preparando cafe: &amp;quot;.$resultado.&amp;quot; &amp;quot;;&lt;br /&gt;
&amp;lt;/perl&amp;gt;&lt;br /&gt;
Para que aplicaciones hechas en otros lenguajes o que no saben cómo invocar el servicio puedan acceder al mismo, se debe crear el archivo de descripción WSDL. A continuación se muestra el guión o “script” de perl que utiliza WSDL::Generator para crear el archivo WSDL:&lt;br /&gt;
&lt;br /&gt;
'''Código del archivo generar-wsdl.pl'''&lt;br /&gt;
&amp;lt;perl&amp;gt;&lt;br /&gt;
 #!/usr/bin/perl -w&lt;br /&gt;
 use WSDL::Generator;&lt;br /&gt;
 my $init = {&lt;br /&gt;
  'schema_namesp' =&amp;gt; 'http://localhost:8070/Cafetera.xsd',&lt;br /&gt;
  'services' =&amp;gt; 'Cafetera',&lt;br /&gt;
  'service_name' =&amp;gt; 'Cafetera',&lt;br /&gt;
  'target_namesp' =&amp;gt; 'http://localhost:8070/Cafetera.wsdl',&lt;br /&gt;
  'documentation' =&amp;gt; 'Servicio Web de Prueba',&lt;br /&gt;
  'location' =&amp;gt; 'http://localhost:8070/Cafetera'&lt;br /&gt;
 };&lt;br /&gt;
 my $w = WSDL::Generator-&amp;gt;new($init);&lt;br /&gt;
 Cafetera-&amp;gt;prepararCafe(5);&lt;br /&gt;
 print $w-&amp;gt;get(Cafetera);&lt;br /&gt;
&amp;lt;/perl&amp;gt;&lt;br /&gt;
La salida de este guión de Perl constituye el documento wsdl que debe ser publicado para que cualquiera pueda acceder al servicio Cafetera. La siguiente es la salida del guión, la cuál puede guardarse en el archivo Cafetera.wsdl:&lt;br /&gt;
&lt;br /&gt;
'''Código del archivo Cafetera.wsdl'''&lt;br /&gt;
&amp;lt;xml&amp;gt;&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
 &amp;lt;definitions&lt;br /&gt;
  name=&amp;quot;Cafetera&amp;quot;&lt;br /&gt;
  xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot;&lt;br /&gt;
  xmlns:soap=&amp;quot;http://schemas.xmlsoap.org/wsdl/soap/&amp;quot;&lt;br /&gt;
  targetNamespace=&amp;quot;http://localhost:8070/Cafetera.wsdl&amp;quot;&lt;br /&gt;
  xmlns:tns=&amp;quot;http://localhost:8070/Cafetera.wsdl&amp;quot;&lt;br /&gt;
  xmlns=&amp;quot;http://schemas.xmlsoap.org/wsdl/&amp;quot;&lt;br /&gt;
  xmlns:xsdl=&amp;quot;http://localhost:8070/Cafetera.xsd&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;types&amp;gt;&lt;br /&gt;
  &amp;lt;xsd:schema targetNamespace=&amp;quot;http://localhost:8070/Cafetera.xsd&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;prepararCafeRequest&amp;quot; type=&amp;quot;xsd:string&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;prepararCafeResponse&amp;quot; type=&amp;quot;xsd:string&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:schema&amp;gt;&lt;br /&gt;
 &amp;lt;/types&amp;gt;&lt;br /&gt;
 &amp;lt;message name=&amp;quot;prepararCafeRequest&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;part name=&amp;quot;prepararCafeRequestSoapMsg&amp;quot; element=&amp;quot;xsdl:prepararCafeRequest&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/message&amp;gt;&lt;br /&gt;
 &amp;lt;message name=&amp;quot;prepararCafeResponse&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;part name=&amp;quot;prepararCafeResponseSoapMsg&amp;quot; element=&amp;quot;xsdl:prepararCafeResponse&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/message&amp;gt;&lt;br /&gt;
 &amp;lt;portType name=&amp;quot;CafeteraCafeteraPortType&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;operation name=&amp;quot;prepararCafe&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;input message=&amp;quot;tns:prepararCafeRequest&amp;quot; /&amp;gt;&lt;br /&gt;
   &amp;lt;output message=&amp;quot;tns:prepararCafeResponse&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/operation&amp;gt;&lt;br /&gt;
 &amp;lt;/portType&amp;gt;&lt;br /&gt;
 &amp;lt;binding name=&amp;quot;CafeteraCafeteraBinding&amp;quot; type=&amp;quot;tns:CafeteraCafeteraPortType&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;soap:binding style=&amp;quot;document&amp;quot; transport=&amp;quot;http://schemas.xmlsoap.org/soap/http&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;operation name=&amp;quot;prepararCafe&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;soap:operation style=&amp;quot;document&amp;quot; soapAction=&amp;quot;&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;input&amp;gt;&lt;br /&gt;
    &amp;lt;soap:body use=&amp;quot;literal&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;/input&amp;gt;&lt;br /&gt;
   &amp;lt;output&amp;gt;&lt;br /&gt;
    &amp;lt;soap:body use=&amp;quot;literal&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;/output&amp;gt;&lt;br /&gt;
  &amp;lt;/operation&amp;gt;&lt;br /&gt;
 &amp;lt;/binding&amp;gt;&lt;br /&gt;
 &amp;lt;service name=&amp;quot;Cafetera&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;documentation&amp;gt;&lt;br /&gt;
  Servicio Web de Prueba&lt;br /&gt;
 &amp;lt;/documentation&amp;gt;&lt;br /&gt;
 &amp;lt;port name=&amp;quot;CafeteraCafeteraPort&amp;quot; binding=&amp;quot;tns:CafeteraCafeteraBinding&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;soap:address location=&amp;quot;http://localhost:8070/Cafetera&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/port&amp;gt;&lt;br /&gt;
 &amp;lt;/service&amp;gt;&lt;br /&gt;
 &amp;lt;/definitions&amp;gt;&lt;br /&gt;
&amp;lt;/xml&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Referencias=&lt;br /&gt;
*http://www.soaplite.com&lt;br /&gt;
*“Programming Web Services with Perl”. De Randy J. Ray y Pavel Kulchenko. 2002&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Alerios</id>
		<title>Usuario:Alerios</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Alerios"/>
				<updated>2013-12-04T10:06:11Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «__NOTOC__ = Alejandro Ríos Peña = english  [http://www.unicauca.edu.co/programapre.php?Idprogpre=10&amp;amp;Idfac=3 Ing. en Electrónica y Telecomunic...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
= Alejandro Ríos Peña =&lt;br /&gt;
[[Usuario:Alerios#english|english]]&lt;br /&gt;
&lt;br /&gt;
[http://www.unicauca.edu.co/programapre.php?Idprogpre=10&amp;amp;Idfac=3 Ing. en Electrónica y Telecomunicaciones].&lt;br /&gt;
&lt;br /&gt;
Integrante fundador del [[GLUC|Grupo GNU/Linux de la Universidad del Cauca]].&lt;br /&gt;
&lt;br /&gt;
Socio fundador de la empresa [http://www.avatar.com.co Avatar ltda].&lt;br /&gt;
&lt;br /&gt;
Integrante de la comunidad [http://www.debiancolombia.org Debian-Colombia].&lt;br /&gt;
&lt;br /&gt;
http://www.debiancolombia.org/home/img/logocol.png&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Linux-user-354280.gif]] [http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=354280 Usuario linux #354280].&lt;br /&gt;
&lt;br /&gt;
== [http://alerios.blogspot.com/ Blog] ==&lt;br /&gt;
&lt;br /&gt;
==Publicaciones y Charlas==&lt;br /&gt;
*[[Columnas_Ordenadas_por_Autor#Alerios|Columnas escritas en éste sitio web]]&lt;br /&gt;
*&amp;quot;[http://afrodita.unicauca.edu.co/~alerios/publicaciones/2004-11-01-proyecto-debian/2004-10-27-proyecto-debian-html/index.html El Proyecto Debian]&amp;quot;.&lt;br /&gt;
*Otras en el evento insigne del GLUC, &amp;quot;[[Vive La Vida Linux]]&amp;quot;.&lt;br /&gt;
*Y algunas en [http://afrodita.unicauca.edu.co/~alerios/index.php?opc=4 mi página de unicauca].&lt;br /&gt;
&lt;br /&gt;
== Registro histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde:''' Mayo de 2.003&lt;br /&gt;
&lt;br /&gt;
===Actividades Realizadas===&lt;br /&gt;
*He participadode casi todas las actividades del grupo desde sus inicios (ver [[Trayectoria]]).&lt;br /&gt;
*Coordinador General en el primer semestre académico del 2.004.&lt;br /&gt;
*Administrador de Medios Electrónicos desde el segundo periodo del 2.004 hasta junio de 2.005.&lt;br /&gt;
*'''2005-06-11.''' Charla sobre el GLUC en la Universidad Autónoma de Occidente, sede Popayán.&lt;br /&gt;
&lt;br /&gt;
==english==&lt;br /&gt;
[[GLUC|GLUC's (University of Cauca's LUG)]] co-founder.&lt;br /&gt;
&lt;br /&gt;
[http://www.unicauca.edu.co/programapre.php?Idprogpre=10&amp;amp;Idfac=3 Electronics and Telecomunications Engineer].&lt;br /&gt;
&lt;br /&gt;
[http://www.avatar.com.co Avatar ltd.] co-founder. Avatar is a free software based Colombian enterprise.&lt;br /&gt;
&lt;br /&gt;
Part of the [http://www.debiancolombia.org Debian-Colombia Community].&lt;br /&gt;
&lt;br /&gt;
[http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=354280 Linux user #354280].&lt;br /&gt;
&lt;br /&gt;
===Publications===&lt;br /&gt;
*&amp;quot;[http://afrodita.unicauca.edu.co/~alerios/publicaciones/2004-11-01-proyecto-debian/2004-10-27-proyecto-debian-html/index.html The Debian Project]&amp;quot;, presented at the II SurOccidental Free Software Congress. &lt;br /&gt;
*[[Columnas_Ordenadas_por_Autor#Alerios|Articles published on this website]].&lt;br /&gt;
*Other on the periodical event &amp;quot;[[Vive La Vida Linux]]&amp;quot;.&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Migrando_el_Sitio_Web_del_GLUC</id>
		<title>Migrando el Sitio Web del GLUC</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Migrando_el_Sitio_Web_del_GLUC"/>
				<updated>2013-12-04T10:05:31Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Diciembre 13 de 2.004.'''  '''Por Alejandro Ríos Peña.'''  La semana pasada salió al aire el nuevo portal del GLUC (versión 3.0, según mis cuent...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Diciembre 13 de 2.004.'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Alerios|Alejandro Ríos Peña]].'''&lt;br /&gt;
&lt;br /&gt;
La semana pasada salió al aire el nuevo portal del GLUC (versión 3.0, según mis&lt;br /&gt;
cuentas), con el que esperamos entrar a una nueva era de administración&lt;br /&gt;
compartida y apropiación del mismo por parte de todos los miembros del&lt;br /&gt;
GLUC. &lt;br /&gt;
&lt;br /&gt;
El nuevo portal está basado en la tecnología wiki y [http://validator.w3.org/check?uri=http%3A%2F%2Fgluc.unicauca.edu.co%2Fwiki%2Findex.php%2FPortada   cumple con los estándares de la W3C para XHTML 1.0]. En ésta&lt;br /&gt;
columna espero poder hacer un pequeño resumen del proceso de migración, y una síntesis de todos sus servicios y la forma de utilizarlo. &lt;br /&gt;
&lt;br /&gt;
==Historia y Migración==&lt;br /&gt;
&lt;br /&gt;
Hablo de una tercera versión del portal, porque ya he visto dos cambios grandes en el mismo desde que salió al aire por primera vez, en julio del año 2.003. Desde entonces, el portal del GLUC ha sido el epicentro de las actividades del grupo en Internet y un nuevo punto de referencia para el software libre en el suroccidente Colombiano. De nuestra sección de [[Trayectoria]] pueden extraerse algunos hitos en las estadísticas del sitio web:&lt;br /&gt;
&lt;br /&gt;
*Noviembre de 2.003: Se alcanza una cifra de más de 300 usuarios inscritos, y más de 450 mensajes publicados en los foros del portal web.&lt;br /&gt;
*Agosto de 2.004: Se inicia el espacio de &amp;quot;[[Artículos y Columnas|Columnistas GLUC]]&amp;quot; en el portal del Grupo.&lt;br /&gt;
*Septiembre de 2.004: Se cuenta con más de 40 columnas y más de 450 inscritos en el portal.&lt;br /&gt;
&lt;br /&gt;
A la fecha de publicación de ésta columna, se han publicado más de 60 columnas y artículos, y los [[Foros de Ayuda]] del portal tienen 519 usuarios registrados, los cuales han publicado un total de 946 mensajes. &lt;br /&gt;
&lt;br /&gt;
La primera versión del portal era un [http://www.phpnuke.org PHP-Nuke] con todos los módulos que trae por defecto este CMS(*) activos y con un tema diseñado entre Diego Alejandro Paz y uno de los diseñadores de la Red de Datos de la Universidad.&lt;br /&gt;
&lt;br /&gt;
A pricipios del 2.004, cuando se formalizó la [[GLUC|organización del grupo]], se hicieron páginas nuevas, se cambiaron los enlaces que habían en la página de inicio, se deshabilitaron varios módulos de PHP-Nuke que no se utilizaban y se crearon nuevos servicios, como el [[Chat IRC|cliente web del chat irc]], la [http://gluc.unicauca.edu.co/gallery/albums.php galería de fotos], y la posibilidad de [http://gluc.unicauca.edu.co/archivos descargar algunos archivos importantes].&lt;br /&gt;
&lt;br /&gt;
Desde entonces, el portal aumentó su acogida y poco a poco se fortaleció. Sin embargo, se fueron presentando varias situaciones que motivaron la migración hacia una nueva forma de manejar el portal, entre las que se encontraban:&lt;br /&gt;
&lt;br /&gt;
*Desorden descomunal del sitio en general, y en especial en la página de inicio y el menú de navegación.&lt;br /&gt;
*Dificultad para asegurar la uniformidad de estilo en las columnas semanales.&lt;br /&gt;
*Inconformidad con el manejo de estándares de la [http://www.w3c.org W3C] por parte de PHP-Nuke.&lt;br /&gt;
*Necesidad de agilizar las tareas de creación de nuevas páginas y subida de archivos por parte de los coordinadores de las [[Áreas de Trabajo]] y otros miembros activos del GLUC.&lt;br /&gt;
*Estancamiento de muchas páginas por la poca frecuencia de actualización causada por tener un sólo administrador del sitio web.&lt;br /&gt;
&lt;br /&gt;
La escogencia del nuevo CMS(*) a utilizar para el portal del GLUC se discutió ampliamente en las reuniones del grupo y de la junta directiva, y por el canal de IRC. Inicialmente, se propuso la utilización de varios CMS listados en http://www.opensourcecms.com que podrían cumplir con lo que se necesitaba para el GLUC. &lt;br /&gt;
&lt;br /&gt;
Una de las alternativas más fuertes fue siempre [http://www.plone.org/ Plone], sin embargo, éste software resulta imposible de instalar en el espacio de alojamiento que nos provee la Universidad, básicamente porque plone usa un servidor web autocontenido y la Universidad tiene un servidor LAMP (Linux+Apache+MySQL+PHP).&lt;br /&gt;
&lt;br /&gt;
Finalmente se optó por un wiki y [http://www.mediawiki.org/ MediaWiki], el software utilizado por [http://www.wikipedia.org WikiPedia], nos pareció la alternativa indicada cuando lo pudimos utilizar con éxito en http://www.el-directorio.org y en una instalación temporal que realizamos con el fin de crear el [[ProyectoAdopcionUnicauca|Proyecto de Adopción de Software Libre en Unicauca]]. &lt;br /&gt;
&lt;br /&gt;
El proceso de migración tuvo varias etapas, de las cuales ya se han terminado la mayoría:&lt;br /&gt;
&lt;br /&gt;
===Migración de servicios externos a PHP-Nuke===&lt;br /&gt;
Varios servicios del portal no estaban implementados con PHP-Nuke y resultaron fáciles de trasladar. Estos servicios son: la [[Lista de Correo]] (servicio prestado con [http://www.gnu.org/software/mailman/ mailman] por la Red de Datos de la U), el [[Chat IRC|cliente web del chat irc]] (implementado con [http://cgiirc.sourceforge.net/ cgiirc]) y la galería de fotos (implementada con [http://gallery.sourceforge.net/ gallery]).&lt;br /&gt;
&lt;br /&gt;
El traslado de las páginas de contenido también resultó sencillo, reduciéndose a la tarea de copiar y pegar texto, y editarlo de acuerdo a la sintaxis de MediaWiki.&lt;br /&gt;
&lt;br /&gt;
Cabe anotar que una de las metas más importantes a la hora de adaptar el wiki al GLUC, tenía que ser la posibilidad de tener absolutamente todo traducido al español y poder cambiar a nuestro gusto el menú de navegación principal.&lt;br /&gt;
&lt;br /&gt;
Para traducir las cadenas que por defecto no están traducidas cuando se instala el wiki, fue necesario utilizar la página especial de éste software llamada [[Especial:Allmessages]].&lt;br /&gt;
&lt;br /&gt;
La edición del menú de navegación tuvo que ser hecha a mano, editando el archivo &amp;quot;xhtml_slim.pt&amp;quot; ubicado en el directorio &amp;quot;templates&amp;quot; de las fuentes del wiki.&lt;br /&gt;
&lt;br /&gt;
===Migración de las noticias===&lt;br /&gt;
Las noticias eran el único servicio de PHP-Nuke que realmente nos estaba siendo útil al momento de la migración, razón por la cuál me resultó complicado plantear la nueva forma en que se iba a manejar la publicación de noticias. &lt;br /&gt;
&lt;br /&gt;
Finalmente, junto con [[Usuario:Ceronman|Manuel Cerón]], decidimos ver la forma en que se hace el manejo de noticias en la [http://www.wikipedia.org WikiPedia] y copiarla. Como era de esperarse, [http://www.wikipedia.org WikiPedia] maneja sus noticias como todo lo demás: simplemente todo es un wiki y hay que editarlo. &lt;br /&gt;
&lt;br /&gt;
Fue así como hice una adaptación del mecanismo empleado por la [http://www.wikipedia.org WikiPedia] para el manejo de las noticias, el cuál puede verse [[Diciembre de 2004|aquí]]. Lo único que francamente me aterrorizó fue la idea de tener que pasar al nuevo formato, una a una, las 188 noticias anteriormente publicadas. Pero para no perder éstas noticias, jugué un poco con sentencias SQL en la base de datos de PHP-Nuke y logré extraer los encabezados de las mismas y ponerlas en un compendio de [[Noticias Anteriores a Diciembre de 2004]].&lt;br /&gt;
&lt;br /&gt;
En los próximos días escribiré una página explicando la forma de agregar nuevas noticias en nuestro sitio web. &lt;br /&gt;
&lt;br /&gt;
===Migración de los articulos y columnas===&lt;br /&gt;
La dificultad de ésta parte de la migración radica en que puede ser una tarea bastante dispendiosa. Una a una tendrán que ser pasadas todas las columnas y artículos escritos hasta la fecha al nuevo formato, y serán listadas y enlazadas desde la sección [[Artículos y Columnas]].&lt;br /&gt;
&lt;br /&gt;
===Migración de los foros===&lt;br /&gt;
Esta resultó ser la etapa más crítica del proceso de migración y todo un karma para mi. El principal problema tuvo su origen en un craso error: no haber usado el software para los [[Foros de Ayuda]] ([http://www.phpbb.com/ phpBB]) aisladamente, sino una versión diseñada para estar integrada a PHP-Nuke. &lt;br /&gt;
&lt;br /&gt;
PhpBB es uno de los más populares sistemas de foros en el mundo del Software Libre, pero su versión integrada a PHP-Nuke no, lo cuál implica que no se encuentran disponibles actualizaciones frecuentes de seguridad ni de nada. &lt;br /&gt;
&lt;br /&gt;
La parte grave del problema se evidenció cuando traté de hacer una nueva instalación de phpBB (aparte de PHP-Nuke), pidiéndole al asistente de intalación que utilizara la base de datos de la versión integrada con PHPNuke. Esto no sólo resultó en una instalación fallida, sino en la pérdida de un par de tablas (aquí es cuando uno se acuerda de las copias de seguridad que no realiza frecuentemente).&lt;br /&gt;
&lt;br /&gt;
Bueno, luego de batallar un poco con phpMyAdmin y phpBB, logré recuperar todos los mensajes de los foros, aunque no pude recuperar algunos temas, razón por la cuál algunos mensajes no aparecen en la versión actual del foro. Estos mensajes sí están en la base de datos, pero no se pueden mostrar porque no tienen un tema asociado. Si alguien necesita recuperar uno de esos mensajes, le pido que  me envie un correo y yo le enviaré de vuelta el mensaje.&lt;br /&gt;
&lt;br /&gt;
==Servicios y Uso==&lt;br /&gt;
Prácticamente todos los servicios que tenían un uso real en el portal anterior fueron migrados a esta nueva versión. La idea general con el uso del nuevo portal es que todos los miembros activos del gluc tengan cuenta en el wiki y puedan cambiar la mayoría de las&lt;br /&gt;
páginas, salvo la portada, y las columnas. &lt;br /&gt;
&lt;br /&gt;
Todos los miembros de la comunidad vinculada al GLUC y que no son&lt;br /&gt;
miembros activos, se distinguirán por que son los que sólo tienen cuenta&lt;br /&gt;
en los [[Foros de Ayuda]] y no en el wiki.&lt;br /&gt;
&lt;br /&gt;
Los miembros activos del GLUC, pueden pedir a su coordinador&lt;br /&gt;
de área que les cree la cuenta en el wiki para que puedan empezar a&lt;br /&gt;
utilizarlo y crear nuevas páginas cuando quieran.&lt;br /&gt;
&lt;br /&gt;
Se espera que de ahora en adelante el sitio crezca mucho más, tanto en calidad como en cantidad de contenidos y pueda prestar un mejor servicio a la comunidad.&lt;br /&gt;
&lt;br /&gt;
==Por Hacer==&lt;br /&gt;
Éstas son las cosas que aún no están terminadas y que espero hacer en los próximos días:&lt;br /&gt;
*Terminar de pasar todas las columnas y artículos.&lt;br /&gt;
*Escribir una página explicando la forma de agregar nuevas noticias en nuestro sitio web. &lt;br /&gt;
*Escribir una página sobre las generalidades de uso y administración del sitio.&lt;br /&gt;
&lt;br /&gt;
==Referencias==&lt;br /&gt;
*[http://listas.unicauca.edu.co/pipermail/gluc/2004-December/000237.html Anuncio enviado a la lista de correo del gluc].&lt;br /&gt;
*[http://meta.wikimedia.org/wiki/Documentation:_Administrator%27s_Guide Guía de Administración de MediaWiki].&lt;br /&gt;
&lt;br /&gt;
(*)CMS: Los Sistemas para Gestión de Contenidos (Content Management System) son sistemas de información prefabricados, con un gran número de servicios y fácilmente personalizables para ser utilizados por cualquier grupo de personas. Vea http://www.opensourcecms.com/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Yenny</id>
		<title>Usuario:Yenny</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Yenny"/>
				<updated>2013-12-04T10:04:57Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «=Yenny Alexandra Méndez Alegría= &amp;lt;!-- poner aquí la info personal que quiera --&amp;gt; email:  ymendal@unicauca.edu.co   == Registro histórico en el GLUC ==  '''Miembro activ...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Yenny Alexandra Méndez Alegría=&lt;br /&gt;
&amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;&lt;br /&gt;
email:  ymendal@unicauca.edu.co&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Registro histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde:''' Noviembre de 2003&lt;br /&gt;
&lt;br /&gt;
'''Área de Trabajo:''' Promoción y Socialización&lt;br /&gt;
&lt;br /&gt;
== Actividades Realizadas como integrante del GLUC ==&lt;br /&gt;
Coordinadora de la Campaña Antipirateria [http://gluc.unicauca.edu.co/wiki/index.php/Campa%F1a_Antipirateria]&lt;br /&gt;
&lt;br /&gt;
Productora del Programa de Radio Enlace Virtual&lt;br /&gt;
[http://gluc.unicauca.edu.co/wiki/index.php/Programa_de_Radio_%22Enlace_Virtual%22]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Inconvenientes_con_el_Software_Libre_Educativo</id>
		<title>Inconvenientes con el Software Libre Educativo</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Inconvenientes_con_el_Software_Libre_Educativo"/>
				<updated>2013-12-04T10:04:36Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Febrero 7 de 2005'''  '''Por Yenny Alexandra Méndez Alegría.'''  Las Instituciones Educativas en la actualidad desconocen del Software Educativo y en...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Febrero 7 de 2005'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Yenny|Yenny Alexandra Méndez Alegría.]]'''&lt;br /&gt;
&lt;br /&gt;
Las Instituciones Educativas en la actualidad desconocen del Software Educativo y en particular del Software Libre Educativo como una herramienta de soporte para los procesos de enseñanza y aprendizaje. Se utiliza otro tipo de Software por diferentes razones, entre ellas están:&lt;br /&gt;
&lt;br /&gt;
''Algunas casas desarrolladoras de Software ofrecen la licencia de manera “gratuita”''.  Estos ofrecimientos son estrategias de mercadeo creadas por las casas desarrolladoras, para que el usuario utilice siempre sus herramientas y de esta manera cuando salga a su vida laboral las siga utilizando y retribuya el “obsequio” ahora sí pagando por las licencias. Las personas desconocen que existe gran cantidad de Software Libre Educativo en Internet y que la mayoría tiene un costo de cero pesos.&lt;br /&gt;
&lt;br /&gt;
''Los docentes y directivos de las Instituciones desconocen de otras opciones diferentes a lo comercial''.  Es obvio que lo más importante para las casas desarrolladoras es vender sus productos y la publicidad que manejan alrededor de estos es amplia, caso contrario sucede con el Software Libre, el cual solamente hasta ahora se está dando a conocer.&lt;br /&gt;
&lt;br /&gt;
''El Software Libre Educativo que existe es difícil de instalar''.  Gran cantidad del Software no ha sido desarrollado para fines comerciales sino académicos o son aportes que los desarrolladores quieren dejar a la comunidad, motivo por el cual en algunas ocasiones no se preocupa por darle facilidades al usuario final en el uso del Software.&lt;br /&gt;
&lt;br /&gt;
''Gran cantidad del Software Libre Educativo existente se encuentra en otros idiomas diferentes al habitual''.  Los colaboradores del Software Libre están ubicados en diferentes partes del mundo y debido a ello es natural pensar en que cada uno desarrolla el Software en su propio idioma.&lt;br /&gt;
&lt;br /&gt;
''No se tiene muy buena documentación con respecto al Software Libre Educativo''.  Es frecuente encontrar Software Libre Educativo en Internet del cual no se conoce ni cómo funciona ni para qué sirve.&lt;br /&gt;
&lt;br /&gt;
''Ya se han tenido experiencias con Software Libre y no han dejado muy buenos resultados''.  Algunas Instituciones Educativas han optado por utilizar Software Libre pero no han encontrado el soporte necesario para mantener su uso.&lt;br /&gt;
&lt;br /&gt;
Estas y muchas otras razones conllevan a que en las Instituciones Educativas se les dé únicamente clases de un procesador de texto específico, una hoja de cálculo específica y no podían faltar las clases para enseñar mecanografía a los estudiantes, quitándoles la oportunidad de utilizar software que realmente les sirva de soporte para su formación académica.&lt;br /&gt;
&lt;br /&gt;
La razón de este artículo no es juzgar los inconvenientes que se tienen al respecto del Software Libre Educativo, tiene varios propósitos:  incentivar a las personas que tienen relación con el Software Libre a que se dé a conocer en todos aquellos lugares que tienen vínculos con la Educación; motivar a los desarrolladores y a la comunidad del Software Libre que se empiece a pensar en el usuario final, en el docente que no tiene mucha experiencia con los computadores y en la importancia que tiene  la documentación del Software.  Si la comunidad de Software Libre empieza a preocuparse por el Software Libre Educativo, logrará que los niños, los jóvenes y toda la comunidad en general conozcan y utilicen el Software Libre.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:Wpantoja</id>
		<title>Usuario:Wpantoja</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:Wpantoja"/>
				<updated>2013-12-04T10:03:51Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «=W. Libardo Pantoja Y.= &amp;lt;!-- poner aquí la info personal que quiera --&amp;gt; wpantoja@unicauca.edu.co   == Registro histórico en el GLUC ==  '''Miembro activo del gluc desde:'...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=W. Libardo Pantoja Y.=&lt;br /&gt;
&amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;&lt;br /&gt;
wpantoja@unicauca.edu.co&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Registro histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde:''' Febrero de 2003&lt;br /&gt;
&lt;br /&gt;
'''Área de Trabajo:''' Investigación y Desarrollo&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Usuario:NKT</id>
		<title>Usuario:NKT</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Usuario:NKT"/>
				<updated>2013-12-04T10:03:17Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con « &amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;  == Registro histórico en el GLUC ==  '''Miembro activo del gluc desde: '''2003/10    '''Coordinación del Área de Inves...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&amp;lt;!-- poner aquí la info personal que quiera --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Registro histórico en el GLUC ==&lt;br /&gt;
&lt;br /&gt;
'''Miembro activo del gluc desde: '''2003/10  &lt;br /&gt;
&lt;br /&gt;
'''Coordinación del Área de Investigación y Desarrollo 2004-2005'''&lt;br /&gt;
&lt;br /&gt;
'''Área de Trabajo:''' Investigación y Desarrollo&lt;br /&gt;
&lt;br /&gt;
'''Actividades: '''Investigaciones en Hacking y Seguridad Informática&lt;br /&gt;
&lt;br /&gt;
   nkt&lt;br /&gt;
   &amp;quot;there's not the spoon&amp;quot;&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Razones_para_Usar_Software_Libre_en_las_Universidades</id>
		<title>Razones para Usar Software Libre en las Universidades</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Razones_para_Usar_Software_Libre_en_las_Universidades"/>
				<updated>2013-12-04T10:02:53Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Diciembre 6 de 2.004'''  '''Por: W. Libardo Pantoja Yépez'''   Soy docente universitario en el área de sistemas y me atrevo a afirmar que los bene...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Diciembre 6 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por: [[Usuario:Wpantoja|W. Libardo Pantoja Yépez]]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Soy docente universitario en el área de sistemas y me atrevo a afirmar que los beneficios logrados al usar software libre en el ambiente académico universitario superan los beneficios de usar software propietario. En febrero de 2003, a manera de experimento e impulsado por un artículo de internet, decidí cambiar de plataforma de trabajo a Linux y comprobar si podía “sobrevivir” únicamente utilizando herramientas de software libre en mi trabajo cotidiano. Básicamente los programas que necesitaba eran: un buen sistema operativo, un paquete de ofimática, programas típicos de internet (navegadores, chat, e-mail) y lenguajes de programación como C++ y Java. En ese momento, jamás pensé encontrar un mundo tan fascinante, impactante y divertido.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Más tarde, después de navegar por artículos y compartir ideas con otras personas, comprendería las ventajas de utilizar software libre en la preparación de nuestros futuros profesionales. A continuación describo algunas de ellas, desde un punto de vista académico:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Gracias a las cuatro libertades sobre las cuales se fundamente el software libre y en particular, la libertad de estudiar el software, tenemos acceso al código fuente de una gran variedad de programas y aprender de esa fuente inmensa de conocimiento. Así como los estudiantes de literatura deben leer montañas de obras, y los abogados en su preparación deben leer muchos libros de legislación, de igual forma los ingenieros de sistemas, electrónicos y afines deben leer muchas líneas de código de programas para lograr una formación aceptable. Repositorios de software libre de internet como [http://www.sourceforge.net www.sourceforge.net]  contienen cientos de proyectos de software libre a los cuales podemos acceder y estudiar su código.&lt;br /&gt;
 &lt;br /&gt;
* Ante la rápida evolución tecnológica que estamos viviendo he llegado a la conclusión que la mejor herencia que la Universidad nos puede dejar es enseñarnos cómo funcionan las cosas, de tal forma que con unas sólidas bases podamos comprender rápidamente las nuevas tecnologías que vayan apareciendo. Esto se puede hacer, solamente con software libre ya que con software propietario aspiramos, como máximo, a ser tan sólo expertos en el manejo de una herramientas ignorando por completo cómo funcionan por dentro. Con software libre tenemos la valiosa ventaja de estudiar por dentro un motor de base de datos, un navegador web, un compilador, un graficador, un sistema operativo, entre otros.&lt;br /&gt;
&lt;br /&gt;
* Muchas personas tienen en sus equipos software propietario ilegal, quizá por que no tienen dinero suficiente para comprarlo o por ignorancia, ciertamente están cometiendo un delito. Si eres estudiante, docente o empresario y haces lo mismo, en el fondo de tu ser y conciencia sabrás que eso no está bien. La solución ante este problema es utilizar software libre.&lt;br /&gt;
&lt;br /&gt;
* ¿Cuántas veces hemos tenido que formatear el disco duro porque un virus se entró causando desastres en nuestras máquinas? Con el sistema operativo Linux te olvidas de este problema; llevo casi dos años utilizando linux, conectado a internet 10 horas al día y no he tenido problemas relacionado con los virus.&lt;br /&gt;
&lt;br /&gt;
* Trabajar con software libre disminuye la brecha tecnológica entre los países del tercer y primer mundo. Nuestros estudiantes pueden prepararse estudiando y participando de proyectos de software reales, compuestos por equipos de trabajo brillantes, distribuidos geográficamente por todo el mundo, y mejor aún, trabajar en nuestros propios requerimientos tecnológicos. Lo peor que nos puede pasar es convertirnos en consumidores de tecnologías de países avanzados porque esta situación implica estar condenados al sometimiento.&lt;br /&gt;
&lt;br /&gt;
* He visto las destrezas adquiridas por los estudiantes al usar linux y software libre, se vuelven persistentes, inquietos y “cacharreros”; simplemente, linux los despierta del letargo del click, obligándolos a interactuar con el sistema operativo. No hay cosa más grata para un estudiante de ingeniería que tener la posibilidad de recompilar el kernel del sistema operativo o ver cómo se administran los usuarios y se adjudican permisos.&lt;br /&gt;
&lt;br /&gt;
* Cada vez son más las empresas e instituciones que se migran al software libre, guiados inicialmente por el estímulo de ahorrar dinero (aunque luego se dan cuenta de otras características como calidad, desempeño y seguridad)en licencias costosas, esto hace, que el mercado laboral requiera ingenieros y técnicos con conocimientos en estas tecnologías.&lt;br /&gt;
&lt;br /&gt;
* La variedad es una de las características del software libre. Tenemos variedades de distribuciones de sistemas operativos, varios navegadores web, paquetes de ofimática, reproductores de multimedia, etc., de tal forma, que no se depende tecnológicamente de ninguna casa productora de software. Un buen sitio donde encontramos equivalentes entre software libre y propietario es: http://linuxshop.ru/linuxbegin/win-lin-soft-en/table.shtml.&lt;br /&gt;
&lt;br /&gt;
* Las universidades, anualmente, tienen que renovar los famosos y costosos “campus agreement” con casas desarrolladoras como Microsoft, para poder utilizar sus productos. Al adoptar software libre, se ahorran millones de pesos, que puede ser invertidos en otras áreas como la ampliación de salas de cómputo, dotación de bibliotecas, ampliación de planta física, etc.&lt;br /&gt;
&lt;br /&gt;
* Al egresar de las universidades, nuestros ingenieros pueden fácilmente constituir empresas porque con software libre no necesitan capital inmenso en licenciamiento de paquetes de software, tan solo necesitan, su iniciativa e intelecto.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con lo anterior no afirmo que sea conveniente migrarse completamente al software libre, pues el mercado laboral está rodeado de software propietario, lo importante es que nuestros ingenieros salgan capacitados en los dos ámbitos de trabajo y al momento de asesorar una empresa tengan ambas opciones, comparar tecnologías, sus ventajas, desventajas y brindar la mejor elección.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para finalizar, recordemos que el software libre tiene un fundamento filosófico con implicaciones sociales acordes con la razón de ser de cualquier profesional: '''incidir positivamente en su entorno mejorando las condiciones de vida de sus semejantes'''. Ser profesional va allá de tener un empleo y ganar un sueldo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Programaci%C3%B3n_con_Ncurses</id>
		<title>Programación con Ncurses</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Programaci%C3%B3n_con_Ncurses"/>
				<updated>2013-12-04T10:02:18Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Febrero 14 de 2.005.'''  ''Por Wilson Libardo Pantoja Y.''  Las ncurses son librerías que permiten trabajar funciones similares a las contenidas en...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Febrero 14 de 2.005.'''&lt;br /&gt;
&lt;br /&gt;
''Por [[Usuario:Wpantoja|Wilson Libardo Pantoja Y]].''&lt;br /&gt;
&lt;br /&gt;
Las ncurses son librerías que permiten trabajar funciones similares a las contenidas en la librería conio.h del viejo turboC de Borland, entre las cuales están: gotoxy(), clrscr(), textcolor(), getch(), etc.  Con ncurses se pueden hacer aplicaciones gráficas elegantes en modo texto y de forma muy fácil.&lt;br /&gt;
&lt;br /&gt;
En Internet he encontrado mucha documentación sobre ncurses, sin embargo, para un principiante, la información es tan profunda que resulta complicado su entendimiento.  Mi intención es brindar un documento sencillo e introductorio sobre esta librería.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Un Programa sencillo: “Hola linux..”&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Utiliza un editor de texto cualquiera y copia (o digita) este programa y grábalo con el nombre programa.c:&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
 #include &amp;lt;ncurses.h&amp;gt;&lt;br /&gt;
 int main() {&lt;br /&gt;
        initscr();&lt;br /&gt;
        printw(&amp;quot;Hola linux!&amp;quot;);&lt;br /&gt;
        refresh();&lt;br /&gt;
        getch();&lt;br /&gt;
        endwin();&lt;br /&gt;
        return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Nótese que en este programa se ha incluído: #include &amp;lt;ncurses.h&amp;gt; , con lo cual se tiene acceso al uso de las siguientes funciones:&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
* initscr(): se la utiliza para inicializar un ventana en modo ncurses.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* printw(): es para imprimir texto en la ventana. Es importante usar printw y scanfw en lugar de printf, scanf, porque se tendrían salidas erróneas debido a los buffers intermedios de linux.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
* refresh(): sirve para refrescar la pantalla, todos los printw se muestran efectivamente al hacer refresh.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
* getch(): espera una sola pulsación de una sola tecla (sin tener que presionar “Enter”), devolviendo el código ASCII de la tecla pulsada como un entero.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
* endwin(): finaliza el modo de ncurses. Es importante colocar esta instrucción, de lo contrario el terminal queda desconfigurado, obligando a cerrar la consola.&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
Compilar el programa “Hola Linux”&lt;br /&gt;
&lt;br /&gt;
Para compilar desde consola este programa se debe utilizar el parámetro –lncurses, que indica al compilador que el programa está utilizando curses; el comando completo es:&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
gcc -lncurses programa.c&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ejemplos&lt;br /&gt;
&lt;br /&gt;
A continuación he elaborado algunos ejemplos sencillos y prácticos que ilustran como trabajar curses.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 /*dibujar_cuadro.c&lt;br /&gt;
 ESTE PROGRAMA DIBUJA UN CUADRO. UTILIZA LA LIBRERIA curses.h QUE SUSTITUYE DE ALGUNA FORMAA LA      CONIO.H DEL VIEJO TURBO C&lt;br /&gt;
 COMPILE ESTE PROGRAMA CON LA INSTRUCCION:  gcc dibujar_cuadro.c -o ejecutable -lncurses*/&lt;br /&gt;
 #include &amp;lt;curses.h&amp;gt; //Incluiremos una librería a nuestro sistemas&lt;br /&gt;
 #include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
 void salir (void);  //Esta funcion hará que nuestro programa se cierre&lt;br /&gt;
 int main(void)&lt;br /&gt;
 {&lt;br /&gt;
    int i;char c;&lt;br /&gt;
    initscr();   /*Esta función  inicializa  ncurses. Para todos los programas&lt;br /&gt;
                   debemos siempre inicializar  ncurses y luego finalizarla, como&lt;br /&gt;
                  veremos adelante. */&lt;br /&gt;
    c=95;//caracter ascci horizontal&lt;br /&gt;
    for(i=1;i&amp;lt;=120;i++)&lt;br /&gt;
    {&lt;br /&gt;
       //linea horizontal superior&lt;br /&gt;
       move(1,i);  //Aqui estamos moviendo el cursor para a linea 1 columna i.&lt;br /&gt;
       printw(&amp;quot;%c&amp;quot;,c);  //Imprimimos un texto en la posición establecida.&lt;br /&gt;
       //linea horizontal inferior&lt;br /&gt;
       move(40,i);  //Aqui estamos moviendo el cursor para a linea 40 columna i.&lt;br /&gt;
       printw(&amp;quot;%c&amp;quot;,c);  //Imprimimos un  texto en la posición establecida.&lt;br /&gt;
    }&lt;br /&gt;
    c=124 ; //caracter ascci vertical&lt;br /&gt;
    for(i=2;i&amp;lt;=40;i++)&lt;br /&gt;
    {&lt;br /&gt;
       //linea vertical izquierda&lt;br /&gt;
       move(i,1);&lt;br /&gt;
       printw(&amp;quot;%c&amp;quot;,c);&lt;br /&gt;
       //linea vertical derecha&lt;br /&gt;
       move(i,120);&lt;br /&gt;
       printw(&amp;quot;%c&amp;quot;,c);&lt;br /&gt;
    }&lt;br /&gt;
    refresh();&lt;br /&gt;
    //getch(); //si se desea hasta que se pulse una tecla&lt;br /&gt;
    sleep(3);//se detiene tres segundo&lt;br /&gt;
    salir();    // Salir del programa&lt;br /&gt;
 }&lt;br /&gt;
 /*********************************************************************/&lt;br /&gt;
 void salir()&lt;br /&gt;
 {&lt;br /&gt;
    endwin(); /*Siempre que finalizamos un programa con una biblioteca curses,&lt;br /&gt;
                     debemos ejecutar este comando.*/&lt;br /&gt;
    exit(0);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
A continuación un segundo ejemplo:&lt;br /&gt;
&lt;br /&gt;
 /*Este ejemplo captura las teclas y muestra el valor devuelto&lt;br /&gt;
 por cada uno de ellas. La tecla &amp;lt;Esc&amp;gt; parece más lenta pero eso&lt;br /&gt;
 es debido a que existe la necesidad de distinguir un caracter &amp;lt;Esc&amp;gt;&lt;br /&gt;
 aislado de una secuencia de caracteres que empiece por &amp;lt;Esc&amp;gt; y que&lt;br /&gt;
 podría venir de una tecla de función por ejemplo.*/&lt;br /&gt;
 #include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;curses.h&amp;gt;&lt;br /&gt;
 WINDOW *win; /** manejaremos una única ventana de pantalla completa **/&lt;br /&gt;
 /*********************************************************************/&lt;br /&gt;
 void IniVideo(){&lt;br /&gt;
        win=initscr(); /* Crea la ventana */&lt;br /&gt;
        clear();  /* Borra la pantalla entera bajo ncurses */&lt;br /&gt;
        refresh(); /* Actualiza la ventana con los cambios */&lt;br /&gt;
        noecho();&lt;br /&gt;
        cbreak();&lt;br /&gt;
        keypad(win, TRUE);&lt;br /&gt;
 }&lt;br /&gt;
 /*************************/&lt;br /&gt;
 Exit(){&lt;br /&gt;
        refresh();&lt;br /&gt;
        endwin();&lt;br /&gt;
        exit(1);&lt;br /&gt;
 }&lt;br /&gt;
 /*****************************************************************/&lt;br /&gt;
 main () {&lt;br /&gt;
        IniVideo();&lt;br /&gt;
        move(7, 30); /* x , y */&lt;br /&gt;
        printw(&amp;quot;Ctrl-C  para terminar&amp;quot;);&lt;br /&gt;
        for(;;){&lt;br /&gt;
                move(12, 30); /* x , y */&lt;br /&gt;
                printw(&amp;quot;%3d&amp;quot;, getch());&lt;br /&gt;
                refresh();&lt;br /&gt;
        }&lt;br /&gt;
        Exit();&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Ahora un tercer ejemplo, bastante elegante porque utiliza colores.  &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 #include &amp;lt;curses.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
 void sair (void);  //Esta función se utiliza al Salir del programa&lt;br /&gt;
 int main(void)&lt;br /&gt;
 {&lt;br /&gt;
    initscr();   /*Esta función inicializa los ncurses&lt;br /&gt;
    start_color(); //Esta función inicia los colores&lt;br /&gt;
 //Define pares de colores que serán definidos en el programa&lt;br /&gt;
 init_pair(1,COLOR_WHITE,COLOR_BLUE); //Texto(Blanco) | Fondo(Azul)&lt;br /&gt;
    init_pair(2,COLOR_BLUE,COLOR_WHITE); //Texto(Azul) | Fondo(Branco)&lt;br /&gt;
    init_pair(3,COLOR_RED,COLOR_WHITE);  //Texto(rojo) | Fundo(Blanco)&lt;br /&gt;
    bkgd(COLOR_PAIR(1));  /*Aqui define el color de fondo del programa&lt;br /&gt;
    attron(COLOR_PAIR(3));&lt;br /&gt;
    move(2,1);  //Aqui mueve el cursor a linea 2 columna 1.&lt;br /&gt;
    printw(&amp;quot;Olá mundo!!!&amp;quot;);  //Imprimimos el texto en la posición especificada &lt;br /&gt;
                               en la linea anterior.&lt;br /&gt;
    attroff(COLOR_PAIR(3));  /*Esta alterando el par de colores por omisión*/&lt;br /&gt;
    attron(COLOR_PAIR(2));&lt;br /&gt;
    move(3,1);&lt;br /&gt;
    printw(&amp;quot;Cualquier tecla para salir&amp;quot;); /*Imprime el texto en la posición&lt;br /&gt;
                                          especificada en la línea anterior */&lt;br /&gt;
    attroff(COLOR_PAIR(2));&lt;br /&gt;
    refresh();    //Actualiza la ventana&lt;br /&gt;
    getch();      //Espera que el usuario presione un tecla&lt;br /&gt;
    sair();    // llama a la función salir&lt;br /&gt;
 }&lt;br /&gt;
 /*********************************************************************/&lt;br /&gt;
 void salir()&lt;br /&gt;
 {&lt;br /&gt;
    endwin(); /*Siempre que finalizamos un programa con una biblioteca curses,&lt;br /&gt;
                     debemos ejecutar este comando.*/&lt;br /&gt;
    exit(0);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Y si aparte de esto todavía quieres trabajar con la conio.h que funcionaba con el Turbo C de DOS, recomiendo esta página en la cual se implementa dicha función a partir de ncurses:&lt;br /&gt;
&lt;br /&gt;
*http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=912&amp;amp;pagina=1&amp;amp;PHPSESSID=61c44ea8680ded9e8e83ba458073cd81&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Con lo descrito en este artículo entenderás lo básico para programar con curses en Linux.  Ahora, si ya quieres profundizar más recomiendo visitar las siguientes páginas:&lt;br /&gt;
&lt;br /&gt;
* http://lists.debian.org/debian-user-spanish/2001/04/msg00520.html=&amp;gt;Ejemplos sencillos y prácticos&lt;br /&gt;
* http://www.hackemate.com.ar/ezines/disidents/disidents004/disidents004/0X10.txt  =&amp;gt; Ejemplos con curses.&lt;br /&gt;
* http://sai.azc.uam.mx/apoyodidactico/ps/Apendice1/psape1.html=&amp;gt;Mucha teoría y algunos ejemplos&lt;br /&gt;
* http://ditec.um.es/~piernas/manpages-es/otros/tutorial-ncurses.html = &amp;gt; Para avanzados&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Estudiando_el_archivo_/etc/passwd</id>
		<title>Estudiando el archivo /etc/passwd</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Estudiando_el_archivo_/etc/passwd"/>
				<updated>2013-12-04T10:01:30Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Junio 15 de 2.004'''  '''Por NKT'''  La seguridad informática básicamente busca controlar los siguientes aspectos:  -&amp;gt;Confidencialidad: que la informac...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Junio 15 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:NKT|NKT]]'''&lt;br /&gt;
&lt;br /&gt;
La seguridad informática básicamente busca controlar los siguientes aspectos:&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;Confidencialidad: que la información esté protegida de intrusos.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;Integridad: que los datos en estado de almacenamiento o transmisión/recepción se encuentren en estado óptimo.&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;Disponibilidad: que la información no esté restringida a aquellos usuarios/aplicaciones reales del sistema.&lt;br /&gt;
&lt;br /&gt;
Este pequeño tip de información técnica sobre el archivo /etc/passwd te permitirá comprender como linux controla la confidencialidad de los datos y la disponibilidad de archivos y servicios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
En el archivo /etc/passwd se localiza toda la información de los usuarios del sistema. p.e.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 [root@localhost filesNKT]#vi /etc/passwd&lt;br /&gt;
 root:x:0:0:root:/root:/bin/bash&lt;br /&gt;
 bin:x:1:1:bin:/bin:/sbin/nologin&lt;br /&gt;
 daemon:x:2:2:daemon:/sbin:/sbin/nologin&lt;br /&gt;
 adm:x:3:4:adm:/var/adm:/sbin/nologin&lt;br /&gt;
 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin&lt;br /&gt;
 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown&lt;br /&gt;
 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin&lt;br /&gt;
 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin&lt;br /&gt;
 nobody:x:99:99:Nobody:/:/sbin/nologin&lt;br /&gt;
 rpm:x:37:37::/var/lib/rpm:/bin/bash&lt;br /&gt;
 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin&lt;br /&gt;
 rpc:x:32:32:Portmapper RPC user:/:/sbin/nologin&lt;br /&gt;
 mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin&lt;br /&gt;
 smmsp:x:51:51::/var/spool/mqueue:/sbin/nologin&lt;br /&gt;
 apache:x:48:48:Apache:/var/www:/sbin/nologin&lt;br /&gt;
 desktop:x:80:80:desktop:/var/lib/menu/kde:/sbin/nologin&lt;br /&gt;
 mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash&lt;br /&gt;
 nkt:x:500:500:liam:/home/nkt:/bin/bash&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Cada linea del archivo representa un registro único constituido por los campos (cada cadena separada por el símbolo de dos puntos &amp;quot;:&amp;quot;) que representan la información del usuario.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Analicemos la penúltima línea para el usuario (cliente) mysql.&lt;br /&gt;
&lt;br /&gt;
 mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;El primer campo es el nombre del usuario y debe ser único.&lt;br /&gt;
&lt;br /&gt;
 mysql:&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;El segundo campo es la contraseña cifrada (en un futuro profundizaremos en el ciframiento).&lt;br /&gt;
&lt;br /&gt;
 x:&lt;br /&gt;
&lt;br /&gt;
(en el caso de las mas modernas distribuciones de linux, existe un archivo oculto /etc/shadow,&lt;br /&gt;
&lt;br /&gt;
donde se almacenan las contraseñas (que analizaremos en un próximo artículo) para evitar&lt;br /&gt;
&lt;br /&gt;
que una visualización del /etc/passwd permita realizar operaciones de crack de contraseñas&lt;br /&gt;
&lt;br /&gt;
por fuerza bruta, por eso el caracter visible en /etc/passwd es &amp;quot;x&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;El tercer campo es el ID de usuario que debe ser único y es usado por el sistema para controlar accesos a archivos y servicios.&lt;br /&gt;
&lt;br /&gt;
 27:&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;El cuarto campo es el ID de grupo.&lt;br /&gt;
&lt;br /&gt;
 27:&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;El quinto campo es el comentario, que es opcional y puede ser cualquier cosa, aunque en un sistema linux organizado es por norma el nombre real del usuario.&lt;br /&gt;
&lt;br /&gt;
 MySQL Server:&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;El sexto campo es el path o ruta del directorio personal donde el usuario se encontrará al iniciar una sesión y podrá almacenar su información.&lt;br /&gt;
&lt;br /&gt;
 /var/lib/mysql:&lt;br /&gt;
&lt;br /&gt;
-&amp;gt;El séptimo campo corresponde al shell por defecto que se lanza para ese usuario al iniciar sesión y desde donde podrá ejecutar los respectivos comandos&lt;br /&gt;
&lt;br /&gt;
 /bin/bash&lt;br /&gt;
&lt;br /&gt;
(existen varios tipos de shell, sh, ksh, bash, csh, tcsh, etc, aunque la utilizada por defecto por los sistemas linux es /bin/bash).&lt;br /&gt;
&lt;br /&gt;
Las modificaciones del archivo /etc/passwd se remiten al root por considerarse&lt;br /&gt;
&lt;br /&gt;
operaciones críticas del sistema. Por recomendación, la gestión de usuario&lt;br /&gt;
&lt;br /&gt;
debe realizarse vía comandos del shell (adduser, deluser, etc.)o a través del centro de control&lt;br /&gt;
&lt;br /&gt;
gráfico. Las modificaciones manuales de este archivo requieren cierta&lt;br /&gt;
&lt;br /&gt;
experiencia y conocimiento del sistema por parte del root.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para mas información: Hacker en Linux. B. Hatch, J. Lee, G. Kurtz. Cap I.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
by nkt&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Seguridad_Linux_Vs_Windows._Lo_que_Todos_Prefieren_Ignorar</id>
		<title>Seguridad Linux Vs Windows. Lo que Todos Prefieren Ignorar</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Seguridad_Linux_Vs_Windows._Lo_que_Todos_Prefieren_Ignorar"/>
				<updated>2013-12-04T10:01:01Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Diciembre 1 de 2.004.'''   '''Por NKT.'''  ==Introducción== A lado de las famosas inquitudes humanas ¿quines somos?, ¿de dónde venimos?, ¿a dónde v...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Diciembre 1 de 2.004.''' &lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:NKT|NKT]].'''&lt;br /&gt;
&lt;br /&gt;
==Introducción==&lt;br /&gt;
A lado de las famosas inquitudes humanas ¿quines somos?, ¿de dónde venimos?, ¿a dónde vamos?, ¿qué fue primero, el huevo o la gallina?,... ha surgido una parádoja que igualmente inquieta la razón humana de  este siglo... ¿qué es más seguro, Linux o Windows?... Y esto no es un melodrama, ni un guión repetido  acerca de una riña comercial que data de la época de los dinosaurios informáticos (&amp;quot;cuando IBM era lo  único que existía&amp;quot;).&lt;br /&gt;
 &lt;br /&gt;
Cuando se trata del bien capital mas valioso del milenio (la información, sin importar si el usuario que se beneficia de esta información utiliza Linux o Windows), estamos hablando en términos serios de que SI ES NECESARIO CONOCER  LA VERDAD. Nos enfrentamos a una de las polémicas de más repercusión en el mundo de la informática...  y en este punto, nadie tiene la última palabra (y nadie es nadie, ni los reportes supuestamente &amp;quot;oficiales&amp;quot;   emitidos por &amp;quot;supuestas&amp;quot; empresas que en la mayoría de los casos maquilla informes &amp;quot;a favor de&amp;quot; o &amp;quot;en contra de&amp;quot;), y en este tip técnico vamos a tratar de desvelar algunos de los aspectos que son realmente vitales a la hora de tener en cuenta la protección y seguridad de nuestros sistemas y sobretodo de nuestra información.&lt;br /&gt;
 &lt;br /&gt;
Iniciaremos con un poco de contexto. LA SEGURIDAD ABSOLUTA NO EXISTE (en ningún lugar, y tampoco habrá nadie que sea tan atrevido/torpe de garantizarla). Los esfuerzos que se invierten en el desarrollo de mecanismos de seguridad en sistemas informáticos por lo general buscan obtener el grado más alto (óptimo) que  dificulte posibles intrusiones o violaciones de un sistema. Necesitamos entender que debido a esto, existen Condiciones de Seguridad Óptima y Condiciones de Seguridad Relativa (reiteramos, la seguridad absoluta no existe).&lt;br /&gt;
 &lt;br /&gt;
Un Sistema se encuentra en Condiciones de Seguridad Óptima (CSO) cuando bajo condiciones de tiempo y recursos limitados el sistema es capaz de resistir ataques y mantenerse estable frente a incidentes sobre fallos de seguridad y bugs del sistema (ha sido sometido a pruebas exhaustivas de rendimiento y seguridad, y ha funcionado de forma óptima en entornos de desempeño reales).&lt;br /&gt;
 &lt;br /&gt;
Un Sistema se encuentra en Condiciones de Seguridad Relativa (CSR) cuando bajo condiciones de tiempo y recursos limitados el sistema es teóricamente seguro (no ha sido probado exhaustivamente) pero no ha logrado violarse  su seguridad o integridad hasta el momento. Esto implícitamente equivale a que los sistemas que están en Condiciones de Seguridad Relativas, también son &amp;quot;Relativamente Inseguro&amp;quot;, mientras se demuestre lo contrario (que el sistema realmente se encuentra en Condiciones de Seguridad Óptima).&lt;br /&gt;
 &lt;br /&gt;
BAJO CONDICIONES DE TIEMPO Y RECURSOS ILIMITADOS TODO SISTEMA PUEDE ROMPERSE!!!.&lt;br /&gt;
 &lt;br /&gt;
Esto permite comprender las Condiciones de Seguridad de un Sistema bajo una curva Gaussiana (Campana de  Gauss), donde por lo general todo sistema inicia su ciclo de vida en Condiciones de Seguridad Relativa, mientras  con el paso del tiempo, el sistema madura y sus mejoras (actualizaciones, nuevas versiones y prototipos,  etc.) lo llevan a un estado óptimo donde se cumplen las Condiciones de Seguridad Óptimas y luego, de forma  natural debido al surgimiento de nuevas tecnologías y la obsolescencia de las actuales, el sistema suele  iniciar una declive que lo lleva nuevamente a Condiciones de Seguridad Relativas (después de todo, con el paso del tiempo, ¿quién confía en sistemas viejos y obsoletos?, el software envejece, y al dejar de utilizarse, pierde soporte y mantenimiento por parte de los desarrolladores, y además se enfrenta al  trajín de adaptarse a la evolución tecnológica, lo que no es sencillo, y por lo general los desarrolladores prefieren crear un nuevo programa en lugar de tratar de adaptar de forma fiable uno que ya no funciona en Condiciones Óptimas).&lt;br /&gt;
&lt;br /&gt;
|CSO&amp;lt;br&amp;gt;&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;___&amp;lt;br&amp;gt;&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;_/&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;\_&amp;lt;br&amp;gt;&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;/&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;\&amp;lt;br&amp;gt;&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;|&amp;lt;br&amp;gt;&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;-&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;-&amp;lt;br&amp;gt;&lt;br /&gt;
|&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;_-'&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;'-__&amp;lt;br&amp;gt;&lt;br /&gt;
|CSR&amp;lt;br&amp;gt;&lt;br /&gt;
|_________________________  tiempo&lt;br /&gt;
&lt;br /&gt;
Bueno, mucho tilín-tilín... y, &amp;quot;como dijo una vieja crema Anti-acné&amp;quot;,...&amp;quot;al grano!&amp;quot;...&lt;br /&gt;
 &lt;br /&gt;
Respecto a cuál sistema operativo es más seguro, es necesario aprender a identificar qué aspectos del sistema operativo se encuentran en Condiciones de Seguridad Óptimas (CSO) o en Condiciones de Seguridad Relativas (CSR). Esto no es que la empresa de seguridad &amp;quot;fulanita&amp;quot; emitió su reporte de fallos número &amp;quot;x&amp;quot; y  listo... el nuevo sistema operativo seguro es &amp;quot;pascualito&amp;quot;. Nosotros, bajo un estudio serio y sobretodo ABIERTO, vamos a hacer un análisis de algunos de estos aspectos (los más vitales).&lt;br /&gt;
 &lt;br /&gt;
==1. CÓDIGO CERRADO/ABIERTO==&lt;br /&gt;
&lt;br /&gt;
Aún cuando el código abierto ha sido fuente de innumerables fallos explotables, también ha sido el vehículo ideal para la localización y corrección de aspectos críticos de seguridad. Y esto es bueno. Es reconocido por la comunidad en seguridad informática por ejemplo, que es mucho mas confiable un algoritmo de encripción de datos de conocimiento público (debido a que es sometido a pruebas de campo exhaustivas tal como mencionábamos en las Condiciones de Seguridad Óptimas), que uno desarrollado de forma privada y cuyo acceso es cerrado.&lt;br /&gt;
 &lt;br /&gt;
El hecho básico, es que la revisión de código es un aspecto de cuidado en el desarrollo de sistemas informáticos, y los entornos abiertos como Linux ofrecen el laboratorio de pruebas más grande del mundo con miles de programadores de experiencia que trabajan a diario para crear un sistema más consistente.&lt;br /&gt;
 &lt;br /&gt;
En este sentido, respecto a la integridad y confiabilidad del código, Linux se avanza día a día a Condiciones de Seguridad Óptimas, en cambio Windows se encuentra (y seguirá encontrándose mientras  sostenga su política monopolista) en Condiciones de Seguridad Relativas (porqué quién garantiza la calidad de su código, ¿ellos?, yo también puedo conseguirme un disfraz de batman, tomarme una foto encima del techo de mi casa y luego publicarla por internet diciendo que yo soy batman y que la foto lo garantiza ¿quién sería tan falto de criterio como para creerme?...).&lt;br /&gt;
 &lt;br /&gt;
Microsoft se ha visto tentado también a liberar su código para generar confianza a nivel de las entidades  y gobiernos con los que tiene contratos, negocios y convenios comerciales, esto no significa que windows  es software libre (!!! Dios nos libre !!!), pero es un avance significativo en cuanto a seguridad se  &lt;br /&gt;
refiere (al menos ya no hay que &amp;quot;robarse&amp;quot; el código a Microsoft para probarlo y explotarlo, ahora se lo pueden &amp;quot;robar&amp;quot; a las redes de las empresas y gobiernos que tienen el código disponible!!!).&lt;br /&gt;
 &lt;br /&gt;
Este aspecto de comparativa es importante, ya que es transversal a todo el sistema, las ventajas del código abierto se hacen sentir en todos los componentes de Linux, y hacen ver a Linux superior en cuanto a  Condiciones de Seguridad, e igualmente, cuando sucede un incidente crítico que se originó en el conocimiento del código fuente, Linux se puede ver inferior a Windows. Sin embargo, bajo el concepto de una comunidad muy amplia de gente con experiencia en el área de la seguridad, el código abierto da una superioridad significativa a Linux frente a Windows, ya que proporciona lo más cercano posible a Condiciones reales de Seguridad Óptima.&lt;br /&gt;
 &lt;br /&gt;
==2. SEGURIDAD A NIVEL DE LA ARQUITECTURA==&lt;br /&gt;
La arquitectura de Linux es abierta y de conocimiento público. Se considera modular, multi-usuario, multi-tarea y  robusta, y esto es demostrable bajo análisis de código. Windows tiene una arquitectura relativamente modular (en  muchos aspectos monolítica), relativamente multi-usuario (ya que por facilidad de uso Windows ha permitido la  compartición de ciertos archivos y procesos a nivel de usuario, lo que significa que realmente trata de simular  la arquitectura multi-usuario, y no hay una separación definida de los entornos de ejecución de cada usuario)  y relativamente multi-tarea (en verdad si existe el multi-proceso, pero es tan caótico que incluso los hackers más  sofisticados tienen problemas para localizar y tratar de controlar la ejecución de ciertos procesos... que irónico, como la vez en los Simpson que el sr. Berns se enfermó de todas las enfermedades, lo cual lo hacía &amp;quot;invulnerable&amp;quot;).  &lt;br /&gt;
 &lt;br /&gt;
No hay mucho que decir, en este aspecto, quien decida utilizar o seguir utilizando Windows, que lo haga &amp;quot;en compañía  de un adulto responsable&amp;quot; (capaz de &amp;quot;medírsele a todo&amp;quot;). En cuanto a arquitectura se trata, Linux realmente se  aproxima a un estado en Condiciones de Seguridad Óptimas, mientras que Windows, le falta mucho por recorrer...&lt;br /&gt;
 &lt;br /&gt;
==3. INTEGRACIÓN CON APLICACIONES==&lt;br /&gt;
Debido a su esquema de arquitectura abierta, Linux permite a las aplicaciones integrarse totalmente con las  prestaciones del sistema operativo (sistema de señales, procesos, llamadas al sistema, etc.),  lo que implica que potenciales fallos de seguridad en alguna aplicación suelen  repercutir a nivel del sistema operativo (aún cuando este &amp;quot;no tenga la culpa&amp;quot;). Por otra parte, Windows ofrece una  interface de interacción conocida como el API win32, la cual facilita a las aplicaciones interactuar con la mayoría  de prestaciones que ofrece el sistema operativo. Además, Windows utiliza un sistema de datos conocido como el registro (al cual puedes acceder ejecutando el regedit), donde se almacena información de registro e inicialización  de programas y aplicaciones. Algunos datos son realmente importantes para el sistema, y cualquier corrupción que  ocurra en el registro puede dejar el sistema inoperante. El problema con el registro, es que su organización  es realmente caótica. Analizando el registro se encuentra información redundante (si quieres desilusionarte de  Windows de una vez por todas solo trata de buscar la dirección IP que tu Windows tiene asignada actualmente dentro del registro, es posible que encuentres varias, aún cuando el sistema esté configurado de forma correcta, ¿será  esto un accidente??) e información de programas  inexistentes (es por eso que con el paso del tiempo, al instalar y desinstalar programas, el registro se &amp;quot;contamina&amp;quot;  de mucha información basura que referencia a veces programa que ya no existen en el sistema, el cual al tratar de  cargar estos programas pierde eficiencia mientras &amp;quot;se da cuenta&amp;quot; que esos programas no están disponibles... en  consecuencia, el sistema operativo suele volverse lento con el tiempo). Muchos virus utilizaban la técnica de  registrarse en el registro de Windows para así cargarse automáticamente, y debido a el desorden de este esquema de  datos, el registro se constituyó en el lugar/escondite preferido de programas nocivos.&lt;br /&gt;
 &lt;br /&gt;
Linux ofrece varias alternativas de interacción, entre ellas,  llamadas directas al sistema, interacción con procesos, entornos de desarrollo empotrados [kde, gtk, etc.], y  realmente es dífícil estandarizar la forma como las aplicaciones &amp;quot;tienen&amp;quot; que interactuar con el sistema operativo. Por una parte, todo esto representa una desventaja a nivel de seguridad para los entornos Linux. Sin embargo, por otra  parte surge el hecho de que la arquitectura modular, multi-usuario y multi-proceso de Linux es demasiado robusta,  lo que implica que las aplicaciones deben cumplir ciertas condiciones y restricciones (permisos y privilegios,  prioridades a nivel de procesos, etc.) que controlan aspectos serios relativos a la seguridad del sistema.  &lt;br /&gt;
 &lt;br /&gt;
Podríamos decir que a nivel de instalación e integración de aplicaciones Windows ofrece Condiciones de Seguridad  más Óptimas que Linux, pero simultáneamente a nivel de desarrollo de aplicaciones y control de la ejecución de estas  aplicaciones dentro del entorno de la arquitectura Linux ofrece Condiciones de  Seguridad Relativas mejores que las que ofrece Windows (lo que equivale a un ¡¡empate!!, al menos desde el punto  de vista conceptual.).&lt;br /&gt;
 &lt;br /&gt;
==4. SEGURIDAD A NIVEL DE USUARIO DE ESCRITORIO==&lt;br /&gt;
Generalmente a los usuarios de escritorio ajenos al mundo de la informática, les parece más sencillo utilizar el  esquema &amp;quot;anti-consola&amp;quot; de Windows, aprovechando todas las ventajas de los sistemas de ventanas, menús y botones. Este tipo de usuarios les cuesta un trabajo intelectual aprender Linux, que la mayoría no están dispuestos a pagar.  Esta es una de las razones de peso (además de la piratería &amp;quot;abierta&amp;quot;) por la cual todavía Windows todavía domina el  mercado de las instalaciones &amp;quot;caseras&amp;quot;. Este aspecto complica las comparativas de seguridad, debido a que no existe una forma de determinar estadísticas de seguridad confiables, ya que los números se hacen relativos al porcentaje de instalaciones de cualquiera de estos sistemas operativos, mientras un virus &amp;quot;inofensivo&amp;quot; puede contaminar miles de computadores Windows en un par de horas, un exploit en Linux que comprometa la seguridad de una red de diez  computadores puede afectar la integridad total del sistema... ¿cuál es más peligroso?, tendríamos que determinar  si medimos la seguridad &amp;quot;a lo ancho&amp;quot; (número de sistemas afectados), o &amp;quot;a lo profundo&amp;quot; (compromiso del sistema  afectado)... En realidad este tipo de estadísticas son confusas, pero no se pueden menospreciar. Es habitual que debido al desconocimiento de la administración de sistemas Linux por parte de los usuarios de escritorio  se encuentren fallos de seguridad [falta de mantenimiento, configuraciones predeterminadas, servicios innecesarios,  etc.], que ponen en desventaja a los sistemas Linux frente a los entornos Windows de escritorio.&lt;br /&gt;
 &lt;br /&gt;
Tendríamos que afirmar que ambos sistemas se encuentran en Condiciones de Seguridad Relativas, pero debido a la  sencillez que ofrece Windows, los usuarios se compenetran más fácilmente con el sistema e ímplícitamente le da  una superioridad a nivel de seguridad sobre los sistemas Linux de escritorio. &lt;br /&gt;
 &lt;br /&gt;
==5. SEGURIDAD A NIVEL DE LOS ADMINISTRADORES DE SISTEMAS==&lt;br /&gt;
Algo que si es una de las características más atractivas de Linux es que requiere conocimiento. Aún con versiones que buscan competir con la filosofía de Windows de &amp;quot;click derecho y doble click&amp;quot; como RedHat y Mandrake, Linux requiere una comprensión y conocimiento más profundos del sistema, y el conocimiento es poder... El poder de controlar tu máquina y tener la capacidad de decirle exactamente cómo quieres que se comporte... Sí! el funcionamiento de Linux requiere que el usuario/administrador (por lo general con privilegios root) tome el control del sistema y gobierne sobre la máquina. Esta intimidad &amp;quot;hombre-máquina&amp;quot; (que generalmente se refleja en el uso del shell o interfaz de comandos) hace que el administrador del sistema desarrolle prácticas sanas en el uso de los recursos y servicios que ofrece la máquina. En Linux, un error a nivel de administración suele repercutir como una falla significativa de la seguridad del sistema. La mayoría de administradores saben esto, por lo cual es demasiado frecuente encontrar &amp;quot;ojos abiertos&amp;quot; (los del usuario administrador) inspeccionando el funcionamiento de la máquina para comprender cómo hacerla funcionar mejor. En pocas palabras, es obvio que los administradores de sistemas Linux  están mucho más compenetrados (y despiertos) con la máquina que los administradores de sistemas Windows, y esto implica adoptar  una posición mas protagónica y participativa en el funcionamiento del sistema. Los sistemas Linux te dan la  alternativa de controlar la máquina y te comprometen a llevar las correspondientes actividades administrativas que  implementan esquemas de seguridad y protección del sistema. Aún cuando administrar la seguridad de un Sistema Linux  tiene sus &amp;quot;riesgos de aprendizaje&amp;quot;, la administración de la seguridad de un sistema Linux se acerca más a las Condiciones de Seguridad  Óptimas que la administración de seguridad en Windows donde todavía estas Condiciones de Seguridad siguen siendo  relativas (e incluso teniendo en cuenta que dependen de la (in)capacidad de los administradores Windows, pueden llegar  a ser INCIERTAS).&lt;br /&gt;
 &lt;br /&gt;
Si la seguridad del sistema dependiera de los administradores, los root's de Linux están por encima (y bastante), lo  que equivale a que las Condiciones de Seguridad son más óptimas en Linux que en Windows&lt;br /&gt;
 &lt;br /&gt;
==6. BUFFER/STACKS/HEAPS-OVERFLOWS==&lt;br /&gt;
Hasta las hermosas rosas como el código abierto tienen dolorosas espinas... y en este caso, el dolor de cabeza de los desarrolladores y usuarios del código abierto son los buffer/stacks/heaps-overflows. Al tener conocimiento del código, los vándalos informáticos tienen un &amp;quot;manual de referencia&amp;quot; de como dirigir sus ataques de forma &amp;quot;efectiva&amp;quot;. Los overflows son formas técnicas para inducir a los programas a que el sistema  operativo pierda el control de la máquina y por lo general se explotan forzando al sistema a ejecutar instrucciones maliciosas (código insertado, comandos nocivos, etc.)&lt;br /&gt;
 &lt;br /&gt;
En este aspecto, el código cerrado fuerza a que para descubrir un fallo explotable sobre un overflow se tengan que realizar miles de pruebas y validaciones, lo cual implica un gran desgaste de tiempo y una gran capacidad a nivel de recursos. En cuanto a overflows, los sistemas de código cerrado han sido menos vulnerados (no significa que sean realmente más seguros, sino que las debilidades de seguridad no están disponibles de forma pública como sucede con el código abierto, ¿qué tantos fallos de seguridad se reportarían en Windows, si el código fuente estuviera disponible?, tal vez ascenderían en un orden geométrico...),  con lo cual podríamos concluir que aún cuando el código cerrado brinda Condiciones de Seguridad Relativas, estas son mejores frente a los ataques por buffer/stack/heap-overflows, resultando en este aspecto Linux relativamente más inseguro que Windows.&lt;br /&gt;
 &lt;br /&gt;
==7. VIRUS INFORMÁTICOS==&lt;br /&gt;
Es curioso que aún cuando el código abierto debería facilitar la proliferación de virus en tecnologías libres como Linux, es precisamente Windows quien sufre las penalidades habidas y por haber debido a estos &amp;quot;bichitos informáticos&amp;quot;. Existen varios mitos que vale la pena señalizar. Primero que todo: son los  hackers que sostienen Linux, los que por denigrar de Windows desarrollan virus por motivos de envidia, y competencia desleal...INCIERTO. Aún cuando para desarrollar un virus que trascienda se requiera una  mentalidad técnica alta, un verdadero hacker construye, y no destruye. Además también se puede ser un hacker y comer y respirar Windows (eso es indistinto). Por lo general los desarrolladores de virus suelen trabajar por convicciones personales (aún cuando los gobiernos les atribuyan etiquetas como &amp;quot;terroristas informáticos&amp;quot;, etc.) que a veces &amp;quot;solo ellos mismos conocen&amp;quot;. Además, la actividad de desarrollo de virus también implica &amp;quot;saber vivir escondido&amp;quot;, ya que es penalizada y censurada por muchos. Segundo: las casas antivirus desarrollan virus con el fin de &amp;quot;no perder el negocio&amp;quot;... INCIERTO. Puede que sí, como puede que no. De cualquier manera, si fuera cierto, es obvio que sería mucho mas rentable económicamente desarrollar virus para Windows (donde toca pagarle a alguien para que solucione el problema) que para Linux (donde siempre vas a encontrar alguien que te ayude sin costo, o en el peor de los casos  tu podrías solucionar el problema por tí mismo). LA VERDAD: la arquitectura multi-usuario de Linux reduce el entorno de impacto de los virus informáticos. Claro que si hay virus para Linux, pero por lo general, estos virus solo pueden causar estragos en el entorno de ejecución del usuario que se dejó afectar por el virus. En la mayoría de los casos, los usuarios solo tienen ciertos privilegios sobre archivos de su propiedad, y el sistema no se deja infectar a menos que ese usuario tenga privilegios root (lo cual no es raro, pero este tipo de infecciones son demasiado esporádicas). Pero, ¿qué pasa con Windows?,... en verdad Windows no ofrece un entorno multi-usuario real, sino una emulación que permite la compartición de  archivos y programas para facilitar la instalación y uso de aplicaciones sin restricciones de permisos de usuarios. En pocas palabras, un virus puede superar fácilmente las limitaciones de entorno de usuario, y ejecutarse con privilegios administrativos (lo que ya es crítico) y en algunos casos como procesos en el anillo de ejecución del kernel (que ya es catastrófico). Es esta la razón verdadera de por qué los virus han tenido un impacto significativo en los entornos Windows. Los virus amenazan a Windows de la misma manera que los buffer/stack/heap-overflows amenazan Linux.&lt;br /&gt;
&lt;br /&gt;
Debido a la robustez de su arquitectura multi-usuario Linux se acerca más a un estado en Condiciones de Seguridad Óptimas que Windows (que gestiona sus usuarios de una forma más sencilla pero deficiente), y esto es lo que hace superior a Linux sobre Windows cuando se trata de virus informáticos.&lt;br /&gt;
 &lt;br /&gt;
==8. IMPLEMENTACIÓN DE ESTÁNDARES EN SEGURIDAD==&lt;br /&gt;
En este aspecto tampoco hay mucho que decir. Ambos sistemas operativos implementan estándares en seguridad hasta  donde les es posible, además algoritmos de proteccion de conocimiento público. La pregunta es ¿CÓMO LOS IMPLEMENTAN?.  Y es ahí donde radica la diferencia, mientras Linux tiene el valor de someterse al escarnio público y se realimenta  de las duras críticas y correcciones, Windows sigue propagando su estrategia de desinformación (y es que el hecho no  es solamente si la implementación funciona. Cuando se trata de estándares y seguridad, también es relevante el cómo funciona).&lt;br /&gt;
 &lt;br /&gt;
A ciencia cierta, casi nadie conoce la forma como Windows implementa los algoritmos y estándares, lo que significa  que toca basarse en suposiciones y experiencias del mundo real. En este caso, nuevamente, Linux se acerca más a las  Condiciones de Seguridad Óptimas (y tal vez algún día las cumpla), mientras Windows, debido a su tendencia a cerrar  el código, estará relegado a la sombra de las Condiciones de Seguridad Relativas.&lt;br /&gt;
 &lt;br /&gt;
==9. SOPORTE Y MANTENIMIENTO==&lt;br /&gt;
Esto si es polémico, y es una polémica que Microsoft se buscó gratis. Aún cuando Microsoft ofrezca servicio de  soporte y mantenimiento a sus sistemas licenciados, se ha convertido en una leyenda su famoso servicio de actualizaciones  recursivas (el parche del parche del parche del parche... casi como una aplicación en modelo multi-fractal... ¿mentiras?). De hecho  sus famosos service pack que pesan más que el mismo sistema operativo y vuelve eterna la carga de programas, han  generado controversia a tal grado de que uno no sabe si el sistema funciona mejor si se instala o no se instala  el nuevo service pack (para la prueba un botón... no sucedió en estos últimos tiempos que una semana después de  publicar su último service pack para actualizar su producto estrella -o estrellado- Windows XP, la misma gente de  Microsoft tuvo que publicar un script de desinstalación del service pack, ya que en lugar de arreglar el sistema,  &lt;br /&gt;
lo empeoraba -si es que Windows XP puede empeorar en algo-).&lt;br /&gt;
 &lt;br /&gt;
¿Qué tiene que ver Linux?... nada. Así el sistema de soporte y actualización de Linux fuera deficiente (que no lo es, y en la mayoría de los casos, esta responsabilidad compromete altamente al usuario/administrador del sistema), no tendría  forma de competir en mediocridad con el servicio de soporte y mantenimiento que ofrece Windows.&lt;br /&gt;
 &lt;br /&gt;
Definitivamente en cuanto a soporte y mantenimiento, las Condiciones de Seguridad que ofrece Windows dejan de ser  relativas para pasar a ser &amp;quot;sospechosas&amp;quot;. Esperemos que Linux no siga ese ejemplo (bueno, y creo que nunca lo haría).&lt;br /&gt;
 &lt;br /&gt;
==10. SERVICIOS DE REGISTRO Y AUDITORÍA==&lt;br /&gt;
Ambos sistemas ofrecen un sistema consistente de registro de eventos y auditoría, talvez aquí la perspectiva varíe  desde el punto de vista del usuario/administrador del sistema. De cualquier manera, talvez los usuarios de Windows  gocen de la facilidad de la administración vía interfaz gráfica cuya disponibilidad es ciertamente limitada en Linux.  &lt;br /&gt;
 &lt;br /&gt;
En este aspecto, el hecho de que por facilidad los usuarios Windows implementen de forma más sencilla un esquema  completo de registro de eventos y auditorías le da una cierta ventaja sobre la facilidad/dificultad con que se  implementaría este mismo sistema en entornos Linux.&lt;br /&gt;
 &lt;br /&gt;
Talvez no sea culpa del sistema operativo, pero si es más &amp;quot;implementable&amp;quot;  un esquema de registro y auditoría en Windows, ya que dependemos de la perspectiva del usuario, Windows estaría en  Condiciones de Seguridad Relativas mejores que Linux, donde es probable que por el trabajo que cuesta (ya que hay  muchos usuarios a los que les cuesta trabajo &amp;quot;pensar&amp;quot;) este sistema no se implemente o se implemente de forma  ineficiente.&lt;br /&gt;
 &lt;br /&gt;
==P.D.==&lt;br /&gt;
¿filosofía anti-güidous?... No. Talvez todo lo dicho anteriormente suene feo (Windows tiene su parte de responsabilidad,  ya que su estrategia de desinformación con código cerrado no es ni será nunca una garantía de seguridad),  pero es lo que los reportes de seguridad que corren  por internet no dicen (¿por qué será?). El hecho es que la seguridad no se puede medir solo basado en estadísticas  de incidentes y pruebas de sondeo como si se tratara de una simple encuesta de votos electorales. ES NECESARIO CONOCER LA VERDAD. Y talvez,  en términos de Condiciones de Seguridad Óptimas y Condiciones de Seguridad Relativas Linux esté actualemente por encima en varios  de los aspectos críticos de seguridad,... lo que  también puede cambiar con el tiempo. Nadie (ni este artículo), tiene la última palabra, la intención de este texto  es concientizar a los usuarios de aquellas cosas detrás del monitor que también son importantes y que a pocos les  gusta atender o escuchar.&lt;br /&gt;
 &lt;br /&gt;
Bueno, quedó pendiente mucho por decir, en otra ocasión será.&lt;br /&gt;
Solo recuerda... &amp;quot;no te dejes esclavizar por la matrix. SÉ LIBRE&amp;quot;&lt;br /&gt;
by nkt&lt;br /&gt;
 &lt;br /&gt;
Para más información:  &lt;br /&gt;
-&amp;gt;Sistemas Operativos. Tanenbaum&lt;br /&gt;
-&amp;gt;LINUX. Manual de Referencia. R.Petersen.&lt;br /&gt;
-&amp;gt;Superutilidades Hackers. K.Jones, M.Shema, B.Johnson.&lt;br /&gt;
-&amp;gt;Claves Hackers en Linux y Unix. N.Dhanjani.&lt;br /&gt;
-&amp;gt;Hackers en Linux. B.Hatch, J.Lee, G.Kurtz.&lt;br /&gt;
si necesitas resolver alguna duda, deseas opinar sobre este artículo o te interesaría algún tema en especial,&lt;br /&gt;
gjurado@unicauca.edu.co / NKT@linuxmail.org&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Un_peque%C3%B1o_an%C3%A1lisis_de_wxWidgets._Un_framework_para_desarrollar_aplicaciones_multiplataforma</id>
		<title>Un pequeño análisis de wxWidgets. Un framework para desarrollar aplicaciones multiplataforma</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Un_peque%C3%B1o_an%C3%A1lisis_de_wxWidgets._Un_framework_para_desarrollar_aplicaciones_multiplataforma"/>
				<updated>2013-12-04T10:00:33Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Junio 15 de 2.004'''  '''Por Manuel Alejandro Cerón Estrada'''.  ----  Al desarrollar aplicaciones muchas veces nos encontramos con el hecho de que...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Junio 15 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Ceronman|Manuel Alejandro Cerón Estrada]]'''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
Al desarrollar aplicaciones muchas veces nos encontramos con el hecho de que nuestros usuarios no siempre van a usar el mismo sistema operativo. Para que nadie se sienta discriminado, como a veces nos sentimos discriminados los usuarios de GNU/Linux cuando se desarrollan programas que solo sirven en sistemas de Microsoft, es una buena idea tratar de hacer que nuestra aplicación pueda funcionar en varias plataformas, o al menos sea fácil de portar.&lt;br /&gt;
&lt;br /&gt;
Hace poco tuve que realizar una aplicación que funcionara perfectamente tanto en GNU/Linux, como en Microsoft Windows. Para resolver el problema decidí analizar varias alternativas:&lt;br /&gt;
&lt;br /&gt;
*Java. La primera alternativa que se me vino a la mente fue Java, funciona perfectamente en varias plataformas sin necesidad de recompilar, tiene un Framework muy bien diseñado, avanzado y potente. Sin embargo, existen algunos inconvenientes que me hicieron desistir de java: el primero es que, aunque es gratuito, el JDK no es software libre y mi intención era construir una aplicación completamente con herramientas libres. Por otro lado, Java no está diseñado para construir aplicaciones rápidas, el hecho de correr bajo una máquina virtual, y utilizar en exceso herramientas como polimorfismo dinámico y RTTI hacen que las aplicaciones Java tiendan a ser lentas, algo que definitivamente no deseaba para mi aplicación.&lt;br /&gt;
*Qt. La otra alternativa a considerar es el Framework Qt, en el cual se basa el escritorio de GNU/Linux KDE. Como ventajas tiene el hecho de tener una buena velocidad, debido a que está escrito en C++ y tener un muy buen diseño orientado a objetos que hacen muy placentero programar con Qt. Por otro lado, el problema con Qt consiste principalmente en que solo es software libre en su versión para GNU/Linux [[#Referencias|[1]]], todas las demás versiones (Win32, MacOS y otros) son propietarias (y además con alto costo), lo que hizo que descartara inmediatamente a Qt.&lt;br /&gt;
*GTK+. Otra librería importante a considerar era GTK+. Tiene varias ventajas, como por ejemplo que está disponible para muchísimos sistemas operativos y es completamente libre, con licencia LGPL. Sin embargo, GTK+ tenía algunos inconvenientes que me hicieron desistir de usarlo: En primer lugar, GTK+ solo posee funcionalidad para desarrollar interfaces gráficas de usuario y deja un lugar vacio a aspectos como bases de datos, redes, etc. Por otro lado, el API de GTK+ está escrito de forma estructurada en lenguaje C, y mi intención era trabajar de forma orientada a objetos. Aunque existe GTKmm[[#Referencias|[2]]], me parece que tiene el mismo diseño estructurado pero usando clases en C++.&lt;br /&gt;
&lt;br /&gt;
La última opción que consideré fue wxWidgets, un framework antes conocido como wxWindows [[#Referencias|[3]]], especializado en el desarrollo de aplicaciones multiplataforma en lenguaje C++. Fue en definitiva el que escogí para realizar mi aplicación, por las siguientes razones:&lt;br /&gt;
&lt;br /&gt;
*Soporta varios sistemas operativos, pero con una pequeña particularidad: de acuerdo a la plataforma en que se ejecute la aplicación, esta tomara el look and feel del SO donde se esté ejecutando. Por ejemplo, si se ejecuta en MS-Windows, la aplicación tendrá la apariencia de una aplicación hecha con el API de Windows, pero si se ejecuta en GNU/Linux, tendrá la apariencia de una aplicación GTK2. Es decir que la parte de GUI es solo una capa para el API nativa de cada SO. Además de lo anterior, wxWidgets cuenta con una versión embebida [[#Referencias|[4]]] para dispositivos como PDAs y teléfonos celulares.&lt;br /&gt;
*Es cien por ciento libre en todas las plataformas que soporta, con una licencia LGPL modificada [[#Referencias|[5]]].&lt;br /&gt;
*Tiene un API orientada a objetos que es, en extremo, fácil de aprender y utilizar. Creo que ninguna otra de las opciones mencionadas anteriormente tiene una curva de aprendizaje tan suave.&lt;br /&gt;
*Posee funcionalidades para muchos aspectos aparte de la construcción de interfaces gráficas. Como gráficos 2D, 3D con OpenGL, Bases de Datos (ODBC), Redes, Impresión, Hilos, entre muchas otras.&lt;br /&gt;
&lt;br /&gt;
Pese a todas estas ventajas, wxWidgets también tiene algunas desventajas: Su diseño orientado a objetos no es el mejor que uno pueda ver. A veces abusa de la utilización de macros para realizar ciertas operaciones (como las tablas de eventos), aunque esto hace que codificar sea más fácil, también complica la labor de depuración, especialmente para los mismos desarrolladores de wxWidgets. Por otro lado, debido a que el framework se comenzó a desarrollar hace bastante tiempo, no cuenta con soporte para algunas características relativamente modernas [[#Referencias|[6]]] del lenguaje C++ como por ejemplo el manejo de excepciones, y la STL.&lt;br /&gt;
&lt;br /&gt;
Debido a sus grandes pros y sus pocos contras, puedo decir que recomiendo ampliamente wxWidgets como una herramienta para el desarrollo de aplicaciones sean o no sean multiplataforma. Y tal vez en un artículo posterior pueda profundizar un poco más en los detalles de este extraordinario Framework.&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 0.8em&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Referencias===&lt;br /&gt;
[1] Aun así, la licencia de Qt para GNU/Linux es la GPL y no la LGPL que es lo común en las librerías.&lt;br /&gt;
&lt;br /&gt;
[2] GTKmm es la versión C++ de GTK+&lt;br /&gt;
&lt;br /&gt;
[3] WxWindows tuvo que cambiar su nombre a finales de 2003 debido a una demanda de Microsoft, en la que alegaba que podría haber confusión con el nombre de sus sistemas operativos.&lt;br /&gt;
&lt;br /&gt;
[4] Aunque esta versión aun está en una etapa muy temprana de desarrollo.&lt;br /&gt;
&lt;br /&gt;
[5] La modificación a la licencia LGPL consiste básicamente en que permitir que los derivados puedan cambiar de licencia aún si se compilan con ligadura estática.&lt;br /&gt;
&lt;br /&gt;
[6]Al decir modernos me refiero a lo referente a la publicación del estándar C++ de 1998.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Un_muy_peque%C3%B1o_tutorial_de_URPMI,_una_herramienta_que_facilita_la_instalaci%C3%B3n_y_manejo_de_paquetes_en_Mandrake_GNU/Linux</id>
		<title>Un muy pequeño tutorial de URPMI, una herramienta que facilita la instalación y manejo de paquetes en Mandrake GNU/Linux</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Un_muy_peque%C3%B1o_tutorial_de_URPMI,_una_herramienta_que_facilita_la_instalaci%C3%B3n_y_manejo_de_paquetes_en_Mandrake_GNU/Linux"/>
				<updated>2013-12-04T10:00:03Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Junio 22 de 2.004'''  '''Por Manuel Alejandro Cerón Estrada'''   ----  ==Administrando Paquetes con URPMI==  Por lo general para manejar software e...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Junio 22 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Ceronman|Manuel Alejandro Cerón Estrada]]'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
==Administrando Paquetes con URPMI==&lt;br /&gt;
&lt;br /&gt;
Por lo general para manejar software en GNU/Linux se usan paquetes. Un paquete es un archivo que agrupa todas las partes que una aplicación [[#Referencias|[1]]] necesita para funcionar correctamente. Por ejemplo el paquete de XMMS agrupa ejecutables, librerías, archivos de datos, documentación y archivos de ejemplo de esta aplicación. Los paquetes se usan porque es más fácil y seguro distribuir el software, especialmente por Internet, si todo está en un mismo archivo.&lt;br /&gt;
&lt;br /&gt;
El modo en que un sistema GNU/Linux maneja los paquetes es uno de los aspectos que más varía entre distribuciones; así distribuciones como Mandrake, Debian, Slackware y Gentoo tienen todas un formato y sistema de manejo de paquetes diferente.&lt;br /&gt;
&lt;br /&gt;
Mandrake comenzó como un derivado de RedHat Linux y por esta razón usa su mismo sistema de administración de paquetes: RPM (RedHat Package Mannager ó Administrador de Paquetes de RedHat). El problema de los paquetes RPM, es que manejan muchas dependencias. Es decir que a veces para que la aplicación de un paquete funcione, es necesario que otros paquetes estén instalados. Por ejemplo, cualquier aplicación gráfica [[#Referencias|[2]]] requiere que esté instalado el paquete Xfree86 [[#Referencias|[3]]]. Mandrake cuenta con una herramienta, muchas veces desconocida por sus usuarios, que maneja automáticamente las dependencias a la hora de instalar o desinstalar un paquete, esta herramienta es URPMI. En este pequeño artículo voy a tratar de dar una introducción a esta útil aplicación.&lt;br /&gt;
&lt;br /&gt;
==Programas de URPMI==&lt;br /&gt;
&lt;br /&gt;
Primero que todo, veremos cuales son los programas más importantes de URPMI:&lt;br /&gt;
&lt;br /&gt;
*urpmi: sirve para instalar paquetes&lt;br /&gt;
*urpme: sirve para desinstalar paquetes&lt;br /&gt;
*urpmf, urpmq: sirve para buscar paquete&lt;br /&gt;
*urpmi.addmedia, urpmi.removemedia, urpmi.update: sirven para manejar los repositorios de paquetes.&lt;br /&gt;
&lt;br /&gt;
Instalar un paquete con URPMI es una tarea muy fácil, simplemente es es necesario escribir:&lt;br /&gt;
&lt;br /&gt;
 # urpmi [nombre del paquete]&lt;br /&gt;
&lt;br /&gt;
Después de eso, si el paquete (o los paquetes) tienen algún tipo de dependencia, URPMI preguntará si se desea instalar también dichas dependencias, en caso de una respuesta afirmativa, URPMI procederá a instalar recursivamente todas las dependencias. Por ejemplo, para instalar esound:&lt;br /&gt;
&lt;br /&gt;
 [root@localhost ceronman]# urpmi esound&lt;br /&gt;
 Para resolver las dependencias, se&lt;br /&gt;
 instalarán los paquetes siguientes (0 MB):&lt;br /&gt;
 esound-0.2.34-0.1gpw.i586&lt;br /&gt;
 libesound0-0.2.34-0.1gpw.i586&lt;br /&gt;
 libesound0-devel-0.2.34-0.1gpw.i586&lt;br /&gt;
 ¿Está todo bien? (S/n)&lt;br /&gt;
&lt;br /&gt;
En caso de dar un “S”, URPMI instalará libesound y libesound0-devel y despues esound.&lt;br /&gt;
&lt;br /&gt;
Para desinstalar un paquete no es necesario más que escribir:&lt;br /&gt;
&lt;br /&gt;
 # urpme [nombre del paquete]&lt;br /&gt;
&lt;br /&gt;
Si los paquetes que se desean desinstalar son una dependencia de otros paquetes, URPMI preguntará si se desea desinstalar también esos paquetes, y en caso afirmativo desinstalará recursivamente los paquetes. Por ejemplo, si se intenta desinstalar XMMS:&lt;br /&gt;
&lt;br /&gt;
 [root@localhost ceronman]# urpme xmms&lt;br /&gt;
 Para satisfacer las dependencias, se&lt;br /&gt;
 quitarán los paquetes siguientes (13 MB):&lt;br /&gt;
 xmms-1.2.9-3mdk.i586&lt;br /&gt;
 xmms-alsa-1.2.9-3mdk.i586 (debido a que&lt;br /&gt;
 no se satisfizo xmms == 1.2.9-3mdk)&lt;br /&gt;
 xmms-kjofol-skins-1.2.0-7mdk.i586&lt;br /&gt;
 (debido a que no se satisfizo xmms &amp;gt;= 1.2.0)&lt;br /&gt;
 xmms-mesa-1.2.9-3mdk.i586 (debido a que&lt;br /&gt;
 no se satisfizo xmms == 1.2.9-3mdk)&lt;br /&gt;
 xmms-more-vis-plugins-1.7.0-4mdk.i586&lt;br /&gt;
 (debido a que no se satisfizo xmms &amp;gt;= 1.0.0)&lt;br /&gt;
 xmms-skins-1.0.0-16mdk.noarch (debido a&lt;br /&gt;
 que falta xmms)&lt;br /&gt;
 xmms-wma-0.2.1-1.i386 (debido a que no&lt;br /&gt;
 se satisfizo xmms &amp;gt;= 1.0.1)&lt;br /&gt;
 ¿Está todo bien? (s/N)&lt;br /&gt;
&lt;br /&gt;
==Los repositorios==&lt;br /&gt;
&lt;br /&gt;
Para que URPMI pueda funcionar correctamente, es necesario asignarle unos repositorios de confianza. Un repositorio no es más que un lugar donde se tienen muchos paquetes para descargar. Un repositorio puede estar en un dispositivo removible (como un CD-ROM), en el disco duro de nuestro PC, o en Internet. Cuando recién se instala Mandrake, los únicos repositorios que se tienen configurados son los de los CD-ROM de instalación. Aunque en los CD-ROM de instalación hay muchos paquetes, es muy probable que se quiera instalar un paquete que no esté ahí. Entonces hay que agregar más repositorios a URPMI.&lt;br /&gt;
&lt;br /&gt;
==Los archivos de lista==&lt;br /&gt;
&lt;br /&gt;
Todos los repositorios tienen un archivo especial que contiene datos importantes de los paquetes que tienen. Este archivo es llamado “archivo de lista”. El archivo de lista contiene datos como el nombre, descripción, dependencias y otras cosas de cada paquete. De esta forma URPMI puede obtener información importante de los paquetes sin tener que acceder o bajar cada uno. Un archivo de lista de un repositorio de paquetes de Mandrake usualmente se llama hdlist.cz. El archivo de lista puede ocupar mucho espacio, a veces varias decenas de Mega bytes, es por eso que algunas veces, especialmente en los repositorios de Internet, podemos encontrar un resumen del archivo de lista, que solo contiene los datos más necesarios. Este archivo usualmente se llama synthesis.hdlist.cz.&lt;br /&gt;
&lt;br /&gt;
==Administrar repositorios==&lt;br /&gt;
&lt;br /&gt;
Agregar, eliminar y actualizar repositorios es una tarea bastante fácil. Para agregar un repositorio simplemente usamos:&lt;br /&gt;
&lt;br /&gt;
 # urpmi.addmedia [nombre delrepositorio] [dirección del repositorio] with [archivo de lista]&lt;br /&gt;
&lt;br /&gt;
Como nombre del repositorio se puede colocar cualquiera, sirve para identificar nuestro repositorio. La dirección del repositorio viene siendo la ruta en el disco, o la dirección de Internet (sea http o ftp) del repositorio. Y en archivo de lista se coloca la ruta relativa [[#Referencias|[4]]] del archivo de lista. Por ejemplo, para agregar el repositorio PLF:&lt;br /&gt;
&lt;br /&gt;
 [root@localhost ceronman]# urpmi.addmedia plf&lt;br /&gt;
 ftp://ftp.cica.es/mirrors/Linux/plf/mandrake/10.0 with hdlist.cz&lt;br /&gt;
&lt;br /&gt;
Para eliminar un repositorio simplemente usamos:&lt;br /&gt;
&lt;br /&gt;
 # urpmi.removemedia [nombre del repositorio]&lt;br /&gt;
&lt;br /&gt;
Y para actualizar:&lt;br /&gt;
&lt;br /&gt;
 # urpmi.update [nombre del repositorio]&lt;br /&gt;
&lt;br /&gt;
==Donde encontrar repositorios.==&lt;br /&gt;
&lt;br /&gt;
En Internet hay varios sitios que permiten configurar fácilmente los repositorios de urpmi. Existen muchos tipos de repositorios, desde el principal (main), que es el mismo de los CD-ROM pero con paquetes actualizados, hasta PLF que contiene paquetes de dudosa legalidad como programas P2P y “rippeadores” de DVDs. Estos son los principales sitios donde se pueden encontrar repositorios de URPMI:&lt;br /&gt;
&lt;br /&gt;
*El Urpmidor: Este sitio contiene un pequeño tutorial de URPMI. Tiene un asistente que, haciendo unas preguntas muy sencillas, permite agregar gran variedad de repositorios. Lo bueno es que cada repositorio tiene una pequeña descripción.&lt;br /&gt;
*Thebrix: Este sitio no tiene un asistente fácil de usar, pero si contiene una lista actualizada y detallada de casi todos los repositorios de paquetes para Mandrake.&lt;br /&gt;
*Easy URPMI: Este es un sencillo asistente para agregar los repositorios oficiales de Mandrake. Tambien permite escoger entre varios “mirrors” de cada repositorio.&lt;br /&gt;
&lt;br /&gt;
==Usando URPMI gráficamente.==&lt;br /&gt;
&lt;br /&gt;
Por supuesto, además del URPMI por linea de comandos, Mandrake cuenta con varias herramientas gráficas [[#Referencias|[5]]] que facilitan aun más el manejo de paquetes. Estas herramientas son:&lt;br /&gt;
&lt;br /&gt;
*rpmdrake: Para instalar paquetes.&lt;br /&gt;
*rpmdrake-remove: Para desinstalar paquetes.&lt;br /&gt;
*edit-urpm-media: Para administrar repositorios&lt;br /&gt;
&lt;br /&gt;
==Obteniendo más información.==&lt;br /&gt;
&lt;br /&gt;
Por supuesto, URPMI tiene muchas opciones y trucos de los que he podido mencionar en este artículo, por ejemplo tiene la opción de bajar los archivos usando wget, o de comprobar si existen conflictos entre paquetes ya instalados. Para los que deseen más información sobre esta herramienta, pueden consultar su página del manual con:&lt;br /&gt;
&lt;br /&gt;
 # man urpmi&lt;br /&gt;
&lt;br /&gt;
O buscar en su página web: http://www.urpmi.org&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 0.8em&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Referencias===&lt;br /&gt;
&lt;br /&gt;
[1] Hay que aclarar que además de aplicaciones, un paquete pude contener una librería, o recursos como temas de escritorio, etc.&lt;br /&gt;
&lt;br /&gt;
[2] Casi todas las aplicaciones gráficas usan el sistema X Window para funcionar. Sin embargo, también es posible hacer una aplicación gráfica accediendo directamente al Frame Buffer de la tarjeta de video sin usar X gracias a librerías como SVGAlib.&lt;br /&gt;
&lt;br /&gt;
[3] Xfree86 es la versión libre de X Window, el sistéma para utilizar interfaces gráficas de usuario en sistemas Unix.&lt;br /&gt;
&lt;br /&gt;
[4] Una ruta relativa se refiere al camino que tengo que seguir para llegar al archivo, si supongo una cierta ruta como raiz. Por ejemplo, si mi repositorio está en /home/ceronman/paquetes (se supone esta ruta como raiz) y el archivo de lista está en /home/ceronman/hdlist.cz, entonces la ruta relativa es ../hdlist.cz  &lt;br /&gt;
&lt;br /&gt;
[5] Aunque estas herramientas no son más que &amp;quot;Front-Ends&amp;quot; de las herramientas de linea de comandos. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos, columnas y pistas técnicas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/%C2%BFSoftware_Libre_o_Software_de_Fuente_Abierta%3F</id>
		<title>¿Software Libre o Software de Fuente Abierta?</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/%C2%BFSoftware_Libre_o_Software_de_Fuente_Abierta%3F"/>
				<updated>2013-12-04T09:59:39Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Junio 28 de 2.004'''  '''Por Manuel Alejandro Cerón Estrada'''.  ---- === Introducción ===  Actualmente hay dos movimientos importantes referentes...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Junio 28 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Ceronman|Manuel Alejandro Cerón Estrada]]'''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
=== Introducción ===&lt;br /&gt;
&lt;br /&gt;
Actualmente hay dos movimientos importantes referentes al software que se define como libre. Por un lado está el [http://www.gnu.org Movimiento de Software Libre (Free Software Movement)] y por el otro está el [http://www.opensource.org Movimiento de Software de Fuente Abierta (Open Source Movement)]. Ambos tienen grandes similitudes, pero también tienen grandes diferencias. En este artículo voy a tratar de explicar cada uno de estos movimientos. Ya que es importante que todo aquel que esté interesado en el software libre, conozca en que consisten y aprenda a diferenciarlos.&lt;br /&gt;
&lt;br /&gt;
=== El Movimiento de Software Libre ===&lt;br /&gt;
&lt;br /&gt;
El Movimiento de Software Libre fue el primero de todos, inició con Richard M. Stallman a mediados de la década de los 80. Stallman pensaba que las personas que utilizan software deberían tener [http://www.gnu.org/philosophy/free-sw.es.html 4 libertades]: libertad de uso, libertad de estudio y modificación, libertad de redistribución y libertad de redistribuir las modificaciones. Entonces creó la [http://www.gnu.org Fundación para el Software Libre (Free Software Fundation) y el Proyecto de GNU] los cuales se constituyeron en el pilar del Movimiento de Software Libre.&lt;br /&gt;
&lt;br /&gt;
El movimiento de Software Libre esta basado en una [http://www.gnu.org/philosophy/philosophy.es.html filosofía y una ideología] bien definida,  que propende por valores como la libertad, el compartir, y el tener una comunidad colaborativa donde todos se beneficien. La libertad en el software se pone por encima de todo, es decir que se considera como el mayor benefició del software libre el hecho de su propia libertad, más allá de aspectos técnicos o prácticos. Los seguidores del Movimiento del Software Libre están en rotundo desacuerdo con el modelo de software propietario, e instan a las personas a que únicamente usen software libre.&lt;br /&gt;
&lt;br /&gt;
El movimiento materializó su definición de software libre con la Licencia Pública General de GNU (GNU General Public License, GPL). Y plantea una estrategia legal para, no solo desarrollar software libre, sino también para protegerlo de convertirse en propietario; esta estrategia se conoce como [http://www.gnu.org/copyleft/copyleft.es.html ''copyleft''], y significa que el usuario del software obtiene las cuatro libertades mencionadas anteriormente, pero tiene una sola restricción: no pude de ninguna manera convertir el software en propietario, ni si mismo ni sus derivados. Para dicha protección se hace uso de los tratados internacionales de ''copyright''. El término ''copyleft'' es solo un juego de palabras que significa que es contrario a lo que, por lo general, se trata de hacer un un ''copyright''.&lt;br /&gt;
&lt;br /&gt;
=== El Movimiento de Software de Fuente Abierta ===&lt;br /&gt;
&lt;br /&gt;
Para 1998, muchas personas alrededor del mundo se habían unido al Movimiento del Software Libre y gracias a la aparición de Linux y su acoplamiento con el Proyecto GNU, por fin había un sistema operativo funcional completamente libre: GNU/Linux. Algunas personas empezaron a notar que GNU/Linux crecía a pasos agigantados, como una bola de nieve. Entonces se dieron cuenta que el sistema de desarrollo de software libre podría convertirse en una nueva estrategia de negocios que brindaría a las empresas una gran ventaja competitiva y además fortalecería a la comunidad. El problema era que las empresas estaban distantes del Movimiento del Software Libre y no confiaban en que pudieran hacer negocios con este sistema. Esto se debía a que el termino en ingles para software libre, ''free software'', tiene en realidad dos significados: ''software libre'' y ''software gratis''. La palabra gratis sumada al gran contenido ideológico (que contrasta con las políticas expancionistas de las grandes empresas) del Movimiento de Software Libre asustaba a la industria. Fue entonces cuando nació el Movimiento de Software de Fuente Abierta, que trata de ser un “plan de mercadeo para el software libre” [[#Referencias|[1]]] con el cual se pueda convencer a las empresas. Para ello han decidido tomar las características prácticas que plantea el software libre, que representan ventajas competitivas para la industria como por ejemplo su revolucionario modelo de desarrollo y de distribución y dejar a un lado los aspectos éticos e ideológicos del Movimiento del Software Libre.&lt;br /&gt;
&lt;br /&gt;
Este movimiento no ha creado una licencia especifica que materialice su definición de Software de Fuente Abierta, en cambio, ha creado unas serie de [http://www.opensource.org/docs/definition.php criterios a modo de meta-licencia], las cuales, según ellos, debería cumplir todo software se denomine como de Fuente Abierta. Los criterios son: disponibilidad del código fuente, libre distribución, posibilidad de modificación y trabajos derivados, respeto del autor y su integridad [[#Referencias|[2]]], no discriminación de uso para personas o grupos, no discriminación de ningún campo o disciplina, la licencia debe aplicarse a todo el software, licencia no debe estar atada a algún producto, no debe restringir otro software, y no debe estar atado a ninguna tecnología en especial. El movimiento realiza [http://www.opensource.org/docs/certification_mark.php certificaciones] [[#Referencias|[3]]] a todas las licencias que cumplen con dichos criterios, así por ejemplo la licencia GPL del Movimiento de Software Libre tiene una certificación de este tipo.&lt;br /&gt;
&lt;br /&gt;
El Movimiento de Software de Fuente abierta, es además más flexible que el Movimiento de Software Libre en algunos aspectos, por ejemplo sus seguidores no piensan que deben usar sólo software de fuente abierta, sino que también pueden usar software propietario, es más, piensan que el software propietario debe seguir existiendo en convivencia con el software libre. También es más flexible en el sentido de que dentro de sus criterios para definir una licencia como de fuente abierta, no requieren el ''copyleft'' y aceptan por ejemplo la [http://www.xfree86.org/3.3.6/COPYRIGHT2.html#6 licencia BSD] que no requiere que sus derivados sean libres.&lt;br /&gt;
&lt;br /&gt;
Para finalizar solo quiero decir que estos movimientos nos son el agua y el aceite, aunque tiene sus diferencias, en realidad ambos movimientos van hacia el mismo lado. El Movimiento Software Libre [http://www.gnu.org/philosophy/free-software-for-freedom.es.html no considera] al Movimiento de Fuente Abierta como un enemigo ni [http://www.opensource.org/advocacy/faq.php viceversa]. Lo importante no es decidir de que lado se está, sino entender que son movimientos diferentes, que coinciden en gran parte y solo difieren en algunos principios básicos.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 0.8em&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Referencias ===&lt;br /&gt;
&lt;br /&gt;
'''[1]''' Esta es la forma en como el propio movimiento se define en relación con el Movimiento de Software Libre. http://www.opensource.org/advocacy/faq.php&lt;br /&gt;
&lt;br /&gt;
'''[2]''' Esto se refiere al hecho de que todo aquel que haga una modificación al software debe especificar esto y o cambiar el nombre del software o cambiar el numero de la versión. Esto se hace para que si alguien hace una modificación perjudicial, esto no recaiga sobre el autor original.&lt;br /&gt;
&lt;br /&gt;
'''[3]''' Esta certificación se conoce como Certificado de Software Open Source o OSI Certified Open Source Software de la OSI (Open Source Initiative)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Formatos_Libres</id>
		<title>Formatos Libres</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Formatos_Libres"/>
				<updated>2013-12-04T09:59:19Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Julio 5 de 2.004'''  '''Por Manuel Alejandro Cerón Estrada'''.  ----  === Introducción ===  Las patentes de software son un enemigo del [http://ww...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Julio 5 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Ceronman|Manuel Alejandro Cerón Estrada]]'''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Introducción ===&lt;br /&gt;
&lt;br /&gt;
Las patentes de software son un enemigo del [http://www.gnu.org Movimiento de Software Libre], nosotros como miembros de este movimiento debemos, en lo posible, rechazar la difusión de las patentes de software. Uno de los campos en los que más existen patentes es en el de los formatos de archivos, es por eso que en este pequeño artículo voy a tratar de nombrar algunos formatos de archivos libres de patentes que podemos usar y algunos otros formatos propietarios y patentados que '''no''' deberíamos usar.&lt;br /&gt;
&lt;br /&gt;
=== Formatos para imágenes. ===&lt;br /&gt;
&lt;br /&gt;
Para imágenes del tipo mapa de bits [[#Referencias|[1]]], el formato libre de más amplio uso es el PNG ([http://www.libpng.org Portable Network Graphics]). El PNG es un formato recomendado para diagramas y fotografías. Tiene un tipo de compresión que hace que los archivos ocupen muy poco espacio y tengan una buena calidad. Además de eso, el formato PNG es muy versátil, permite manejar varias profundidades de color, canales alpha[[#Referencias|[2]]] y transparencias.&lt;br /&gt;
&lt;br /&gt;
Cuando se trabaja con gráficos es mejor evitar el formato GIF ([http://astronomy.swin.edu.au/%7Epbourke/dataformats/gif/ Graphics Interchange Format]), ya que usa el algoritmo de compresión LZW que está patentado. Aunque la patente del LZW ya se venció en algunos países del mundo, todavía tiene vigencia en otros por lo cual es mejor evitar su uso. Otro formato muy popular sometido a patentes de software es el JPEG ([http://www.jpeg.org Joint Picture Experts Group]).&lt;br /&gt;
&lt;br /&gt;
Para realizar pequeñas animaciones, como lo permite el GIF, existe un formato derivado del PNG llamado MNG ([http://www.libpng.org Multiple-image Network Graphics]) que sirve para el mismo propósito.&lt;br /&gt;
&lt;br /&gt;
Aplicaciones gráficas libres como [http://www.gimp.org GIMP], permiten manejar fácilmente gráficos PNG, MNG, entre muchos otros.&lt;br /&gt;
&lt;br /&gt;
Para el manejo de imágenes vectoriales [[#Referencias|[3]]] el formato gráfico estándar es el SVG ([http://www.w3.org/TR/SVG/ Scalable Vector Graphics]). Este formato ha sido desarrollado por la W3C con el objetivo de crear un formato gráfico escalable, portable, liviano y potente. Aunque este formato tiene patentes de la [www.w3c.org W3C], esta entidad ha permitido su uso casi completamente libre [[#Referencias|[4]]], por lo que se ha difundido mucho. El formato SVG puede ser creado y manipulado usando programas libres como [http://www.sodipodi.com Sodipodi] y [sketch.sourceforge.net Sketch] o incluso a mano, ya que el SGV está basado en XML y puede abrirse con un simple editor de texto.&lt;br /&gt;
&lt;br /&gt;
El popular formato de animaciones vectoriales SWF de [http://www.macromedia.com Macromedia Flash] está patentado y es propiedad de [http://www.macromedia.com Macromedia]. Está empresa no cobra regalías por utilizar ni implementar software que utilice este formato, sus especificaciones y SDK son libres, sin embargo, se impiden algunas acciones como extenderlo o modificarlo.&lt;br /&gt;
&lt;br /&gt;
=== Formatos para Documentos. ===&lt;br /&gt;
&lt;br /&gt;
El formato para documentos más utilizado es el HTML (Hyper Text Markup Language), es el lenguaje sobre el que se basa la ''World Wide Web''. Es completamente portable y libre. Casi todas las aplicaciones libres y no libres para crear documentos lo soportan.&lt;br /&gt;
&lt;br /&gt;
Otro formato de documentos de libre de patentes es el RTF ([http://www.biblioscape.com/rtf15_spec.htm Rich Text Format]). Se utiliza uno de los formatos nativos de [http://office.microsoft.com/home/default.aspx Microsoft Word], el procesador de palabras propietario más utilizado en el mundo. Existen muchos proyectos de Software Libre que soportan este formato y también hay utilidades que permiten su conversión a HTML.&lt;br /&gt;
&lt;br /&gt;
El popular formato PDF ([http://www.adobe.com Portable Document Format]) es propiedad de la empresa [http://www.adobe.com Adobe] y tiene sobre si muchas patentes, en especial en lo referente a la encriptación. Sin embargo, al igual que para el formato SWF, sus especificaciones son libres y no se cobran regalías por implementar software que haga uso de este formato.&lt;br /&gt;
&lt;br /&gt;
Cuando se trata de documentos hay que evitar a toda costa el uso de formatos como el DOC de Microsoft Word o cualquier otro formato de una aplicación especifica, y más si es propietaria.&lt;br /&gt;
&lt;br /&gt;
=== Formatos de Compresión.===&lt;br /&gt;
&lt;br /&gt;
Dentro del mundo libre, los dos formatos de compresión más utilizados son el [http://www.gzip.org/ GZIP] [[#Referencias|[5]]] (.gz) y el [http://sources.redhat.com/bzip2/ BZIP2] (*.bz2). Las distribuciones de GNU/Linux, por lo general tienen un amplio soporte para estos dos formatos, gracias a las librerías [http://www.zlib.org zlib] y [http://sources.redhat.com/bzip2/ libbz2].&lt;br /&gt;
&lt;br /&gt;
Algunos formatos de compresión que hay que evitar son el [http://www.rarlab.com/ RAR] y el [http://www.winace.com/ ACE], debido a que ambos están sujetos a patentes y solo se pueden usar con programas propietarios.&lt;br /&gt;
&lt;br /&gt;
=== Formatos de Audio.===&lt;br /&gt;
&lt;br /&gt;
Este es quizás uno de los campos sobre los cuales hay más patentes en lo que se refiera a formatos. Tal vez los únicos buenos formatos libres de audio sean el [http://www.vorbis.com/ Ogg Vorbis] (orientada a música) y [http://www.speex.org/ Ogg Speex] (orientada a voz). Estos formatos logran una calidad muy buena y un nivel de compresión muy alto, trabaja en forma muy parecida a como lo hace el MP3. La mayoría de aplicaciones de audio libres como [http://www.mp3.com XMMS] tiene soporte para Ogg. Aunque hay formatos de uso libre como el WAV, estos, carecen de una buena compresión por lo que su utilización es bastante limitada.&lt;br /&gt;
&lt;br /&gt;
En cuanto a audio, se debería evitar en lo posible usar formatos como, MP3 [[#Referencias|[6]]], WMA [http://www.windowsmedia.com/ (Windows Media Audio]), RMA ([http://www.real.com/ Real Media Audio]); debido a que tienen patentes y restricciones que impiden su uso en programas libres.&lt;br /&gt;
&lt;br /&gt;
=== Formatos de Vídeo ===&lt;br /&gt;
&lt;br /&gt;
Este es otro campo inundado de patentes especialmente en lo referente a codecs de video. Uno de los proyectos libres más prometedores es [www.theora.org Theora], de los mismos creadores del formato Ogg. Theora es descendiente de [www.vp3.com VP3], un codec de video libre, que tiene una relativamente buena compresión, con poca perdida de calidad.&lt;br /&gt;
&lt;br /&gt;
Otro codec de video libre de mucha popularidad es el [http://www.xvid.org XviD], creado por algunos de los desarrolladores de [http://www.divx.com DivX] (de ahí su nombre). Aunque la calidad y compresión de XviD son asombrosas, tiene un gran problema: Necesita de un contenedor [http://www.mpegla.com/ MPEG-4] y este formato está plagado de patentes, aunque las implementaciones son libres, hay que pagar regalías que ascienden a un millón de dolares por usar este formato.&lt;br /&gt;
&lt;br /&gt;
En lo referente a vídeo, lo mejor es evitar formatos patentados como MOV ([http://www.apple.com/quicktime Apple Quick Time]) WMV ([http://www.windowsmedia.com Windows Media Video]) o codecs como DivX.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 0.8em&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Referencias ===&lt;br /&gt;
&lt;br /&gt;
'''[1]''' Una imagen del tipo mapa de bits, es una imagen donde la información se guarda en forma de una cuadricula de píxeles (puntos en la pantalla). Esta forma de guardar la información tiene la ventaja de que pude lograr una gran calidad, ideal para fotografías por ejemplo, pero tiene la desventaja de que no se pude escalar, es decir aumentar su o reducir su tamaño, debido a que hay perdida de la calidad de la imagen.&lt;br /&gt;
&lt;br /&gt;
'''[2]''' Generalmente las imágenes del tipo mapa de bits, tienen 3 canales, para los colores rojo, verde, y azul. Sin embargo algunos formatos permiten tener un cuarto canal que puede servir para varias utilidades como guardar transparencias, selecciones o cualquier otra cosa.&lt;br /&gt;
&lt;br /&gt;
'''[3]''' Una imagen del tipo vectorial, al contrario de los mapas de bits, guardan la información a manera de vértices y segmentos que los unen. Como gran ventaja tienen el hecho de que los gráficos se pueden escalar sin perdida de calidad y ocupan muy poco espacio. Como desventaja tienen que resulta muy difícil lograr un gran detalle, por lo que no son aptas para fotografías por ejemplo.&lt;br /&gt;
&lt;br /&gt;
'''[4]''' La única restricción de la licencia de patente del formato SVG es que no se puede usar para algún fin que perjudique a la W3C.&lt;br /&gt;
&lt;br /&gt;
'''[5]''' El conocido formato de compresión ZIP, no es más que el mismo algoritmo del GZIP, pero adaptado para que pueda comprimir muchos archivos. El GZIP y el BZIP2 no permiten comprimir más de un archivo. Sin embargo este problema se resuelve en las distribuciones de GNU/Linux, usando paquetes TAR para empaquetar el archivo y luego comprimirlo, por ello los archivos tienen exenciones como tar.gz o tar.bz2&lt;br /&gt;
&lt;br /&gt;
'''[6]''' La licencia de la patente del MP3 permite, sin costo, su uso en programas gratuitos, por lo que aplicaciones como XMMS o MPEG123 puede usarlo.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Haciendo_m%C3%A1s_f%C3%A1cil_el_cambio_de_Windows_a_GNU/Linux</id>
		<title>Haciendo más fácil el cambio de Windows a GNU/Linux</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Haciendo_m%C3%A1s_f%C3%A1cil_el_cambio_de_Windows_a_GNU/Linux"/>
				<updated>2013-12-04T09:58:58Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Julio 12 de 2.004'''  '''Por Manuel Alejandro Cerón Estrada'''.  ----  === Introducción ===  Actualmente la mayoría de los usuarios de PC usan el...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Julio 12 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Ceronman|Manuel Alejandro Cerón Estrada]]'''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Introducción ===&lt;br /&gt;
&lt;br /&gt;
Actualmente la mayoría de los usuarios de PC usan el sistema operativo [http://www.microsoft.com/windows/ Microsoft Windows], sin embargo muchos de esos usuarios están inconformes con esto y quieren probar un poco de la [http://www.gnu.org/philosophy/linux-gnu-freedom.html libertad] que brinda el sistema operativo [http://www.gnu.org GNU/Linux]. No obstante, GNU/Linux es un sistema diferente en muchos aspectos al software de [http://www.microsoft.com Microsoft] y esto causa que muchas personas acostumbradas a este, que realizan un cambio brusco, se sientan desilusionadas por que no se desenvuelven bien en el nuevo entorno. Es por ello que en este artículo voy a tratar de nombrar algunas estrategias que permitan un paso más fácil y suave desde Windows hasta GNU/Linux.&lt;br /&gt;
&lt;br /&gt;
=== Empezando con programas libres ===&lt;br /&gt;
&lt;br /&gt;
Antes de cambiarse completamente de sistema operativo, lo mejor es acostumbrarse a los programas de uso común que vienen en las distribuciones de GNU/Linux. Gracias a la naturaleza abierta del software libre, los proyectos más populares por lo general tienen versiones tanto para el sistema operativo GNU/Linux como para Microsoft Windows y otros. Gracias a esto, es posible tener contacto con muchos programas libres sin tener que cambiar el sistema operativo.&lt;br /&gt;
&lt;br /&gt;
Las personas que deseen cambiar su sistema Windows a uno GNU/Linux deberían comenzar por cambiar los programas que usan todos los días, por sus alternativas disponibles en GNU/Linux. Algunos de los cambios que deberían hacer son:&lt;br /&gt;
&lt;br /&gt;
* La suite de oficina [http://office.microsoft.com/ Microsoft Office] por [http://www.openoffice.org OpenOffice.org] o [http://www.abisource.com/ AbiWord] como procesador de texto.&lt;br /&gt;
* El navegador web [http://www.microsoft.com/windows/ie/default.asp Microsoft Internet Explorer] por alguna de las opciones de [http://www.mozilla.org Mozilla.org] como [http://www.mozilla.org/products/mozilla1.x/ Mozilla Internet Suite] o [http://www.mozilla.org/products/firefox/ Mozilla FireFox].&lt;br /&gt;
* El cliente de correo electrónico [http://www.microsoft.com/outlook/ Microsoft Outlook] o [http://www.microsoft.com/windows/ie/ Microsoft Outlook Express] por [http://www.mozilla.org/products/mozilla1.x/ Mozilla Internet Suite] o [http://www.mozilla.org/products/thunderbird/ Mozilla ThunderBird].&lt;br /&gt;
* El cliente de mensajería instantánea [http://messenger.msn.com/ Microsoft MSN Messenger] por [http://gaim.sourceforge.net/ Gaim], [http://amsn.sourceforge.net/ AMSN] o [http://www.everybuddy.com/ EveryBuddy].&lt;br /&gt;
* El reproductor multimedia [http://www.windowsmedia.com/ Microsoft Windows Media Player] por [http://www.mplayerhq.hu/homepage/ Mplayer] o [http://xine.sourceforge.net/ Xine]&lt;br /&gt;
* Procesadores de imágenes como [http://www.adobe.com/products/photoshop/main.html Adobe PhotoShop] o [http://www.jasc.com/products/paintshoppro/ Jasc Paint Shop Pro] por [http://www.gimp.org Gimp]&lt;br /&gt;
* Procesadores de imágenes vectoriales como [http://www.adobe.com/products/illustrator/main.html Adobe Ilustrator] o [http://www.corel.com/ Corel Draw] por [http://www.sodipodi.com Sodipodi].&lt;br /&gt;
&lt;br /&gt;
En fin, la lista podría extenderse mucho, pero iría más allá de las posibilidades de este artículo. Para el que este interesado en otro tipo de aplicaciones puede revisar [http://gnuwin.epfl.ch/es/index.html GNUWin II], una página web dedicada a recopilar software libre de GNU/Linux que funciona en Windows. Tambien está el proyecto [http://gnuwin32.sourceforge.net/ GNUWin32], que se dedica a portar las utilidades básicas de GNU como ''gzip'', ''iconv'', ''less'', ''sed'', ''sh-utils'', ''tar'', ''wget'', etc...&lt;br /&gt;
&lt;br /&gt;
=== Usando Cygwin ===&lt;br /&gt;
&lt;br /&gt;
[http://cygwin.com/ Cygwin] es una poderosa herramienta que tiene como objetivo brindar al usuario de Windows un entorno tipo GNU/Linux. Para ello se vale de una serie de bibliotecas dinámicas (DLL) las cuales proveen una capa de emulación de la funcionalidad de GNU/Linux (y en general Unix). Gracias a esto, es posible compilar y ejecutar [[#Referencias|[1]]] programas para GNU/Linux en Windows. Con Cygwin es posible acceder al shell bash, utilizar el ''cron'' para programar tareas, bajar archivos con ''wget'', conectarse a otra máqina con ''ssh'', entre otras cosas más.&lt;br /&gt;
&lt;br /&gt;
Como parte del proyecto Cygwin, encontramos también [http://x.cygwin.com/ Cygwin/X], que es ni más ni menos que la implementación del [http://www.x.org Sistema X-Window] para el sistema operativo Microsoft Windows. Cygwin/X provee los servidores, clientes y bibliotecas necesarios para ejecutar cualquier aplicación gráfica de GNU/Linux en Windows. Gracias a este potente sistema es posible ejecutar entornos de escritorio completos como [http://www.kde.org KDE], [http://www.gnome.org Gnome] y todas sus aplicaciones. Como en cualquier implementación del Sistema X Window, con Cygwin/X también podemos conectarnos a otra maquina GNU/Linux con ''ssh'' y ejecutar programas gráficos remotamente [[#Referencias|[2]]], consumiendo los recursos del otro PC.&lt;br /&gt;
&lt;br /&gt;
La combinación Cygwin y Cygwin/X es una forma perfecta de acostumbrarse, poco a poco, a los programas y la forma de trabajo en GNU/Linux; si se maneja correctamente se pude llegar a un punto en el que la diferencia con respecto a un sistema GNU/Linux real sea casi nula [[#Referencias|[3]]].&lt;br /&gt;
&lt;br /&gt;
=== Linux para Windows ===&lt;br /&gt;
&lt;br /&gt;
Otra alternativa para comenzar con un sistema GNU/Linux sin abandonar ni reparticionar un sistema Windows es usar una versión especial de GNU/Linux que trabaje sobre Windows. Este tipo especial de distribuciones funcionan debido a que realizan una imagen en el sistema de archivos ''FAT'' o ''NTFS'' de Windows sobre el cual pueden montar su propio sistema de archivos ''ext2'', ''ext3'', ''reiserfs'', ''swap'' o cualquier otro.&lt;br /&gt;
&lt;br /&gt;
La distribución de Linux para Windows más popular es [http://www.winlinux.net/ WinLinux], aunque también existe el sistema [http://www.linux-mandrake.com/en/lnx4win.php3 Lnx4Win] de MandrakeSoft, que permite instalar Mandrake Linux sobre Windows.&lt;br /&gt;
&lt;br /&gt;
Las distribuciones para Windows sólo deberían usarse como una forma de probar GNU/Linux, y no deben instalarse para uso normal. Esto se debe a que el hecho de que se basen en Windows hace que también se basen en todos sus defectos y anulen gran parte de las ventajas de GNU/Linux (entre ellas la libertad).&lt;br /&gt;
&lt;br /&gt;
=== Los Live CDs ===&lt;br /&gt;
&lt;br /&gt;
Definitivamente la forma más fácil de probar el sistema operativo GNU/Linux sin tener que instalarlo es usar un Live CD. Un Live CD es una tipo especial de distribución de GNU/Linux que no necesita de instalación. Para poder usarlo es necesario arrancar el PC desde el CD-ROM [[#Referencias|[4]]], entonces automáticamente se carga en la memoria un sistema GNU/Linux completo. El sistema funciona enteramente en la memoria RAM por lo que el disco duro con Windows no se ve afectado en lo más mínimo.&lt;br /&gt;
&lt;br /&gt;
Actualmente el Live CD más popular es [http://www.knoppix.org/ Knoppix], el cual está basado en la distribución Debian GNU/Linux, aunque también hay muchos otros como [http://www.mandrakesoft.com/products/mandrakemove Mandrake Move] basada en [http://www.mandrakelinux.com Mandrake] . Por lo general los Live CDs contienen un gran surtido de programas de todo tipo, por ejemplo entorno gráfico de escritorio, suite de Internet, suite de oficina, reproductores multimedia, programas gráficos, entre muchos otros.&lt;br /&gt;
&lt;br /&gt;
Los Live CDs tienen un problema: debido a que realizan lectura de datos desde el CD-ROM y no desde el disco duro, los programas no cargan con la misma velocidad que en una instalación. Por otro lado el consumo de memoria es mayor ya que todo se hace en ''RAM''. Para solucionar esto, la mayoría de los Live Cds tiene la opción de ser instalados como una distribución normal.&lt;br /&gt;
&lt;br /&gt;
=== La instalación dual ===&lt;br /&gt;
&lt;br /&gt;
Como una opción para las personas que ya se han internado un poco en el mundo de GNU/Linux, pero que todavía no están listas para el cambio total, siempre existe el método de la instalación dual, gracias a esta técnica es posible tener en un mismo PC dos o más sistemas operativos. De esta manera es posible empezar a usar un sistema GNU/Linux real, sin dejar completamente a Windows.&lt;br /&gt;
&lt;br /&gt;
Una instalación dual es sólo posible con la ayuda de un cargador de arranque como [http://lilo.go.dyndns.org/ LILO] o [http://www.gnu.org/software/grub/ GNU Grub]. La mayoría de las distribuciones de GNU/Linux permiten realizar la configuración de un cargador de arranque de forma muy sencilla, incluso en algunos casos el proceso es completamente automático.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 0.8em&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Referencias ===&lt;br /&gt;
&lt;br /&gt;
'''[1]''' Esto no quiere decir que Cygwin sirva como una especie de [http://www.winehq.com/ Wine], es decir que Cygwin no permite ejecutar directamente binarios de GNU/Linux en Windows; en lugar de eso, provee el soporte necesario para compilar las fuentes de un programa para GNU/Linux y una vez compilado pueda correr en Windows.&lt;br /&gt;
&lt;br /&gt;
'''[2]''' Este proceso es denominado “ssh tunneling”&lt;br /&gt;
&lt;br /&gt;
'''[3]''' Obviamente esto se refiere exclusivamente al “look and feel”, ya que la característica más importante de GNU/Linux no se pude obtener de ninguna manera en Windows: la satisfacción de usar un sistema completamente libre.&lt;br /&gt;
&lt;br /&gt;
'''[4]''' Para hacer esto, muchas veces es necesario cambiar la configuración del BIOS del PC para que arranque desde el CD-ROM. Usualmente el método para acceder a esta configuración es presionar la tecla &amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;[delete]&amp;lt;/span&amp;gt; o &amp;lt;span style=&amp;quot;font-style: italic;&amp;quot;&amp;gt;[suprimir]&amp;lt;/span&amp;gt; apenas se enciende o se reinicia el equipo.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	<entry>
		<id>http://gluc.unicauca.edu.co/index.php/Seguridad_Nacional_y_Dominaci%C3%B3n_Tecnol%C3%B3gica</id>
		<title>Seguridad Nacional y Dominación Tecnológica</title>
		<link rel="alternate" type="text/html" href="http://gluc.unicauca.edu.co/index.php/Seguridad_Nacional_y_Dominaci%C3%B3n_Tecnol%C3%B3gica"/>
				<updated>2013-12-04T09:58:35Z</updated>
		
		<summary type="html">&lt;p&gt;LibardoPantoja: Página creada con «'''Julio 20 de 2.004'''  '''Por Manuel Alejandro Cerón Estrada'''.  ----  === Introducción === En los últimos años hemos leído muchas noticias ace...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Julio 20 de 2.004'''&lt;br /&gt;
&lt;br /&gt;
'''Por [[Usuario:Ceronman|Manuel Alejandro Cerón Estrada]]'''.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Introducción ===&lt;br /&gt;
En los últimos años hemos leído muchas noticias acerca de migraciones hacia el software libre desde varias partes del mundo. Países como Alemania, Italia, Francia, España, Japón, China, Corea del Sur, Brasil, Argentina [[#Referencias|[1]]], entre otros, están cambiando gradualmente sus sistemas Microsoft Windows por GNU/Linux. Además de todas las ventajas del Software Libre, como su bajo costo, fiabilidad, adaptabilidad y por supuesto su libertad; dos de los objetivos de estas naciones respecto a las migraciones son proteger su seguridad nacional e impedir la dominación tecnológica.&lt;br /&gt;
&lt;br /&gt;
=== Software Propietario: Un problema para la Seguridad Nacional ===&lt;br /&gt;
&lt;br /&gt;
Aunque con dificultad, algunos ingenieros han encontrado pruebas de que la Agencia de Seguridad Nacional de los Estados Unidos (NSA por sus siglas en ingles) ha insertado componentes en varios programas propietarios con fines secretos. Duncan Campbell comenta con detalles en su artículo [http://www.heise.de/tp/english/inhalt/te/2898/1.html “How NSA access was built into Windows”] como, gracias a acciones de ingeniería inversa y errores de programadores de Microsoft, algunos ingenieros lograron comprobar que la NSA había insertado cierto código secreto en casi todas las versiones de Microsoft Windows, haciendo que “tengan una puerta trasera para la NSA que hace, en un gran orden de magnitud, más fácil para el gobierno de Estado Unidos tener acceso a un computador”.&lt;br /&gt;
&lt;br /&gt;
En el artículo [http://www.heise.de/tp/english/inhalt/te/5263/1.html “Only NSA can listen, so that's OK”], Campbell también denuncia como la NSA introdujo modificaciones en el cliente de correo electrónico Lotus Notes para que “el gobierno de Estados Unidos pudiera romper la encriptación de los mensajes privados 16 millones de veces más rápido que cualquier otro”&lt;br /&gt;
&lt;br /&gt;
Estos y otros casos empezaron a preocupar a varios países, especialmente porque el sistema operativo Microsoft Windows está presente en más del 95 por ciento de los computadores personales en todo el mundo y Lotus Notes es el cliente de correo más utilizado en Europa. Pero aún así el problema no es solo de estas dos piezas de software; ellos rápidamente se dieron cuenta de que el uso de cualquier programa propietario implicaba un total desconocimiento de lo que realmente se está haciendo y un potencial riesgo de ser espiado y atacado.&lt;br /&gt;
&lt;br /&gt;
En 2003, Estados Unidos decidió invadir Irak en busca de petroleo aun en contra de las decisiones de la ONU y las manifestaciones de cientos de miles de personas al rededor del mundo. Esto creo tensión en varios países que se opusieron a la guerra e hizo que estos le dieran aun más importancia al asunto de los códigos espías incrustados en los programas propietarios.&lt;br /&gt;
&lt;br /&gt;
La solución a este problema llego de la mano del Software Libre. Gracias a este nuevo concepto, las naciones podían tener programas e incluso un sistema operativo completo que funciona de forma completamente transparente en un computador, es decir que es posible saber, con total exactitud, que hace y que no hace un programa libre. Adicionalmente, el software libre apoyaba el desarrollo de empresas locales, como [http://www.mandrakesoft.com MandrakeSoft] en Francia, [http://www.suse.com SuSe] en Alemania y [http://www.turbolinux.co.jp/ TurboLinux] en Asia.&lt;br /&gt;
&lt;br /&gt;
=== Software Propietario: Una herramienta de dominación tecnológica ===&lt;br /&gt;
&lt;br /&gt;
Los problemas de seguridad nacional no es lo único que preocupa a los países de Europa, Asia y América. El temor hacia la dominación tecnológica también es algo que los está motivando a cambiar sus programas propietarios.&lt;br /&gt;
&lt;br /&gt;
El problema consiste en que el software propietario es un secreto. A excepción de sus creadores, nadie puede saber como funciona, como fue hecho, como hacer algo parecido o como hacer una modificación. Cuando se compra un programa propietario, no se compra el programa en si, sino un permiso o licencia para obtener unos beneficios de ese software, pero nunca se obtiene el software como tal. De esta manera, no hay transferencia tecnológica, el conocimiento siempre se queda con los propietarios del software.&lt;br /&gt;
&lt;br /&gt;
Actualmente en nuestra vida diaria dependemos cada vez más de la tecnología y el hecho de que la mayoría de programas de computador que existen requieren del sistema operativo Microsoft Windows, cuyo propietario es una empresa Estadounidense, asusta a muchas naciones en el mundo. Están asustados no solo por el hecho de que en cualquier momento Estados Unidos puede simplemente bloquearlos tecnologicamente, sino también porque la situación se presta para abusos económicos por parte de los dueños del software.&lt;br /&gt;
&lt;br /&gt;
Nuevamente el Software Libre se constituye en una solución perfecta para este problema. Cualquier programa que sea libre debe permitir al usuario saber como funciona, como fue hecho y además permitir, sin restricción alguna, la modificación y expansión del mismo. Gracias a esto, los países pueden tener empresas y grupos de desarrollo locales, que van a tener la posibilidad de continuar el desarrollo tecnológico, aun si uno o muchos otros países decidan ocultarles el conocimiento.&lt;br /&gt;
&lt;br /&gt;
Estas dos, junto con otras grandes razones, son las que han hecho que en muchas naciones del mundo estén cambiando los computadores usados por el gobierno al Software Libre. Gracias a esto, probablemente en unos años el software predominante (al menos en sistemas operativos) sea libre Definitivamente en Colombia deberíamos seguir por el mismo camino y no quedarnos atrás. El Software Libre trae muchas oportunidades para todos los países, es algo que no se puede desaprovechar.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-size: 0.8em&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Referencias ===&lt;br /&gt;
&lt;br /&gt;
[1] Algunas de estas noticias pueden ser encontradas en:&lt;br /&gt;
&lt;br /&gt;
[http://iblnews.com/news/noticia.php3?id=104374 http://iblnews.com/news/noticia.php3?id=104374]&lt;br /&gt;
&lt;br /&gt;
[http://www.mandrakesoft.com/company/press/pr?n=/pr/business/2490 http://www.mandrakesoft.com/company/press/pr?n=/pr/business/2490]&lt;br /&gt;
&lt;br /&gt;
[http://www.muenchen.de/Rathaus/referate/dir/limux/89256/index.html http://www.muenchen.de/Rathaus/referate/dir/limux/89256/index.html]&lt;br /&gt;
&lt;br /&gt;
[http://www.softwarelibre.gov.ar/ver_not.php?id=49 http://www.softwarelibre.gov.ar/ver_not.php?id=49]&lt;br /&gt;
&lt;br /&gt;
[http://www.softwarelibre.gov.ar/ver_not.php?id=31 http://www.softwarelibre.gov.ar/ver_not.php?id=31]&lt;br /&gt;
&lt;br /&gt;
[http://www.vialibre.org.ar/index.php/article/articleview/128/1/8/ http://www.vialibre.org.ar/index.php/article/articleview/128/1/8/]&lt;br /&gt;
&lt;br /&gt;
[http://www.laflecha.net/canales/softlibre/200403011/ http://www.laflecha.net/canales/softlibre/200403011/]&lt;br /&gt;
&lt;br /&gt;
[http://www.linex.org/ http://www.linex.org/]&lt;br /&gt;
&lt;br /&gt;
[http://www.guadalinex.org/ http://www.guadalinex.org/]&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;/div&amp;gt;&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''El contenido del material publicado por nuestros columnistas es responsabilidad de sus autores.''&lt;br /&gt;
&lt;br /&gt;
Para saber más sobre la programación y naturaleza de nuestros artículos y columnas, haga clic '''[[Artículos y Columnas|aquí]]'''.&lt;br /&gt;
&lt;br /&gt;
[[Categoría:Artículos y Columnas]]&lt;/div&gt;</summary>
		<author><name>LibardoPantoja</name></author>	</entry>

	</feed>