sábado, 29 de noviembre de 2008

Chinese Democracy



01. Chinese Democracy
02. Shackler’s Revenge
03. Better
04. Street Of Dreams
05. If The World
06. There Was A Time
07. Catcher N’ The Rye
08. Scraped
09. Riad N’ The Bedouins
10. Sorry
11. I.R.S.
12. Madagascar
13. This I Love
14. Prostitute

Muy bueno en general, se puede notar en cada nota que es mas que un ejercicio de musica comercial, ademas de eso jeje no puedo parar de escuchar "This I love..", es una cancion extraordinaria, fuera de toda norma.


Saludos
Rodolfo B.

domingo, 23 de noviembre de 2008

To Zanarkand







To Zanakard .. Final Fantasy X - Piano Collections
(Nobuo Uematsu) (2 de 4)




Suerte

martes, 16 de septiembre de 2008

Trabajando en Casa


Llevo alrededor de un mes trabajando en casa... quizas un poco menos, siempre quise trabajar asi, lejos de todo, recuerdo hace años lo planteamos, pero era mucho mas complicado por que el entorno era critico..(que no es sinonimo de complejo)

Admito de manera casi culpable, que me es muy grato trabajar aca en casa, sobre todo por que evito los incomodos y laaargos viajes,ademas tengo menos interrupciones y me puedo concetrar mucho mas.

La rutina mas menos es esta :

9:00AM caliento agua para tener Té durante el dia (termo).. solo para evitar tomar tanta Coca-Cola jejeje, a esta hora todos duermen o parten a sus respectivos trabajos, por lo cual esta muy silencioso

Prendo este pseudo-notebook(horrible resolucion) y me estaciono en un escritorio, para no sentirme del todo aislado veo quienes estan en UltraGestion, quienes no, radio (Futuro 88.9) y si esta muy mala la cosa, busco algun buen disco de preferencia algo que no conosca.

trabajo, en lo que tengo que trabajar, en lo hago o trato de hacer (que esta muy entretenido por cierto)

ya cerca de las 12:00PM - 13:00PM me digno a vestirme, casi como excusa para salir a respirar, almuerzo con mi padre, mi madre, mi abuela y alguno de mis hermanos, quienes siempre vienen y van

luego sigo y sigo y sigo (creanme que las horas pasan muy rapido) trato en lo posible avanzar, aprender, aunque sean cosas pequeñas.. esta primera estapa se ha tratado de estructuras, alambres puestos de tal manera que luego soporten un todo..


Detalles que he podido notar:


  • No se puede trabajar de 8AM a 4AM todos los santo dias, por mucho que te guste, terminaras odiando, y odiando a todos.


  • No tiene sentido engañarse trabajando de 10:00AM - 12:00AM, para decir "luego me las arreglo", porque eso una gran mentira.


  • Es necesario estar descansado para poder avanzar.


  • Aislarte mucho, si no eres experto, no es solucion de nada (y hoy no soy experto en mapas, dios sabe que no) con suerte entiendo un 20%..(ironicamente la comunicacion resulta ser fundamental)


  • Por alguna razon me gusta mas la noche que el dia ... :) ... supongo que por el silencio..


Tengo reuniones periodicas martes y jueves de 12:00PM - 13:00PM, me sirven para entender el verdadero rumbo de este desarrollo, para ver a mis amigos y compañeros de trabajo, de paso para salir de aca y hacer ejercicios...

Fines de semana, desconectado total..almenos trato..

Suerte
Rodolfo B.

La danza de las hojas

heeee...!! este ordinario fragmento si es mio, imposible encontrarlo en otro lado :b

Lo escribi en otoño un dia gris muy nublado, estaba sentado, leyendo nisiquiera recuerdo que, cuando casi de la nada, las hojas del parque bustamantes volaban y volaban por todas partes...

Es muy simple y muy corto, pero.. me agrada... :)




Suerte
Rodolfo B.

miércoles, 27 de agosto de 2008

Foro de Arquitectos Microsoft



Hoy fui a un foro de arquitectos en Microsoft,, pese a no ser un gran aporte, me gane un libro Introducing Microsoft Silverlight 2 asi que estoy contento :)... jeje nunca me gano nada jeje

Dentro de lo rescatable (que deverdad fue poco) mencionaron que el termino RIA como tal, fue introducido por Macromedia (hoy Adobe) por el año 2002, de la mano de la suite MX (no tenia idea)...

Suerte



...

jueves, 17 de julio de 2008

Noriyuki Asakura

Esto es del dia anterior a caer enfermo... hoy ando con mas animo...
ojala ya mañana despierte bien..

Dura menos de dos minutos, la version original es para guitarra, es una melodia japonesa, no tengo idea de como se llama pero pertenece a (Noriyuki Asakura)

pese a ser algo nostalgica trato de imaginarla como una tarde tranquila y agradable.... de esas en las que no hay mucho que hacer...

PD: Esta fuerte el volumen jeje, asi que cuidado con eso..

Franz Kafka - La Metamorfosis



Gregorio Samsa, al despertar una mañana tras un sueño intranquilo, se encontro en su cama convertido en un monstruoso insecto. se hallaba echado sobre el duro caparazon de su espalda, y , al levantar un poco la cabeza, observo la figura convexa de su vientre oscuro, surcado por curvadas callosidades, cuya prominencia apenas podia sostener la colcha que estaba visiblemente apunto de deslizarse hasta el suelo. Innumerables patas, lamentablemente escualidas en comparacion con el grosor ordinario de sus piernas, se 
agitaban sin concierto.


¿ Que me ha sucedido ?



Que manera de empezar un libro (existencialismo) .. bueno, bueno

Actualizando esta cosa... PUREMVC

En informatica estoy viendo algo llamado PureMVC, es un framework MVC Open Source que tiene la "ventaja" de ser muy fiel a la definicion del patron de diseño , cada modulo se accede atravez de otro patron (facade pattern) o fachada lo que ya es bastante "conservador" para este tipo de arquitectura, es facil observar y distingir las diferentes responsabilidades con tan solo mirar codigo...

el Framework, esta disponible para una variada cantidad de lenguajes de programacion..yo lo utilizo para ActionScript, especificamente para estructurar aplicaciones Flex .., he aplicado ademas lo poco y nada que he tratado ExtJS, mi idea es evitar en lo posible los famosos MXML para tener asi una aplicacion mucho mas limpia... Esta quedando decente, muy estructurado, por la naturaleza de Flex jeje lleno de efectos, colores y ese tipo de cosas que tanto vende... algun dia de seguro podria servir

Puede parecer un tanto complejo al principio, sobredimencionado para cosas pequeñas, pero es muy directo cuando se entiende.

Por la parte de servicios, leo MS$ WCF (para la generacion de servicios RestFul) , asi que me me he entretenido un monton... por las mias...

Ahora ultimo tb he retomado Orbited quienes han sacado una version nueva 0.5.5, no tiene mucha documentacion, pero el tipo promete comunicacion Socket utilizando el servicio (Orbited) como intermedio, entonces uno podria crear su propio protocolo o utilizar alguno conocido ..y listo...el ejemplo insignia es claro IRC via HTML

Suena sencillo jeje pero tiene un monton de variantes, ya me dio problemas la comunicacion XHR en IE7...

Orbited 0.5.5 es retro-compatible con la arquitectura antigua 0.3.2 para el humilde usuario (osea yo), solo basta con un par de cambios en la llamada del API de Javascript (esta ultima, ahora parece mas robusta) ...



pureMVC


Suerte :)

domingo, 1 de junio de 2008

Tocando en el antiguo Piano.

y sigo escapando ...desde un momento hasta ahora todo lo que hago es moverme, arrancar de un lado a otro, almenos mi casa es un tanto mas comoda y me repone fisica y mentalmente.

Esto es ""tocar "" en un piano del anio 1, humedo, desafinado, con dos cuerdas de menos, con algo de resaca y el cabello ahun con olor a cigarros.. odio este maldito olor.

- Godfather
- Patience solo
- November rain solo
- Imagine (horrible)
- November rain ending (+ horrible jeje)



Sigo buscando un buen profesor o profesora....

Suerte

sábado, 17 de mayo de 2008

Yahoo!...

