1 00:00:00,000 --> 00:00:14,000 La siguiente charla o ponencia se llama Tocando Código Abierto y van a ser tres profesoras del IES Graham Bell de Colmenar Viejo. 2 00:00:14,000 --> 00:00:22,000 María Teresa Martínez Soria, profesora técnica de formación profesional en la especialidad de sistemas y aplicaciones informáticas, 3 00:00:22,000 --> 00:00:30,000 ingeniera técnica de telecomunicaciones y ha trabajado para Telefónica en IMASD, AMENA e INDRA. 4 00:00:30,000 --> 00:00:36,000 María Amparo Martín Moreno, profesora técnica de formación profesional en la especialidad de sistemas y aplicaciones informáticas, 5 00:00:36,000 --> 00:00:39,000 es ingeniero técnico en informática de sistemas. 6 00:00:39,000 --> 00:00:44,000 Y Alba Moreno Tejeda, profesora de enseñanza secundaria en la especialidad de informática. 7 00:00:44,000 --> 00:00:49,000 Ha trabajado en distintos institutos, tanto de Madrid como de Aragón. 8 00:00:49,000 --> 00:00:50,000 Gracias. 9 00:00:52,000 --> 00:01:01,000 Un saludo para todos. 10 00:01:01,000 --> 00:01:06,000 Os voy a contar un poco cómo nos surgió esta idea. 11 00:01:06,000 --> 00:01:13,000 El año pasado algunos de nuestros alumnos recibimos críticas sobre las jornadas 12 00:01:13,000 --> 00:01:19,000 y como sabéis siempre nos cuestionamos esas críticas. 13 00:01:19,000 --> 00:01:24,000 Y una de ellas es que queríais algo más práctico, más interactivo, 14 00:01:24,000 --> 00:01:27,000 en donde vosotros también pudierais participar. 15 00:01:27,000 --> 00:01:30,000 Y en eso consiste esta ponencia. 16 00:01:30,000 --> 00:01:38,000 Tocando código abierto, al final va a ser una práctica que os vamos a pasar un guión 17 00:01:38,000 --> 00:01:43,000 que vosotros vais a poder desarrollar en los equipos que tenemos aquí. 18 00:01:44,000 --> 00:01:54,000 Y consiste, como dice el título, en abrir el código fuente, modificarlo 19 00:01:54,000 --> 00:01:58,000 y volverlo a ejecutar para que veamos la modificación. 20 00:01:58,000 --> 00:02:01,000 La primera ponencia que nos ha contado Jesús 21 00:02:01,000 --> 00:02:05,000 y una de esas características que tiene el Salón Libre 22 00:02:05,000 --> 00:02:07,000 que es modificar el código fuente. 23 00:02:07,000 --> 00:02:09,000 Pues eso es lo que vamos a hacer. 24 00:02:09,000 --> 00:02:15,000 Y como es dirigido para vosotros, la aplicación que hemos elegido es un juego. 25 00:02:15,000 --> 00:02:21,000 En concreto Atomic Tanks, que es un juego de tanques. 26 00:02:21,000 --> 00:02:25,000 Bueno, espero que os guste y os voy a dejar primero con Maite 27 00:02:25,000 --> 00:02:31,000 para que os cuente todas aquellas cosas que necesitáis para desarrollar esta práctica. 28 00:02:34,000 --> 00:02:36,000 Buenos días a todos, gracias por venir. 29 00:02:37,000 --> 00:02:44,000 A lo largo del taller o de esta charla van a aparecer constantemente dos términos 30 00:02:44,000 --> 00:02:50,000 que conviene que tengamos claro para comprender un poco para qué estamos haciendo. 31 00:02:50,000 --> 00:02:54,000 Uno de ellos es que es el código fuente. 32 00:02:54,000 --> 00:03:00,000 El código fuente no es más que un conjunto de instrucciones que componen el programa. 33 00:03:00,000 --> 00:03:07,000 De acuerdo, si por ejemplo en este juego nosotros apretamos la tecla de disparo 34 00:03:07,000 --> 00:03:11,000 para que el tanque dispare un misil, por ejemplo, 35 00:03:11,000 --> 00:03:14,000 esto funciona así y va a resultar así 36 00:03:14,000 --> 00:03:19,000 gracias a que hay un conjunto de instrucciones en el programa que indican que se haga eso. 37 00:03:21,000 --> 00:03:26,000 Entonces el código fuente no es más que un conjunto de instrucciones que componen el programa. 38 00:03:27,000 --> 00:03:31,000 Y otro término que va a aparecer constantemente es compilar. 39 00:03:31,000 --> 00:03:33,000 ¿En qué consiste compilar? 40 00:03:33,000 --> 00:03:38,000 El código fuente de nuestro juego no se puede ejecutar directamente 41 00:03:38,000 --> 00:03:41,000 porque la máquina no lo puede entender. 42 00:03:41,000 --> 00:03:47,000 Es necesario compilar este código para convertirlo en código ejecutable binario 43 00:03:47,000 --> 00:03:49,000 entendible por la máquina. 44 00:03:50,000 --> 00:03:57,000 ¿Qué herramientas vamos a necesitar a lo largo del taller? 45 00:03:58,000 --> 00:04:06,000 En primer lugar, saber que lo que vamos a hacer es descargarnos un paquete 46 00:04:06,000 --> 00:04:08,000 que es el juego, el Atomic Tanks, 47 00:04:08,000 --> 00:04:15,000 y nos vamos a descargar un paquete en el que están incluidos los ficheros fuentes de ese juego. 48 00:04:16,000 --> 00:04:21,000 Este paquete no es más que un fichero TAR que está comprimido 49 00:04:21,000 --> 00:04:27,000 y que se desempaqueta y se descomprime con el comando TAR 50 00:04:27,000 --> 00:04:29,000 que vamos a ejecutar de esa manera. 51 00:04:29,000 --> 00:04:32,000 TAR con las opciones X, Y, V, F 52 00:04:32,000 --> 00:04:39,000 y a continuación ponemos el nombre del fichero del programa, del paquete que contiene el juego. 53 00:04:40,000 --> 00:04:48,000 Seguidamente vamos a compilar el programa, es decir, a convertirlo en un programa ejecutable, 54 00:04:48,000 --> 00:04:49,000 en código binario. 55 00:04:49,000 --> 00:04:51,000 El código fuente lo pasamos a código binario. 56 00:04:51,000 --> 00:04:55,000 Para eso utilizamos un comando que se llama MAKE. 57 00:04:56,000 --> 00:04:58,000 No, hacia atrás. 58 00:05:03,000 --> 00:05:10,000 Ahora bien, antes de compilar el juego vamos a necesitar descargarnos unos paquetes 59 00:05:10,000 --> 00:05:14,000 y para ello vamos a utilizar el gestor de paquetes Synaptic. 60 00:05:14,000 --> 00:05:17,000 Está en la otra transparencia que ya se ha pasado. 61 00:05:17,000 --> 00:05:24,000 Es el Synaptic el gestor de paquetes que vamos a emplear para instalar otros paquetes que necesitamos 62 00:05:24,000 --> 00:05:26,000 para que el juego funcione. 63 00:05:26,000 --> 00:05:32,000 Una vez que ya lo hemos descargado, que lo hemos desempaquetado, que lo hemos compilado, 64 00:05:32,000 --> 00:05:38,000 haremos una modificación para que veáis que es un código abierto, que se puede modificar 65 00:05:38,000 --> 00:05:41,000 y que las cosas funcionan. 66 00:05:41,000 --> 00:05:49,000 En esta fase emplearemos la herramienta GREP para buscar patrones en ficheros de texto en Linux 67 00:05:50,000 --> 00:05:55,000 y un editor de textos para hacer los cambios que decidamos. 68 00:05:55,000 --> 00:06:01,000 Ese editor de textos es la herramienta GEDIT que está en el entorno gráfico del MAX 69 00:06:01,000 --> 00:06:08,000 o si utilizáis en casa otro sistema, otra distribución de Linux también. 70 00:06:09,000 --> 00:06:16,000 Entonces, en las fases ya os digo que primero nos descargamos el paquete, 71 00:06:16,000 --> 00:06:25,000 lo desempaquetamos, lo compilamos, lo ejecutamos para ver que funciona 72 00:06:25,000 --> 00:06:34,000 y posteriormente modificamos el código fuente y volvemos a compilar para probar que la modificación ha funcionado. 73 00:06:35,000 --> 00:06:40,000 ¿De dónde nos descargaremos el código fuente, el paquete del juego? 74 00:06:40,000 --> 00:06:46,000 De una página web, concretamente de la página web sourceforge.net 75 00:06:46,000 --> 00:06:52,000 donde buscaremos el paquete a través de la cadena ATTANKS. 76 00:06:52,000 --> 00:07:05,000 Del resultado de la búsqueda nos aparecerá el juego ATTOMIC TANKS 77 00:07:05,000 --> 00:07:11,000 que es el que tenemos que seleccionar dando al botón DOWNLOAD para descargárnoslo. 78 00:07:11,000 --> 00:07:20,000 Al darle a DOWNLOAD, a descargar, nos aparece una lista de versiones del juego. 79 00:07:21,000 --> 00:07:29,000 Nosotros nos descargaremos la versión 3.2 que es la última estable. 80 00:07:29,000 --> 00:07:38,000 Hay otras versiones posteriores pero no han funcionado, entonces lo haremos con la versión 3.2. 81 00:07:42,000 --> 00:07:48,000 Una vez que ya está descargado, si observamos el escritorio del entorno gráfico 82 00:07:48,000 --> 00:07:55,000 veremos que aparece un icono nuevo que es el fichero TAR, el paquete del juego con los fuentes 83 00:07:55,000 --> 00:07:59,000 y ese es el fichero sobre el que vamos a trabajar. 84 00:07:59,000 --> 00:08:06,000 No se puede trabajar ya en el entorno gráfico sino que tenemos que trabajar con un terminal 85 00:08:06,000 --> 00:08:12,000 o una consola de UNIX metiéndonos como un usuario y creando una sesión UNIX o LINUX. 86 00:08:13,000 --> 00:08:19,000 El terminal lo abriremos desde el icono del MAC si estamos aquí en estos PCs 87 00:08:19,000 --> 00:08:25,000 y si no, otra opción habrá en la distribución que se utilice. 88 00:08:26,000 --> 00:08:32,000 Acesorios, terminal. Así abrimos un terminal de LINUX. 89 00:08:32,000 --> 00:08:38,000 Este terminal nos va a situar en el directorio HOME que se dice el directorio de trabajo del usuario 90 00:08:38,000 --> 00:08:47,000 con el que estamos conectados y ahí está el paquete donde está el directorio escritorio de ese directorio HOME. 91 00:08:48,000 --> 00:08:54,000 Nos movemos a ese directorio con el comando CD, CD escritorio y ya estamos situados en el directorio 92 00:08:54,000 --> 00:08:59,000 en el que está el paquete que nos hemos descargado de internet. 93 00:09:00,000 --> 00:09:05,000 Ese paquete ya digo que es un fichero TAR y que hay que desempaquetar y descomprimir 94 00:09:05,000 --> 00:09:13,000 porque para eso utilizaremos el comando TAR, TAR xvf y ponemos el nombre del paquete que es todo esa ristra. 95 00:09:15,000 --> 00:09:22,000 Una vez que hemos ejecutado el comando TAR, aparecerá en ese directorio donde estamos un directorio llamado ATTANKS 96 00:09:22,000 --> 00:09:29,000 que es ya el paquete desglosado, desempaquetado con todos los ficheros y directorios que incluye. 97 00:09:29,000 --> 00:09:36,000 Uno de los directorios que incluye es el directorio SRC que está señalado aquí, está ahí abajo. 98 00:09:37,000 --> 00:09:43,000 SRC que es donde están guardados los ficheros fuentes. 99 00:09:43,000 --> 00:09:50,000 SRC viene de SOURCE y es ahí donde están situados los ficheros fuentes del paquete que nos hemos descargado. 100 00:09:50,000 --> 00:10:07,000 Cuando nos descargamos un paquete de este tipo, al desempaquetar, al descomprimir, siempre nos aparece un fichero GADMI. 101 00:10:07,000 --> 00:10:10,000 Es lo primero que tenemos que hacer, leer este fichero. 102 00:10:10,000 --> 00:10:17,000 Nos va a contar en un principio sobre si es necesario más paquetes. 103 00:10:18,000 --> 00:10:27,000 En este caso ATTANKS es un juego que usa gráficos y para ello usa una librería que se llama Allegro. 104 00:10:27,000 --> 00:10:31,000 Esa librería tendríamos que descargarla también. 105 00:10:31,000 --> 00:10:42,000 Aparte de eso nos dice en qué lenguaje está la aplicación y el compilador necesario que necesitamos y también la forma de compilar. 106 00:10:47,000 --> 00:11:00,000 Como ese fichero ya no lo hemos leído, con lo cual en este caso vosotros no necesitáis leerlo. 107 00:11:00,000 --> 00:11:08,000 Lo que sí que tenéis que hacer es, lo primero de todo, instalar la librería Allegro. 108 00:11:09,000 --> 00:11:19,000 Para ello utilizáis el Synaptic de Linux para instalar esta librería. 109 00:11:19,000 --> 00:11:22,000 Me imagino que muchos de vosotros ya la hayáis usado. 110 00:11:22,000 --> 00:11:34,000 Si no, es tan sencillo como acceder desde esta ruta, Sistema, Administración, Gestión de Paquetes Synaptic y a continuación os saldrá este entorno. 111 00:11:35,000 --> 00:11:45,000 Antes de buscar nada, lo primero que se debe hacer es recalcar para que recalque toda la lista de paquetes. 112 00:11:45,000 --> 00:11:54,000 A continuación indicáis la cadena de búsqueda que es Allegro para buscar esa librería. 113 00:11:54,000 --> 00:12:01,000 Pulsáis el icono de buscar y a continuación os van a salir estas librerías. 114 00:12:01,000 --> 00:12:04,000 Las marcáis, todas ellas. 115 00:12:04,000 --> 00:12:13,000 Podéis dejar fuera, por ejemplo, los ejemplos y la documentación, en caso de que no queráis descalcarlas. 116 00:12:13,000 --> 00:12:17,000 Y al final lo que tenéis que hacer es aplicar. 117 00:12:17,000 --> 00:12:23,000 Una vez que aplicáis, directamente ya está instalada esta librería en vuestro equipo. 118 00:12:24,000 --> 00:12:28,000 Igualmente, en este caso necesitamos un compilador. 119 00:12:28,000 --> 00:12:33,000 La aplicación está en G++ y necesitáis el compilador G++. 120 00:12:33,000 --> 00:12:39,000 Puede ser que ya esté instalado en el equipo, pero puede ser que no lo esté. 121 00:12:39,000 --> 00:12:46,000 Si a la hora de compilar os da error porque nos indica que no se encuentra el G++, 122 00:12:46,000 --> 00:12:52,000 pues es cuestión de volver aquí y volverlo a instalar exactamente de la misma manera que se ha instalado Allegro. 123 00:12:53,000 --> 00:12:58,000 Y la orden Macke, que es la orden para compilar, igualmente. 124 00:12:58,000 --> 00:13:05,000 En caso de que no se encuentre instalada en el equipo, pues se instalaría de la misma manera. 125 00:13:05,000 --> 00:13:14,000 Indicando en la casilla de búsqueda la instrucción Macke y dándole a aplicar. 126 00:13:15,000 --> 00:13:21,000 Una vez que tenemos todas las librerías que necesita la aplicación, 127 00:13:21,000 --> 00:13:26,000 que nos hemos enterado porque hemos leído el fichero webadmin, 128 00:13:26,000 --> 00:13:30,000 lo siguiente ya es compilar. 129 00:13:30,000 --> 00:13:35,000 Para compilar tenemos que hacerlo desde una consola. 130 00:13:35,000 --> 00:13:41,000 Dentro del directorio ATAX, directamente compilamos con la instrucción Macke. 131 00:13:42,000 --> 00:13:52,000 Os va a aparecer una lista de instrucciones que os estará indicando que está compilando las distintas librerías, 132 00:13:52,000 --> 00:14:02,000 los distintos ficheros, y al final el resultado de esta compilación tiene que ser sin errores en esta versión porque es estable. 133 00:14:03,000 --> 00:14:12,000 Una vez que hemos acabado de compilar, ya directamente podemos ejecutar el juego. 134 00:14:12,000 --> 00:14:23,000 Ejecutamos con ATAX, que es el nombre del fichero principal, y nos aparece la pantalla del juego. 135 00:14:23,000 --> 00:14:32,000 Esa es la pantalla principal donde la experimentación con el juego seguro que os resulta sencilla. 136 00:14:35,000 --> 00:14:42,000 El objetivo de este taller es justamente esta parte final que es, por ejemplo, 137 00:14:42,000 --> 00:14:47,000 vamos a modificar en este caso cosas sencillas que vosotros podáis hacer, 138 00:14:47,000 --> 00:14:51,000 que prácticamente se pueden hacer sin saber programación, 139 00:14:51,000 --> 00:14:54,000 y es los literales de los botones y de las opciones. 140 00:14:54,000 --> 00:14:59,000 Entonces, por ejemplo, vamos a cambiar el literal del botón Back por Volver. 141 00:15:03,000 --> 00:15:05,000 ¿Qué tenemos que hacer para ello? 142 00:15:05,000 --> 00:15:11,000 Lo primero, tenemos que saber en qué fichero se está definiendo ese botón, 143 00:15:11,000 --> 00:15:14,000 y para eso vamos a buscar el fichero. 144 00:15:17,000 --> 00:15:21,000 Para buscar el fichero tenemos que hacerlo con el comando GREP, 145 00:15:21,000 --> 00:15:26,000 que como algunos ya sabréis, es para buscar un patrón dentro del fichero. 146 00:15:26,000 --> 00:15:31,000 Entonces, el patrón que vamos a buscar es BACK. 147 00:15:33,000 --> 00:15:36,000 Y le vamos a poner dos parámetros para que me muestre, 148 00:15:36,000 --> 00:15:43,000 para que me busque solo palabras completas y para que me muestre solo el nombre de los ficheros en los que aparece. 149 00:15:44,000 --> 00:15:47,000 Del resultado de esa búsqueda me aparecen los ficheros, 150 00:15:47,000 --> 00:15:51,000 el ATANS.cc y el ATANS.o. 151 00:15:53,000 --> 00:16:00,000 Saber que todas las extensiones .o son ficheros ya de código ejecutable, 152 00:16:00,000 --> 00:16:03,000 entonces esos no podemos modificarlos. 153 00:16:03,000 --> 00:16:09,000 Es el resultado de la compilación del fichero que tiene extensión .cc. 154 00:16:10,000 --> 00:16:15,000 .cc, sabéis que nos dice que es un programa en C++. 155 00:16:16,000 --> 00:16:23,000 Entonces, como nos da el resultado de estos dos ficheros, nosotros tenemos que buscarlo en el fichero CC. 156 00:16:24,000 --> 00:16:29,000 Bien, pues una vez que ya sabemos dónde está, en qué fichero está, 157 00:16:29,000 --> 00:16:33,000 que está por supuesto dentro del directorio SWF, 158 00:16:35,000 --> 00:16:47,000 simplemente desde el escritorio podemos hacer doble clic en ese fichero y editarlo con un editor de texto. 159 00:16:50,000 --> 00:16:56,000 Y a continuación, pues como buscamos el patrón en cualquier editor de texto, 160 00:16:56,000 --> 00:17:00,000 vamos al comando buscar, ponemos la cadena que queremos buscar, 161 00:17:01,000 --> 00:17:09,000 decimos que coincida palabras completas y me va a encontrar justamente aquí, 162 00:17:09,000 --> 00:17:15,000 entre comillas, porque lo que estamos cambiando son literales y tienen que aparecer entre comillas, 163 00:17:16,000 --> 00:17:18,000 la palabra que queremos cambiar. 164 00:17:18,000 --> 00:17:23,000 Entonces, donde pone back directamente escribimos volver. 165 00:17:26,000 --> 00:17:34,000 Una vez que hemos hecho esta modificación no nos tenemos que olvidar de salir guardando para que guarde la modificación. 166 00:17:37,000 --> 00:17:43,000 Y para ver el efecto de la modificación tenemos que volver otra vez de nuevo a compilar, 167 00:17:46,000 --> 00:17:51,000 si no hemos tocado nada más no tiene por qué darnos errores, de nuevo y de nuevo volver a ejecutar. 168 00:17:52,000 --> 00:17:58,000 Y veremos como ese botón ha cambiado su literal, pues de back a volver. 169 00:18:01,000 --> 00:18:10,000 En este taller os proponemos hacer otros cambios, todos relacionados con los literales de los botones, 170 00:18:11,000 --> 00:18:18,000 por ejemplo el botón ok que aparezca con aceptar o muchos otros botones que aparecen en otros menús. 171 00:18:19,000 --> 00:18:26,000 Prácticamente todos ellos se pueden modificar siguiendo el procedimiento que os he explicado hasta ahora. 172 00:18:28,000 --> 00:18:37,000 Después, para aquellos que sepan un poco más de programación y quieran hacer una práctica con un mayor nivel, 173 00:18:38,000 --> 00:18:46,000 es un juego que está programado en orientado a objetos en C++ y no tiene una programación demasiado complicada, 174 00:18:47,000 --> 00:18:56,000 o sea que podríais incluso modificar por ejemplo la velocidad de un misil o la trayectoria del misil, etc. 175 00:18:58,000 --> 00:19:11,000 Ahora os va a explicar Alba, este taller pretende también acercaros un poco al hecho de que hay páginas web 176 00:19:11,000 --> 00:19:18,000 que os permiten colaborar con el software libre, construyendo aplicaciones. 177 00:19:19,000 --> 00:19:26,000 De hecho, por ejemplo, aquí en este juego versiones superiores dan problemas, dan errores, 178 00:19:27,000 --> 00:19:36,000 que si uno es capaz de encontrar ese error, pues puede participar enviando una versión correcta. 179 00:19:37,000 --> 00:19:45,000 Entonces, Alba os va a contar un poco también qué otras formas, qué otras maneras hay de colaborar con el software libre. 180 00:19:46,000 --> 00:19:47,000 Gracias. 181 00:19:59,000 --> 00:20:08,000 Como ha dicho Marian, la última parte intenta dar una visión de cómo se puede participar también sin saber programar. 182 00:20:09,000 --> 00:20:11,000 Es decir, qué podemos hacer nosotros. 183 00:20:11,000 --> 00:20:18,000 En la primera ponencia también se nos ha hablado que el mundo del software libre es un mundo a descubrir 184 00:20:19,000 --> 00:20:26,000 en cuanto a que uno saca una aplicación y luego no sabe cómo va a terminar o quién va a ir terminando cada parte. 185 00:20:27,000 --> 00:20:29,000 ¿Cuáles son las cuestiones en las que nosotros podemos colaborar? 186 00:20:30,000 --> 00:20:36,000 Podemos colaborar justamente en la detección de errores y a través de los foros que los mismos proyectos colocan 187 00:20:36,000 --> 00:20:40,000 se puede mandar un informe de esos fallos. 188 00:20:41,000 --> 00:20:46,000 El que se atreva a modificarlos y a enviarlos, como ha dicho Marian, pues es una buena manera. 189 00:20:47,000 --> 00:20:50,000 La otra manera sería colaborando en la documentación. 190 00:20:51,000 --> 00:20:56,000 Desde el mismo foro de Ubuntu, que es una plataforma que también lleva Debian o desde Max, 191 00:20:57,000 --> 00:20:58,000 se puede colaborar en la documentación. 192 00:20:59,000 --> 00:21:02,000 ¿Cómo? Pues inscribiéndose como colaborador. 193 00:21:02,000 --> 00:21:10,000 Desde Ubuntu hay una parte en la que te piden, ¿serías capaz de traducir Ubuntu para las personas que lo utilizan en español? 194 00:21:11,000 --> 00:21:15,000 Entonces desde ahí uno se inscribe, incluso hace una prueba de traducir un trozo, 195 00:21:16,000 --> 00:21:22,000 que es una prueba que os propongo a largo plazo, que os inscribáis como colaboradores, 196 00:21:23,000 --> 00:21:31,000 hacéis vuestra traducción y si es aceptada esa traducción, podéis seguir colaborando con ellos. 197 00:21:32,000 --> 00:21:35,000 Casi todos los proyectos de software libre, en sus páginas web, 198 00:21:36,000 --> 00:21:41,000 tienen una parte en la que piden a las demás personas que colaboren en su formación. 199 00:21:42,000 --> 00:21:47,000 Tanto informando de los fallos, arreglándolos, mejorando la ayuda, 200 00:21:48,000 --> 00:21:52,000 justamente casi todos los proyectos de software libre adolecen en la documentación. 201 00:21:53,000 --> 00:21:57,000 Los hacen las personas, como bien se ha dicho durante toda la mañana, en sus tiempos libres, 202 00:21:57,000 --> 00:22:03,000 muchas veces sin cobrar, porque les gusta simplemente toquetear, 203 00:22:04,000 --> 00:22:11,000 entonces una forma muy buena es la de dar una apariencia buena a la descripción de los textos y demás. 204 00:22:12,000 --> 00:22:18,000 Otra forma es difundir la utilización de código libre, es decir, decir que yo lo uso, 205 00:22:19,000 --> 00:22:24,000 fomentar su uso de alguna manera, eso va a hacer que seamos más los que utilicemos software libre. 206 00:22:25,000 --> 00:22:32,000 Voy a dejar el rato que falta para que los alumnos que quieran puedan intentar todo esto que se ha comentado. 207 00:22:33,000 --> 00:22:39,000 Tocar un código de verdad, compilarlo, enterarse de qué es lo que está pasando 208 00:22:40,000 --> 00:22:43,000 y ver que lo que yo hago funciona en vivo y en directo. Gracias. 209 00:22:54,000 --> 00:22:57,000 Subtítulos realizados por la comunidad de Amara.org