Curso de teleformación de Perl

Perl es un lenguaje de programación que se utiliza extensivamente en administración de sistemas informáticos. Popularmente se le conoce como «The duct tape that holds Internet together», por la ingente cantidad de código que han desarrollado y desarrollan administradores de sistemas para solucionar problemas de su dia a dia. El repositorio CPAN cuenta con paquetes que hacen prácticamente de todo; lo que supone que un programador con conocimientos básicos de Perl empleando CPAN puede solucionar problemas muy complejos de administración de sistemas en Perl, en muy poco tiempo. Es muy rápido desarrollar soluciones a problemas reales en Perl, y sus potentísimas expresiones regulares permiten hacer auténticas maravillas.

Actualmente, por razones que me son desconocidas, no se enseña en la UMA; por lo que cuando salen a la calle, aunque no se pida expresamente en las ofertas de empleo los administradores de sistemas informáticos terminan teniendo que aprenderlo de forma autodidacta y «a golpes». Este curso pretende cubrir este hueco concreto.

Además de en administración de sistemas, Perl también se utiliza en muchos otros sectores no relacionados. Quizás el más destacado sea la bioinformática, la genómica y las ciencias de la vida, gracias al proyecto Bioperl.

En este curso enseñaré la sintaxis de Perl, como programarlo, y como depurarlo. También enseñaré como acceder a una base de datos desde Perl, y lanzar código MySQL; a interactuar con aplicaciones de línea de comando Unix con Perl -lanzarlas, recoger su salida y analizarla-; así como mandar correo, filtrar correo y hacer spiders en Perl.

El curso será por teleformación. El curso requiere una base mínima: saber programar en algún lenguaje de programación -no explicaré qué es un bucle ni qué es una función; sí como se hacen en Perl-.

En el curso cubro muchísimo temario, por lo tanto. Todo está muy documentado y con abundantes ejemplos; y te responderé las dudas que te salgan. Como en todos los cursos que imparto, me gusta dar mucho valor por el curso que ofrezco, y le podrás dedicar mucho tiempo al aprendizaje de muchas cosas útiles. Como en el caso del curso de LaTeX y el de C, tengo que acotar la parte necesaria para obtener el certificado de aprovechamiento a 25 horas; por lo que solo serán cuatro las actividades para el certificado de aprovechamiento. La lectura del material relativo a dichas práctica, su estudio y la ejecución de dichas prácticas debería llevarte aproximadamente 25 horas; aunque depende de tu nivel previo el tiempo efectivo que tardes. El resto de las prácticas serán opcionales, y te recomiendo que las realices para aprender más y sacar el máximo partido a este curso.

Con el curso te llevas su documentación: un manual propio, en formato PDF, con más de doscientas páginas de documentación original sobre Perl y algunos de sus APIs más importantes.

La Universidad de Málaga convalida dos créditos de libre configuración por curso para los alumnos de titulaciones de plan antiguo, y un crédito ETCS para los de plan nuevo (grados) . El curso costará 50€ a alumnos de la Universidad de Málaga, y 70€ a alumnos del curso que no pertenezcan a la UMA. La matriculación, por lo tanto, está abierta a gente de todo el mundo, y quizás os interese el curso.

Si tienes interés en saber como es el material, mándame tu nombre, tus apellidos, y tu correo electrónico, y te mandaré un par de capítulos y unas hojas del curso de ejemplo, para que veas la calidad del material y decidas si te interesa o no el curso. El correo es irbis arroba orcero.org, cambia el «arroba» por el signo @ para obtener el correo.

La matriculación puedes hacerla aquí: curso de C. Si estás con dudas, te recomiendo que preguntes a otros alumnos sobre los otros cursos que han realizado conmigo (el de LaTeX, el de informática forense, el de C, o el de Perl) y que te cuenten cómo les ha ido.

Además de este curso, también oferto otro curso de teleformación sobre LaTeX: curso de LaTeX y un tercer curso de teleformación de C y sus herramientascurso de C.

