Bibliotecas de JavaScript/AJAX: en JavaScript o en el lenguaje nativo de la aplicación?


Creo que a todos los que han escrito más de 100 lineas de código para web estarán de acuerdo en que casi nunca es deseable escribir todo el código necesario para el funcionamiento, sino hacer un uso inteligente de bibliotecas para cada cosa que sea posible.

Centrándonos en la parte del cliente (lo que era normalmente la “V” del MVC) ahora resulta que gran parte del proceso de construcción de la interface ([G]UI) para usuario tiene que ver con un montón de programación que no solo tiene que ver con vista, sino con reglas de negocio, mandado y recepción de datos del servidor, entre otras cosas que terminan mezclando las 3 capas típicas que se crean en una aplicación Web.

Esta necesidad de riqueza de funcionalidad (RIA: rich internet applications) en lo que el navegador ofrece hacia el usuario ha resultado en un gran cambio de lo que conocemos como “páginas de internet”, para convertirse en una plataforma de aplicaciones que corre no solo sobre algo que no estaba preparado realmente para eso (el navegador), sino que también corre sobre lenguajes que nunca se pensó serían tan explotados cuando fueron creados (HTLM, CSS, JavaScript), y bueno, ahora pasamos de tener simples funciones que creaban dinamicidad en las páginas, a tener grandes sistemas de paquetes, que contienen desde cosas muy sencillas como modificar partes de una página (DOM) hasta las llamadas “widgets” que son pequeñas aplicaciones apilables en una o más paginas.

Obviamente, esto ha generado el nacimiento de un sin número de herramientas/bibliotecas para facilitar el proceso de creación de aplicaciones “web 2.0”, tenemos desde cosas básicas hasta paquetes con una inmensidad de funciones (scriptaculous, dojo, meteora, GWK, YUI, etc).

Entre las herramientas disponibles tenemos 2 arquitecturas diferentes, una es mantener todo el JavaScript (JS) empaquetado de tal manera que separemos el lenguaje de la aplicación del lado del server por completo del lenguaje del cliente (JS); la otra opción es mantener “escondido” todo el JS y que a través del lenguaje  servidor se cree de manera automática todo lo necesario para el cliente, de tal manera que el programador solo utiliza un lenguaje para la totalidad de la apliación, no tiene que tocar para nada JS.

GWT es el ejemplo perfecto de el segundo caso, todo se hace con Java, y de manera interna, sin que el programador llegue a escribir una sola linea de JS, se crea todo el código necesario para el cliente. La propuesta es muy interesante, pero el contra principal es que no hay manera de usar la biblioteca si no sabes Java, o si no lo quieres usar.

El otro lado de la moneda es más flexible, pero requiere no solo aprender con suficiente destreza tanto el lenguaje del lado del servidor (Java, PHP, Python, Perl, Ruby, etc), como aprender Javascript, DOM, y las tripas de la biblioteca que hayas decidido usar para AJAX/Efectos/Widgets. Y no solo esa desventaja tiene, frecuentemente hay serios problemas para mantener la separación de capas, en especial entre la V y la C, porque frecuentemente es más sencillo escribir código (HTML y JS), que será agregado al cliente, directamente en la capa de control, porque la opción de andar creando plantillas para cosas como un “<p>Los datos de $usuario han sido guardados</p>” pues nomas meten más confusión, y la separación de capas en vez de ayudar nos estorba, por otro lado, generar una función en JS que acepte un argumento ($usuarui) y cree el texto que será mostrado no solo es más lento, además es tonto.

De tal manera que tenemos 2 grandes opciones, con grandes limitantes cada una de ellas. Y además, respetando la separación de capas estilo MVC, el hecho de que el cliente necesita saber mucho tanto de vista como de control, genera necesariamente una mezcla de V y C que dificilmente puede ser corregida manteniendo la funcionalidad a menos que te vayas por la opción 1 que te obliga a sujetarte a la funcionalidad disponible en la librería.

La pregunta es cuál es la mejor opción ??, pues yo prefiero lidiar con JavaScript por separado, el lenguaje está hecho para modificar el DOM, y tiene su atractivo, no me agrada mucho la idea de usar cosas demasiado complicadas para “facilitarme” la vida, y por otro lado, el separar el código del servidor con el código que se ejecuta en el cliente, obtenemos mucha más flexibilidad, es más fácil agregar funciones en javascript que modificar el código de un “framework” para agregale nueva funcionalidad. Por otro lado, no haya nada equivalente a GWT para python, php o similares.

Y tu qué opinas ?



