viernes, 30 de noviembre de 2007

Primer Experimento C#

Como estoy dandole al 70-536, he empezado a empollar C#.

.NET me ha sorprendido por 2 cosas..... su sencillez, y la multitud de modulos a los que soy capaz de acceder "asi de buenas a primeras" sin saber mas que el "que busco".

Es decir, si se que es un socket, como funcionan los sockets y demas.... con .NET estan comidos.. mientras que en otros lenguajes la cosa se complica algo mas, quien lo haya intentado usando la Win32 me comprendera

Lo mismo podria decir con bastantes cosas mas. Asi pues, no le recomiendo a nadie .NET como primer lenguaje... pero si ya te has roto los cuernos con algun otro, descubriras que .NET te hace la vida mucho mas placentera y comoda.

Como muestra, una guinda..... Mi primera aplicacion en .NET ha sido un splitter, para lo que me he basado en el manual que incluye "El Guille" en su web (Gracias al Guille por esa web que siempre ha sido una fuente de inspiracion). Aunque mi version es un poco mas "de andar por casa".

La cosa es que en apenas 3/4 horas de trabajo ya he implementado mi clase completamente funcional.

Envalentonado por los resultados obtenidos, y a pesar de que me habia jurado no tocar el editor grafico hasta conocer mejor el lenguaje.... invierto otra hora de trabajo en crearle una GUI a mi splitter....



Conclusion.... con .NET, como dice gigatron.... construiras piramides con la punta del miembro.

Ahora a por un spyder....

jueves, 29 de noviembre de 2007

Matando un dragon - Heavy version...

Power Metal
El protagonista llega al castillo en un caballo blanco alado, escapa del dragón, salva a la princesa, se van lejos y hacen el amor.

True Metal
El protagonista llega al castillo y vence al dragón en una batalla utilizando su espada. Bañado en la sangre del dragón, lo hace con la princesa.

Thrash Metal
El protagonista llega la castillo, pelea rabiosamente con el dragón, salva a la princesa y se la tira.

Heavy Metal
El protagonista llega al castillo en una Harley Davidson, mata al dragón, se toma unas chelas con la princesa y después lo hacen.

Folk Metal

El protagonista llega con varios amigos tocando el acordeón, alaude, violín, y otros instrumentos extraños. El dragón se queda dormido de tanto danzar, y luego se van… sin la princesa.

Viking Metal

El protagonista llega en un navío, mata al dragón con un hacha, lo cocina y se lo come. Viola a la princesa, saquea el castillo y le prende fuego a todo antes de irse.

Death Metal

El protagonista llega, mata al dragón, se tira a la princesa, la mata y se va.

Black Metal

Llega de madrugada, en medio de la neblina, mata al dragón y lo empala frente al castillo. Sodomiza a la princesa, la corta con una daga y bebe su sangre en un ritual antes de matarla. Después descubre que ella no era virgen y la empala junto al dragón.

Gore Metal

Llega y mata al dragón. Sube al castillo, se tira a la princesa y la mata. Después se la vuelve a tirar. Quema el cuerpo de la princesa y se la tira de nuevo.

Doom Metal

Llega al castillo, ve el tamaño del dragón, se deprime y se suicida. El dragón se come el cadáver del protagonista y después se come a la princesa.

Nu Metal

Llega al castillo y se jacta de lo bueno que es peleando y de que es capaz de ganarle al dragón. Pierde miserablemente y queda hecho una mierda. Huye y encuentra a la princesa, le cuenta su trágica infancia. La princesa le sacude y se va a buscar al protagonista de “Heavy Metal”. El protagonista “Nu” se toma un prozak y se va a grabar un disco de “The best of”.

Rock n’ Roll clásico

Llega en una moto fumándose un troncho y se lo ofrece al dragón, que resultó que era su amigo. Luego acampa con la princesa en la parte más apartada del jardín, y después de mucho sexo, drogas y rock n’ roll, tiene una sobredosis de LSD y muere ahogado en su propio vómito.

Punk Rock

Le tira una piedra al dragón y huye. Pinta la “A” de anarquía en un muro del castillo. Le hace un peinado tipo “mohicano” a la princesa y abre un kiosko de fanzines en el pasadizo del castillo.

Metal Progresivo

Llega, toca un solo virtuoso de guitarra de 26 minutos. El dragón se muere de tanto tedio. Llega donde la princesa y toca otro solo explorando todas las técnicas de tonos y compases aprendidas en el último año en el conservatorio. La princesa huye buscando al protagonista de “Heavy Metal”.

Hard Rock

Llega al castillo en un convertible rojo, acompañado de dos rubias pechugonas y tomándose una botella de Jack Daniels. Mata al dragón con un cuchillo y luego hace una orgía con las rubias y la princesa.

Glam Rock

Llega al castillo. El dragón se ríe tanto al verlo que lo deja pasar. Entra al castillo, roba la laca y el lapiz de labios de la princesa. Luego convence al dragón para pintar el castillo en tonos rosados y hacerse unas mechas.


Extraido de: http://latierradeuel.blogspot.com/2006/01/estilos-de-rock-y-heavy.html