Espero verte en el curso.

Curso de teleformación de C y sus herramientas

C es un lenguaje muy importante en el «mundo real». Se utiliza en muchísimas aplicaciones realmente interesantes, que abarcan cosas como los microcontroladores, las redes de sensores, los sistemas en tiempo real, los sistemas operativos y los juegos, por poner algunos ejemplos.

Sin embargo, el C que se utiliza no es la introducción básica a la programación que se enseña con C, que emplea cosas como cin, cout, y una serie de «trucos» para no «ver» cosas como los punteros. Los punteros están ahí, y no puedes evitarlos: para que C sea útil como lenguaje, tendrás que usar sus punteros. Y no se estudian en Programación I ni en Programación II. De hecho, la gran sorpresa de los alumnos de este curso cuando lo comienzan es que se dan cuenta hasta qué punto desconocen C.

El problema de usar las características de C que lo han hecho -y lo hacen- grande es que es muy difícil de depurar. Además, los programas grandes en C tienen cientos de miles de líneas, y eso hace ingobernable el editor simple de texto. Y con frecuencia trabajan decenas de personas en el mismo proyecto.

Parece evidente que los programas en C se terminan, se terminan sin errores, incluso los más grandes y los que involucran muchas personas. Pero eso se debe a que C no es apenas un compilador: la persona que programa profesionalmente en C conoce multitud de herramientas, que le facilitan la tarea de desarrollo para obtener productividades similares a los lenguajes de más alto nivel.

Y de eso va el curso.

Mi objetivo en el curso es darte un repaso de C, para «refrescar» conceptos (o aprenderlos; pero en ese caso, el curso te llevará más tiempo que el estimado. De cualquier forma, si entras sin tener ni idea de C, tanto por la documentación del curso como por los foros y las preguntas que me hagas, puedes aprender). Después pasamos a los punteros, que son el «gran olvidado» de muchos cursos donde se aprende a programar, y se aprende con C.

Y finalmente, viene la parte «divertida»: las herramientas. Decenas de herramientas que se utilizan para:

  • Depurar código: Aplicaciones como lclint son capaces de localizar errores comunes, de forma estática, en tu código. Errores en el paso de parámetros, y el uso de punteros. Valgrind también te permite depurar programas con facilidad.
  • Optimizar código: Valgrind también genera informes muy detallados de dónde «pierde el tiempo» tu aplicación, y dónde te interesa optimizar. Esto puede incluir partes del código, o funciones del sistema que realmente sean el cuello de botella de tu aplicación.
  • Desarrollar proyectos grandes: Herramientas como Makefile son imprescindibles para los proyectos grandes, al permitir compilar por separado partes del código, sin obligarte a recompilar partes ya compiladas.
  • Desarrollar proyectos entre varios: Sistemas de control de versiones como CVS o Subversion, que te permite saber quién ha hecho qué en cada momento, y hacer y deshacer según tus necesidades.
  • Hacer código portable: Herramientas como autoconf y automake te permitirán hacer código portable, e independiente de la plataforma.
  • Acelerar las compilaciones: Mediante herramientas como ccache y distcc, podrás acelerar las compilaciones en órdenes de magnitud.
  • Interpretar archivos de configuración: lex y yacc sirven para más cosas que para hacer compiladores: con una fracción del lex y el yacc, puedes leer e intepretar archivos de configuración muy complejos, con poco trabajo.

Además de todo esto, te enseñaré bibliotecas que me han sido de mucha utilidad y me han permitido desarrollar aplicaciones en el «mundo real» en muy poco tiempo, suponiendo mejora de eficiencia por utilizar estas bibliotecas una ventaja respecto a mi competencia. Dentro de estas, veremos RPC, que permite hacer aplicaciones cliente-servidor en red con una facilidad pasmosa (y sin tocar un socket); a intercomunicar procesos en una misma máquina con las bibliotecas de System V, y también te enseñaré algunos trucos y técnicas para hacer tus programas más seguros en C, así como a usar el splint para buscar agujeros de seguridad.