Con tanta cosa dando vuelta en desarrollo Web, no estan demas algunos consejos o reglas bastantes practicas...

Yahoo!'s - Exceptional Performance

tb esta los patrones de disenio que ellos utilizan, ademas de alguna consejos de seguridad.

Yahoo!'s - Design Pattern Library

Yahoo!'s - Security Best Practices





.

Orbited scaling comet applications

Comenze a utilizar Comet, realizando el modulo que despliegas las "Alarmas".jeje enrealidad he estado haciendo un montón de pruebas... (el hola mundo mas básico es un chat jejeje.) Pero ayer viernes, algo ya estaba integrado y funcionando con UltraGPS.

Me estoy apoyando por Orbited 0.3, un servicio o demonio Open Source, escrito en Python que implementa un protocolo extremadamente sencillo (de hecho es quien hace todo el trabajo)

En principio funciona todo Ok, Aunque aun me preocupa un poco la concurrencia y la estabilidad del servicio (de los servicios) bajo tensión. En teoría debe aguantar.

Ahora, me falta optimizar el transporte... estoy utilizando el mas básico (IFrame- "Forever Frame").. Pero es claro que podría mejorar este aspecto según Browser (IE - Gecko - WebKit) HTMLFile, MultiPart XHR, XHR streaming, XHR long polling,

Ha grandes rasgos esto funciona así:

1. Browser (IE - Gecko - WebKit) crea un canal de comunicación con demonio Orbited indicando "identificador del canal", el transporte (por ejemplo Iframe) y la función que realiza ante el impredecible evento.

La version 0.4 promete una API para javascript completa, de modo resulte sencillo realizar la conexión (los distintos tipos de conexiones) y el control sobre las mismas