Programadores matando un dragon

Como a todo escritor supongo que le pasara, el principio siempre es lo mas dificil. Una vez se ha cogido carrerilla, lo complicado suele ser el terminar. Y como primer post, o dejo un extracto de otro blog con el que llevo un buen rato partiendome la caja toracica.

Java - Llega, encuentra al dragón, desarrolla un framework para aniquilación de tragones en múltiples capas, escribe varios artículos sobre el framework... pero no mata al dragón.

.NET - Llega, ve la idea del desarrollador de Java y la copia, intenta matar al dragón, pero el bicho se lo come

C - Llega, mira al dragón con mirada de desprecio, tira de espada, degolla al dragón, encuentra a la princesa... y la ignora para ver los últimos checkins del cvs del kernel de linux

C++ - Crea un pincho básico y va juntando funcionalidades hasta tener una espada compleja que apenas consigue entender... mata al dragón pero se atasca en medio del puente por culpa de pérdidas de memoria (memory leaks)

COBOL - Llega, ve al dragón y piensa que es demasiado viejo para conseguir matar un bicho de ese tamaño y quedarse con la princesa, y entonces se va

Pascal - Se prepara durante 10 años para crear un sistema de aniquilación de dragones... cuando llega el momento descubre que el programa sólo acepta lagartijas como entrada

VB - Monta un arma de destrucción de dragones a partir de varios componentes, salta encima del lomo del dragón, y en la hora H descubre que la espada sólo funciona durante las noches de lluvia...

PL/SQL - Recoge datos de otros matadores de dragones, crea tablas con n relaciones de complejidad ternaria, datos en tres dimensiones, OLAP, tarda quince años para procesar la información... y para entonces la princesa se volvió lesbiana.

Ruby - Llega con muchísima fama, diciendo que es el mejor en hacer cualquier cosa y cuando va a enfrentarse al dragón muestra una peliculita en la que él mismo aparece matando a un dragón... el dragón se lo come de puro aburrimiento

Smalltalk - Llega, analiza al dragón y a la princesa, se da la vuelta y se pira: ellos son muy inferiores

shell - Crea un arma poderosa para matar dragones, pero en la hora H no recuerda como usarla

shell(2)- El tío se acerca al dragón con un script de dos líneas que mata, corta, destripa, empala, pica en pedacitos y empaca al bicho, pero a la hora de ejecutarlo el script aumenta, engorda, enfurece y pone alcohol en el fuego del dragón.

Ensamblador - Cree que está haciendo lo más correcto y eficiente... pero pone un A en lugar de un D y mata a la princesa para terminar follándose al dragón

Fortran - Llega y desarrolla una solución con 45 mil líneas de código, mata al dragón, va al encuentro de la princesa... pero ella le llama tirillas y se va corriendo detrás del programador de java que era elegante y además es rico

FOX PRO - Desarrolla un sistema para matar al dragón. Por fuera es precioso y funciona, pero por dentro está todo parcheado y cuando va a ejecutar el aniquilador de dragones recuerda que olvidó indexar los DBF.

ANALISTA DE PROCESOS - Se acerca al dragón con dos toneladas de documentación desarrollada sobre el proceso de matar un dragón genérico, desarrolla un DFD para liberar a la princesa y casarse con ella, convence al dragón de que es lo mejor para el y que no va a doler. Al ejecutar el proceso estima el esfuerzo y el tamaño del daño que causará con la firma del papa, de Buda y de Joan Manuel Serrat para el plano, y entonces compra dos bombas nucleares, 45 cañones, un portaaviones y contrata a 300 hombres armados hasta los dientes... cuando en realidad tan sólo necesitaría la espada que tenía en la mano desde el principio

CLIPPER: Monta una rutina que carga un array de codeblocks para insultar al dragón, cantarle a la princesa, cargar la espada a memoria, moler al dragón, limpiar la suciedad, preparar un vaso de leche condensada con moras para la princesa, follar a la princesa, darse un baño, encender el coche, ponerle gasolina y volver para casa. A la hora de ejecutar recibe un "Bound Error: Array Access" y el dragón se lo come con patatas

That?s all Folks? No, con el efecto Menéame y el efecto Barrapunto coaligados, me han dejado nuevos lenguajes en diferentes foros. Paso a relataros los que más me han gustado

Lisp, donde el famoso caballero andante, tras hablar con numerosos expertos en matar dragones y modelar el conocimiento que ellos poseen programa el sistema y se da cuenta... de que se ha dejado algún paréntesis (bender the offender, barrapunto)

HTML: Monta una web sobre espadas famosas usadas para matar dragones, pero se pasa los estándares W3C por el forro. Cuando se encara con el dragón descubre que el código no es compatible con su navegador, por lo que se queda compuesto y sin espada. El dragón se lo merienda como aperitivo. (Darkblade, barrapunto)

Prolog: Piensa que para matar al dragón necesita un arma. Busca en un catálogo 182014 armas. Para cuando la princesa muere de vieja ya ha logrado descubrir como fabricar todas las armas que empiezan por la A: Armas atómicas, Alabardas,Alfanges, Asesinos contratados, Armas blancas, Antiaéreos, Arcos, ... (aquelquesiente)

