Category Archives: *NIX

Things I wished I had known when I started using snakemake

Happy new year and all of that!

I am still VERY late in my catching up with papers. This is not helped by the fact that I’ve changed devices (again) and I am now in a Dell Machine, on a full GNOMEian experience worth of a separate entry. Paper newsletters will resume. For real. In the meantime, here goes a post for certain tips when using Snakemake.

Continue reading

Making a workflow

 

Wow!

This is my first kind of serious project in bioinformatics. I had to prepare some de novo transcriptome assemblies from weird organisms using publicly available data, and I took the chance to learn a little bit how to automate processes using bash scripting, virtual environments, a a lot of variables and flags.

I have named this pristine, and it can be found in my github repository.

I will keep working on it as I learn how to code and make new things. I recently saw a way to download and transfer fastq data into other softwares on-the-go as it is downloaded using UNIX pipes. I will try to check if something like this could be done, how cool.

Cheers!

(and no, I did not forget about the last post of the multicellularity story. I just need free time and energies to sit down and finish it :’) )

[shared] Reproducible analysis for the very lazy | Análisis reproducibles para los más flojos

Lectura recomendadísima con unos cuantos consejos sobre cómo organizar los directorios de trabajo para facilitar la reproducibilidad, el orden homogéneo de todos nuestros proyectos, y nuestra salud mental en general. Cuanto menos, dan inspiración y refuerzan ideas o experiencias previas en el mundo de los sistemas de archivos. Además, molan porque son tan sencillos que ayudan hasta a los que más nos cuesta organizar las cosas. Traducidos al castellano, los comentarios más importantes serían:

  1. Crea una estructura estándar para tus proyectos, respétala en todo momento, conócela como la palma de tu mano, y reutilízala en cada proyecto que hagas. Por ejemplo:
    1. Ten un directorio por cada proyecto que tengas. Todo lo necesario para un proyecto debería estar en el mismo directorio raíz.
    2. Dentro del directorio principal del proyecto, al menos los tres siguientes sub-directorios:
      1. Código: todos los scripts, borradores de código, etc.
      2. Datos: todos los raw data, datos tabulares, etc. Todo lo que se generó durante un experimento, así como información proporcionada por otra persona.
      3. Resultados: todo lo generado usando código.
  2. Usa enlaces simbólicos (==symbolic links, o symlinks) (ln -s) para evitar la redundancia de datos. Importantísimo, que a la hora de llamar el comando ‘ln -s’ se haga usando la ruta completa del archivo de origen, incluyendo cuanto menos el directorio home (“~/ruta/al/archivo” en lugar de, por ejemplo, “../ruta/al/archivo”).
  3. Usa rutas (==paths) relativas entre sí. Por ejemplo, si trabajas en R, sitúa tu workingdirectory en “~/ProjectName” y haz las llamadas a lecturas de datos desde “Data/…”. ¿Que tienes algún dato o cosa que necesitas usar rápido y sin más importancia? Usa el consejo #2 (link simbólico a “Data/” ) para respetar la estructura decidida en la regla 1.

Si quieres más consejos a cuenta de la casa, continúa leyendo.

Continue reading

Consejos para hacer una nueva tabla de particiones + instalación limpia de Linux sin perder datos personales

Ningún usuario ni experto ni medio ni casual de un ordenador está a salvo de la pesadilla que puede suponer hacer copias de seguridad de nuestros datos, y cuando eso se mezcla con tener que formatear y reconstruir de cero toda la instalación… algunos incluso desisten de hacer nada o planean cómo hacer todo sin perder nada. Pero eso se acabó para los usuarios de Linux.

Continue reading

Inicios a la Nexus 7 (I)

De cómo hacer de nuestra tablet todo un equipo

Como ya dejé caer en otra entrada previa, el Nexus 7 provee de un sinfín de atajos a todo tipo de servicios para minimizar todo lo posible la interacción usuario-máquina, centrándose en el contenido y en lo que el usuario consuma.

De este modo, y gracias a -entre otras cosas- su resolución de pantalla notablemente versátil, la tablet puede desde hacerse pasar por un lector de libros, cómics y apuntes, hasta convertirse en el centro social o multimedia por defecto, pasando por aplicaciones de ocio, juegos… Por no hablar de la comodidad de tomar notas rápidas en cualquier situación que se precie.

Pero mejor ir por apartados, que publicaré en una serie de cuatro entradas, y así podré centrarme con más detalle en el partido que le podemos sacar a este aparato, así como algunos consejos y datos útiles que nunca vienen nada mal.

Continue reading