BitBite English #3: outrun

La gran corredora de fondo estadounidense de la década de los 80, y vencedora de varios maratones, Julie Isphording, dijo una frase que todo corredor debería tener siempre presente en su cabeza:

“Running has given me the courage to start, the determination to keep trying, and the childlike spirit to have fun along the way. Run often and run long, but never outrun your joy of running.”

outrun, dejar atrás, correr más rapido que algo

Corre a menudo y corre lejos, pero nunca dejes atrás el gozo de correr.

Otro consejo para corredores a la hora de enfrentarse a un perro: si estáis corriendo y os encontráis un perro agresivo, debéis tener en cuenta que no váis a poder dejarlo atrás: you won’t be able to outrun the dog.

Have no doubt: you have no chance of outrunning a dog.

Julie Isphording era una corredora muy rápida, pero…

Will women ever outrun men in a marathon?, ¿correran alguna vez las mujeres más rápidas que los hombres en un maratón?

What do you think?

Javier Montero

 

LaTeX – Capítulo 7: Listas simples

Objetivo: aprender a crear listas simples (no ordenadas) en LaTeX.

En episodios anteriores introdujimos el concepto de entorno y lo aplicamos a la creación de listas numeradas, en las que cada elemento iba precedido por un ordinal creciente. Hoy aprenderemos a crear listas no ordenadas y mostraremos cómo cambiar el símbolo descriptor de cada elemento a nuestra elección.

Las listas simples se caracterizan porque sus elementos no reflejan ninguna relación de orden. El descriptor que precede a cada uno de ellos es un símbolo que suele ser común a toda la lista.

Por defecto, \LaTeX precede cada elemento con un cuadradito negro. Sin embargo, este símbolo podemos cambiarlo a nuestro antojo, como podemos apreciar en el ejemplo:

Creamos una lista simple a través del entorno itemize.

\begin{itemize}
\item Hola mundo
\item Concepto de preámbulo
\item Preámbulo para escribir caracteres en español
\item Escritura de espacios, párrafos y saltos de línea
\item Creación de secciones
\item Introducción de comentarios
\item[+] Escritura correcta de la palabra \LaTeX
\item[=]Concepto de entorno
\item Creación de listas enumeradas
\item[-] Creación de listas simples
\item[-] Modificación del descriptor en las listas simples
\end{itemize}

Fíjate en cómo hemos establecido un símbolo descriptor diferente al que hay por omisión: indicándolo como parámetro opcional entre corchetes.

Otro pequeño paso adelante…

Javier Montero Gabarró


Fecha de la última revisión: 20 de noviembre de 2012


LaTeX – Capítulo 7: Listas simples


El texto de este artículo se encuentra sometido a una licencia Creative Commons del tipo CC-BY-NC-ND (reconocimiento, no comercial, sin obra derivada, 3.0 unported)


El Club del Autodidacta


Índice completo de artículos relacionados con \LaTeX.

BitBite English #2: do all the running

¿No os ha sucedido alguna vez que, estando en un grupo, a veces os ha tocado comeros todo el marrón y ser los únicos que habéis empujado para lograr algo que correspondía a todos?

If that was the case, you did all the running.

do all the running, llevar solo o prácticamente solo el peso de una determinada tarea.

Feel free to write a comment, don’t let me do all the running around. 😉

Javier Montero

El método CAGED y las 5 posiciones: las escalas

Objetivo: ilustrar el método CAGED aplicado a la formación de escalas.

En la primera parte de este artículo concluímos que las 5 posiciones del método CAGED se podían resumir dependiendo de cómo se ubicaba la nota fundamental en el mástil de la guitarra. Vimos, además, que esas 5 posiciones eran cíclicas.

Vamos a trasladar ahora estos conceptos al mundo de las escalas sin más que cambiar la palabra fundamental, que define la nota base sobre la que se edifica el acorde, por tónica, que es la nota a partir de la cual se construye la escala.

