May 13th, 2008
Lucy In the Sky with Diamonds
No Comments Tags: beatles, music, video
May 13th, 2008
Como podrán ver (excepto los que leen feeds solamente) hay un nuevo diseño en este blog. Ya era tiempo, despues de casi 2 años sin hacer cambios, de hacer alguna modificación, aunque solo sea en lo gráfico.

El nuevo template está basado, aunque no es igual, en el template usado en el blog de delicious, antes que alguno lo diga, y aún es un trabajo en proceso, por lo que seguiré haciendo ajustes en los próximos días.
Espero les guste, y si no es así pueden dejar comentarios (Si les gusta también)
Agradezco nuevamente Diego Lafuente (minid) por su template I HAEV STYLE que dio vida a este blog en los pasados 2 años.
3 Comments Tags: blog, diseño
April 3rd, 2008
So what’s the problem? It’s simple: software is complex. Now that’s not just a bit tricky, like sodoku say; it’s seriously complex
Visual Tools: Marketing Dream, Programmer’s Nightmare
No Comments Tags: programación, software
March 24th, 2008
Visto en Webprendedor
No Comments Tags: needish, santiago, startup, web, webprendor
March 17th, 2008
Hace unos días empecé a construir un “componente” para conectar CakePHP con el API de Twitter. Tengo lista una primera versión (alpha) con algunas de las funcionalidades implementadas. Todavia quedan cosas por mejorar, como el manejo automático de errores, pero más de vale Release Early, Release Often
[1], que echar a dormir el código.
Pueden descargarlo desde aqui: cakephp_twitter-v0.1alpha.zip (4Kb)
La forma de uso es la siguiente. Si lo queremos usar desde un controlador:
var $uses = array("Twitter");
Y en la acción correspondiente:
$this->Twitter->metodo([parámetros], [autenticación]);
Si quisieran usarlo desde un modelo, lo mejor sería hacer:
App::import('model','Twitter');
$twitter = new Twitter();
$twitter->metodo([parámetros], [autenticación]);
No todos los métodos que el API soporta están implementados, en Twitter::$_methods pueden ver los que se implementaron, sus parametros y los valores por defecto. Los parámetros están definidos con los mismos nombre que en el API de Twitter
El parámetro parámetros, es un array con los parametros necesarios para la invocación.
El parámetro autenticación solo es necesario en los casos en que el método lo requiera. En la definición de cada método hay un atributo authentication que indica si es requerida. Este parametro es un array(’user’ => $user, ‘pass’ => $password), pero para mayor facilidad pueden construirlo usando cualquiera de los siguientes dos métodos:
Twitter::createAuthentication($user, $password)Twitter::setAuthentication($user, $password)
// Get the public timeline
$response = $this->Twitter->getPublicTimeline();
// Update an user status
$this->Twitter->setAuthentication($user, $pass);
$response = $this->Twitter->updateStatus(
array("status"=>"My new Status")
);
// Create a friend
$response = $this->Twitter->createFriend(
array(
"id"=>"newfriend"
),
$this->Twitter->createAuthentication(
$user,
$pass
)
);
Actualización: Está probado con la versión más reciente de CakePHP (1.2.0.6589) y en PHP 5, probablemente en PHP 4 no funciona porque usa json_decode (no incluido)
No Comments Tags: api, cakephp, php, twitter
March 17th, 2008
En este tiempo de API’s, extensibilidad y otros, resulta util poder disponer de una forma fácil de devolver información en un formato diferente al tradicional HTML. Por suerte con CakePHP hacer esto es muy facil.
Lo que les dejo es una forma de generar, automáticamente, respuestas en formato JSON, utiles para el desarrollo de aplicaciones AJAX, pero es facilmente modificable para considerar otros formatos de respuesta. Los pasos son los siguientes:
Router::parseExtensions('json');
Crear un layout para todas las peticiones en formato JSON: (views/layout/json/default.ctp)
< ?php
header("Pragma: no-cache");
header("Cache-Control: no-store, no-cache, max-age=0, must-revalidate");
header('Content-Type: text/x-json');
header("X-JSON: ".$content_for_layout);
echo $content_for_layout;
?>
< ?php
echo $javascript->object($this->viewVars);
?>
function afterFilter(){
if ($this->params['url']['ext']=='json'){
$_view = ROOT . DS . APP_DIR . DS . "views" . DS . "common" . DS . "json.ctp";
Configure::write("debug",0);
$this->autoRender=false;
$this->render(null,"default",$_view);
}
}
Hecho esto todas las peticiones que sean .json automáticamente serán devueltas como json, con todos los datos que se hayan pasado a la vista a traves de Controller::set();
Espero le sea de utilidad a alguien más, comentarios se aceptan.
6 Comments Tags: ajax, api, cakephp, json, programación
February 18th, 2008
Mariano Iglesias, miembro del core de CakePHP, acaba de anunciar un CakeFest a realizarse en Argentina sobre fin de año. Todavía falta bastante, pero vale la pena ir tomandolo en consideración. Puede ver más sobre el evento en http://es.cakefest.org
1 Comment Tags: cakefest, cakephp, php, programación
January 30th, 2008
Lo que nos faltaba. Microsoft lanzó un nuevo producto, experimental, llamado Volta. ¿Qué es esto?
The Volta technology preview is a developer toolset that enables you to build multi-tier web applications by applying familiar techniques and patterns. First, design and build your application as a .NET client application, then assign the portions of the application to run on the server and the client tiers late in the development process. The compiler creates cross-browser JavaScript for the client tier, web services for the server tier, and communication, serialization, synchronization, security, and other boilerplate code to tie the tiers together.
O sea, similar al GWT y otros frameworks parecidos, en mi opinión totalmente erróneos en su enfoque. Es como si para operar a un paciente del corazón un odontólogo hiciera una intervención bucal y luego un robot se encargara de transformarla. Creo que no funciona así la cosa.
The code was purely written in .NET, yet we achieved complete AJAX functionality without writing a single line of JavaScript code introducing typical ContentProxy kind of things. http://dotnetslackers.com/articles/aspnet/BuildingAVoltaControlAFlickrWidget.aspx
Y parecería que eso es bueno…mmmmm!
Algunos dirán que de ese modo se habilita a programadores sin conocimiento de javascript e interfaces de usuario (UI) a hacer “cosas bonitas, con ajax, y todo eso tan de moda” sin embargo lo que se logra, es obtener productos mediocres, donde aspectos claves de las UI no son tomados en cuenta, mitad por desconocimiento y mitad porque las herramientas suelen no ser perfectas.
Como sugerencia, si alguien quiere programar interfaces de usuario, lo mejor es leer buenos libros, manuales, sitios web, etc., y meter las manos, mojarse, ensuciarse, conocer Javascript básico y avanzado, librerías, Flash, Flex, y todo lo que pueda que esté relacionado. De otro modo el resultado puede llegar a ser…mmmmmm!
1 Comment Tags: "generación de codigo", .net, interfaces, javascript, usuario
January 16th, 2008
Eso…Sun compra MySQL y Sun compra MySQL. De acuerdo a lo que se ha publicado sería por un monto de 1000 millones de dolares, 800 cash y 200 en acciones. El anuncio oficial en Sun Microsystems Announces Agreement to Acquire MySQL, Developer of the World’s Most Popular Open Source Database
No Comments Tags: compra, mysql, sun
January 14th, 2008
Para los que tienen la (buena|mala) suerte de tener que programar en Java un artículo que recuerda como hacer una igualdad de Strings en ese lenguaje.
En resumen, para que no se molesten en leer el artículo, el mejor método sería:
"Value".equals(stringValue)
Además, aprovecho el tema y pregunto, ¿Alguien programa en Java más allá de su trabajo? (o sea, por el gusto de hacerlo)
3 Comments Tags: java, programación
Mi nombre es Pablo Viojo y tengo 26 años. Nací en el Uruguay el 7 de agosto de 1981. Actualmente vivo en Santiago, Chile
Aparte de esto me interesa todo lo que tenga que ver con Internet y las nuevas tecnologías. Más info aquí, o en formato FOAF