Carlos Ble

Carlos Ble

I am a professional software developer, I solve problems.

I also teach and mentor developers to build better software.

Developing software since 2001.

Can I help you?

  • Do you need high quality tailor-made software?
  • Need training on TDD, clean code or refactoring?
  • Do you need a technical consultant?
  • May I pair with you to write better code?

Events

Upcoming training courses:

  1. TDD - [en Español] - 6 y 7 Octubre
    Gran Canaria
  2. TDD - [in English] - October 20, 21 & 22
    London, UK
  3. TDD - [en Español] - 29, 30 y 31 de Octubre.
    Madrid, Spain

Conferences:

  1. I'll be at the Agile Testing Days 2014
  2. I'll be at the London Test Gathering Workshops.

Archive for the ‘Docencia/GNU/Linux’ Category



Aquí os pongo lo que os comenté en el curso para probar Mono y MonoDevelop desde Bardinux 2.6 o Ubuntu Hardy:

  1. Abrir gnome-terminal o konsole
  2. $> sudo su
  3. #> apt-get update
  4. #> apt-get install mono monodevelop gtk-sharp2 monodoc mono-common mono-gmcs stetic mono-runtime
  5. Para los que estan con Bardinux, que sólo trae KDE, instalar Gnome se recomienda:
    #> apt-get install unidistro-gnome-desktop

Adicionalmente, añadiendo al fichero /etc/apt/sources.list el siguiente repositorio es posible descargar versiones de MonoDevelop más nuevas. Prácticamente lo último:

  • deb http://ubuntu.org.ua/ getdeb/

Si añaden este repositorio, repitan la secuencia anterior.

Curso ISLA de C# y Mono

Este mes de noviembre arrancan denuevo los Cursos ISLA, organizados por nosotros, la Oficina de Software Libre de la ULL. Los sábados 22 y 29 de este mes, impartiré un curso de C# en Mono donde podremos aprender a usar MonoDevelop para escribir aplicaciones de escritorio Gtk#. También veremos cómo consumir servicios web. Tanto este curso como los demás, se pueden convalidar por un crédito de libre elección cada uno y son presenciales. Pueden inscribirse tanto alumnos universitarios como gente de fuera, el único requisito es que tengan los conociemientos suficientes para comenzar el curso. En el caso del curso de C#, el requisito fundamental es tener conocimientos de programación orientada a objetos.  Nos vemos allí.

Test 1

Pequeño test para los alumnos del curso de iniciación a GNU/Linux (30horas):

  1. ¿Por qué hablamos de GNU/Linux y no de Linux a secas?
  2. ¿Por qué hay muchas distribuciones de GNU/Linux?
  3. ¿Qué cosas recuerdas que son comunes a todas ellas?
  4. ¿FreeBSD es Linux?
  5. ¿Cuales crees que están siendo las claves del éxito de GNU/Linux?
  6. ¿Qué formas de instalar software hay en una distribución de GNU/Linux?
  7. Si te piden que ejecutes la aplicación konsole pero estas en un entorno de escritorio desconocido y no la encuentras en un menu, ¿Cómo lo harias?
  8. ¿Cómo puedo ver todos los procesos del sistema que está ejecutando el usuario con nombre carlos?
  9. ¿Qué significa el permiso 766 en un fichero?
  10. ¿Para qué sirven apt y dpkg? ¿Cuál es la diferencia?
  11. ¿Por qué motivos instalarías una aplicación compilando su código fuente?
  12. Escribe un script bash que recibe como parámetro un directorio y cuenta cuántos ficheros hay dentro (incluidos subdirectorios y todo lo demás que haya)
  13. ¿Qué secuencia de comandos ejecutarías para configurar el acceso a internet dentro de una red de área local?
  14. ¿Qué entornos de escritorio conoces?
  15. ¿Qué es Bardinux?

Tenemos varias formas de instalar software en GNU/Linux. Estas variarán en algunos casos según la distribución. El método tradicional común a todas ellas es instalación desde fuentes pero este sólo se recomienda en circunstancias puntuales. Actualmente es posible usar gestores de software "multi distribución" y "multi sistema de paquetes" como Red Carpet entre otros, que simplifican enormemente el mantenimiento. Algunos de los métodos de gestión de software principales son:

  1. Paquetes binarios, sistemas de paquetes y gestores: deb, dpkg, apt, rpm, yum, red carpet, conary, autopackage...
  2. Instalación desde fuentes:
    1. Paquetes de fuentes: tar, gz, bz2, tar.bz2, tar.gz, zip, ...
    2. Fuentes desde un Sistemas de Control de Versiones
    3. Autotools

