QtCreator y otros IDEs en ROS indigo

La variedad del ecosistema de ROS es enorme. Las opciones de entornos de desarrollo son igualmente variadas. Sin embargo, para mi gusto, una de las más sencillas es la de QtCreator. Este IDE soporta de manera nativa CMake y por tanto soporta casi sin modificaciones los proyectos basados en Catkin.

El proceso para configurar QtCreator es el siguiente:
- Asumo que ROS está completamente instalado y configurado. Es decir, el entorno de ROS funciona correctamente (hemos modificado .bashrc, tenemos nuestro espacio de trabajo catkin en digamos $HOME/catkin_ws …)

- El CMakeLists.txt en la carpeta raiz “src” de nuestro workspace es un enlace simbólico. En las últimas versiones esto provoca errores de permisos. Para esquivar este error cambiamos el enlace por un fichero. Por ejemplo,
cd ~/catkin_ws/src
ls -l  CMakeLists.txt # Para ver a donde apunta exactamente
sed -i '' CMakeLists.txt
ls -l CMakeLists.txt # Ahora veremos que ya no es un enlace

- Creamos un lanzador adecuado para que QtCreator tenga las variables de entorno de ROS:
cat qtcreator.desktop
[Desktop Entry]
Exec=bash -i -c qtcreator %F
Icon=qtcreator
# Para ubuntu 13.04 o superior usar este
# Icon=QtProject-qtcreator
Type=Application
Terminal=false
Name=Qt Creator
GenericName=Integrated Development Environment
MimeType=text/x-c++src;text/x-c++hdr;text/x-xsrc;application/x-designer;application/vnd.nokia.qt.qmakeprofile;application/vnd.nokia.xml.qt.resource;
Categories=Qt;Development;IDE;
InitialPreference=9

- Con nuestro lanzador (o desde la consola) lanzamos QtCreator. Según la versión que tengamos, puede que estos pasos los debamos realizar uno a uno o que el mismo IDE nos solicite los parámetros.

- Ahora vamos a configurar QtCreator. En el menu “File” seleccionamos “Open File or project…“, a continuación nuestro fichero desenlazado “~/catkin_ws/src/CMakeLists.txt” y definimos como build dir “~/catkin_ws/build/”. A continuación presionamos “Configure” y comenzará linkar.

- QtCreator lanza cmake sin argumentos, lo que provoca algunos fallos. Para resolverlo, vamos a la pestaña “Projects” y seleccionamos “Build Settings”, donde añadimos los parámetros:
-DCMAKE_INSTALL_PREFIX=../install -DCATKIN_DEVEL_PREFIX=../devel

- Finalmente, si hicimos la configuración paso a paso en vez de con el asistente, probablemente hemos de eliminar algunos archivos extra que ha generado:
rm -rf ~/catkin_ws/build/devel

Y listo, QtCreator Listo.

Fuentes:
ROS: How to develop catkin packages from an IDE
ROS wiki: IDEs

(No tan) mini tutorial de presentaciones de PFC

5º Regimiento de electrónicos defiende su proyecto

La presentación del proyecto fin de carrera grado, es el gran Día D de la carrera. Casi nada te ha preparado para lo que tienes que hacer, puede garantizarte un final relativamente incruento de una larga guerra y tus adversarios están atrincherados esperándote llegar. Aquí enumeraré algunos consejos recopilados para afrontarla adecuadamente. Son sólo sugerencias, no te preocupes si parecen un montón de cosas, verás que la mayoría son de sentido común.

- El objetivo: La presentación es mayormente un mero trámite, el trabajo real está hecho y más que revisado. Sin embargo, una buena presentación te puede ayudar bastante a redondear el proyecto. Obviamente puede mejorar la opinión que tienen de tu trabajo y subirte la nota. Y aunque no te preocupe eso, hacer una buena presentación pone al tribunal de tu parte, lo que te ahorra el mal rato de tener una ronda de preguntas un tribunal enfadado, perdido o al menos acorta las preguntas.

- El experto: Tú eres quien más sabe del trabajo. En la lectura se acaba lo el alumno y empiezas a ser un ingeniero por derecho propio. Transmite seguridad y no tengas miedo a expresar tu opinión razonada y fundada en tu conocimiento. Esto es una prueba de madurez.

- Programa: Hazlo en lo que te sientas más cómodo y menos te falle. A mi me gusta beamer, pero soy un tanto friki. La mayor parte de la gente la hace en powerpoint o su clónico de libreoffice y es más que suficiente. Hasta he visto cosas hechas en prezi u otras cosas más exóticas. Lo dicho, al gusto.

