Las últimas semanas he estado trabajando muchísimo con CSS, Javascript (con Jquery) y XHTML. En el camino me he preguntado si hay formas de realizar ciertas cosas de manera declarativa, es decir, solo escribiendo lo que se debería hacer, sin dar una explicación de cómo hacerlo.
Continue reading →
Author Archives
25
Jul 10
CSS2 Trick: Cambiar estilo de un elemento hermano
7
Mar 10
Vamos Chile
¡Vamos CHILE!
Ya pasó una semana desde el desastre provocado por el terremoto. Creo que recién estamos saliendo del shock, digo esto porque al menos ahora en muchas zonas ya se está empezando a trabajar en la reconstrucción. En el sector donde vivo no hubo mayores daños provocados por el terremoto, a excepción de los saqueos al supermercado de la zona (bien por los pacos que apalearon flaites!) comerciones que ya están empezando a reactivar.
Por ahora destacaré lo bueno de este remezón, que de a poco nos ha sacado de nuestra individualidad para ser capaces de cooperar en comunidad, haciendo que quienes viven a tu lado sepan que haces, lo que les gusta, y como puedes ayudarles (y viceversa).
A las autoridades quisiera pedirles un par de cosas para trabajar en la reconstrucción:
- Al Ministerio de Obras Públicas (MOP) y a las Municipalidades les quisiera pedir que dentro de sus planes, incluyan la construcción de ciclovías, para hacer una ciudad más limpia y menos congestionada. Cabe señalar que el único medio de transporte para muchas personas será la bicicleta, medio de transporte que no necesita combustible, que no contamina y que no requiere grandes reparaciones.
- A las empresas de construcción que recuerden que los usuarios de sus productos son personas que buscan un hogar que los cobije, y no una caja de cartón.
También quisiera este mensaje para agradecer a quienes conforman BíoBío La Radio, que transmite desde 20 minutos luego del terremoto.
Acá les dejo algunas fotos que he tomado (espero de hoy en adelante captar el espíritu de la reconstrucción).
22
Dic 09
Mi estado del arte v2009
Sé que hace bastante tiempo no escribo, pero que le vamos a hacer, simplemente no se me da la real gana (¿estará bien escrito eso?).
Bueno – así comienzan casi todos mis inicios de párrafos jejejej – esto es sólo para quien lo quiera leer, pero aclaro inmediatamente que es algo que sólo a mi me importa, eso creo. Se trata de recordar lo que hice durante el año, y más que nada es un ejercicio para la memoria, pero no la tuya (para la mía xD).
14
Jun 09
Emprendedores Sub35 y el viaje a Silicon Valley
El martes recién pasado se realizo una distinta, pero mejor – ya les contaré por qué – reunión del First Tuesday, como siempre, en Concepción. Esta jornada fue un tanto especial, pues en ella se realizó una interesante actividad de coaching a emprendedores web llamada Sub35 - Innovadores se toman la red, organizado por la Fundación País Digital.
Diego Caro – Diario Concepción
La iniciativa de País Digital pretende llevar a una serie de emprededores de todo Chile a Silicon Valley, seleccionando lo mejor de la nación en distintas ciudades: Concepción, Temuco, Valparaíso, La Serena, Valdivia, Antofagasta y Santiago.
En la reunión participaron alrededor de 15 proyectos, cinco de los cuales fueron seleccionados para participar en la gran final en Diciembre de este mismo año en la ciudad de Santiago.
De los proyectos seleccionados para la gran final destaco Blog y Birras, liderado por Felipe Cerda ( y en el que también participo junto a Tito Agurto) y Lince.cl, presentado por Fernando Ruiz y Joo Anfossi, y obviamente a mi proyecto sobre Análisis de sentimientos en Twitter (ya dedicaré otro post a eso).
Más información en Sub35.cl, PaisDigital.org y AndesOne.
… así que en Diciembre estaré twitteando desde San Francisco
…
26
May 09
First report for MPTT on WordPress
This post is a report about my proposal “Implementing MPTT technique for store hierarchical data” on WordPress, at the Google Summer of Code program. If you don’t know the MPTT algorithm, you can read this article.
The plan for this proposal is understand the actual way for get tree data in categories and make the modifications for get/store the tree data. Later, when all has been ready for categories, add the code for pages.
My deliverable will be a plugin with a new Walker class that use MPTT algorithm, some functions for get data from the database, and a few modifications to the core, for attach the plugin functions.
In the last days, I read the code where WordPress has been using the actual way for get/store the tree data. For get that information, I used the phpdoc page of WordPress.
The main class for get tree data is called “Walker“. It have some subclasses that extend the function of Walker class, getting the html code for list categories, pages, etc…:
- Walker_Category
- Walker_CategoryDropdown
- Walker_Comment
- Walker_Page
- Walker_PageDropdown
- Walker_Category_Checklist
But, these classes don’t get the data directly from the database. The way for get that data it’s calling the function get_terms (it’s was defined on the line 605, in the file /wp-includes/taxonomy.php) from another functions. These functions are (each function use a subclass of Walker class):
- walk_category_tree()
- walk_category_dropdown_tree()
- walk_page_tree()
- walk_page_dropdown_tree()
- wp_list_comments()
- get_comment_pages_count()
Now, I have an small idea about the actual scenario for get tree data in WordPress, but for to implement the MPTT, I need to modify the database. I add two new columns y the table “wp_terms_taxonomy” called left and right. These colums are for store the data for get the tree with some sql queries.
I wrote a few lines for start my plugin. It have the original get_terms function with a little modifications for get a tree data using the MPTT algorithm.
Old query:
$query = “SELECT $select_this FROM $wpdb->terms AS t INNER JOIN $wpdb->term_taxonomy AS tt ON t.term_id = tt.term_id WHERE tt.taxonomy IN ($in_taxonomies) $where ORDER BY $orderby $order $limit”;
New query:
$subquery = “SELECT node . * , ( COUNT( parent.term_id ) -1) AS depth
FROM $wpdb->term_taxonomy AS node, $wpdb->term_taxonomy AS parent
WHERE node.left BETWEEN parent.left AND parent.right
GROUP BY node.term_id
ORDER BY node.left”;
$query = “SELECT $select_this FROM ($subquery) AS tt INNER JOIN $wpdb->terms AS t ON t.term_id = tt.term_id WHERE tt.taxonomy IN ($in_taxonomies) $where ORDER BY $orderby $order $limit”;
It’s works, but it need some modifications for get the tree data with options (get a sub-tree, show only when is a not empty tree, etc…).
The next step is make a new Walker class for print the tree data of categories.
Note: if my post have a mistake, just let me know for fix it
.
12
May 09
How to develop in WordPress using Netbeans
Easy, read configuring Netbeans project for WordPress and download the last beta of Netbeans 6.7
.
That’s all folks.
12
May 09
Cómo desarrollar en WordPress usando Netbeans
Fácil, leyendo configurando un proyecto Netbeans para WordPress y bajando la última beta de Netbeans 6.7
.
That’s all folks.
9
May 09
Felicidad
Así es, de artista ma las doy. Acá dejo un video que hice el año pasado usando iLife en un hackintosh Dell.
26
Abr 09
Programando para WordPress gracias a Google
Ésta fue LA gran semana del mes. Por fin se publicaron los resultados de las postulaciones al Google Summer of Code 2009 (GSoC2009 para los amigos). Lo mejor de todo es que ahora tendré un verano invierno de código en mi querido WordPress.
Pero, ¿qué es Google Summer of Code?.
Google Summer of Code es un programa de Google que pretende “devolver la mano” a diversos proyectos y organizaciones de software libre, pagando dinero a organizaciones y a estudiantes para que trabajen en un proyecto durante el verano (invierno para el hemisferio sur).
Este invierno (verano para los gringos) estaré codificando una técnica llamada Modified Preorder Tree Traversal (MPTT), que se utiliza para almacenar datos jerárquicos (ej: árboles de datos, XML, etc…) en bases de datos relacionales, en este caso, para MySQL en el proyecto WordPress (sí, el mismo de los blogs).
La técnica será implementada en el sistema de categorías y páginas, para mejorar el desempeño al agregar, mostrar y editar la jerarquía de las mismas en blogs que posean muchas categorías o páginas. La implementación actual solo almacena un vínculo a la categoría ancestra (padre), lo que se convierte finalmente en infinitas recursiones para poder extraer la jerarquía.
Espero en el futuro seguir escribiendo sobre mi trabajo en WordPress tanto en español, como en inglés.