Los motivos para instalar software desde los fuentes pueden ser varios: no existe el paquete binario en nuestra distribución, la version del paquete para nuestra distribución es demasiado vieja y necesitamos la útlima version de desarrollo, ...
Para el resto de casos es conveniente usar el sistema de paquetes de la distribución, ya que las actualizaciones y el mantenimiento del sistema son mucho mas comodos.
El ejercicio para hoy es descargar e instalar el paquete Bonfire apropiado para nuestra distribución.

Existen multitud de herramientas para configurar la red en el escritorio, pero estas varian dependiendo del escritorio y de la distribución. Vamos a ver cómo manejarnos con la configuración de red y herramientas básicas de cualquier distribucion. Como estos comandos son de administración, debemos ser super usuario para poder configurar. NOTA: esto es un resumen muy reducido de lo que ha sido la clase de hoy, tómese sólo a modo de guía.

  1. mii-tool : indica si hay enlace fisico a las interfaces de red
  2. ifconfig : muestra las interfaces de red y permite configurarlas.
    ifconfig eth0 192.168.1.50
  3. route: muestra la tabla de rutas y también nos permite configurar nuestro gateway
    route -n; route add default gw 192.168.1.1
  4. /etc/resolv.conf: contiene los servidores de nombres que nos resolverán los nombres
    nameserver 195.235.113.3
  5. netstat: permite ver que sockets (tcp/udp y unix) hay activos entre otras cosas
    nestat -nap
  6. nmap: permite ver puertos abiertos en otras maquinas
  7. ssh: acceso remote seguro (man ssh)
  8. scp: copia remota segura (man scp)
  9. w: ¿quién está conectado a esta maquina?
  10. write y mesg: comunicación con otros usuarios en otros terminales de la misma estación

Hoy tenemos otra interesante lista de aplicaciones para ver:

  1. Scribus (Software de maquetación, posible alternativa a Adobe Pake Maker)
  2. Clientes de correo: Evolution, Kmail, Thunderbird
  3. Plugin mplayer para Firefox
  4. El paquete bardinux-multimedia
  5. Mplayer, Xine, Totem, Kaffeine
  6. Navegadores: Firefox, Konqueror, Epiphany, Mozilla, Dillo.
  7. Navegadores texto: links, lynx
  8. Lectores de noticias: akregator, blam
  9. Postit!: tomboy, knotes, xpad
  10. Mensajeria Jabber: gaim, kopete, psi
  11. Mensajería msn: amsn
  12. Grabación de CD/DVD: k3b, nautilus-cd-burner, bonfire

Repositorio interesante (w32codecs) :
deb ftp://cipherfunk.org/pub/packages/ubuntu dapper main

Aqui os pongo las presentaciones que hemos estado viendo en clase los primeros dias, para que probeis a descargarlo y abrirlo con OpenOffice.

  1. Día 1
  2. Día 2
  3. Día 3

Os recuerdo que un fichero .bz2 está comprimido con bzip2 y hay que descomprimirlo usando "bunzip2 nombrefichero.bz2"

En la clase de hoy hemos estado jugando con Bardinux, manejandonos un poquito con el escritorio KDE y probando programas diversos. Lo tipico; cambiar el fondo de escritorio, crear un "acceso directo" ...
Tambíen hemos ido viendo las alternativas en Gnome con Ubuntu.
La lista de software que hemos estado probando en clase es:

  1. Extension Downthemall para Firefox
  2. Instalación del plugin de Flash para Firefox
  3. F-Spot (organizar nuestras fotos)
  4. Beagle (organizar nuestros ficheros)
  5. Amarok (reproductor multimedia)
  6. Streamtuner, xmms y Streamripper (radios de internet y reproductor audio)
  7. wifi-radar (Busqueda de redes inalámbrias con Gnome)
  8. kwifimanager (Idem, pero en Kde)
  9. Inkscape (Diseño vectorial, podría ser una alternativa a Corel Draw)
  10. Qcad (Diseño Cad)
  11. Qgis (Sistema de información geográfico)

Hemos estado jugando con el comando wget (man wget) desde la consola para descargarnos sitios completos.
Por último hemos visto el video de XGL en YouTube. Si me da tiempo el próximo dia me traigo el portatil y lo vemos en directo.

A los alumnos que no estuvieron les recuerdo que hace unos dias también vimos la extensión "Web Developer" de Firefox y el programa Gimp para diseño gráfico.  Teneis Gimp instalado en Bardinux.

Hoy seguimos viendo Bash. Aquí hay algunos enlaces que nos servirán:

1. Probar estos scripts y preguntar lo que no se entienda

2.Revisar las soluciones de los ejercicios

3. Idem