Dibujando lo explicado en la primera parte, la posición relativa de las tónicas en las cinco posiciones queda reflejada del siguiente modo:

1ª posición

La imagen está orientada como si de una guitarra puesta en vertical se tratase, con la sexta cuerda a la izquierda. No hay referencia a ningún traste de la guitarra en particular. Lo esencial es apreciar que, en esta posición, las tónicas se hallan en la quinta cuerda y, una octava más alta, en la segunda.

2ª posición

La tónica vuelve a estar en la quinta cuerda, pero la siguiente sucede en la tercera, hacia abajo en el dibujo, mientras que en la primera la buscábamos arriba.

3ª posición

Las posiciones tercera y cuarta están caracterizadas por que la tónica se encuentra en la sexta cuerda (y, por tanto, en la primera también), en lugar de en la quinta. En la tercera posición hay una tónica en la tercera cuerda, como vemos en el gráfico.

4ª posición

En esta ocasión, la siguiente aparición de la tónica, después de en la sexta cuerda, sucede en la cuarta, hacia abajo en el mástil.

5ª posición

Finalmente, la quinta posición se identifica por el hecho de que la tónica está en la cuarta cuerda. Volvemos a encontrarla, una octava más aguda, en la segunda cuerda.

Pongamos la guitarra horizontalmente ahora, con la sexta cuerda abajo del todo. Intenta percatarte de las cinco posiciones a lo largo del mástil y del modo en que cada una conecta con la siguiente.

En el gráfico está representada la nota RE (D) en todo el mástil. ¿Eres capaz de reconocer en él las cinco posiciones? Si no es así, obsérvalo en pequeños trozos.

Aprecia que, después de la quinta, vuelve a conectar con la primera (partiendo del traste 17 en la quinta cuerda).

A modo ilustrativo, veamos cómo encajaría la escala de Re mayor en las cinco posiciones CAGED:

Re mayor en primera posición

Re mayor en segunda posición

Re mayor en tercera posición

Re mayor en cuarta posición

Re mayor en quinta posición

Después de la quinta, vuelve a aparecer, completando el círculo, la primera posición

Conceptualmente sencillo, ¿verdad?

Javier Montero Gabarró


Fecha de la última revisión: 17 de octubre de 2012


El método CAGED y las 5 posiciones: las escalas


El texto de este artículo se encuentra sometido a una licencia Creative Commons del tipo CC-BY-NC-ND (reconocimiento, no comercial, sin obra derivada, 3.0 unported)


El Club del Autodidacta


Índice de la categoría Guitarra.

Índice de la categoría Armonía.

BitBite English #1: gist

Un día, Paul McCartney, preguntado por el significado de la canción «Let it be», de los Beatles, comentó que surgió a partir de un sueño que tuvo una noche con su madre, fallecida unos diez años atrás.

Una de las cosas más maravillosas que tiene soñar, dijo, es que permite reunirnos con seres queridos que ya no están presentes. Paul estaba pasando por un momento tormentoso en su relación con la banda, y su madre, en el sueño, le repetía continuamente que todo iría bien.

El ex-beatle indicó:

«I’m not sure if she used the words ‘Let it be’ but that was the gist of her advice, it was ‘Don’t worry too much, it will turn out okay.’

gist es la esencia, lo esencial.

that was the gist of her advice, esa era la esencia de su consejo

to get the gist of something, captar lo esencial de algo

Did you get the gist of BitBite English #1?

I really hope so!

Javier Montero

BitBite English #0 – Introduction

Comienza una nueva serie en El Club del Autodidacta que posiblemente gustará a los estudiosos del idioma inglés: BitBite English.

Aprender un idioma no es una tarea complicada, pero se requiere cierta constancia: hay que practicarlo todos los días, aunque sólo sea durante unos minutos. BitBite English es una serie de artículos breves, que se leen en menos de un minuto, y que muestran UN ÚNICO concepto, uso o palabra del idioma inglés.