Tabla periódica de los Operadores de Perl


Esta es una de esas cosas con las que uno dice “demonios!!”, “holy crap!”, “porque no se me ocurrió? (como si no supiera la respuesta)”

Una bonita tabla de operadores de perl ordenada por varios criterios y representada como un lindo cuadro artístico.

periodic_perl



25 cosas de Linus


Las 25 cosas sobre Linus, muy gracioso, la frase del día

En su blog



Hordes of Chaos (2009) – Kreator


“Hordes of Chaos”, el más reciente disco de Kreator, fue un disco muy esperado, y en realidad como ya es costumbre, desde un par de meses antes de su lanzamiento ya estaba accesible en internet, y muchos como yo ya habíamos tenido oportunidad de escucharlo por un buen rato. Y les puedo decir que aun con el spoiler obligado de oirlo “antes de tiempo”, al menos yo no me decepcioné para nada al oirlo por primera vez.

Antes de irme a la reseña de cada canción quiero hacer unos comentarios generales, ya que después de haberlo escuchado no se cuantas veces, es más sencillo dar un panorama general que hace un par de meses que puse mis primeros comentarios.

El disco en general es muy bueno, comparandolo contra la actualidad del trash, la verdad es que yo lo pongo sobre los últimos discos de MetallicA, Megadeth, Sepultura, y Testament, de hecho en las últimas semanas me he puesto a revisar música de grupos de esta decada que hacen trash, y aunque he encontrado cosas buenas, nada realmente podría ponerlo al nivel de este disco.

La voz de Millie se siente algo cansada, eso es muy claro, incluso desde el disco anterior, creo que esto ya lo mencioné, pero le mete tantas ganas, y tanta energía a las rolas, que poco importa que su voz ya no sea la de antes. Por otro lado, en este disco hay varias rolas que meten coros, normalmente un coro hace a una rola mas fresona, sentimental, y es el caso, pero como las voces de los coros son “aguardentosas”, pues hasta chido se oye, al menos a mi si me gustan, agrega un poco de diversión a todos los cambios de ritmos que hacen.

Bueno, y después de mucha planeación, aqui pongo mi reseña cancion por cancion de este disco que definitivamente califico como el mejor de la década.

Hordes Of Chaos (A Necrologue For The Elite)

Esta canción inicia con un guitarreo muy agradable, después de unos segundos de preludio la batería pone un ritmo rápido que domina toda la canción.

La canción le dá título al disco y además enmarca el tema central del mismo, el descarado abuso contra el mundo que hacen los que tienen el poder para crear las guerras que vivimos actualmente.

En una frase hacia el final de la canción se resume la crítica de esta canción “El perfecto control de las masas de todos”, que claramente es la razón por la que se hacen todas las guerras, no solo aquellas entre naciones, sino incluso nuestra llamada “guerra contra el narco” en México.

Warcurse

Ya sin analogías, esta canción habla claramente de lo que sería una guerra mundial en el contexto actual, la canción es en todo tiempo agresiva, muy rápida pero a la vez rítmica, en casi todo el dísco la batería genera un ambiente muy agradable sobre los ritmos que hacen las cuerdas.

Escalation

Esta es una de las mejores canciones del disco, pero hay varias que califican así 🙂

Inicia con un ritmo estilo cabalgata, y todo el tiempo mantiene la emoción con cambios constantes de ritmo siempre muy animados y acelerados.

En general, creo, la canción habla de la represión constante de los gobiernos y los medios de comunicación, y (propone/desea) de la liberación de las masas contra ellos, por ello el “escalamiento”, por la supuesta toma de poder de los oprimidos.

Amok Run

Esta es definitivamente mi favorita del disco, está inspirada en un cuate de origen asiático que se soltó matando gente en su escuela (tengo que buscar la historia pq no la conozco muy bien).

La canción inicia con una especia de relato tranquilo de la razón por la que llegó hasta ahí (antes de lanzarse a la matazon), la verdad es que este cueate si tenía graves problemas, y por lo que se ve, su ambiente no le ayudó mucho a liberar la tensión adecuadamente y a encaminar sus energía en arreglar los problemas en vez de hacer algo tan tonto como matar gente para luego suicidarse.

La temática versa sobre la superioridad que siente el chamaco después de haber sido maltratado por la gente, ahora él tiene el control, la gente corre como despesperada para salvase de su furia, mientras el se desahoga y concluye su historia creyendo que muere dando un ejemplo, incluso se compara con Cristo (en la canción, creo que el chico real nunca lo hizo).