PHP: Crea una página web que al ejecutarla eliminará al $dragón tirando de una base de datos de armas en mysql y sobre un servidor apache. Sin embargo, se olvidó el Where en la query de delete y mata a la princesa, al dragon, a los campesinos, a la bruja, al hechicero y al propio programador.

JavaScript: El programador intenta matar al gran dragón verde que lanza fuego por la boca. Crean un script que borrará al dragón cuando carge una página web para unos segundos después crear unas damiselas que lancen flores y hagan soniditos de aplausos. Por desgracia no tuvo en cuenta la estructura Dom del lagarto, también conocido como Mozilla, y lo único que consigue es rellenar su consola de errores y que el libro de mozilla narre como acabó devorado.

ActiveX: Los programadores crean un tunel para entrar a la guarida del dragón desde el castillo y ejecutar un programa que matará al dragón desde una distacia segura y prudencial. El dragón descubre el tunel, se come a los trabajadores que cavaban, a los matadores de dragones y esclaviza a todos los siervos del castillo que pasan a ser sus esclavos. El castillo pasa a ser un lugar de cría de dragones lleno crías que manda en pop ups a otros castillos. Los restos poco apetitosos de los caballeros los mete en latas de Spam y manda también a otros castillos como advertencia. (aquelquesiente)

Basic. Crean un arma capaz de matar a dragones de papel, pero mucho que la perfeccionan descubren que no sirve para matar a ningún dragón más grande que una cría de caniche. (aquelquesiente)

Matlab: Crean un bucle que calcula las trayectorias para lanzar una flecha gigante contra el dragón. El programa funciona perfectamente. Sólo faltan los voluntarios capaces de lanzar la flecha con la fuerza y puntería necesaria. (aquelquesiente, barrapunto)

Programador de videojuegos:Se pasa dos años programando una espada state of the art, con shaders y todo. A la hora de matar al dragón se encuentra con que la mitad de los caballeros no tienen fuerza para mover la espada. Luego alguien programa un parche que revela las escenas de sexo con la princesa y Hillary Clinton le monta un escándalo (rogerdv, en barrapunto).

Perl - El caballero decide matar al dragón con una expresión regular, pero se equivoca en los carácteres de comodín y acaba incluyendo en el patrón de mortalidad a Dragones, Iguanas, lagartos, perros, gatos, osos, princesas y ratones. (emezeta.com)

HyperCard: crea en 5 minutos una pila con un catálogo de armas, con fotos, gráficas y vídeos sobre su utilización y los distintos tipos de dragones que puede matar, y que además fabrica el arma elegida utilizando las herramientas de dibujo, con una interfaz impecable y fantásticos efectos visuales, lo guarda como ejecutable, le pone un bonito icono, pero cuando va a fabricar la espada no funciona porque se dejó un XCMD en casa (Home) (Zydeco, faq-mac)

Macromedia Director: crea una mágnifica interfaz destellante mata dragones, con una espada deslumbrante, fabricada a bases de Xtras de terceros fabricantes, al primer intento de matar al dragon "Script Error", entonces a duras penas se esquiva el mordisco, y se procede al segundo intento... pero el ejecutable va tan lento que se los come a todos (Victor_js, faq-mac.com)

Mathematica. se crea y modela el objeto logico dragon. se modela y crea igualmente la princesa, la espada, al principe. se modela el caso especial de la articulacion manoespada, y la discontinuidad piel de dragonespada.
Cuando todo esta hecho, se le pide a Matematica que lo resuelva, y el resultado es: "Hay que matar al dragon con la espada, y quedarse con la princesa" (Alf, faq-mac.com).
Más en los comentarios (gracias, chicos... me lo estoy pasando como un enano)

El experto en IA: Decide crear una red neuronal que mediante casos de asesinatos de dragones pueda converger a una acción que permite realizar la matanza con el mínimo de error posible.
Cuando la red estaba lista, el programador en C ya había matado el dragon, y la princesa esta sola esperando que la follaran, pero el experto era virgen y tuvo que hacer otra red neuronal que le enseñara a tener sexo.

WEB 2.0 :Desarrolla una forma de matar al dragon utilizando XML, tonos pastel y letras grandes, y permite que todos los guerreros del mundo opinen sobre la mejor forma de matar al dragon con un sistema de tags y puntuaciones.
En medio de la discusión, una horda de trolls revienta la convencion y mueren todos.

Programador de GAMBAS: Define la clase dragon, la clase princesa, la clase espada y la clase principe sin saber ni siquiera que es una clase, y sus profesores se rien de el y le dicen que aprenda C. A la hora de compilar el programa en su iBook, le sale un error de violacion de segmento porque Gambas no corre sobre LinuxPPC por problemas de endian y termina aprendiendo C+x (C con prisas y extres) y OpenGL para matar al dragon dentro de un juego de plataformas 3D, que es mucho mas seguro que enfrentarse al bicho... La princesa piensa que la protagonista del juego se parece mucho a ella


Extraido de: http://rebotacion.blogspot.com/2006/03/programadores-matando-un-dragn.html