El curso será por teleformación. El curso requiere una base mínima: saber programar en algún lenguaje de programación -no explicaré qué es un bucle ni qué es una función; sí como se hacen en C-.

En el curso cubro muchísimas herramientas, por lo tanto. Todas las documento; y te responderé las dudas que tengo sobre todas ellas. Como en todos los cursos que imparto, me gusta dar mucho valor por el curso que ofrezco, y le podrás dedicar mucho tiempo al aprendizaje de muchas cosas útiles. Como en el caso del curso de LaTeX y el de Perl, tengo que acotar la parte necesaria para obtener el certificado de aprovechamiento a 25 horas; por lo que solo serán cuatro las actividades para el certificado de aprovechamiento. La lectura del material relativo a dichas práctica, su estudio y la ejecución de dichas prácticas debería llevarte aproximadamente 25 horas; aunque depende de tu nivel previo el tiempo efectivo que tardes. El resto de las prácticas serán opcionales, y te recomiendo que las realices para aprender más y sacar el máximo partido a este curso.

La Universidad de Málaga convalida dos créditos de libre configuración por curso para los alumnos de titulaciones de plan antiguo, y un crédito ETCS para los de plan nuevo (grados) . El curso costará 50€ a alumnos de la Universidad de Málaga, y 70€ a alumnos del curso que no pertenezcan a la UMA. La matriculación, por lo tanto, está abierta a gente de todo el mundo, y quizás os interese el curso.

Si tienes interés en saber como es el material, mándame tu nombre, tus apellidos, y tu correo electrónico, y te mandaré un par de capítulos y unas hojas del curso de ejemplo, para que veas la calidad del material y decidas si te interesa o no el curso. El correo es irbis arroba orcero.org, cambia el «arroba» por el signo @ para obtener el correo.

La matriculación puedes hacerla aquí: curso de C. Si estás con dudas, te recomiendo que preguntes a otros alumnos sobre los otros cursos que han realizado conmigo (el de LaTeX, el de informática forense, o el de Perl) y que te cuenten cómo les ha ido.

Además de este curso, también oferto otro curso de teleformación sobre LaTeX: curso de LaTeX y un tercer curso de teleformación de Perl curso de Perl.

Espero verte en el curso.

Con el curso te llevas su documentación: un manual propio, en formato PDF, con más de seiscientas páginas de documentación original sobre C, herramientas para programar en C, y algunos de sus APIs más importantes.

Si tienes interés en saber como es el material, mándame tu nombre, tus apellidos, y tu correo electrónico, y te mandaré un par de capítulos y unas hojas del curso de ejemplo, para que veas la calidad del material y decidas si te interesa o no el curso. El correo es irbis arroba orcero.org, cambia el «arroba» por el signo @ para obtener el correo.

La matriculación puedes hacerla aquí: curso de C. Si estás con dudas, te recomiendo que preguntes a otros alumnos sobre los otros cursos que han realizado conmigo (el de LaTeX, este de C, el de informática forense, o el de Perl) y que te cuenten cómo les ha ido.

Además de este curso, también oferto otro curso de teleformación sobre LaTeX: curso de LaTeX y un tercer curso de teleformación de Perl curso de Perl.

Espero verte en el curso.

Curso de teleformación de LaTeX

Después del éxito del curso de LaTeX los dos últimos años, con más de dos centenares de matriculados, y realimentaciones muy positivas en las encuestas que pongo tema por tema, para mejorar la calidad, este año voy a repetir el curso. El curso está teniendo especial éxito entre alumnos que quieren hacer su proyecto fin de carrera, su trabajo fin de grado o su tesis doctoral usando LaTeX; y hay alumnos matriculados de biología, matemáticas, de ingeniería ambiental, ingeniería industrial, informática y telecomunicaciones.

El curso está siendo por teleformación. Se compone de diez prácticas; de las cuales hay que realizar las seis primeras para obtener el certificado. Es una práctica por bloque temático; la primera es instalar LaTeX, la segunda convertir un documento sencillito de word a LaTeX, y luego aprendemos a estructurarlo como artículo, o como libro… aprendemos en este curso también a hacer ecuaciones, cartas y presentaciones en LaTeX, así como a incorporar fuentes, colores, y gráficos.

El curso está preparado para que te aporte mucho valor. Por un lado, tienes la parte para asegurar el certificado de aprovechamiento, El tiempo estimado para leer la parte obligatoria del material, hacer los ejemplos y realizar las prácticas obligatorias es de 25 horas de trabajo personal de promedio. Durante las prácticas tú tomarás el documento word que elijas (una práctica de alguna asignatura, un proyecto fin de carrera, o una tesis doctoral), la pasarás a LaTeX, e irás «enriqueciéndola», y mejorando su formato, hasta cubrir los seis primeros objetivos. Pero el curso no termina ahí si no quieres, y tienes muchísimo más material, para poder profundizar y dedicar todo el tiempo adicional que quieras para aprender mucho más LaTeX. Hasta llegar a definir la presentación de tu proyecto fin de carrera o tu tesis doctoral, y darle un formato fino, de gran calidad, y que se ajuste a lo que quieres.

El material que te envío está maquetado en formato de libro, de forma que cuentes con un «libro» en formato pdf con más de cuatrocientas páginas de documentación de LaTeX.

La Universidad de Málaga convalida dos créditos de libre configuración por curso para los alumnos de titulaciones de plan antiguo, y un crédito ETCS para los de plan nuevo (grados) . El curso costará 50€ a alumnos de la Universidad de Málaga, y 70€ a alumnos del curso que no pertenezcan a la UMA. La matriculación, por lo tanto, está abierta a gente de todo el mundo, y quizás os interese el curso.

Si tienes interés en saber como es el material, mándame tu nombre, tus apellidos, y tu correo electrónico, y te mandaré un par de capítulos y unas hojas del curso de ejemplo, para que veas la calidad del material y decidas si te interesa o no el curso. El correo es irbis arroba orcero.org, cambia el «arroba» por el signo @ para obtener el correo.

Pero… ¿No sabes qué es LaTeX?

LaTeX es un es un sistema de autoedición completo, que es muy conocido por matemáticos y físicos -ya que se utiliza de forma intensiva para la redacción de artículos científicos-. También es muy popular para la redacción de proyectos fin de carrera, disertaciones de maestría y tesis doctorales.

Es filosóficamente muy diferente al word: LaTeX en principio es compilado (aunque existen editories tipo Word para LaTeX). Utiliza etiquetas, como hace HTML. Esto permite que nosotros indiquemos en el cuerpo de texto solo qué se destaca, qué es nombre de capítulo, qué es pié de página… LaTeX usará la información de la cabecera para maquetar automáticamente el texto, generando un pdf ya con calidad profesional. Podemos confiar en los estilos de LaTeX, por lo que el trabajo será mínimo; o montárnoslo por nuestra cuenta, y mejorar el estilo para que LaTeX genere exactamente lo que queremos. Esto permite, por ejemplo, centrarnos en el contenido al principio, y solo cuando hemos terminado decir qué queremos que nos genere y con qué formato, y LaTeX hará el trabajo pesado de maquetación.

LaTeX ha sido muy popular en física y matemáticas por la sencillez para editar ecuaciones matemáticas extremadamente complejas. También tiene un tratamiento automatizado de bibliografía muy potente, y permite hacer cosas como transcripciones fonéticas en IPA con facilidad, y sin problemas de fuentes. Además, los que hacéis el proyecto fin de carrera conmigo sabéis que todos lo tenéis que hacer en LaTeX; principalmente porque soy muy vago, y no me gusta trabajar inútilmente contra el word para conseguir el formato deseado.

