martes, 26 de abril de 2016

Kan kem pon o piedra papel o tijeras

El otro día esta viendo Dragon Ball Super y como no existe todavía la traducción al español me tocó verla con subtítulos en español y el audio original en japones.

Fue grande mi sorpresa al ver el segmento de video que se presenta más arriba. Los personajes utilizan un método para decidir quién va primero. Se trata del tradicional "piedra, papel o tijeras".  Bueno, ni tan tradicional.  En mi memoria personal y colectiva utilizábamos otras palabras.
Al conversar con otras personas de mi misma edad y de mi misma ciudad las palabras que utilizábamos eran algo más parecido a "kan kem pon".  Extrañamente personas de otras edades reportaban no tener memoria sobre dicha construcción. De la misma manera, personas que provienen de otros lugares tampoco reportan conocer esas palabras.

Entonces, por alguna razón que despierta mi curiosidad, los niños de Cuenca - Ecuador de una edad actual específica conocen dichas palabras para ser utilizadas en el mismo contexo, pero graciosamente, no conocen que su origen es Japones.

Si la trasmisión de las palabras en el contexto fue mediante la televisión, entonces por qué no se registran más casos de personas conociendo los vocablos (necesito un muestreo mucho mayor).

¿Cómo llegamos a integrar dichas palabras en una ciudad de los Andes?

jueves, 3 de marzo de 2016

Encontrar grupos de números

Desde un pdf extraigo el texto usando pdftotext. Pero la información contiene un salto de línea por cada celda de la tabla.
Deseo obtener  las cedulas y los nombres en la lista.
Buscando en internet encuentro el siguiente enlace:

http://askubuntu.com/questions/538730/how-to-grep-for-groups-of-n-digits-but-no-more-than-n

Y la respuesta es :
grep -P '(?<!\d)\d{4}(?!\d)' file
 
retirar las líneas que no tienen texto
cut  -f2 reporte.txt | grep -v "^$"


Y para juntarlos: 
join -a 1 <(sort CIAG)  <( sort hoja1) 

ROBOCOPY

Necesitaba copiar una carpeta con nombre relativamente largos corriendo Windows para hacer un respaldo. 
Lo intenté de varias formas, pero el error de "nombre de archivo o path muy largo" seguía apareciendo.
Buscando una forma de listar a manera de árbol el directorio para encontrar los archivos con nombres que deben ser reducidos utilicé el comando HELP.
Al buscar la palabra clave árbol me topé con un comando llamado ROBOCOPY.
El comando permite copiar archivos sin importar el largo de la ruta(path) del archivo.
robocopy /origen   /destino  /E

/E permite hacer la copia recursiva, luego de ejecutarlo, todo funcionó de maravilla. ¿Por qué no hacer que dicho comando realice la copia en lugar del antiguo y no tan funcional COPY? pues por que Microsoft no es una buna compañia. 

martes, 1 de marzo de 2016

Error Moodle pregunta numérica con unidades

Revisando el banco de preguntas de un curso en Moodle se nos presentaba un error al registrar una respuesta a una pregunta numérica con unidad.
El problema esta en utilizar la unidad; cuando se trata de otros casos no existe problema.
La pregunta rezaba "Un perro sano tiene una temperatura rectal de 38°C. ¿Cuál sería esta lectura en escala Kelvin?"
y la respuesta es 275 K.
La parte numérica no es el problema. Mas al momento de espesificar las unidades, ya sea para ser escogidas como opción múltiple o como texto se presenta un error en la base de datos para grabar.
El problema es que se pretendía utilizar k con minúsculas como una respuesta incorrecta. Pero el editor no diferencia entre mayúsculas y minúsculas....
Entonces, era como tratar de ingresar dos ocasiones el mismo valor. y por eso era el error.

sábado, 27 de febrero de 2016

taitita Inti

Al jugar con el Waspmote, es inevitable querer que todo se haga automáticamente.  Ahora que tenemos el panel solar me da mucha curiosidad sobre cuanto puede el sol (Inti) cargar la batería del dispositivo. Y si es posible de imprimir 3D las cajas con protección IP para despliegue.
Por lo pronto, solo les dejo la bitácora de la batería. Al menos la batería se esta cargando.

