Oracle dejara de ofrecer soporte extendido gratuito a su JDK…y eso no es necesariamente malo

TLDR: Oracle cobrara por usar OracleJDK LTS pero a su vez liberara sus características comerciales. Técnicamente no habrán diferencias de código entre OpenJDK y OracleJDK(HotSpot). Hay proyectos de software libre que mantendrán sus propias versiones LTS basadas en OpenJDK. Nada para preocuparse.


 

Seguir leyendo →

Acerca de Java EE, Jakarta EE, EE4J y su relación

Esta es una traducción/post liberal basada en el original de Ivan Grimstad y un mensaje de Mike Milinkovich en la lista de correo de EE4J explicando la relación entre los términos mencionados en el titulo, ya que como recordaran JavaEE fue liberado por Oracle y el «mundo EE» esta sufriendo una revolución.

Tip básico, si se quieren referir a Java EE, el nuevo nombre es Jakarta EE. Simple :).

TL;DR

Nombre viejo
Nombre nuevo
Java EE Jakarta EE
Glassfish Eclipse Glassfish
Java Community Process (JCP) Jakarta EE Working Group
Jakarta EE Specification Process
Oracle development management Eclipse Enterprise for Java (EE4J)
Project Management Committee (PMC)

Java EE

Java EE es el nombre de la plataforma definida por el Java Community Process(JCP) para la implementación de Software empresarial en Java. Su ultima versión(8) fue la lanzada en septiembre de 2017 y aun se encontrara en el mercado por algunos(muchos) años ya que es oficialmente soportada por Glassfish, Payara, Wildfly, OpenLiberty y hay varios application servers  y apis uniendose a la fiesta. ¡Larga vida al rey!

Jakarta EE

Jakarta EE es el nombre de la plataforma que esta actualmente siendo creada en Eclipse, es una responsabilidad del Jakarta EE Working Group. Su tarea en estos momentos es adoptar las tecnologías donadas por Oracle a la fundación Eclipse.

Para fines prácticos, de acá den adelante llamaremos como Jakarta EE a lo que solíamos llamar como Java EE y en un futuro encontraremos implementaciones compatibles con Jakarta EE.

EE4J

EE4J es el top level dentro de la fundación Eclipse, es el proyecto «paragüas» para todos los estandares, implementaciones de referencia y tecnologías que forman la base de Jakarta EE. El mismo está bajo responsabilidad del EE4J Project Management Committee (PMC), manteniendo la visión superficial del proyecto en su conjunto. Entre sus responsabilidades esta el establecer requerimientos para lanzamientos y ayudar en las comunicaciones y cooperaciones a lo interno.

DevNexus es la conferencia Java a la que vale la pena viajar

Durante mi presentación en DevNexus tuve la oportunidad de conocer a algunas personas de América Latina que iban por primera vez a la conferencia, y entre algunos comentarios el siguiente fue común entre todos:

Realmente DevNexus ha superado mis expectativas y se debería promover más en Latinoamérica

A diferencia de Estados Unidos y Europa, en América Latina no existen conferencias «grandes» (a excepción de Brasil), por lo que para los desarrolladores latinoamericanos la única opción que nos queda es asistir a conferencias locales y/o viajar a alguna conferencia grande en Estados Unidos.

En esta linea, algunas empresas de América Latina suelen patrocinar a sus colaboradores para que asistan y se capaciten en este tipo de eventos, y entre el circuito de conferencias Java, a veces es difícil decidir una conferencia en particular.

Personalmente DevNexus es mi segunda conferencia favorita y me di a la tarea de recopilar los comentarios de los asistentes, llegando a 5 motivos que desde mi punto de vista son los que hacen a la conferencia genial y debería estar en su top al momento de seleccionar una conferencia (y pedir ayuda en su empresa).

DevNexus es en Atlanta

