miércoles, 14 de marzo de 2007

Día de Pi

Bueno, no soy afecto a hacer reconocimientos a la multitud de fechas que se encuentran escritas en mi calendario y por ese motivo tampoco posteé sobre el "Día de la mujer", pero hace un mes leí en Microsiervos acerca de Eve Astrid Andersson una fan del número Pi y autora de el sitio Pi Land con numerosos recursos basados en... Pi; y bueno me prometí escribir algo acerca de este día y aquí estoy.

Creo que todos le tenemos algo de estima a Pi porque fue el primero de muchos decimales infinitos que nos enseñaron durante nuestra hermosa infancia y tal como indica Microsiervos, es la constante favorita de la mayoria de sus lectores; no me atrevo a hacer una reseña sobre el origen de este número (porque la gran mayoria debe sabérsela de memoria) ni de los distintos métodos para calcularlo (lógicamente con distintos grados de aproximación), para esto les dejo el siguiente enlace: Historia de las Matemáticas: El número Pi y les deseo un Feliz Día de Pi.

Algunos enlaces relacionados:
- Pi con un millón de decimales
- Día de Pi en Gaussianos.com
- Y para los fanáticos: Poster de Pi en PDF

miércoles, 7 de marzo de 2007

iPhone

A raiz del reciente robo de mi celular (un modesto K300i al cual le tengo mucho cariño) y con él un montón de cosas invaluables para mí (felizmente tenía el cable de datos) acaecido en una atiborrada unidad de transporte urbano, léase microbus limeño en hora punta, no queria saber nada acerca de estos aparatitos, al menos hasta tener la posibilidad de comprarme otro pero sin querer, como casi siempre ocurre, me enteré de que Apple ha lanzado su concepto de celular, el iPhone, supongo que es algo así como cuando Google lanzo su concepto del correo web con el Gmail, pero comparaciones aparte, las demostraciones hechas en los distintos eventos prometen mucho de este pequeño dispositivo y viendo los videos me dan unas ganas atroces de tener entre mis manos el juguetito, bueno, habrá que esperar que alguien de por aquí se compre uno, cosa que veo muy lejana.
Aqui les dejo un video que "muestra las distintas cosas que podriamos hacer" con nuestro iPhone en caso de ser el afortunado poseedor de uno, (la principal para mí sería la de destapador, ya que siempre olvido el mío en los momentos cruciales).


martes, 6 de marzo de 2007

Google y aceleradores de partículas

Esta mañana me quedé solo en casa y aprovechando la oportunidad revisé Microsiervos y encontré una cita acerca del algoritmo que usa Google para calcular el Page Rank, basto leer el título del artículo original: Algoritmos de Google: El Page Rank para interesarme en el tema, seguí el enlace y al finalizar de leer el post en The Smoke Sellers, revisé otras entradas encontrando esta que, sinceramente, despertó otra de mis pasiones: la física moderna, se trata de un pequeño juego/tutorial en inglés, francés, italiano y alemán, acerca del funcionamiento de los aceleradores de partículas, muy interesante y sirvió en algo para dejar sólo de leer sobre el tema en mis libros o en la Wikipedia, bueno aqui les dejo el enlace: LHC Game

lunes, 5 de marzo de 2007

Thumbnails en PHP

Si hay algo para lo que tuve que revisar a fondo la referencia de PHP en español pues fue la graciosada de hacer miniaturas de las imágenes que los usuarios iban enviando al servidor de la empresa donde trabajo, si bien ya dista un buen tiempo desde mi primer código desde cero para hacerlo, siempre tuve que hacerle algunas correcciones para que fuera reutilizable (palabra que suena bastante en la oficina), hasta que quedó tal y como se los muestro, me parece práctico y chiquito, y además centra las imágenes dentro del tamaño seleccionado, (tenía la idea antes de ver a Flickr hacerlo, pero no se me ocurría cómo), y por último, el archivo de salida siempre es un jpg.

function ThumbNail($rutaFoto, $thumbFoto, $max_alto = 75, $max_ancho = 75, $overwrite = true)
{
$checkedFoto = file_exists($rutaFoto);
if ( $checkedFoto === true )
{
$sizeFoto = GetImageSize( $rutaFoto );
$anchoFoto = $sizeFoto[0];
$altoFoto = $sizeFoto[1];

if ($overwrite == false)
{
$checkedThumb = file_exists ($thumbFoto);

if ( $checkedThumb === true )
{
return true;
}
}

$ExtImg = strrchr ($rutaFoto, ".");

if ( $ExtImg == ".gif" )
{
$imageActual = imagecreatefromgif ($rutaFoto);
}
elseif ( $ExtImg == ".jpg" || $ExtImg == ".jpeg" )
{
$imageActual = imagecreatefromjpeg ($rutaFoto);
}
elseif ( $ExtImg == ".png" )
{
$imageActual = imagecreatefrompng ($rutaFoto);
}

touch( $thumbFoto );
chmod( $thumbFoto, 0777 );

$razonFoto = $anchoFoto / $altoFoto;

if ($anchoFoto > $altoFoto)
{
$altoFinal = $max_alto;
$anchoFinal = ceil($max_alto*$razonFoto);
$destajeX = ($anchoFinal - $max_ancho)/-2;
$destajeY = 0;
}
else
{
$anchoFinal = $max_ancho;
$altoFinal = ceil($max_ancho/$razonFoto);
$destajeX = 0;
$destajeY = ($altoFinal - $max_alto)/-2;
}

$ImagenFinal = imagecreatetruecolor ($max_ancho, $max_alto);

ImageCopyResized ($ImagenFinal, $imageActual, $destajeX, $destajeY, 0, 0, $anchoFinal, $altoFinal, $anchoFoto, $altoFoto);
$controlImage = imagejpeg ( $ImagenFinal, $thumbFoto, 90);

return ($controlImage);
}
else
{
return false;
}
}

Acepta cinco entradas, las dos primeras indispensables y las otras tres opcionales: la ruta de la imagen de origen, la ruta donde se creará la miniatura, el alto máximo de la miniatura (75 pixeles por defecto), el ancho máximo (también 75 px. por defecto), y si se puede sobreescribir una imagen preexistente o no (por defecto es true)

Diganme que les parece y sus obvias sugerencias.

Máxima de la programación

"Si funciona, no lo toques"

4 días y contando

Bueno, si bien es cierto que he utilizado mi blog para escribirte palabras (a veces pienso que todo yo me compongo sólo y exclusivamente de palabras) que jamás llegaste a leer, hoy doy vuelta a la página y faltan cuatro simples días para un examen que tal vez cambie un poco mi vida, no más de lo que tú la cambiaste pero tendrá su impacto. Comprendo que quieres que te olvide, que me dedique a otras cosas, que regrese a ser lo que era antes, cuando me conociste, pues hoy lo hago querida niña, a partir de hoy regreso a la tecnología y a internet, regreso a mi mundo del cual sólo salí para comprobar lo maravillosa que puede ser la realidad allá afuera y cuán triste fue desde que te fuiste, regreso porque sé que tú así lo deseas y porque también así lo deseo y además regreso porque ya no tengo por quien quedarme aquí.