<=>€ #382545791#Ag1#0#BAT:51#DATE:16-2-9#TIME:19-45-0#IN_TEMP:24.50#TCA:25.16#LUM:1.552#
<=>€ #382545791#Ag1#0#BAT:53#DATE:16-2-9#TIME:19-45-26#IN_TEMP:24.50#TCA:24.52#LUM:1.523#
<=>€ #382545791#Ag1#0#BAT:51#DATE:16-2-9#TIME:20-2-55#IN_TEMP:23.75#TCA:23.23#LUM:1.132#
<=>€ #382545791#Ag1#0#BAT:51#DATE:16-2-9#TIME:20-10-54#IN_TEMP:22.75#TCA:22.90#LUM:1.106#
<=>€ #382545791#Ag1#0#BAT:9#DATE:16-2-24#TIME:8-37-4#IN_TEMP:19.00#TCA:20.32#LUM:2.565#
<=> #382545791#Ag1#0#BAT:15#DATE:16-2-25#TIME:8-42-58#IN_TEMP:16.75#TCA:17.74#LUM:2.794#
<=>€ #382545791#Ag1#0#BAT:13#DATE:16-2-25#TIME:8-52-13#IN_TEMP:17.25#TCA:17.74#LUM:2.929#
<=> #382545791#Ag1#0#BAT:36#DATE:16-2-27#TIME:12-33-38#IN_TEMP:22.75#TCA:23.87#LUM:3.142#
<=> #382545791#Ag1#0#BAT:33#DATE:16-2-27#TIME:12-34-4#IN_TEMP:22.75#TCA:24.52#LUM:3.210#

El programa graba un paquete texto en la memoria SD. y la extracción se realiza manualmente.

jueves, 18 de febrero de 2016

dead acute Emacs

Deseo usar Emacs para escribir un documento en latex. pero cuando deseo utiliar las tildes como en á é el programa indica
"dead acute not defined"
Buscando en internet encuentro que se debe cambiar el archivo de configuración del usuario en $HOME/.emacs y agregar la siguiente opción:

(require 'iso-transl)

Luego de reiniciar emacs todo funciona de maravilla.

miércoles, 17 de febrero de 2016

Tasa de retención estudiantil para el CEAACES

Se parte de dos listas con varios campos. la calve principal será la cedula .
Se requiere obtener:
Los estudiantes que se matricularon hace 2 años y que continuan matriculados.

Para resolver esta consulta vamos a ejecutar la siguiente consulta:

SELECT * FROM TMPU10 a INNER JOIN TMPU4 b ON (a.CEDULA=b.CEDULA) ORDER BY b.CARRERA;


Donde TMPU10 es la lista más actual y TMPU4 es la lista más antigua.

Los estudiantes admitidos hace 2 años del periodo de estudio (primera matrícula y en primer nivel) que continuen en la lista más reciente.

En este caso vamos a usar la misma consulta pero se agregaran más condiciones de restricción.

SELECT a.CEDULA, b.CEDULA, a.APELLIDOS, a.PERIODO_ADMITE_MATRICULA, b.PERIODO_ADMITE_MATRICULA, a.NUMERO_MATRICULA,b.NUMERO_MATRICULA,
a.NIVEL, b.NIVEL, a.CARRERA, b.CARRERA, a.ANULADO, b.ANULADO
FROM TMPU10 a INNER JOIN TMPU4 b ON (a.CEDULA=b.CEDULA)
WHERE  cast(b.NIVEL as int) = 1 AND
cast(b.NUMERO_MATRICULA as int) = 1 AND
cast(a.NIVEL as int) <= 5
ORDER BY b.CARRERA

Debido al sistema del instituto de lenguas, cuando un estudiante se inscribe en clases de cualquier lengua por alguna razón sus valores de nivel cambian y vuelve a estar con primera matrícula y en primer nivel. Por esta razón se procede a filtrar los estudiantes que en la lista más reciente se encuentran en un nivel superior al 5.