Si tal vez seguís algunas de las otras series del blog, os daréis cuenta de que soy un gran defensor de mostrar la información en «pequeños chupitos», piezas individuales, que con una frecuencia de aparición adecuada, van construyendo el puzzle del cuerpo de conocimiento.

A diferencia de otras series, como «Python», «LaTeX», o «mIRC», organizadas en capítulos, BitBite English no presentará los conocimientos de un modo progresivo: se alternarán contenidos básicos con otros más avanzados sin ningún criterio en particular. No obstante, al tratarse de un único concepto individual, hay muchas probabilidades de que incluso los que empiezan en el estudio del idioma puedan aprehender esa «pieza» de información e integrarla en su bagaje de herramientas expresivas.

BitBite English aparecerá cinco veces a la semana, de lunes a viernes, y preferiblemente a primerísima hora de la mañana.

Ni que decir tiene que quien más va a aprender de todo esto voy a ser yo, comprometido en preparar un nuevo concepto para cada artículo diario. Sentíos cómodos de corregir, ampliar, o aportar cualquier información a través de los comentarios del blog.

See you tomorrow! 😉

Javier Montero

Python – Capítulo 14: El total de elementos de una lista

Objetivo: determinación del número de elementos de una lista en Python.

En ocasiones deberemos conocer el número de elementos de que se compone una lista. Por ejemplo, imagina que tienes que calcular la media aritmética de un conjunto numérico determinado por una lista. La operación es sencilla: sumamos todos los números y dividimos entre el total de elementos, que es, precisamente, la longitud de la lista.

Calcular el número de miembros de una lista en Python es tan sencillo como aplicar la función
len()

introduciendo como parámetro el nombre de la lista.

La lista que figura a continuación contiene todos los días de la semana y tenemos curiosidad por saber de cuántos días estamos hablando exactamente.

Para resolver este complejo problema recurriremos a dos aproximaciones: a) mediante el método universal e infalible de la cuenta de la vieja; b) aplicando la función len(), que para eso está.


lista = ['Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado', 'Domingo']
totaldiascuentavieja = 0

for dia in lista:
    totaldiascuentavieja += 1

print("El número de elementos de la lista, por la cuenta de la vieja es",
 totaldiascuentavieja)
print("El número de elementos de la lista según la función len es", len(lista))

Para la cuenta la vieja hemos utilizado un bucle for que itera sobre la lista de principio a fin, incrementando cada vez en una unidad la variable totaldiascuentavieja. El segundo cálculo es inmediato: len(lista) nos devuelve precisamente ese mismo valor.

Como veremos más adelante, la función len() no es aplicable exclusivamente a las listas, sino a cualquier otro tipo de secuencia en general, como los strings o las tuplas, e incluso en otras estructuras como los conjuntos.

Javier Montero Gabarró


Fecha de la última revisión: 14 de diciembre de 2012


http://elclubdelautodidacta.es/wp/2011/08/python-capitulo-14-averiguando-el-numero-de-elementos-de-una-lista/


El texto de este artículo se encuentra sometido a una licencia Creative Commons del tipo CC-BY-NC-ND (reconocimiento, no comercial, sin obra derivada, 3.0 unported)


El Club del Autodidacta


Consulta el índice completo de artículos relacionados con Python.

mIRC – Capítulo 6: Estableciendo el tópico del canal

Una vez hemos creado nuestro propio canal y somos, por lo tanto, operadores de él, tenemos que establecer el «topic» del canal.

El «topic» es una breve descripción que acostumbra a utilizarse para facilitar información a los visitantes sobre la temática del canal. Es una práctica recomendable elegir uno que muestre sin ambigüedades de qué se habla dentro.

Supongamos que hemos creado el canal #runnerschat con el comando


/join #runnerschat

y somos operadores de él (lucimos la flamante «arroba» a la izquierda de nuestro nick).

