lunes, abril 26, 2010

"Mientras más conozco JSP, menos me gusta"

Si, esto fue lo que me dijo un amigo después de su primera clase de Java Web. "¿Por qué tengo que escribir Servlets?" No es raro este tipo de disconformidades, es más, hasta estoy de acuerdo hasta cierto punto. Pero todo tiene una explicación.Y lo que sigue lo voy a escribir como amante de Java que tiene más experiencia en .NET (WTF?, sip, es así, las vueltas que da la vida...).

Seamos sinceros, hablando de desarrollo web, .NET es lo mismo que J2E. Un servlet de java se llama IHTTPHandler en .NET, una JSP de java se llama ASPX en .NET. Una directiva @page en JSP se llama @page en .NET!!
La cosa es la siguiente, el modelo de programación impuesto por M$, sumado al extraordinario IDE (Visual Studio, tengo que admitirlo, es casi tan bueno como mi amado eclipse), hace que la forma de programación sea muchísimo más sencilla que una aplicación web java, donde si o si tenemos que saber que existen protocolos, sesiones, request, response, etc. Además, si hay algo bueno de .NET, definitivamente es la forma en la que solucionaron el desarrollo visual de páginas web. Los controles de usuario, master pages y global.asax la verdad que contrastan enormemente contra los parches impuestos en java para JSP (directivas, declaraciones, scriplets, JSTL, expression language, templates, etc)

Por otro lado, con J2E tenemos algo fundamental, la posibilidad de elegir. Parece un dato menor, pero es quizá lo más importante que tenemos. Con java podemos elegir realizar nuestro propio framework con la complejidad que deseemos, desde el clásico "big switch" hasta monstruos grandes como Spring o JSF. Podemos encontrar APIs open-source para casi todo, lo que simplifica también la programación. Quízá no tengamos un VS para Java, pero en realidad es cuestión de tener los plugins adecuados y aprender a usar el IDE que nos haya tocado en suerte, sea eclipse, Netbeans, o cualquier otro.

Saludos

martes, abril 13, 2010

Python day en la UTN - 17 de Abril 10hs

Completamente sin difusión, y organizado por Grulic y la UTN Córdoba (según el cartel que vi), este sábado 17 de Abril a partir de las 10 de la mañana, se realizará el Python Day. Esta est toda la info que tengo hasta el momento, cuando me entere de más, acutalizo el post.

Ahora si cuento con toda la info, gracias a correo de Diego Sarmentero y cadena mediante:

Pythoneros y co-listeros en general.

El día 17 de abril de 2010 se realizará una Jornada de charlas sobre
Python, contando con importantes disertantes. Las charlas se llevarán
a cabo en el Salón de Usos Múltiples de la Universidad Tecnológica
Nacional, Facultad Regional Córdoba, entre las 10 y las 17 horas.

Entrada
======

La entrada es completamente gratuita y abierta a todos los
interesados. En caso de excederse el cupo del aula se dará prioridad
al orden de llegada.

Programa
=======

Salón de Usos Múltiples

10:00 Presentación e Introducción a Python
Nivel: básico – Orador: Fabián Gibellini

11:00 Rich internet applications en Python
Nivel: intermedio – Orador: Mariano Guerra

12:00 Entornos independientes en Python con virtualenv
Nivel: intermedio – Orador: Manuel Kaufmann

13:00 Almuerzo

14:00 Pycasa inside: PyGTK on Glade
Nivel: básico – Orador: Natalia Bidart

15:00 Utilizando la Google API con Python
Nivel: intermedio – Orador: Matías Bordese

16:00 Plone 4
Nivel: básico – Orador: Roberto Allende

17:00 Introducción a PyQT
Nivel: intermedio – Orador: Diego Sarmentero

Accesos
=======

Para llegar hasta la UTN-FRC, podés tomarte cualquiera de los
siguientes colectivos:

* Paran en la puerta: A6, A, C3, C6, C7, N3, N9, R2, R5, R6,
E1, E6, 600/601 y 500/501