El aereopuerto de Atlanta es conocido por ser el que tiene mayor transito de pasajeros en el mundo, siendo el motivo principal que es el Hub Nacional e Internacional de Delta, por lo que existen vuelos directos casi desde cualquier país de América Latina.

Así mismo, si se compara Atlanta con Nueva York o San Francisco, resulta ser una ciudad bastante accesible económicamente hablando. Ni siquiera es una de las 10 ciudades más caras de Estados Unidos.

Buena relación calidad precio

Si se dan a la tarea de evaluar los speakers en otras conferencias notaran un patrón, DevNexus es uno de los eventos que concentra la mayor cantidad de Java Champions, Java One Rockstar, JUG Leaders con un precio accesible.

Podríamos decir entonces que DevNexus da speakers de calidad global a precios de conferencia regional.

No es unicamente una conferencia Java

A pesar de tener mucho contenido Java y ser organizada por el grupo de usuarios Java de Atlanta, DevNexus cuenta con tracks especificos para contenido no-Java en el cual pueden encontrar speakers con diversos backgrounds para programación web, móvil, computación científica, arquitectura de software, la diversidad es fuerte en esta conferencia. De hecho algunos asistentes han escrito que fueron a la conferencia tomando unicamente conferencias no Java :).

La zona está llena de atracciones

A pesar de que el Georgia World Congress center se encuentra en una zona no tan concurrida por las noches, tenemos en los alrededores el parque olímpico de Atlanta, el acuario de Atlanta(uno de los mejores de Estados Unidos) y el mundo Coca Cola. Si se cansan/aburren de la conferencia, siempre hay una opción para aprovechar el viaje.

Es una conferencia de developers para developers

Como dicta su lema, la mayoría de presentaciones en DevNexus están enfocadas para desarrolladores puros y se exponen muchos casos de estudio e implementaciones de diversas partes del mundo.

Personalmente durante este tiempo he podido identificar 3 tipos de presentaciones en cualquier conferencia siendo:

a. Sesiones dadas por el evangelista de una empresa, contando las novedades de un proyecto (open source o privativo)
b. Implementaciones en el mundo real por desarrolladores de software y cuales particularidades encontraron al respecto
c. Publiconferencias

Digamos que, según lo observado, DevNexus logra el balance perfecto entre los 3 tipos de charlas, y . . . casi no hay publiconferencias.

 

Frebies

Asegúrense de llevar la maleta vacía, es muy probable que regresen con más t-shirts y stickers de los que pueden utilizar.

 

 

El nuevo nombre de JavaEE depende de ti

Luego del anuncio oficial de la donación de Java EE hacia la fundación Eclipse, la subsecuente necesidad de renombrar la plataforma, el esfuerzo fallido de permanecer con el nombre y la lluvia de ideas para obtener un nuevo nombre, la fundación Eclipse esta lista para renombrar a JavaEE, siendo las opciones finales:

* Jakarta Enterprise Edition

* Enterprise Profile

¿Como participar?

Para participar unicamente es necesario votar en el siguiente formulario . . . simple :).

https://goo.gl/forms/EPJUi6A6Dms5oiXl1

¿Porque tantas ideas y tan pocos nombres?

Para ser un nombre candidato, el mismo debía poder ser registrado con trademark bajo la fundación Eclipse, siendo estos los dos candidatos finales y los unicos realmente viables.

El primero es un guiño al ya retirado Apache Jakarta el cual fue la primera casa de todos los proyectos Java dentro de la fundación Apache, tales como Struts, Commons, JMeter, Ant. Luego de un tiempo el proyecto Jakarta fue retirado y la mayoria de sub-proyectos se volvieron top-level projects en Apache.

Particularmente este es mi preferido ya que la fundación Apache ha manifestado su disponibilidad para ceder el nombre y colaborar con Eclipse, licencias verdaderamente libres para todos :).

Además de esto Jakarta es la capital de la isla de Java.

En el caso de Enterprise Profile, esta relacionado al proyecto Eclipse Micro Profile, el cual toma lo mejor de Java EE para el mundo de los microservicios.