Para establecer el topic a Canal para corredores intrépidos, ejecutamos el comando


/topic #runnerschat Canal para corredores intrépidos

Observemos cómo aparece esta descripción en el título de la ventana.

Cuando ejecutamos el comando /list, la información que aparece junto al nombre es precisamente el tópico de los distintos canales.

Podemos consultar si un canal está o no en la lista y su tópico con un comando como este, sin necesidad descargar el listado completo:


/list #runnerschat

Es importante tener en cuenta que cualquier usuario, sea o no operador del canal, puede, en principio, modificar el tópico usando el comando explicado en este capítulo. Esto, normalmente, no es algo que los operadores deseen, por lo que existen modos de proteger el canal para que únicamente quien sea operador pueda establecer el tópico. Más adelante mostraremos cómo hacer esto cuando hablemos de las propiedades del canal.

Javier Montero

Un cumpleaños especial

Hoy es mi cumpleaños.

Un cumpleaños es siempre un día especial; o, al menos tratamos de que lo sea. Siempre debemos hacer que nuestros días en el mundo sean especiales y un cumpleaños es una excusa ya perfecta para justificar esa elección durante ese día en concreto.

Saber buscar lo extraordinario en cada día es toda una actitud ante la vida. Es algo que requiere asumir la responsabilidad de nuestras circunstancias y no hacerlas consecuencia de los elementos externos. Es «hacer que las cosas sucedan» antes de esperar a que «vengan a nosotros». Es elegir ser martillo antes que clavo.

Hoy quería hacer algo especial, y qué mejor momento para eso que los primeros compases del día.

Me visto con ropa y calzado deportivos, desayuno frugalmente un quesito y una barrita de cereales y, mientras el GPS se ocupa de buscar satélites en el balcón, aprovecho para estirar un poco.

Salgo de casa a las nueve de la mañana, con el cielo nublado y una temperatura excelente de 23 grados centígrados. Tomo rumbo directo hacia el río y, una vez allí, hacia el final de la dársena, junto al huevo de Colón.

Normalmente, llegar al huevo y regresar a casa me ocupa algo más de una hora, lo cual es perfecto para un entrenamiento típico. Pero hoy quería, como he dicho, hacer algo diferente.

Ritmo muy lento y pulsaciones en torno a 140 ppm, lo que me invita siempre a pensar que así uno podría recorrer perfectamente la distancia de una media maratón. Claro que del dicho al hecho hay un buen trecho de 21 Km. Pero, ¿sería realmente posible?

¿Por qué no intentarlo? ¿Por qué no seguir desde el huevo de Colón hasta la Torre del Oro, regresar nuevamente hasta él y de ahí ya volver a casa? Según mis cálculos eso supondría una distancia de, al menos, 20 Km.

La primera hora fue como un entrenamiento normal. Lo interesante sucedió durante la segunda: las pulsaciones se precipitaron en descenso, registrando entre 133 y 138 ppm a un ritmo decente. Ninguna sobrecarga muscular durante los 120 primeros minutos.

Pero, a partir del kilómetro 16, las sensaciones fueron nefastas. Ya no me quedaba agua y notaba síntomas de deshidratación. Me empezaron a doler músculos, como los glúteos y la planta de los pies, que hasta ahora nunca se habían manifestado en ningún entreno. Las pulsaciones, que hasta ese momento se mantenían perfectamente por debajo de 140 ppm, empezaron a dispararse, llegando a tocar incluso los 150 ppm con el mismo ritmo lento.

Puedo decir, sin lugar a dudas, que los cinco últimos kilómetros han sido los de mayor sufrimiento en toda mi trayectoria como corredor hasta ahora.

Di alguna que otra vuelta por el barrio antes de llegar a casa, hasta completar así 21’1 Km en 2 horas y 45 minutos, con una frecuencia cardíaca media de 140 ppm.