Vamos a ver en el curso tanto lo que en principio se suele dar -artículos, libros, proyectos fin de carrera y tesis en LaTeX- como otras cosas que no por menos conocidas son menos útiles: estudiaremos como hacer presentaciones, cartas, mailing masivos, generación automática de documentos con calidad profesional y todos los parámetros de formato de página.

La matriculación puedes hacerla aquí: curso de LaTeX. Si estás con dudas, te recomiendo que preguntes a otros alumnos que han hecho este curso el año pasado, y que te cuenten lo que aprendieron, el nivel de dificultad, la calidad del material, y si merece la pena.

Además de este curso, también oferto otro curso de teleformación sobre C y sus herramientas: curso de C y un tercer curso de teleformación de Perl curso de Perl

Espero verte en el curso.

Me presento a vocal del Colegio Profesional de Ingenieros en Informática de Andalucía

Finalmente, después de una decisión bastante meditada, me presento en una de las listas a vocal del Colegio Profesional de Ingenieros en Informática de Andalucía.

Dada la parálisis actual del colegio profesional, finalmente me he decidido a poner mi granito de arena. Después de muchas conversaciones, he encontrado una lista que acepta las condiciones que he puesto, y «mi programa», que no deja de ser arrancar las funciones que veo más importantes del colegio.

Desgraciadamente, por motivos estatutarios, no puede ser mi cargo «vocal de peritajes informáticos y auditorías informáticas». Pero voy como vocal, y ese será mi trabajo. De hecho, si soy elegido y en un año desde fecha de nombramiento no he puesto en marcha mi programa, me comprometo públicamente a dimitir del cargo de vocal.

A qué me comprometo:

* Iniciar la mecánica de inscripción de las listas para peritos informáticos a petición de tribunal. La mecánica de inscripción, y las listas en sí entregadas a los tribunales será información pública para los colegiados (con objeto de evitar malentendidos y susceptibilidades)

* Sistema de listas de peritos colegiales; de tal forma que un ciudadano pueda solicitar al colegio un perito cualificado, y el perito esté en condición de proponerle tres peritos informáticos. La mecánica de inscripción, las listas de peritos, la mecánica de asignación, y qué se asigna a quién será información pública para los colegiados (con objeto de evitar malentendidos y susceptibilidades)

* Sistema de listas de árbitros colegiales; de tal forma que un ciudadano pueda solicitar al colegio un árbitro para resolución extrajudicial de conflictos. La mecánica de inscripción, las listas de árbitros, la mecánica de asignación, y qué se asigna a quién será información pública para los colegiados (con objeto de evitar malentendidos y susceptibilidades)

* Sistema de listas de auditores informáticos; de tal forma que un ciudadano pueda solicitar al colegio un auditor informático. La mecánica de inscripción, las listas de auditores, la mecánica de asignación, y qué se asigna a quién será información pública para los colegiados (con objeto de evitar malentendidos y susceptibilidades)

* Sistema de visados colegiales. La idea de visado colegial es que un colegiado pueda, de forma completamente voluntaria, solicitar a precio de coste un visado colegial sobre un proyecto de ingeniería informática. Dicho visado incluye información sobre si dicho profesional es un profesional titulado o no; si dicho profesional está colegiado; si dicho profesional está inhabilitado o no, y si el proyecto es formalmente correcto. El visado colegial es una potente herramienta para poner en valor el título y la colegiación, un sello de calidad que muchos colectivos reconocen como tal, y además para determinadas áreas, les resulta extraño un proyecto que no incluye visado colegial. Me comprometo a crear los tribunales de visado voluntario, con una mecánica de elección del tribunal transparente y pública (con objeto de evitar malentendidos y susceptibilidades)

La participación en cualquiera de estas listas la propondré según criterios verificables públicamente, auditables, proporcionales, razonables y equiparables a los que ya implantan otros colegios profesionales para operaciones equivalentes.

Ahora estamos buscando avales. Si estás colegiado en Andalucía y quieres avalarme -no compromete a nada más que permitir que me presente-, ponte en contacto conmigo.