lunes, 29 de enero de 2007

Señal de Vida...

Seeeee...

Arregle un poco el desorden de la pagina, volvi a colocar los links como estaban, y ahora pretendo irme a mi casita tranquilamente...

Lo que es no tener tiempo... por lo mismo mis vacaciones de verano fueron vilmente negadas y chuteadas hasta abril-mayo...

Ando con una cara de felicidad que ni se imaginan...

Saludos

J.
"Yo quiero teneeerrrr un millon de amigos... " .. y a cada uno pedir gambaaaaa.....

domingo, 14 de enero de 2007

Tener que seguir lidiando con Bugs me parece el colmo.

La plantilla de blogger que estaba usando por algun motivo resulto "corrupta"... por ende se perdieron algunas cosillas por ahí... mientras me tomo un poco de tiempo para reparar todo a partir de la cache de google (ya tengo una version vieja del asunto) me voy a poner a escribir unas pocas lineas aquí... Aunque pensandolo bien, no debería XDDDD... pero me he dado cuenta que hay un tema que nunca he puesto en este blog... se trata de alguna floritura de mi actual trabajo...

Asi que siendo las 2:48 AM, despues de lidiar con un sabado de los mil demonios en la pega (Si, me tocó turno para trabajar un fin de semana completito, completito) me puse a escribir un poco de código VLISP. Francamente debí haberlo hecho antes....

Para los que no son versados en la materia, LISP (LISt Processing) es un lenguaje de programación muy antiguo, que fue desarrollado con el propósito de ayudar a elaborar software orientado a la programación e investigación de la Inteligencia Artificial. Esto es porque el lenguaje permite que el programa pueda ser modificado "al vuelo" dependiendo de ciertas condiciones y esta estructurado como lenguaje de alto nivel... No tienes que preocuparte de andar declarando variables, de reservar memoria (al menos no desde 1982), tampoco tienes que preocuarte de andar cargando librerías externas ni nada por el estilo... Bueee... excepto las que uno use... Como contrapartida, es lento, ya que no es lenguaje compilado (a lo sumo, se compila como algo similar a JAVA... O sea usa mitad codigo máquina y mitad codigo interpretado como Bytecode, lo que lo hace ser relativamente lento, pero al menos te ahorra hacer declaraciones molestas) y las operaciones deben expresarse en parentesis (por algo tambien se le conoce como el Language In Stoopid Parenthesis (pun intended ;D))

Autolisp fue por años un subconjunto de LISP, tomando ciertos comandos del Lisp original (defun, princ, setq... por ej.) y agregando otros para poder manejar elementos graficos de forma sencilla (polar, getdist, nth, por ej.) creando un lenguaje con el que uno podía personalizar Autocad y adaptarlo a sus propias necesidades... y/o convertirlo en un mostruo completamente diferente...

Hoy en día Autodesk, despues de ser pseudo asimilado por M$, incluye el lenguajeVisual LISP (no les recuerda a algo desagradable???) pero durante un buen tiempo animó a los ingenieros/programadores/operarios a usar Visual Basic como plataforma de personalización.... Desde luego no hay mucha gente trabajando en Visual Basic, por lo que estan forzados a seguir soportando la plataforma LISP. (A diferencia de M$, Autodesk tiene un portafolio de usuarios mas o menos despiertos...) Sin embargo Autodesk ha introducido desde hace un buen tiempo, las extensiones de Visual Lisp... como las extensiones ActiveX... Si no puedes hacerles caer en una trampa, te ponen otra :).

Pero bueee... esa es historia para otra ocasión... el asunto es que en la pega estamos muy atrasados para entregar trabajos, asi que, despues de muchos años sin tocar un teclado para programar absolutamente nada, he vuelto a las andadas... al menos en el departamento del desarrollo LISP... Y que quieren que les diga... estoy bastante oxidado :).

Mientras tanto, echenle un vistazo a esto:

