Programación, literatura y otras artes menores

Archivos de la categoría ‘Java’

Thinking in java 4ed

Publicado por caente en Octubre 12, 2007

Yo admiro a Bruce Eckel, no se si será un gran ingeniero o programador, pero definitivamente es un buen pedagogo, las ediciones de thinking in java que he visto(la 2ed y la 3ed) estan muy bien escritos y realemente ayudan a refrescar conocimientos que se tienen, a reaprender cosas que uno creía saber y a aprender otras nuevas.

El señor Eckel había tomado como filosofía(no se si para la edicion seguía así) regalar el libro electronico y venderlo en papel, eso al menos a mi me parecía muy inteligente, ya que este es del tipo de libros que uno quiere en un estante, pues es al mismo tiempo lectura corrida y referencia. Pero ahora decidió vender tambien la edición electrónica, no sé si el hecho de que ahora trabaje para Adobe influirá en algo sobre su visión de lo comercial o si estará e problemas financieros, o ya cree que eso de regalar conocimiento y trabajo es para imbéciles, bueno en fin, que cuando aununcio en su blog que ya estaba el libro disponible, allá fui corriendo, pero fue grande mi desilusión.

De cualquier forma él está en su derecho de vender lo que hace, pero igual, que pena.

Publicado en Java, Programación | Deja un Comentario »

Simplicidad en java

Publicado por caente en Septiembre 2, 2007

Desde hace tiempo, con el surgimiento y ploriferación de lenguajes como python y ruby, java se ha ido ganando el estigma que una vez tuvo/tiene C++: es demasiado complejo. Pues bien, pienso que la complejidad de java es un mito alimentado por los sonoros y entresijados frameworks como Struts 1.2 o Swing. Que conste que no hago una critica abierta del tipo: “Estos frameworks son una chapucería, yo lo hubiera hecho mejor, pero no tengo tiempo”; no, lo que digo es que en muchos de estos framworks adolecen de una excesiva complejidad, por ejemplo Swing fue construido encima de AWT, y debían mantener la compatibilidad, cuando quizás lo mejor hubiera sido un inicio nuevo con ideas nuevas, pero por supuesto, esto a veces, y en este caso, no vale el costo, recordemos que Swing es desarrollado por Sun.

En el caso de Struts es más claro, ellos se dieron cuenta de que estaban haciendo algo demasiado complejo decidieron cortar por lo sano, o quizás no tanto, y lanzar Struts 2, el cual se basa en POJOS, y dejaron atrás herencias innecesarias.

Pues bien, esta perorata es a causa de mi nueva experiencia con JPOS, un framework para la implementación de la ISO 8583, para transferencias bancarias. Los desarrolladores de este framework sabían que su codigo estaría destinado a empresas con aplicaciones de una fuerte demanda, millones de transacciones al día, y aplicaciones que deben trabajar, como ellos dicen, 24/7; pero además estas aplicaciones deben soportar cambios a su código sin detenerlas nunca, y sin que se afecten los usuarios, que por lo general son bancos.

Obviamente una aplicación de estas características no puede ser excesivamente compleja, pues dejaría de ser mantenible al nivel que se exige, cambios en caliente. Por otra parte debe ser sencillo de implementar el complejo flujo de mensajes que están normados en la ISO. Y debo decir que todo esto se logra magníficamente, al principio es dificil asimilar JPOS, como siempre es difícil asimilar cosas sencillas que gestionan mecanismos complejos, pero una vez asimilado JPOS, se convierte en una herramienta muy poderosa, tanto, que ya he considerado sacarla de su ámbito financiero, a ver que tal me va.

Publicado en Java, Programación, Tecnología | Deja un Comentario »

Java es gpl, pero y nosotros?

Publicado por caente en Noviembre 23, 2006

