Como ya llevo una buena temporada estudiando en la Universidad , y en todo este tiempo he hecho casi de todo, he decidido compartir todo el material que he creado durante este tiempo por si a alguien le resulta útil. A continuación encontrarás prácticas de asignaturas, artículos, documentos, ...
Está dividido por las titulaciones en las que se ha creado el material. Primero el material creado en los cursos de Doctorado en Informática y Modelización Matemática, después en la Ingeniería Informática, y por último en la Ingeniería Técnica en Informática de Sistemas.
Algunas presentaciones realizadas en la asignatura de Sistemas Ubicuos:
Algunas presentaciones realizadas en la asignatura de Robótica:
Una presentación realizada en la asignatura de Sistemas Distribuidos:
Esa era una de las asignaturas a las que asistí en el HUT. Aquí puedes encontrar algunos ejercicios sobre diferentes temas de seguridad junto con sus enunciados:
Otra de las asignaturas que cursé en el HUT, trataba sobre routing a nivel básico. Aquí puedes ver algunos de los ejercicios que tuve que hacer:
Ésta era otra de las asignaturas a las que asistí en el HUT. Aquí puedes encontrar algunos ejercicios sobre Programación Concurrente:
Artículo que escribí en el HUT sobre medición de productos software, pero desde el enfoque de la orientación de objetos:
En una asignatura sobre Infraestructuras de redes he diseñado e implementado parcialmente un protocolo de encaminamiento ad-hoc para los Legos Mindstorms llamado DSR: Dynamic Source Routing, junto a otros dos compañeros (Raúl y Jose).
Si quieres ver lo que hemos hecho puedes ver el documento sobre la implementación de DSR.
En la asignatura " Tecnologías de Servicios y Aplicaciones para Internet" he hecho un servidor web en python, que implemente una página tipo foro de noticias con secciones, votación de noticias, ... Es algo sencillo y un poco mal escrito ;-), porque era mi primer programa escrito en python. Si quieres verlo: Servidor web en python (.tgz)
En una asignatura de Base de datos tuve que hacer junto a Jose un par de prácticas, una de ellas sobre disparadores en Oracle y otra sobre diseño UML-SQL, aquí están:
En otra de las asignaturas que he tenido hemos implementado la solución a algunos problemas de Ingeniería del Conocimiento usando CLIPS, algunos de estos problemas son conocidos:
Si quieres verlos puedes ver bajarte las fuentes de los ejercicios en clips (.tgz) o ver el documento explicativo de los ejercicios(.pdf) donde se comenta la solución a los problemas.
En una asignatura sobre Inteligencia Artificial tuve que hacer junto a Jose una implementación de un algoritmo de búsqueda no informada en C++. El objetivo de la búsqueda era encontrar una expresión formada por números y operadores, que sirviera de patrón para obtener una sucesión de números elegidos, y esta búsqueda se realiza utilizando un árbol binario.
Puedes ver las fuentes del algoritmo de búsqueda no informada(.tgz).
En una asignatura sobre procesadores de lenguajes hemos (yo y Jose) diseñado e implementado un compilador de Java: análisis léxico, sintáctico, semántico, generación de código, ...
Puedes ver la documentación del compilador (.ps) y las fuentes del compilador de java(.tgz).
En una asignatura sobre redes he desarrollado un juego de bolsa, que consta de brokers que compran/venden acciones durante una serie de sesiones. La aplicación es distribuida y no la controla ningún servidor central, solamente hay un nodo central que se encarga de controlar las sesiones y las posibles trampas de los brokers. Está desarrollado en Ada usando la librería de comunicaciones Lower Layer.
Puedes ver los fuentes del juego de bolsa (.tgz) .
En otra asignatura de redes, he desarrollado una simplificación de TCP, está hecho en Ada usando Lower Layer, y he tenido que implementar el cliente que interactúa contra unos cuantos servidores que nos ofrecían.
Puedes ver las fuentes de la simplificación de TCP (.tgz).
Aquí puedes ver un ensayo que hice sobre la vida de Charles Darwin para una asignatura de Humanidades.
Este fue mi primer contacto con la Universidad, empecé en 1997 y la terminé en el 2000. Aquí puedes ver algunas de las cosas que hice durante ese periodo:
Hice una práctica que consistía en implementar un find (como el clásico de unix) pero que funcionara en un cluster de máquinas y que paralelizase el proceso y repartiera la carga entre ellas para que el tiempo que se tardara en realizar la búsqueda fuera inferior al que realizaba la implementación del find que estaba instalado en cada máquina localmente.
La implementación está hecha con scripts de shell, C y usando MPI como librería de comunicaciones.
Puedes ver las fuentes del pseudofind aquí (.tgz).
En una asignatura sobre ampliación de sistemas operativos implementé un chat sin servidor central, simplemente usando multicast, y con opciones como varios canales disponibles, conversaciones privadas, ...
Está implementado en Ada usando Lower Layer UDP, y puedes ver el código fuente del chat aquí
En la asignatura sobre autómatas hice varios programas sobre ellos. Uno de ellos se basa en comprobar si una palabra es aceptada por un determinado autómata probabilístico. Y el otro consiste en leer un autómata finito determinista y transformarlo en un autómata finito probabilístico.
Ambos programas están hechos en Pascal, y puedes ver las fuentes (.tgz) y un documento explicativo (.rtf) explicativo.
En una asignatura sobre compiladores e intérpretes, tuve que implementar un mini-compilador de Pascal, usando lex, yacc y Pascal.
Puedes ver las fuentes del mini-compilador de pascal aquí.
En una asignatura sobre redes de área local implementé varios programas, son varios clientes y varios servidores HTTP, que interactúan entre ellos y con los navegadores tradicionales.
Están hechos en Ada usando Lower Layer, y puedes ver las fuentes del cliente/servidor HTTP aquí.
En una asignatura sobre redes implementé un protocolo para la transferencia de ficheros entre varias máquinas. El protocolo se implementa sobre un servicio de comunicaciones no fiable y no orientado a conexión. Está hecho con Ada usando Lower Layer,
Puedes ver las fuentes del tftp aquí (.tgz).
En la asignatura de robótica jugueteamos durante 4 meses con los Legos Mindstorms, e hicimos unos cuantos programas para ellos pero sobre el sistema operativo legOS, y los programas están escritos en C.
Puedes ver los programas para los LegOS aquí (.tgz).
En la asignatura sobre estructuras de datos, hicimos un editor de texto programando en Pascal.
Puedes ver las fuentes del editor de texto (.tgz) .
También implementé una aplicación para la gestión de la venta de entradas de un cine, está desarrollado en Delphi.
Aquí tienes todas las fuentes del programa de gestión de cines (.tgz).
Aquí tienes un documento sobre varias unidades de almacenamiento masivo (.rtf) y su estado en el momento en el que se escribió el documento (1998).
En una asignatura sobre sistemas operativos hice varias programas sobre concurrencia: semáforos, condiciones de carrera, ...
Los programas están hechos en Ada y puedes ver el código fuente de los programas sobre concurrencia (.tgz)