Desde luego que he logrado que el día fuera excepcional, pero hay algo aún más importante.

En fechas características, como el año nuevo, o un cumpleaños, solemos hacer una especie de «borrón y cuenta nueva» con el propósito de eliminar hábitos destructivos y sustituirlos por conductas más positivas. Comenzar el nuevo período con un logro importante puede tener un impacto tremendo en nuestras creencias de autoeficacia: si hemos sido capaces de lograr algo que considerábamos realmente duro y asombroso, ¿no nos parecerá cualquier otra cosa una nimiedad?

Si tenéis ocasión, no desperdiciéis la oportunidad de correr la San Silvestre el 31 de diciembre y empezar el año con buen pie. No es un logro cualquiera, es el último del período que termina y el primero del que empieza. Es el primer gol, y en el primer minuto del partido.

Javier Montero

Knoppix: Copia de seguridad del Master Boot Record

Knoppix 6.4.4
Nivel: Avanzado

Si quizás sois como yo, que os gusta enredar y tocar en las entrañas del software, incluso en las del más íntimo, ligado al propio arranque de la máquina, entonces seguro que esta entrada puede que os ayude a evitar un buen susto.

En el «sector de arranque», los primeros 512 bytes del disco duro, se encuentra almacenada una zona crítica para el inicio del equipo: el Master Boot Record (MBR), que suele contener el primer código de arranque y la tabla de particiones del sistema.

Los gestores de arranque escriben en esta zona, un virus puede alterarla, o incluso vosotros mismos si sóis como yo y os pierde la curiosidad. Es una buena precaución tener a salvo el MBR con una copia de seguridad.

La utilidad que emplearemos es dd, presente en todas las distribuciones de Linux. Si la máquina es un Windows, arrancamos con nuestro CD mágico de Knoppix y ya tenemos toda la potencia de Linux al alcance de nuestros dedos.

Hace más de un año escribí el artículo «Creación de imágenes de discos duros», en el que explicaba cómo clonar un disco utilizando dd. La mecánica de trabajo es la misma y no vendría mal su relectura.

Introducimos el CD de Knoppix, pinchamos un «lápiz» USB en el que volcaremos la copia de seguridad y arrancamos la máquina.

Cuando aparece el prompt boot: escribimos, antes de que continúe el proceso de arranque:


knoppix 2 lang=es

de modo que Knoppix arrancará en modo texto y con la disposición de teclas de nuestro idioma.

Una vez concluido el arranque, comprobemos cómo han sido detectados los discos:


fdisk -l

En mi caso, que lo he lanzado desde un portátil, aparece el disco interno como sda y el lápiz USB como sdb, con sus respectivas particiones sda1 y sdb1.

Montamos el dispositivo USB para poder almacenar ahí la copia de seguridad:


sudo mount /dev/sdb1 /mnt/sdb1

Copiamos el MBR con este simple comando:


dd if=/dev/sda of=/mnt/sdb1/portatil.mbr bs=512 count=1

Al momento, se habrá creado el fichero portatil.mbr en el dispositivo usb.

Revisemos la sintaxis del comando:

Con if especificamos el fichero origen, en este caso el disco duro interno. El fichero de salida se indica con of. El proceso se realizará volcando UN único bloque (count) de 512 bytes (bs).

A partir de ahora podéis experimentar a gusto en esa zona tan delicada del disco. Tal vez os animéis a diseñar vuestro propio gestor de arranque.

Si las cosas no funcionan como esperabais, siempre se puede dar marcha atrás y restaurar el MBR que teníais en un principio con:


dd if=/dev/sdb1/portatil.mbr of=/dev/sda

Cargaos sin miedo el MBR. Yo ya lo he hecho un par de veces (y no siempre tenía una copia de seguridad a mano).

No, mejor no me hagáis caso: no asumo ninguna responsabilidad por lo que podáis hacer.

Javier Montero

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies