Muchos ubicarán el término, pero ¿Qué es realmente un “avatar”?
En sus origenes un avatar se define como[1]:
En el marco del hinduismo, un avatar es la encarnación terrestre de un dios, en particular Vishnú.Se dice por ejemplo que el dios Krishna es el octavo avatar de Vishnú. El término sánscrito अवतार avatāra significa el que desciende
; proviene de avatarati.
La palabra también se utiliza para referirse a encarnaciones de Dios o a maestros muy influyentes de otras religiones apartes del hinduismo, especialmente a los adherentes a tradiciones dhármicas cuando tratan de explicar a personajes como Cristo.
El castellano ha tomado (a través del francés) la palabra sánscrita avatar (pluralizada como en español: “avatares”) con el significado de “fases”, “vicisitudes” o “cambios”.
Por otra parte, en ambientes más tecnológicos, a los que estamos más acostumbrados, un avatar es utilizado del siguiente modo[2]:

Actualmente, en las nuevas tecnologías y en Internet se asocia la palabra avatar con la representación gráfica (mediante un dibujo o una fotografía) de una persona para su identificación. Algunas tecnologías permiten también el uso de avatares en tres dimensiones.
Interesante…
Referencias
Tags: avatar, history, internet, mithology, web
Un recuerdo para los amigos argentinos 
Tags: flickr, lego, pictures
Estoy a la busqueda de un iPhone, no es que se me hay perdido sino que quiero comprar uno! Si alguien no tiene idea de lo que hablo (!#@!#?) es eso que se ve en la foto de más abajo, un dispositivo para navegar por internet, escuchar música, ver fotos, videos, guardar contactos y hasta hablar por teléfono.
Tags: iphone, needish
Helperman, el superhéroe más increíble jamás visto ya está recorriendo las calles de Santiago. Si tienes suerte lo podrás ver en el metro, en la micro, en la calle o algún otro lugar surrealista de Santiago
¿Quieres saber mas? Puedes leer, Helperman ya está en las calles
Tags: needish
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.
Tags: blog, diseño
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
Tags: programación, software
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)
Documentación (:P)
La forma de uso es la siguiente. Si lo queremos usar desde un controlador:
1
| var $uses = array("Twitter"); |
Y en la acción correspondiente:
1
| $this->Twitter->metodo([parámetros], [autenticación]); |
Si quisieran usarlo desde un modelo, lo mejor sería hacer:
1
2
3
| 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)
Ejemplos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| // 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)
Tags: api, cakephp, php, twitter
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:
- Hacer que CakePHP considere la extensión json y la maneje adecuadamente: (config/routes.php)
1
| Router::parseExtensions('json'); |
Crear un layout para todas las peticiones en formato JSON: (views/layout/json/default.ctp)
1
2
3
4
5
6
7
8
| < ?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;
?> |
- Crear una vista para todas las respuestas en formato JSON: (views/common/json.ctp)
1
2
3
| < ?php
echo $javascript->object($this->viewVars);
?> |
- De modo de no tener que definir en cada acción la vista que se debe utilizar podemos modificar AppController: (app_controller.php)
1
2
3
4
5
6
7
8
9
10
| 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.
Tags: ajax, api, cakephp, json, programación