JavaEE Moderno, de monolitos a microservicios

Grabación directa de mi presentación en Java Day Guatemala 2017. Discusión del estado del arte de JavaEE, JavaE 7, JavaEE 8, EE4J y lo que viene en el futuro.

Adicionalmente explicamos Microprofile usando Payara Micro.

El estado del arte de Java EE, Java EE 7, Java EE 8 y EE4J

Este es un «pre-print» de un articulo de opinión a ser publicado en la revista de la escuela de ciencias y sistemas de la Universidad de San Carlos de Guatemala.

La palabra enterprise es un termino genérico utilizado para denominar a todo aquello que esta destinado/enfocado/personalizado a satisfacer las necesidades de la mediana y gran empresa. En materia de software una aplicación enterprise generalmente debe cumplir los siguientes requisitos:

  • Respuesta hacia alta demanda de información
  • Tiempos cortos de desarrollo
  • Estabilidad y soporte a largo plazo
  • Disponibilidad de recurso humano
  • Constante innovación

En esta línea y de acuerdo a varios rankings -e.g TIOBE, RedMonk, IEEE– Java continua siendo una de las plataformas elegidas para la creación de aplicaciones, existiendo dos tipos de abordajes para su construcción, los cuales en palabras de Erick Raymond serian:

  • Abordaje catedral: Donde se utiliza un conjunto de bibliotecas «curadas» para interactuar entre si, siendo los grandes en este escenario JavaEE y Spring.
  • Abordaje bazar: Donde se utiliza un conjunto de bibliotecas independientes para conformar una arquitectura de desarrollo personalizada.

Seguir leyendo →

Como instalar Eclipse para LLVM y GCC en 2017

YZQvyw

En línea con mi post anterior, en mi clase de programación avanzada en la facultad los alumnos utilizan GCC y LLVM como compiladores para C/C++. Por lo cual de nuevo estoy respondiendo la misma pregunta ¨¿que debo instalar para programar C++?¨, respuesta que generalmente se resume a:

  1. Buscar como instalar un compilador C/C++ (con miles de formas de hacerlo)
  2. Instalar algún IDE

o

  1. Instalar Visual Studio

Como no soy muy fan de Visual Studio pues . . . he preparado un tutorial de: Como instalar un entorno de desarrollo C/C++ utilizando Eclipse sin complicaciones en Windows.

Como comentario adicional, en este tutorial se asume que el sistema ya tiene un JDK instalado (si aun no lo tienen pueden ver el video anterior).

Pueden descargar MSYS2 desde http://www.msys2.org/

Como instalar un Java Developer Kit y Eclipse en 2017

eclipse-oxygen
Una de las preguntas que más recibo en conferencias es «¿como debo iniciar con Java?¨ y sobre todo ¨¿que debo instalar para programar en Java?¨ respuesta que generalmente se resume a:

  1. Visiten go.java si hablan inglés
  2. Instalar Java Developer Kit
  3. Instalar algún IDE

Sin embargo, durante mis clases de pre-grado me he dado cuenta que instalar un entorno Java es ligeramente más complicado para recién llegados, especialmente si han experimentado la instalación de plataformas del tipo «one stop solution» como Visual Studio.

Por tal motivo y por la pereza de estar respondiendo siempre lo mismo, he preparado un tutorial que he querido hacer desde hace varios años: Como instalar un entorno de desarrollo Java sin complicaciones en Windows.

Lecciones al desarrollar una startup con Java EE y JavaScript – Parte 1

Java 20 banner

 

Durante el desarrollo de Medmigo, he tenido la necesidad de «contarle al mundo» mis observaciones hacia el sentimiento de desarrollar Startups con Java EE y JavaScript, y ya que esta semana alcanzamos la fase beta creo que es el momento apropiado de hacerlo, de otra forma solo estaría comiéndome la torta antes del recreo :).

Seguir leyendo →