22-jun-2010 → comentarios(3) → personal 
Ya 4 años desde que el viejo no está aquí dando lata, su silvido, su olor, su modo, su tono. El 18 de mayo pasado hubiera cumplido 63 años, hubiera conocido a Ana y muchos hubieras.
El dolor hoy es diferente pero sigue siendo dolor, el recuerdo comienza a sentirse de otro modo; Él era chispa, era carisma, era música...¿era o és?.
Escuchar estas canciones es abrazarlo otra vez, Cariño Verdad me dijo que le recordaba mucho a su mamá, porque le dolio dejarla a los 15 años y Flores Negras dedicada a una mujer que dejo literalmente vestida y alborotada por venir a Tijuana para hacer vida con la que fue mi madre. Cabron el tipo.
18-may-2010 → comentarios(0) → php 
Este ejemplo usa phpFlickr, clase escrita en php donde descansan varios métodos para el tratamiento del
resultado de las peticiones al web service de Flickr.
Flickr ofrece una cuenta gratuita con algunas limitaciones, una de ellas según veo es que
no permite tener colecctions de sets, asi que por lo pronto este ejemplo se enfoca a sets y photos de nuestro photostream
phpFlickr, consta de 3 archivos: phpFlickr.php, getToken.php, auth.php, aunque en el ejemplo se incluyen 4 archivos adicionales: sets.php, photos-set.php, photo.php,noimg.jpg
Obtener listado de sets
//sets.php
require_once("phpFlickr.php");
$f = new phpFlickr("tu key"); // 5456afd54654a65a656465as45654
$f->enableCache("fs", "cache");
$nsid = "tu ID"; // 234234234@N20
$sets = $f->photosets_getList($user_id=$nsid);
for($i=0;$i<=sizeof($sets);$i++)
{
echo "<a title=\"".utf8_decode($sets["photoset"][$i]["title"])."\" href=\"photos-set.php?set=".$sets["photoset"][$i]["id"]."\">".utf8_decode($sets["photoset"][$i]["title"])."</a> (".$sets["photoset"][$i]["photos"].")<br>";
}
Desplegar thumb de las photos de un set
//photo-set.php
require_once("phpFlickr.php");
$f = new phpFlickr("tu key"); // 5456afd54654a65a656465as45654
$f->enableCache("fs", "cache");
$nsid = "tu ID"; // 234234234@N20
$info_set = $f->photosets_getInfo($photoset_id=$_GET["set"]);
echo " <<h2>".utf8_decode($info_set["title"])."</h2>";
echo "<p><a title=\"Regresar a Galerias\" href=\"sets.php\">« Regresar a galerias</a></p>";
$photos_of_sets = $f->photosets_getPhotos($photoset_id=$_GET["set"],$per_page=20);
foreach($photos_of_sets["photoset"]["photo"] as $photo)
{
echo "<a href=\"photo.php?id=$photo[id]&set=".$_GET["set"]."\" title=\"View ".utf8_decode($photo["title"])."\">";
echo "<img src=\"" . $f->buildPhotoURL($photo, "Square") . "\" width=\"75\" height=\"75\" alt=\"".utf8_decode($photo["title"])."\" />";
echo "</a>";
}
Desplegar el detalle de cada photo
Detalle significa la foto de un tamaño con mayor resolucióon, título, descripción, la que sigue y la anterior
//photo.php
$id = isset($_GET['id']) ? $_GET['id'] : NULL;
require_once('phpFlickr.php');
$f = new phpFlickr("tu key"); // 5456afd54654a65a656465as45654
$f->enableCache("fs", "cache");
$photo = $f->photos_getInfo("$id", $secret = NULL);
$photosize = $f->photos_getSizes("$id", $secret = NULL);
$size = $photosize[3];
$context = $f->photos_getContext("$id");
$photoUrl = $f->buildPhotoURL($photo, "Medium");
echo "<h2>".utf8_decode($photo["title"])."</h2>";
echo "<img src=\"$photoUrl\" width=\"$size[width]\" height=\"$size[height]\" alt=\"".utf8_decode($photo["title"])."\" />";
echo "<p>".utf8_decode($photo["description"])."</p>";
?>
<div id="context">
<?php
if($context['prevphoto']['id'])
{
echo"<a href=\"?id=".$context['prevphoto']['id']."&set=".$_GET["set"]."\" title=\"Anterior: ".utf8_decode($context['prevphoto']['title'])."\"><img src=\"".$context['prevphoto']['thumb']."\" width=\"75\" height=\"75\" /></a>";
}
else
{
echo"<img src=\"noimg.jpg\" width=\"75\" height=\"75\" alt=\"No photo\" />";
}
if($context['nextphoto']['id'])
{
echo "<a href=\"?id=".$context['nextphoto']['id']."&set=".$_GET["set"]."\" title=\"Siguiente: ".utf8_decode($context['nextphoto']['title'])."\"><img src=\"".$context['nextphoto']['thumb']."\" width=\"75\" height=\"75\" /></a>";
}
else
{
echo"<img src=\"noimg.jpg\" width=\"75\" height=\"75\" alt=\"No photo\" />";
};
echo"</div>";
echo"<p>";
if($context['prevphoto']['id'])
{
echo"<a href=\"?id=".$context['prevphoto']['id']."&set=".$_GET["set"]."\" title=\"Anterior: ".utf8_decode($context['prevphoto']['title'])."\">« Anterior</a>";
}
else
{
echo"« Anterior";
}
echo" | ";
if($context['nextphoto']['id'])
{
echo "<a href=\"?id=".$context['nextphoto']['id']."&set=".$_GET["set"]."\" title=\"Siguiente: ".utf8_decode($context['nextphoto']['title'])."\">Siguiente »</a>";
}
else
{
echo"Next »";
}
echo"</p>";
?>
</div><!-- end context -->
<p>« <a href="photos-set.php?set=<?php echo $_GET["set"]?>">Regresa a Galeria</a></p>
Mi Cuenta en Flickr:http://www.flickr.com/photos/dr-bizarre
Demo: http://www.drbizarre.net/tester/phpflickr-3.0/sets.php
12-mar-2010 → comentarios(2) → personal 
Familia, amigos:
No se preocupen buscando y comparando precios para regalos en mi cumpleaños numero 27, de verdad no sufran.
He listado aquellas cosas materiales -desde luego- que sin duda me harán feliz, lean bien por favor, es inútil querer regalar ropa, calzado y/o perfumes, o cualquier otra cosa sin valor, hablando en la moneda del aprecio.
Si de verdad no tienen dinero, no sufran les repito, pueden hacerme medianamente feliz con unos chocolates -unicamente snickers y m&m-, ropa interior -soy L- o invitarme a comer algo rico -pinches tacos de tripa-.
Algo muy importante, por favor no quiero pastel, no me hace feliz, si a ustedes si, ok lo probaré y la haré de pedo cantando las mañanitas.
Bien, despues de hablar claramente aqui tienen la lista.
Si eres líder, organiza a los demás y en grupo compren todo, es mas fácil. :)
07-feb-2010 → comentarios(0) → mysql 
Desde luego para poder representar caractéres del lenguaje español en nuestras aplicaciones es imprescindible el uso del conjunto de caractéres utf8.
Ej. á é í ó ú ñ
En MYSQL es necesario configurar los campos y las tablas con este encoding para los caractéres:
// modificar el charset
ALTER TABLE myTable MODIFY myColumn VARCHAR(255) CHARACTER SET utf8;
En nuestro documento html hacer:
// indicando el conjunto de cacracteres para nuestro documento
<meta http-equiv="Content-type" value="text/html; charset=utf-8">
y con php utilizar la función
//pasando la variable por el arco de la funcion
utf8_decode($mivar)
Dónde $mivar contiene el valor del campo de la tabla configurada a utf8.
Verificar que en nuestra tabla se este grabando de la siguente manera los caractéres:
El Centro de Enseñanza Técnica y Superior (CETYS Universidad) es una institución educativa de excelencia, situada en el estado de Baja California, México. Actualmente está catalogada como una de las mejores universidades del paÃs. Además está acreditada por organismos supervisores de la calidad académica, como la Federación de Instituciones Mexicanas Particulares de Educación Superior (FIMPES).
y tras pasar esta cadena por la funcion utf8_decode() verificar que tengamos este resultado:
El Centro de Enseñanza Técnica y Superior (CETYS Universidad) es una institución educativa de excelencia, situada en el estado de Baja California, México. Actualmente está catalogada como una de las mejores universidades del país. Además está acreditada por organismos supervisores de la calidad académica, como la Federación de Instituciones Mexicanas Particulares de Educación Superior (FIMPES)
Empezar un proyecto siempre me inyecta adrenalina por un lado por lo emocionante que es iniciar desde cero y construir artesanalmente un sistema y por otro el momento de elegir las herramientas de apoyo. Me resisto a casarme con algunas practicas de desarrollo porque me queda la sensación de que me estoy perdiendo de algo muy bueno.
Ahora que inicié un proyecto que me tiene muy emocionado pues valientemente decidí usar frameworks de desarrollo que solo conocía por nombre como lo es CodeIgniter y Ext JS, php y javascript respectivamente, Blueprint ya es mi herramienta por default para escribir estilos, es tán fácil y ordenado.
Desde hace mas de un año temerosamente intente usar Zend Framework, pero como bien dice PHP Senior, soy un programador de objetos con grado de madurez tipo 2 nunca pude siquiera hacer pruebas porque simplemente no logre configurar y entender correctamente el entorno MVC, mi lado renuente dice que "la curva de aprendizaje de Zend es bastante alta" y mi lado comodin me dijo que "no me complicara y buscara otra manera de mejorar mi organización escribiendo código en el servidor", y tras analizar los que el mercado me ofrece segun la tabla comparativa vista en www.phpframeworks.com decante por CodeIgniter, por las siguientes razones:
- El diseño del sitio del framework esta cool.
- Lo pude configurar INSTANTANEAMENTE en mi servidor.
- Me ofrece justamente lo que necesito, y no mas.
- El nombre del framework es cool.
- Documentación decente.
Del lado del cliente soy esclavo invariable de jquery y Mootools, dicen los expertos que estos no tienen comparación pues se tratan de la guerra entre un Tooolkit Vs Framework. En proyectos laborales he tenido la oportunidad de utilizar estas herramientas a fondo, tanto que ya son parte inamovible de los proyectos.
Hace unos meses me invitaton a participar a un proyecto muy interesante, y el líder del proyecto tenia un capricho muy especial, que era usar Ext JS como apoyo para javascript, ya que esta herramienta cuenta con un verdadero framework de desarrollo para aplicaciones web, sin caer en fanatismos EXT JS es una joya que prónto estara en boca de todos. Por la crisis y por una negociación pobre, el proyecto esta detenido hasta nuevo aviso. Por lo anterior tuve la curiosidad de poder implementar EXT JS, y hoy me doy esta oportunidad.
Hoy tuve ganas de escribir este post para vertir este miedo tan divertido que es conocer lo hasta hoy desconocido con tiempos de entrega fijos y altas expectativas de cliente.
Espero pronto poder aportar mis experiencias en el proyecto con estas herramientas.