;; Val-flg:
;; Determina el rango en el que se encuentra el radio dado,
;; devuelve una lista con los valores
;; que correspondan por tabla... bueee... en realidad me da flojera programar
;; un parser para un CSV, y no puedo asumir que la vict... errr.. usuario
;; tiene instalado excel, como
;; para conectar una base de datos a una hoja de calculo
;; excel, además, tambien existe OpenOffice y Acad no
;; es precisamente amigable con software no microsoft.
;; uso: (setq variable (val-flg diametro_a_testear))
;; en variable quedara la lista que corresponda.

(defun val-flg (radio_interior / datos loop1 contador lim-bajo lim-alto matriz)

(if (and (>= radio_interior 70.0) (<= radio_interior 3399.50))

(progn
(setq datos (list (list 70.0 9.5 3.5 50.0 50.0 9.5 4 4.8)))

(setq datos (append datos (list (list 100.0 9.5 3.5 50.0 50.0 9.5 4 4.8))))

(setq datos (append datos (list (list 125.0 9.5 3.5 50.0 50.0 9.5 4 4.8))))

(setq datos (append datos (list (list 150.0 9.5 3.5 50.0 50.0 13.0 6 4.8))))

(setq datos (append datos (list (list 175.0 9.5 3.5 50.0 50.0 13.0 6 4.8))))

(setq datos (append datos (list (list 200.0 9.5 3.5 50.0 50.0 13.0 6 4.8))))

(setq datos (append datos (list (list 225.0 9.5 3.5 50.0 50.0 13.0 8 4.8))))

(setq datos (append datos (list (list 250.0 9.5 3.5 50.0 50.0 13.0 8 4.8))))

(setq datos (append datos (list (list 300.0 9.5 3.5 50.0 52.0 13.0 8 4.8))))

(setq datos (append datos (list (list 350.0 9.5 3.5 50.0 52.0 13.0 8 6.4))))

(setq datos (append datos (list (list 400.0 9.5 3.5 71.0 56.0 14.0 8 6.4))))

(setq datos (append datos (list (list 450.0 9.5 3.5 50.0 52.0 13.0 12 6.4))))

(setq datos (append datos (list (list 500.0 9.5 3.5 50.0 52.0 13.0 12 6.4))))

(setq datos (append datos (list (list 550.0 9.5 3.5 50.0 52.0 13.0 16 6.4))))

(setq datos (append datos (list (list 600.0 9.5 3.5 50.0 52.0 14.0 20 6.4))))

(setq datos (append datos (list (list 700.0 9.5 3.5 50.0 52.0 13.0 16 6.4))))

(setq datos (append datos (list (list 800.0 12.7 3.3 50.0 52.0 15.0 24 8.0))))

(setq datos (append datos (list (list 900.0 12.7 3.3 53.0 49.0 15.0 24 8.0))))

(setq datos (append datos (list (list 910.0 12.7 3.3 50.0 52.0 15.0 24 8.0))))

(setq datos (append datos (list (list 950.0 12.7 3.3 88.0 64.0 18.0 24 9.5))))

(setq datos (append datos (list (list 1000.0 12.7 3.3 50.0 52.0 15.0 24 8.0))))

(setq datos (append datos (list (list 1200.0 12.7 3.3 90.0 62.0 18.0 36 9.5))))

(setq datos (append datos (list (list 1300.0 12.7 3.3 77.0 50.0 18.0 24 9.5))))

(setq datos (append datos (list (list 1400.0 12.7 3.3 50.0 77.0 15.0 24 9.5))))

(setq datos (append datos (list (list 1500.0 12.7 3.3 144.0 59.2 36.0 27 12.5))))

(setq datos (append datos (list (list 1600.0 12.7 3.3 70.0 57.0 15.0 32 9.5))))

(setq datos (append datos (list (list 1700.0 12.7 3.3 114.0 89.0 27.0 40 12.7))))

(setq datos (append datos (list (list 1800.0 12.7 3.3 70.0 57.0 15.0 32 9.5))))

(setq datos (append datos (list (list 1900.0 12.7 3.3 88.0 64.0 18.0 40 9.5))))

(setq datos (append datos (list (list 2000.0 19.0 3.0 70.0 57.0 15.0 32 9.5))))

(setq datos (append datos (list (list 2100.0 19.0 3.0 74.0 78.0 18.0 60 9.5))))

(setq datos (append datos (list (list 2200.0 19.0 3.0 124.0 79.0 27.0 56 12.5))))

(setq datos (append datos (list (list 2400.0 19.0 3.0 118.0 85.0 27.0 60 12.5))))

(setq datos (append datos (list (list 2600.0 19.0 3.0 124.0 79.0 27.0 68 12.5))))

(setq datos (append datos (list (list 2800.0 19.0 3.0 138.0 65.0 27.0 72 16.0))))

(setq datos (append datos (list (list 3000.0 19.0 3.0 124.0 79.0 27.0 76 12.5))))

(setq datos (append datos (list (list 3200.0 19.0 3.0 138.0 65.0 27.0 80 16.0))))

(setq datos (append datos (list (list 3399.0 19.0 3.0 138.0 65.0 27.0 80 16.0))))

;; De todos los valores, solo N perf es entero, el resto debe ser real.
;; Aunque espesor no es usado realmente aquí, lo dejo para
;; posibles futuras referencias... (Ej: posible necesidad futura de dibujar vista perfil)

(setq loop1 T contador 0)

(while loop1

(setq lim-bajo (car (nth contador datos)) lim-alto (car (nth (1+ contador) datos)))

(if (and (>= radio_interior lim-bajo) (< radio_interior lim-alto))

(setq loop1 nil matriz (nth contador datos));; true

(setq loop1 T contador (1+ contador))

);if

);while

); if true

(setq matriz nil)

); if

);defun