En esencia es una gran crítica a la manera en la que la sociedad devalua a las personas menos agraciadas y como estas han estado reaccionando de la peor manera ante la estupidez social.

La canción tiene unos ritmos muy buenos, hay que oirla porque es dificil de descibir, pero la compararía con canciones como One o Cementery Gates, es de esas rolas que dejan huella, es dificil no reconocerla oyendo un par de segundos de sus notas.

Destroy what destroys you

Esta cancion es todo un delirio, es muy rápida todo el tiempo, hasta los pequeños solos son casi demasiado acelerados, y la letra es todo el tiempo lanzada a gritos, hablando de que debemos atacar a quienes nos han atacado siempre como sociedad, que debemos recuperar nuestros sueños, aunque tengamos que obscurecer nuestra alma, porque es preferible a sucumbir cada vez hasta el fin de nuestros días. Algo así 🙂

No es una de mis favoritas, pero definitivamente es muy buena, menos armoniosa que otras en el disco, pero con todo el poder del trash más agresivo que se puede encontrar.

Radical Resistance

En la letra de esta canción se aborda el tema de las creencias principalmente religiosas que general la violencia mundial, y anima a que todos nos unamos para combatirlo, a liberarnos de las influencias que nos llevan a la autodestruccion.

Es uno de esos ejemplos en los que un coro de voces no le quita poder a una cancion, sino que al contrario le da una especie de ambientación al movimiento social que trata de proponer la rola.

Muy buena como todo el disco 🙂

Absolute Misantropy

Esta rola tiene guitarrasos muy chidos, varias de las canciones del disco tienen guitarrasos que recuerdan mucho (al menos a mi) a los sonidos del chelo, que por cierto adoro.

La letra versa sobre el odio por la sociedad (duh!), habla de alguien que se siente totalmente invadido por el odio y las ganas de hacer algo al respecto.

Los gritos de Millie suenan a la garganta de alguien que ya lleva mucho tiempo esforzando la voz, y no es más que la verdad, pero como dije al principio, hasta agradece uno que le heche tantas ganas, aún con su voz rasgada, no deja de cantar con la rabia adecuada y nunca desmerece su talento.

To the afterburn

De esta canción no se que pensar, porque habla en contra del cristianismo, y yo soy cristiano, la verdad no comprendo totalmente la intención de la letra, pero creo que se trata de los falsos líderes que la sociedad sigue, realmente nunca menciona el cristianismo, pero se entiende que principalmente habla de el porque menciona al crucificado, y pregunta si los que viviran despues de nuestra muerte lo adorarán.

La música es muy buena, y buena parte de la letra es cantanda en un coro que me gusta mucho como suena, y bueno, las guitarras, tanto en acorde, como los solos, son buenísimos.

Como comentario final sobre la letra, la verdad es que aún siendo cristiano, no puedo dejar de notar que mucha gente realmente no comprende lo que profesa, y la gran mayoría de las religiones cristianas están ahí para explotar a la gente, no para ayudarla a salvarse realmente.

Corpses of Liberty

Esta rola es corta e instrumental, realmente nada más es un puente entre 2 canciones, es muy tranquila, es como un outro pero en el medio de las útimas 2 canciones.

Demon Prince

El final esperado del disco, no es la mejor rola del disco, pero concluye muy bien tanto en ritmo como en letra.

Habla de que debemos de desobedecer al demonio opresor que tenemos en nuestro mundo actual, tiene una frase medio controversial, porque invita a desobedecer al “principe demonio”, y luego dice “por siempre, principe demonio”, lo cual parece contradiccion, pero realmente lo que al parecer quisieron expresar es que nunca vamos a vivir en un mundo limpio de opresión y maldad, por lo que debemos siempre luchar contra ello.

Tiene unos riffs muy padres, termina con un ritmo tranquilo en las guitarras mientras que millie grita con furia y la batería mantiene un ritmo bastante acelerado en comparación a las guitarras.



El colmo de la desverguenza


Hoy en mi camino al trabajo vi de lejos el encabezado de la página principal del diario de Morelos.

Está imparable el robo de autos
Diario de Morelos – 09 de febrero de 2009

Es realmente para llorar, pero que podemos esperar si el mismo hermano del gobernador fue detenido (cuando el gober estaba en campaña), y liberado en pocas horas (por su mismo hermano según dicen), por mantener un negocio con autos robados.

Que triste es ver que no tenemos por donde mejorar.

Bueno inicio de semana !



Eso me pasa por menso (Odio para HSBC)