2. Informar de eventos y recipientes (identificador del canal) a demonio Orbited (desde un servicio Win32 C#, desde Python, quizás desde un motor de datos ..etc..)

Orbit/1.0\r\n
Action: Event\r\n
Id: 45\r\n

Recipient: (michael, 123, /event)\r\n
Recipient: (jacob, 543, /event)\r\n

Length: 10\r\n
\r\n
event text

normalmente el evento resulta ser un objeto codificado en JSON, ademas el protocolo soporta N recipientes para un mismo evento.. en este caso el recipiente es un usuario y la instancia de ese mismo usuario... ejemplo rbarriga logeado en 3 navegadores, son tres canales de comunicacion distintos.


3. Orbited envia el evento a los diferentes Recipientes de manera concurrente. es decir envia en un mismo tiempo un evento a todos los Browser involucrados atravez del transporte correspondiente (indicado previamente - Paso 1)


www.orbited.org

Suerte

domingo, 11 de mayo de 2008

Intruseando COMET

Creo estar soltando un poco las manos con ExtJS, ya no me son tan extrañas las líneas de código, las entiendo sin tener que pensar mucho, lo que es bueno...

Estas semanas, he estado trabajando en algo llamado alarmas.. para mi suerte estas cuentan con una variante técnica muy interesante y muy entretenida COMET.. algo que recién comenzare a ver.

Cuando una piensa en desarrollo Web y el como este ha evolucionado o el camino que ha tomado durante estos años, es fácil identificar hitos importantes, hechos muy claros que han marcado diferencias

AJAX (Asynchronous JavaScript And XML) es uno de esos hitos, pese a todo el trasfondo técnico y la implicancia del mismo, lo que impresiona es el notar como ha logrado en el ultimo tiempo convertir la interacción hombre maquina de millones y millones de usuarios.

Ahora existe otro termino que se esta volviendo popular COMET, la idea en principio es sencilla, tener una conexión abierta, persistente con el servidor de manera que no sea el cliente quien haga una petición sino que el servidor informe al cliente cuando algún evento (incierto como son los eventos jeje) suceda.

Solo con esa vaga definición, uno se puede imaginar un sin fin de cosas entretenidas que se podrían realizar, sistemas de monitoreos (como alarmas), indicadores, mensajeria .. etc..

dejo alguno vínculos..

cometdaily

Open Source (Python Server)
orbited


Comercial
lightstreamer

Hello world Java

Hello world .Net


Suerte

jueves, 1 de mayo de 2008

+ Piano

1ero de Mayo, dia del trabajador y mas aburrido que nunca,
Asi que mas Piano, esto deberia sonar un poco mejor (en calidad de sonido, no de interpretacion) ya que esta grabado con linea directa y no con microfono ambiente..(ninguna ciencia).

Me falta un buen software, algo para editar, quitar bajos, saturaciones. y ese tipo de alquimia, asi poder eliminar jaja cada destiempo y todos mis inumerables e impresentables errores jejeje...

Detodas formas me da igual, total ya tengo una admiradora, mi tia abuela una gran mujer ,que a sus ya 87 años puede estar toda una tarde escuchandome..
y yo me pregunto como diablos no se aburre y arranca jaja

- James Horner / BraveHeart - A Gift Of A Thistle
- James Horner / Legend of the Fall
- Joe Satriani / Tears in the Rain.







Suerte

domingo, 27 de abril de 2008

Design Patterns : Elements of Reusable Object-Oriented Software



"Designing object-oriented software is hard, and designing reusable object-oriented software is even harder. You must find pertinent objects, factor them into classes at the right granularity, define class interfaces and inheritance hierarchies, and establish key relationships among them. Your design should be specific to the problem at hand but also general enough to address future problems and requirements. You also want to avoid redesign, or at least minimize it. Experienced object-oriented designers will tell you that a reusable and flexible design is difficult if not impossible to get "right" the first time. Before a design is finished, they usually try to reuse it several times, modifying it each time."

Dr Erich Gamma.

Para comprender esto, definitivamente hay tener sucias las manos, en informática vivimos en un país lleno de ingenieros de cartón y bonita corbata...

Recomiendo este libro (que es muy conocido por cierto)

Suerte...

jueves, 24 de abril de 2008

ExtJs, Segundo Acercamiento

Hoy despues de aprox tres semanas termine los mantenedores jeje no es que me motive tanto un mantenedor,jaja no nada de eso, mi proposito era entender el como se estructura una aplicación ExtJS de manera que sea formal, ojala robusta., al mismo tiempo entender como trabaja ultraGPS (la inteligencia detrás de la técnica)

Mis dos ideas básicas, quedaron encapsuladas en dos componentes
mantainerBase.js, RelationTreePanel.js... solo con estos dos conceptos, que es lo ""único"" que enrealidad he hecho jejejeje, podría construir a grandes rasgos y dentro del contexto, la cantidad de mantenedores que fuese necesario, sin un mayor esfuerzo, extendiendo para aquellos casos muy particulares, excepciones , variantes.

incluso me atrevo a decir que con un poco mas de tiempo, podría haber dejado absolutamente genérica esta ""solución"", pensado en sistemas con infinidades de tablas y relaciones (que no es el caso)

Mi conclusión, de este segundo acercamiento, es que es muy fácil extender, estructurar una componente o un conjunto de componentes que interactuan entre si, juntando y jugando con pequeñas partes, se pueden contruir cosas mas acabadas.

ahora, lo que acabo de mencionar es muy abstracto, ""de alto nivel"", tb creo que existe una visión muchos mas física y poderosa que habla por ejemplo acerca del buen manejo que tiene este ""framework"" sobre DOM (Document Object Model), justamente ese tipo de cosas, son las quisiera observar, pues de esta manera podría manejar la base y quizás realmente construir, si es que amerita, piezas totalmente originales.

vamos a ver si es que tengo el tiempo.


Suerte

jueves, 17 de abril de 2008

Moonlight Sonata

Esta la version mas pauperrima jaja que alguna vez escucharan de claro de Luna...Antes de ir a dormir, comiendo galletas..

Video



De vez en cuando vuelvo a la musica.. de hecho estoy creando algo mio que trata acerca de la vision que tengo acerca de la vida, el como nos movemos entre la alegria y la tristeza, si me doy el tiempo lo comparto, aunque solo tengo una idea

viernes, 11 de abril de 2008

Piano

Como no todo es tecnologia jeje, no muy por el contrario.

creo que voy a subir algunos temas de piano que estoy tratando de interpretar (es decir tocarlos a mi manera), aproveche hoy que me quede en casa algo enfermo,..

los temas pertencen a un compositor japones llamado Noriyuki Asakura..
la verdad es que son temas ""simples""pero muy bonitos..

son varios pero estos son los que ma me gustan

- Her Most Beautiful Smile
- Departure
- Demise


video

jueves, 3 de abril de 2008

Windows XP SP3

Nunca fui un arduo retractor de Microsoft, es muy comodo, facil criticar a alguien cuando esta demasiado expuesto, ademas nunca me gustaron los criticos anonimos, aquellos que alparecer odian todo.

Existen verdades, una de ellas es que nos guste o no, para bien o para mal, el mundo hoy se rige por lo que la multimillonaria empresa dicta..

Paso 8 horas diarias, conversando con Visual Studio, yo le cuento mis ideas y el me dice "veremos", jeje (ese mi trabajo) simplificado por el infinito...

Entonces como con eso no me basto jaja hoy tuve que instalar Windows XP/VS2008 una vez mas, pero en mi OSX virtualizado (Parallels Desktop)... tiembla procesador

lo curioso es que me consegui un Windows XP bastante particular jejejeje
(vamos a ver que tal)

domingo, 30 de marzo de 2008

Validar - Cedula de Identidad Chilena (RUT)

En el año 2002 tuve la voluntad jaja de ayudar a un alguien con una pequeña función (microcodigo) que lo único que hacia, era validar la CI Chilena (RUT)...

El tema es que se volvió muy popular y desde ese entonces, de vez en cuando me llegan correos de personas anónima (supongo que de gente que esta estudiando o comenzando) consultando acerca del mismo.

En principio es muy sencillo, Pero como en aquellos tiempos tenia practicas peores de la que hoy tengo, resulta que me avergüenza un tanto jejeje.

Desde ese punto de vista, claro que puede resultar un poco confuzo para quien lo lee.

""Este es el post original""
http://www.programacion.net/foros/5/msg/13012/ (Buenos tiempos)


El Algoritmo....

Esta es la clave, si alguien entiende que el dígito verificador de nuestra cédula de identidad obedece a una formula matematica muy sencilla, lo puede implementar como sea y en lo que se le de la gana.

Mi rut (12166027-K) ....


1._ Voy a tomar la primera parte de mi cédula, cada dígito partiendo desde el ultimo, lo voy a multiplicar por el valor de una lista que avanzara y se repite del [2-7]

2._ Luego hago la diferencia entre: 11 y el (modulo 11 del valor resultante)


* Existen diferentes formas de sacar el modulo, sin embargo no creo que exista un lenguaje de programación que no tenga implementado el modulo, así que no tiene mucho sentido calcularlo con sumas y restas jeje

La regla dice que si el resultado esta entre 1-9, ese el dígito verificador,
si es 11 el dígito verificador es 0
si es 10 el dígito verificador es K





Entonces

Resolviendo para ASP.Net (Webforms), validación personalizada tanto en el cliente (JavaScript) como en el servidor (C#) seria algo así .....





function validar_rut(source, arguments){                                                

    var cedula = arguments.Value; 
    var dv = cedula
        .charAt(cedula.length-1)
        .toUpperCase();
         
    var total = 0; 
    var mul = 2;

    for (i=cedula.length-3; i>=0 ; i--){
        total = total + parseInt(cedula.charAt(i)) * mul;
        mul = mul==7 ? 2 : mul+1;
    };

    var rDv = (11 - total % 11);
    rDv = rDv == 10 ? 'K' : rDv;
    rDv = rDv == 11 ? '0' : rDv;
    arguments.IsValid = (dv == rDv);

};

Cedula Identidad
<asp:CustomValidator    
    ID="cv_cedula_identidad" 
    runat="server" 
    ErrorMessage="Cedula no identidad no valida" 
    ClientValidationFunction="validar_rut" 
    ControlToValidate="txt_cedula_identidad" />                
<br />
<asp:TextBox    ID="txt_cedula_identidad" 
                runat="server" />
<br />
<br />
<asp:Button ID="btn_submit" 
            runat="server" 
            Text="Submit" 
            onclick="btn_submit_Click" />
<br />
<br />    


Suerte

jueves, 20 de marzo de 2008

Mi primer ExtJS

Siguiendo con la "exploración", cree mi primer modulo (micromodulo jeje) para UltraGPS (www.ultragps.com) y de paso mi primer acercamiento a un RIA ( Rich Internet Application ) todo bajo ExtJS, apoyado por .Net y Hibernate ....

Un mantenedor de una relación (n-m)...., quedo rebueno.., muy simple

Ademas desde hoy, soy un fanático de la persistencia de datos, es un cambio de enfoque, de concepto muy útil.



voy a seguir con los mantenedores ... cada vez entiendo mas, el fondo ;)

lunes, 10 de marzo de 2008

IIS7 - MS$ Ajax Extension - JS Error "Sys undefined"

Esta semana me toco observar de cerca Windows 2008, la verdad es que no me detuve en las ya tan renombradas nuevas funcionalidades del sistema operativo, pero si pude jugar un rato con la nueva interfaz de IIS7.0..

no voy a hacer un review de IIS 7.0 ya que el manejo de servidores no es mi area jeje todas las bondades que alparecer son varias se puden leer en:

http://msdn.microsoft.com/msdnmag/issues/07/03/IIS7/Default.aspx?loc=es

mas que todas estas virtudes quiero enfocarme en un problema que me significo algun ligero dolor de cabeza.

Mi tarea era sencilla, El GIS - Ultramap (www.ultramap.cl) comercialmente tiene que funcionar si o si en el nuevo servidor de Microsoft.. publicidad gratis y ese tipo de cosas.

y que mejor que el recién llegado jejeje, aquel que debe interiorizarce en arquitectura,

En principio no parecia complicado (aplicación .Net, un conjunto acotado de dependencias y una base de datos Postgres que no era muy grande) nisiquiera tenia que compilar, ni nada parecido ya que moveria producción a este ambiente de pruebas

hasta ahi era todo claro, hasta que partio IIS7,

Error javascript "sys is undefined" y un signo de interrogacion enorme, ya que mas que mal movia un sitio que no era mio y por ende podia tener mas de alguna maña...

finalmente cree un ambiente en mi equipo IIS6 para reproducir el error y nada todo limpio ...., nada de archivos ofuscados que pudiesen ocultar algo o dependecias extrañas, el problema estaba en el nuevo servidor.

Resumen, después de darle un par de vueltas IIS7.0 tiene algún especie de conflicto entre la extencion de Ajax para el Framework 2.0... La solución es muy sencilla, pero no tan fácil de encontrar

http://geekswithblogs.net/lorint/archive/2007/03/28/110161.aspx

Suerte

martes, 4 de marzo de 2008

UltraGestion - Trabajo Nuevo

Están han sido las dos primeras semanas de mi nuevo trabajo, la verdad es que todo lo nuevo siempre intimida un poco, pero ya creo entender a grandes rasgos de que trata este nuevo escenario.

Hace 4 años, cuando comencé a trabajar, tenia dos objetivos, ideales claros para mi

- Aprender, cuanto pudiese aprender.

- Aportar, poder ayudar de alguna u otra manera con lo poco y nada que un informático maneja.

Durante los 4 años que trabaje para el negocio del Turismo , tuve la oportunidad de crear, de llevar acabo alguna de mis ideas, muchas de ellas inquietudes de Universidad. "Liviana Universidad"

Asi que agradezco, siempre voy a agradecer la instancia, la oportunidad, pero eso ya es pasado.

Entiendo que Ultragestion esta enfocada a la tecnología y por lo mismo siento que existe un respeto o almenos una vocación generalizada por la misma, algo que me agrada mucho.

Yo estoy en un área de mapas o GeoMap / GPS, con dos personas mas que alparecer son muy talentosas.

Lo interesante:

C# FrameWork 3.5 - LinQ - Lambda Expressions Trees
Castle Project / Monorail - MVC pattern
NHibernate
JavaScript / Prototype-based programming
ExtJS
PostgreSQL


y quien sabe alomejor pueda meter mano en:

Adobe Flex y MS$ Silverligh (WPF)....que tanto he postergado.