Cuando le hice el cuento de la liberación de java a un amigo, bastante pragmático él, me respondió con un demoledor: “Y a nosotros en que nos beneficia esto?”
Bueno, veamos.
Casi nadie de la inmensa mayoría de los que usamos java para ganarnos la vida nos meteremos a personalizar la jvm, o las bibliotecas, hasta hace poco el jdk igual era gratis y el jre se podía distribuir con nuestras aplicaciones sin ningún problema, entonces qué?
Cuando le respondí que por lo menos pondríamos descargar el jdk de otro lugar que no fuera la sun (hasta hoy no podemos desde acá en Cuba), tuve un:”Oye pero cuba no es el mundo, y siempre estará la mula”. Vaya tipo, obviamente con estos truenos hablarle de la necesidad de la libertad y esas cosas estaría de más, desafortunadamente la conexión se le cayó y no pudimos seguir conversando, entonces decidí reflexionar un poco por acá, un poco como a gritos, un poco como si escribiera ideas en una pared que muchos ven al pasar.
Con java libre puede ser que muchas empresas, individuos, asociaciones de individuos, modifiquen la maquina virtual y/o las bibliotecas para optimizarlas en algún nicho de problemas, puede ser que aumente la comunidad de usuarios para los que el hecho de que java sea libre es muy relevante, puede ser que los desarrolladores de las implementaciones libres se enriquezcan(hablo del conocimiento) del jdk y la jvm de la sun.
Pero todo esto, en definitiva va a ser a la larga, por tanto, qué nos importa a nosotros los programadores cotidianos, para los que lo que ya está hecho es todo un océano y que además no le dedicamos demasiado tiempo a java fuera del trabajo, y que el horario laboral es para programar con urgencia, pues no tenemos la suerte de estar en una empresa innovadora, qué nos importa a nosotros la inmensas potecialidades que implica la liberación de java.
Recuerden, estamos buscando razones técnicas:
Pues nada, luego de un rato pensando no se me ocurre ninguna buena razón para alegrarnos sinceramente de que java sea libre, y no importa, el hecho de que java sea gpl implica que salió del control de la sun, es decir, la palabra java es de ellos, la taza de café igual, pero eso no es tan importante, lo que importa es que la Sun no puede llavarse java a la tumba, lo importante es que ya pertence a todos nosotros, para bien o para mal, para forks o para pasividad. No creo que sea amor al lenguaje lo que hizo que Sun hiciera esta movida, ellos son una empresa y a las empresas lo que le interesa es ganar dinero, no asegurar la posteridad de un artilugio tecnológico, pero para nosotros sí, y me refiero incluso a aquellos que no les gusta java, incluso a aquellos que no les gusta programar. Java a pasado al conocimiento humano…
Buen discurso? puede ser, buen arrobamiento, incluso me lo creí yo mismo… así que java pasó ahora al conocimiento social solo porque le firmaron un papel que lo dice así? Qué diría el principito, que tontos somos los adultos no?
Java, c++ e incluso .net, hace rato que forman parte de ese conocimiento,cada lenguaje de programación, cada nueva metodología, forman parte inmediatamente del conocimiento humano, que unos idiotas le amarren un papel que limite su uso y que hoy todos nosotros nos dejemos guiar por ese papel es otra cosa, de todas formas somos un momento en la historia, pero las ideas de estos lenguajes son libres, y llegará un momento en que estas consideraciones de libertad legal solo servirán para explicar parte de las razones por las que una tecnología avanzó o se estancó.
Que a nadie se le ocurra mencionar las patentes por aquello de que las ideas son libres, las patentes son solo otro papel, y como tal sujeto a un momento histórico, en estas circunstancias esos papeles son válidos, pero ni los gobiernos son eternos ni la formas de las ideas son eternas.
No estoy pensando que java vaya a superar a nuestra forma de vida, no soy tan pretencioso, pero si que los avances o retrocesos que implica su existencia serán aprovechados por nosotros los humanos de alguna manera, y que los papeles que hoy la atan/liberan en realidad son superfluos.
Pero, pragmáticamente, alegrémonos de que java sea libre, alegrémonos de que podamos engañar un poquito a la historia y creamos en el cuento de los papeles, java es libre, pero nosotros no, estamos encerrados en nuestra forma de vida, no importa, con dos que se quieran con uno que sea libre basta ;)

Publicado en Java | Deja un Comentario »