Desafortunadamente, Blogger no soporta tabulación, por lo que el código se ve bastante ilegible... tal vez este sea el primer y último post de este estilo... En cualquier caso, como lo hice notar arriba, me salio mas sencillo hacer una tabla con los valores obtenidos en excel, hacer copy paste de ella en el codigo, y olvidarme del resto (de por si, generar la tabla en excel fue todo un cacho), en lugar de hacer algo mas "profesional" como generar esta tabla de medidas en una hoja excel, llamar la hoja excel desde autocad y generar la lista desde ahí... gajes del oficio.

Como está, este código esta muy mal escrito, y definitivamente algún día tendre la motivacion como para escribir algo mejor, despues de todo, Autolisp es bastante flexible en ese sentido, sin embargo, el programa completo sirvio para su objetivo y ahora puedo automatizar un proceso que hasta ayer me tomaba un par de días en completar, y que ahora puedo completar en un par de horas...

La diferencia es harta...

Sin embargo por algún motivo que desconozco, mis dolores de cabeza reaparecieron de nuevo... tal vez despues de estos días, voy a volver a mi "vida sabatica" sin programar... Eso pasa cuando se abusa del cerebro... Mientras tanto, son las 3:41 AM de un lindo día Sábado, no tengo mucho que contar, ni mucho sueño que digamos, pero al menos mañana no tendre que trabajar demasiado... Al menos veremos si vamos a la siguiente reuna del proyecto Tythalos.

Lo unico que me queda por hacer es seguir abusando de mi cerebro XD.

Saludos

J.

lunes, 1 de enero de 2007

Y se fué el 2006...

Así no más es, el 2006 ya es historia.

No podemos negar que este fue un año bastante interesnate, por decir lo menos, en cuanto a un montón de cosas:

- La rebelión de los pingüinos: Ahhhh.. como olvidar a los pingüinos pidiendo fondos en el metro para mantener las tomas de los liceos/colegios... Ese fue un buen golpe para un chiste de gobierno, en ese entonces.

- El fin de las arcades como las conociamos: El cierre y mudanza de los entretenimientos Diana a un lugar mas chico y su posterior invasión por los flaites del DDR, fue una de las noticias mas sentidas por quien les habla... Mal que mal, crecí con las arcades en la sangre... Y a pesar que que cuento con las ROMS de todos los juegos arcade aceptables en MAME, nunca será lo mismo.

- Sadam Hussein... si no están enterados de las noticias, es que al menos necesitan navegar mas seguido por las paginas de noticias...

