martes, 29 de junio de 2010

Haz Goles™

No es lo mismo hacer goles que hacer sándwiches™. Al final de los octavos de final, las tabla de posiciones quedó así:
Lugar Jugador           GA A MJ  GP JJ
16 Javier HERNANDEZ 2 0 169 0 4
38 Rafael MARQUEZ 1 1 360 0 4
47 Cuauhtemoc BLANCO 1 0 112 1 3

GA: Goles anotados
A: Asistencias
MJ: Minutos jugados
GP: Goles de penalty
JJ: Juegos jugados.

La tabla completa en la FIFA.

lunes, 28 de junio de 2010

No se pudo, no se pudo, no se pudo...

Ni hablar: una vez más nos quedamos en octavos de final.

Como sea, IMHO el resultado es bueno. Si tú, como yo, alguna vez has competido en algo, sabrás a lo que me refiero.

Al mundial llegan 32 equipos. Después de la primera ronda 16 equipos son eliminados. Dicho de otra forma, pasan los 16 mejores.

En los últimos 20 años México ha logrado pasar la fase de grupos, es decir, se ha conservado entre los 16 mejores. Yo dudo mucho que en los próximos 20 años se logre hacer algo más que eso. A los números me remito:


Año Ronda JJ JG JE JP GF GC Pts %
Italia 1990 Descalificado * * * * * * * *
USA 1994 Octavos de final 4 1 2 1 4 4 5 41.7%
Francia 1998 Octavos de final 4 1 2 1 8 7 5 41.7%
Corea/Japón 2002 Octavos de final 4 2 1 1 4 4 7 58,3%
Alemania 2006 Octavos de final 4 1 1 2 5 5 4 33,3%
Sudáfrica 2010 Octavos de final 4 1 1 2 4 4 4 33.3%


Sólo en Corea/Japón 2002 tenemos más partidos ganados que perdidos. Y aún así, no fue suficiente. Con todo, es la mejor participación en los últimos 20 años.

¿Que se necesita para trascender a los octavos de final? Ganar.

sábado, 26 de junio de 2010

Fraude Total: Sólo por SKY


Fraude Total: Sólo por SKY, originalmente cargada por hdaniel.

A menos de cinco minutos de que comience el primer partido de octavos de final Uruguay vs. Corea del Sur los cinco canales de la programación de SKY para México presentan absolutamente nada del partido. Seguramente lo van a pasar por TDN: sin menús interactivos, sin estadísticas, sin vistas tácticas, sin seguimiento de jugadores, sin las mejores jugadas comforme avanza el partido, sin la posiblidad de poner el sonido ambiental. ¡que fiasco!

Dudo mucho que a la FIFA le importe.

martes, 18 de mayo de 2010

Laughlin

A siete días de que salga Goddard ya tenemos nombre para la siguiente versión de Fedora: Laughlin.

Siguiendo el principio fundamental para ponerle nombre a Fedora: [Nombre actual] es un [algo], y también lo es [sugerencia del nuevo nombre], la propuesta ganadora pertenece a Paul Frields: Robert Goddard fue un profesor de físca, y también lo fue Robert Laughlin.

Según la wikipedia Robert Lauhlin obtuvo el Premio Nobel de Física en 1998 por el descubrimiento de una nueva forma de fluido cuántico con excitaciones cargadas fraccionales (efecto Hall cuántico).

En su libro Un universo diferente establece que la verdadera frontera de la ciencia no está en lo pequeño, sino en lo complejo, por lo cual, el todo es algo más que la suma de sus partes. Fedora es algo más que la suma de sus paquetes de software.

Eso me recuerda los estudios sobre sistemas complejos que se realizan en el CIE, y en los cuales he tenido la oportunidad de colabrar.

lunes, 17 de mayo de 2010

43-004


43-004, originalmente cargada por hdaniel.

Como buen sysadmin, si algo se tiene que hacer más de dos veces, hay que hacer un script:

#!/bin/bash -x

BIRTHDAY=$(jday -d 1967-05-13 15:00:00 | cut -f1 -d.)
MARK=$(jday -d $(date +%Y)-05-13 15:00:00 | cut -f1 -d.)
TODAY=$(jday | cut -f1 -d.)

myflickrupload.pl --title $(printf 43-%03d $[TODAY-MARK]) --tag $[TODAY-BIRTHDAY] --description "Day $[TODAY-BIRTHDAY]" $*

viernes, 14 de mayo de 2010

Helicópteros sobre el CIE

Cerca del medio día estuvieron sobrevolando el CIE un par de helicópteros. Después de varias vueltas no pude resistir el impulso de tomas unas fotos:
DSCF1615
DSCF1616
Los sobrevuelos cesaron cuando pasó esta avioneta:
DSCF1618
Me parece que con el aeropuerto a unos tres kilómetros de aquí ya padecemos de congestionamiento en el tránsito aéreo.

viernes, 30 de abril de 2010

La quakeiza de hoy: Quake Live


La quakeiza de hoy: Quake Live, originalmente cargada por hdaniel.

En vista de que la quake-manía se ha evaporado por los rumbos de la red local habrá que ponerse a jugar quake-live.

miércoles, 28 de abril de 2010

Temperatura en el CIE

Radiación Solar en el CIE

doy2tm.c


#define _XOPEN_SOURCE
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>

time_t doy2tm(const int year, const int dayofyear, struct tm *tm) {

int leapyear, m, d;

int d_in_m [] = {31,28,31,30,31,30,31,31,30,31,30,31};

memset(tm, 0, sizeof(*tm));

leapyear = (year % 4 == 0) && ((year % 100 != 0) || (year % 400 == 0));

if( dayofyear < 1 || dayofyear > (leapyear ? 366 : 365) ) {
return (time_t) -1;
}

if(leapyear) { d_in_m[1]=29; }

for(m=0, d=dayofyear;
d>d_in_m[m];
d-=d_in_m[m++]);

tm->tm_mday=d;
tm->tm_mon=m;
tm->tm_year=year - 1900;

return mktime(tm);
}

int main (int argc, char* argv[]) {
struct tm tm;
int y,d;
char str[128];

if (argc != 3) {
fprintf(stderr, "Usage: %s year dayofyear\n", argv[0]);
return EXIT_FAILURE;
}

y = atoi(argv[1]);
d = atoi(argv[2]);

if (doy2tm(y,d,&tm) == -1) {
fputs("doy2tm returned -1\n", stderr);
return EXIT_FAILURE;
}

if (strftime(str, sizeof(str), "%c", &tm) == 0) {
fputs("strftime returned 0\n", stderr);
return EXIT_FAILURE;
}

printf("%d %d => %s\n", y, d, str);
return EXIT_SUCCESS;
}