Esta semana todo lo referente a hsbc es malo, no solo se les está cayendo el sistema en todo el mundo, sino que incluso tuve la mala fortuna de recibir una transferencia justo cuando esto empezó a pasar, y ha sido toda una semana de martirio para sacarles algo de información.

Primero salen con que tengo que esperar de 24 a 48 horas el martes, en vez de decirme, no tenemos sistema y todos los traspasos electrónicos van a fallar, vamos, de hecho no aceptaban cheques ni de ellos mismos (segun leí en twitter) y ni siquiera dolares !! (eso me lo dijo mi papá), lo cual no está mal, a todos nos pasan problemas, tenemos errores, etc, yo me dedico a sistemas hombre ! he cometido algunos errores bastante graves.

El gran problema es la falta de sinceridad y desentendimiento para con el cliente, gracias a su error, yo no tengo mi dinero, me están haciendo recargos (eso si no falla) y he hecho corajes toda la semana.

Ya hoy viernes de plano me lanzo a ver que me dicen en persona, los del telefono solo estan ahí para tratar de verte la cara e inventar excusas tontas para sus babosadas, pero cual es mi sorpresa !!, la mujer que me atiende en persona tiene incluso menos injerencia en los problemas del banco, y lo acepta !! “ellos no pueden hacer nada”, !!!! arrrgh

A final de cuentas, me puedo quejar:
Telefono de quejas de hsbc 57 21 34 66

Eso es todo lo que saco, no hay nadie que pueda ayudarme a resolver mi problema !!, que bonita es la globalización y los medios electrónicos no ?? en vez de mejorar las cosas las empeoran (donde les conviene).

Pues solo espero que esto se arregle, tener mi dinero, y cerrar la cuenta, a lo cual seguro me pondrán varias trabas, pero pues mejor pasar por la última pelea con ellos, a seguir pasando muchas más.



hoy está loco google


En mi primera búsqueda del día me encuentro con que google cree que la página de gtkpod es maligna, pero no es realmente eso, algun error de programación está haciendo que todos los resultados de búsqueda de google digan que son dañinos para tu compu

google-harm



2009 !


Charros, como que este año no va a ser más productivo en tonrno a mi blog que el pasado

Espero que todos hayan pasado las fiestas muy bien, que tengan lo que se merecen, y que este año sea mejor que el anterior.

A ver si el fin de semana termino al menos un par de posts que tengo pendientes, para mejorar la estadística de este año !

Saludos!



grsecurity afectado por la crisis


La lista de correo de grsec recibió una mala noticia, aparentemente la crisis ha afectado directamente a uno de los principales (o el principal) patrocinador, por lo que el desarrollo de el parche para el kernel de linux solo tiene seguridad hasta marzo 31 de 2009, a menos que encuentren patrocinio suficiente para mantener el equipo de desarrollo.

En general es bastante triste la situacion económica, y los que nos dedicamos directamente al mundo de las computadoras para vivir hemos estado con cierto temor, y a la vez con cierta confianza los que vivimos del SL, pero este es uno de esos indicadores que nos dicen que ni siquiera nosotros que nos dedicamos a trabajar con el software más económico tenemos las cosas seguras.

Uno de los equipos de seguridad más importantes está sufriendo para mantenerse activo, seguramente ahorita todos pensamos que ser empleado de la NSA puede no ser tan malo despues de todo verdad ? :), pero todavía hay ciertas esperanzas, veamos si en los próximos meses es posible que la cominidad done un poco, y ayude a encontrar fuentes de financiamiento para el mejor equipo de desarrollo de seguridad en Linux.

En fin, vamos preparandonos para el año que sigue, porque va a ser muy interesante, los veo en la siguiente entrada de este blog !




bolt Pues aprovechando las pocas oportunidades que tenemos de salir al cine, ayer nos lanzamos a ver esta con las nenitas, la película fue suficientemente buena para mantener a Deborah atenta, y lo suficientemente mala para que Sarah se durmiera a la mitad.

La vimos en español obviamente, y la verdad es que como siempre los traductores mexicanos se lucen, hubo cosas muy buenas como los diálogos de las palomas, y en general toda la película está suficientemente divertida, no está al nivel de los increíbles, al menos no en mi opinión, pero si vale la pena verla, y bueno, seguramente no será la última vez que la veo 🙂

Para aquellos a los que no les gusta que les cuenten de que trata: como siempre, el mayordomo era el responable 😛

En fin, valió la pena verla, si te gustan las caricaturas en general seguro te gusta, y si no, pos no, que tal eh ??