- Se estrena Ghost in The Shell: Solid State Society, con una fuerte advertencia a los fansubbers: La película ya esta licienciada en todos los países y se perseguiría judicialmente a todo aquel grupo que la fansubbeara o que la distribuyera... Desde luego hubo distribución de RAWS y los subtitulos corrieron sueltos por ahí, pero eran demasiados malos como para considerarlos... (si la ví... Y aunque tal vez no valga la pena (No es muy buena), voy a esperar la version DVD).

- Estoy enfermo desde mayo del 2006. Aun nadie sabe las causas, pero todavía tengo problemas en los pulmones... boinnnkkkkk.

- AMD y ATI se fusionan, prometiendo dejar la escoba en el tema de la computación en general... aun estamos esperando que eso suceda XDDDD... En el deparamento de drivers para linux, ATI esta preparando cambios para el 2007... y desde luego las vacas volarán XD, aunque hay que admitir que al menos han corregido problemas que estaban presentes dede hace... ¡¡¡3 AÑOS!!!

- INTEL golpea a AMD donde más duele al presentar su procesador Core Duo 2, a.k.a. Conroe, el cual le da paliza aún al procesador quadrupe que AMD esta por liberar al mercado.... ki cosas no????

- Le compré el notebook al NIK, estuve probando linux ininterrumpidamente por 2 meses, con beryl, emerald y todos los efectos gráficos disponibles para KDE (son geniales) usando los drivers de NVIDIA... Desafortunadamente, tuve que reinstalar windows, porque como usuario de aplicaciones CAD, no existe forma de correr CAD decentemente en Linux.

- Salieron al mercado las consolas wii y PSX3, que actualmente estan convirtiendo el tema de los juegos en algo que solo la elite de la elite puede disfrutar por ahora... pero no importa, recuerden que la PSX2 en su tiempo tambien era un chiste nada divertido si mirabarmos el precio de 300 lukas....

- Salieron al mercado las nuevas tecnologías HD-DVD y Blue Ray, desatando la nueva guerra de los formatos caseros... Las nuevas tecnologías cuentan con un sistema de protección anticopia avanzado que hace muy dificil poder ripear contenido y copiarlo.... Bueee... hace unos días atras se logró obtener una clave usada por cierto software reproductor de HD-DVD, pero fue parchado rápidamente por el fabricante del programa, y todos los HD-DVD futuros vienen protegidos contra este hack...Al menos los HD y los Blue que fueron fabricados antes de que esa clave fuera hackeada, podran seguir siendo desencryptados con esa clave.... Habrá que seguir esperando para poder ripear HD-DVD y/o Blue Ray.

- Este fue el año de los viruzzzz, troyajos y similares, y desde luego, Windows Vista, que aún no ha salido a la venta, ya tiene sus primeros parches de seguridad... hay cosas que nunca cambiaran.

-La televisión abierta Chilena esta cada vez peor... estan transmitiendo pura basura esta noche.

- Al fin termino Black Lagoon the second barrage... Las 2 temporadas de Black lagoon fueron IMHO, lo mejor del 2006 en cuanto al anime (Ergo proxy arrugó de forma espectacular, Coyote Ragtime Show no fue lo que se esperaba, Gundam Wing Destiny fue demasiado malo como para considerar, y Monster partio el 2005, por lo que no cuenta aunque la recomiendo fuertemente), desafortunadamente no hubo ninguna serie de humor decente esta temporada 2006 (Fui forzado a ver School Rumble 2nd semester, y aunque no fue taann mala como la primera , sigue siendo serie mas para chica; y en cuanto a Gintama, es humor extremadamente japonés, y no es jocoso para nada.) ... sin embargo no eche de menos eso, ya que para eso tuvimos a los... ¡¡¡¡PADRINOS MAGICOS!!!!

- Al fin el Nik le dio el vamos a Tythalos... El 2007 nos prepara algunas sorpresitas....

Ahhhh... desde luego he dejado pasar muchas cosas más, pero con las anteriores, tengo pelada de cable suficiente por el rato... Bueno chicos, los dejo por ahora y les deseo que este 2007 en el que ya estamos viviendo les traiga muchos mejores ratos que el 2006 y que les cumplan sus deseos... Siempre y cuando valgan la pena.

Saludos y Feliz año nuevo!!!!

J.
Nos vemos luego.