Más información
============

Podrán encontrar toda esta información y más en la siguiente URL:


http://www.grulic.org.ar/~ignacio/pythonday3/


Saludos

lunes, abril 12, 2010

Noticias atrasadas

Nooooooooooooooooooooooooooo!!! De lo que me acabo de enterar! Justo que vuelvo a escribir con todo, James Gosling (categoría semi-dios de la informática), ha renunciado a Oracle. No da una explicación concreta en su blog, pero sin duda Sun/Oracle pierden el ícono más importante de Java.

Lo único que falta es que renuncie Duke...



Cualquier cosa James, puedo hablar con mi jefe acá en la facultad, seguro va a haber un puesto para vos!

Saludos

domingo, abril 11, 2010

Alternativas para hacer análisis estadístico

Este post fue motivado por la duda de una estudiante. En una materia de la facultad (simulación), se requiere generar una serie de números aleatorios y realizar operaciones estadísticas con esos valores. A continuación, se debe generar un gráfico con los valores calculados.

Ahora bien, con una hoja de cálculo de Excel o Calc, se puede realizar bastante sencillo, pero no sería tan divertido como hacerlo en Java! Así que me puse a investigar un poquito para ver qué alternativas se encuentran que nos ayuden a realizar estos cálculos. Fue así como me topé con las siguientes herramientas:

Para realizar cálculos estadísticos:

Apache Commons Math: ¿Hay algo para lo que Apache no haya realizado un API? Seguramente, pero este paquete ofrece lo básico para realizar análisis estadístico en Java, como por ejemplo, cálculo de varianza, regresión lineal, interpolación, resolución de ecuaciones diferenciales, generación de números aleatorios con restricciones, etc. La verdad es que no parece un paquete tan básico, es más, para los problemas tipos de estadística, alcanza y sobra.

Colt: Una librería para realizar cálculos de alta performance. Aparentemente, los creadores de esta API quieren pelearle mano a mano al clásico lenguaje de físicos, matemáticos y astrónomos: Fortran (si, se sigue usando y mucho).

JUMP Ultimate math package: Puede que sean el 'ultimate' o simplemente no sirva, la descripción del producto es muy, pero muy escaza, así que no daré mucha referencia. Además, es más matemático que estadístico.

Estas son las librerías que más me llamaron la atención, pero pueden encontrar más info en http://math.nist.gov/javanumerics/#libraries


Para realizar gráficos:

JFreeChart: una API clásica para realizar gráficos en Java. Como puede generar imágines, es muy fácil utilizarla en aplicaciones de escritorio como en web.

JCCKit (Java Chart Construction Kit): una librería open source cuya principal ventaja es el tamaño. Menos de 100Kb de espacio que ocupará en nuestra aplicación. Esto resulta útil para aplicaciones móviles sin duda.

BIRT: Como siempre, eclipse también tiene mucho más que un excelente IDE para ofrecer. BIRT es una herramienta para la creación de reportes que por supuesto, también ofrece la generación de gráficos.

Google Chart Tools: no es una librería en sí, sino que podemos generar una imagen (estática o dinámica) a partir de una URL. Esto se usaría más dentro de una aplicación web más que swing.

Más info en http://java-source.net/open-source/charting-and-reporting

Además, puedes estar pensando "Demasiado complicado, por qué no generar directamente un archivo de Excel y listo?". Bueno bueno, para esto tienes JExcelApi, con la que puedes manipular archivos Excel (pero sólo hasta la versión 2003).

Espero que haya sido de utilidad. Si algún dia encuentro tiempo, veré de postear algún ejemplo andando.

Saludos

miércoles, abril 07, 2010

En breve, vuelve Mundo Java!!

Efectivamente. Después de la presión de grupo impuesta por NTC, Gaturro y varios más, voy a volver con este blog olvidado. Ya estoy preparando el primer post acerca de JFreeChart, y me siento muy feliz de volver!

Java No está muerto (sólo retrasado hasta Septiembre de este año parece)