- Duración: nunca menos de 30′ y muy mal si se pasa de 45′. Procura que sea hablando como una persona, no atropellándote con las palabras. Un proyecto perfecto dura en torno a los 45′= 30′ presentación + 10′ preguntas + 5′ deliberación tribunal. Tras practicar un par de veces ya cuadrarás los tiempos. Esto ha cambiado con el grado, pero la idea es la misma, respetar los límites y no eternizarse.

- Extensión: el promedio es de 1′ por transparencia (obviamente sin índice, portada ni contraportada). No te preocupes si alguna es más o si no tienes 33 transparencias. Calcula entre 35 y 45 transparencias para PFC.

- Índice: si quieres comenta muy brevemente la estructura de la presentación, pero no leas los puntos uno a uno. Esto aplícalo en general a todas las transparencias. Más que leerlas, las interpretas.

- Transparencias: no abuses del texto en las transparencias, eso mata. Escribe los conceptos principales. Que te apoyen la argumentación. Si comienzas con nervios se puede hacer una excepción en las primeras transparencias: pones dos o tres conceptos y los “lees” para explicarlos.

- Tamaño de las cosas: han de ser cómodas de leer, que pueda leerlas tu abuela sin gafas desde la otra punta del salón.

- Colores: no uses esquemas raros de colores, los proyectores te pueden hacer una mala jugada. Si puedes echa un vistazo al “lugar de los sucesos” para ver el proyector.

- Encabezados y pies: está bien que pongas algunas guías (sección-nombre del pfc…) pero no te comas demasiado espacio útil de la transparencia. Tampoco recomiendo usar números de transparencias porque puedes crear ansiedad: p.e. 10/50

- Figuras e imágenes: eso mola. Poner flujogramas y explicarlos, o cuando llegues al apartado de experimentación, pon todas las que puedas. Pero recuerda explicar muy bien las escalas, colores, tendencias… recuerda lo dicho acerca de “tamaño” y “colores”

- Animaciones, transiciones y efectos varios: según mi experiencia, evítalos. A lo sumo úsalos en situaciones muy concretas, para evitar que el tribunal pierda el hilo.

- Vídeos y multicosas: suelen comer bastante tiempo y cortan el flujo natural de la presentación. Por lo tanto, si se incluyen, que sea por un buen motivo y que te permita seguir hablando mientras el vídeo se desarrolla. Otras opciones son el reproducirlos a mayor velocidad o dejarlos para el final de la presentación, como un anexo a mostrar, previo permiso del tribunal.

- Duelo de miradas: procura mirar al tribunal, es a ellos a quien les cuentas la película. Puedes mirar de vez en cuando al público, pero no mires a las transparencias más de lo necesario, que pareces autista.

- Antiestrés: es normal que tengas picos de nervios. Puedes tener una botellita de agua junto a ti, de manera que si tienes un lapsus o se te queda la boca acartonada, haces una pausa para beber, que está aceptada. Tener en la mano un boli o un puntero también ayuda. Y si vas a usar el puntero, práctica para evitar el ‘tembleque-laser’ y no dispares al tribunal.

- No hables mecánicamente: Tienes que conocer tu  presentación y ensayarla, pero no soltarla en papagayo-mode. Trata de ser natural.

- Cuida el lenguaje: natural si, pero educado. Procura mantener la corrección con el tribunal, evitar coloquialismos, muletillas o chistes.

- Se educado: Jamás, jamás cortes al tribunal mientras te habla. Ni aunque estén soltando chorradas. ¿Acaso quieres ahorrar tiempo o enfadarlos?

- Frases protocolarias:  ya sabes lo que gustan aquí los protocolos. Cuando empiezas, el tribunal te da paso, tú dices: “Con el permiso del tribunal, damos comienzo a la defensa de este proyecto fin de carrera titulado…”. Al acabar dices: “Y con esto concluye la presentación. Quedo a disposición del tribunal para las cuestiones/preguntas que tenga a bien realizar”.

- Ayuditas extra: powerpoint te permite ver una cosa en tu pantalla y otra en el proyector. Llegado el caso, puedes usarlo a modo de chuletario, y digamos consultarlo cuando te toque beber agua.

- Android freak: puedes usar tu móvil como ratón inalámbrico para pasar las transparencias, y de paso tener las notas y un contador de tiempo.
Echa un vistazo en el google Play a aplicaciones como p.e. “Power Point Key Remote”.

Y finalmente enhorabuena, que ¡ya has acabado!