[Ránkings y salarios medios actualizados el 21 de agosto de 2018]
More...
Sí, ya sé que eso de aprender a programar en Java quizá te sorprenda, porque lo lees y piensas que a lo mejor ni siquiera te lo habías planteado; ya sabes cómo están las cosas últimamente con el paro y con el auge de la tecnología y quizá quieras hacer algo al respecto, pero no sabes muy bien qué. ¿Te has planteado alguna vez aprender a programar en Java? ¿Te has preguntado si deberías hacerlo?
La respuesta a estas dos pregunta es que sí, debes aprender a programar en Java, aunque no te lo hayas planteado aún. Si no te lo crees, déjame que te de tres razones por las cuales le recomendaría a una persona que aprendiera a programar:
Tres razones para aprender a programar
Yo creo que esta última razón es la más importante porque no parte del deseo de aprender algo nuevo, sino de la necesidad de hacerlo. La sociedad está experimentando unos cambios muy importantes que nos obligan a adaptarnos, es decir, a adquirir nuevas habilidades para no quedarnos atrás. Como puedes suponer, aprender a programar es una de esas habilidades; no la única pero sí una de las más importantes.
Qué dice la prensa
Si miras en la prensa, encontrarás titulares de todo tipo; los que profetizan una destrucción millonaria de empleos en la próxima década, por un lado:
Foro económico mundial
El Foro Económico Mundial estima que en tan sólo tres años habrá una pérdida neta de 5.1 millones de puestos de trabajo, debido a la cuarta revolución industrial.
Hasta los que nos aseguran que "las máquinas no nos jubilarán hasta el año 2040", aunque nadie tenga una bola de cristal para saber con total seguridad qué va a pasar:
El País
A juzgar por la opinión de los especialistas, lo más probable es que hasta nuestros bisnietos tengan que aprender un oficio. El promedio de sus respuestas es que las máquinas no sustituirán todos los trabajos hasta dentro de 122 años, lo que nos ubica casi en la lejana década de 2140.
¿Robotización, o tú?
No sé a ti, pero a mí lo que me motiva para aprender a programar en Java no es pensar que en el año 2140 las máquinas hagan todo el trabajo, porque para entonces ni tú ni yo estaremos por aquí, sino le hecho de que muy pronto muchos trabajos los realizarán robots, nos guste o no.
A lo que quiero llegar con esta reflexión es que si unas cuantas líneas de código pueden realizar tu trabajo, ¿por qué no aprendes a programar en Java? Así, podrías ser tú el que escribiese estas líneas de código y no solo no temerías la robotización, sino que te ganarías la vida con ella.
1
[Actualizado] Primera razón: Java ocupa posiciones muy elevadas en todos los ránkings
Ránkings de lenguajes de programación hay muchos y muy variados, pero si quieres aprender a programar en Java, lo que quieres es saber cuáles serán tus expectativas laborales. A continuación te muestro la posición que ocupa Java en algunos de estos ránkings. Fíjate sobre todo en aquellos que se basan en ofertas de empleo:
NOTA: Iré actualizando los datos de esta tabla de manera regular. Con cada revisión actualizaré también la fecha de publicación de este artículo.
Trendy Skills
New Relic
Spectrum IEEE
TIOBE
PYPL
Redmonk
Conclusión nº 1: si aprendes a programar en Java, aprenderás una habilidad muy solicitada en el mercado laboral.
2
Segunda razón: 15 mil millones de dispositivos funcionan con Java...
Java nació en 1996 con la idea de que cualquier programa escrito en Java puede ejecutarse en cualquier dispositivo, ya fuera un ordenador, un frigorífico o una tostadora. Esta capacidad recibe el nombre de portabilidad.
¿Qué es eso de la portabilidad?
Básicamente, la portabilidad es la capacidad de poder ejecutar en cualquier dispositivo el código que escribes en tu ordenador.
Y ese es el truco del éxito de Java. Esa portabilidad es la que permite que Java esté presente en 15.000.000.000 de dispositivos. Y esa cifra no me la estoy inventando yo: es la cifra oficial que aporta Oracle.
Quince mil millones. ¿Te resulta difícil de creer?
UnoCero
De acuerdo a un nuevo estudio, el número de teléfonos móviles usados globalmente, es decir, en el mundo, llegará a cinco mil millones para mediados de este año. El trabajo de investigación es responsabilidad de GSMA, la asociación de operadores móviles.
Cinco mil millones de teléfonos moviles, la mayoría de ellos smartphones, y todo porque Java era, hasta hace poco, el único lenguaje de programación oficial para desarrollar aplicaciones para Android. Si tienes curiosidad en saber qué cuota de mercado tiene Android, échale un vistazo a este mapa interactivo:
Pero no son todo teléfonos. Buscando un poco más en la página oficial, encontramos lo siguiente:
- El 97% de los escritorios empresariales ejecutan Java.
- El 100% de los reproductores de Blu-ray incluyen Java.
- 5 mil millones de Java Cards en uso.
- 125 millones de dispositivos de televisión ejecutan Java.
- Los 5 principales fabricantes de equipos originales utilizan Java ME.
Conclusión nº 2: aprender a programar en Java te abre las puertas de un número inmenso de oportunidades laborales.
3
Tercera razón: ...y con el Internet de las cosas (IoT), muchos más dispositivos funcionarán con Java
Si has seguido leyendo en la página web oficial, Java se puede utilizar para "escribir aplicaciones potentes y eficaces para teléfonos móviles, procesadores remotos, microcontroladores, módulos inalámbricos, sensores, gateways, productos de consumo y prácticamente cualquier otro dispositivo electrónico".
Quizá te preguntes qué es el Internet de las cosas, qué significa toda esa frase y qué repercusión va a tener en tu vida, si la va a tener.
Pues bien: ya la está teniendo. Pero vayamos por pasos.
¿Qué es el Internet de las cosas (IoT)?
Es, básicamente, una red en la que, en lugar de personas, se conectan dispositivos. Estos dispositivos pueden, por un lado, interactuar entre ellos o, por otro, nos pueden dar la posibilidad de que nosotros lo hagamos, por ejemplo, mediante el uso de aplicaciones instaladas en nuestro smartphone.
Sí: ya es posible subir o bajar las persianas de casa, regular las luces y regular la calefacción, y todo desde la pantalla de tu teléfono. Puedes hacerlo desde cualquier lugar del mundo: solo necesitas estar conectado a internet.
Raspberry Pi y Arduino
Quizá pienses que, para disfrutar en tu hogar de todas las ventajas de la casa inteligente, necesites invertir bastante dinero, pero no te creas. En Amazon puedes encontrar kits con sensores y la placa de un mini-ordenador (Raspberry Pi, Arduino) para crear tus propios dispositivos inteligentes por menos de 100€, y a partir de 500€ puedes disfrutar de una casa inteligente:
elEconomista
...la archifamosa casa del futuro por fin se ha convertido en una realidad tangible. Totalmente comercializable y a precios no demasiado altos. [...] quien desee dotar a su vivienda de elementos de seguridad y que mejoren la comodidad haciendo su hogar más inteligente puede hacerlo ya y con solo 500 euros.
Quizá te preguntes qué tiene que ver todo esto con Java
La respuesta es porque Google está desarrollando "Android Things", una versión de Android que, por ahora, se encuentra aún en "vista previa" (la primera versión está en desarrollo y no se ha publicado de manera oficial) y que permite crear aplicaciones para domótica e Internet de las cosas, todo ello utilizando Android Studio, la herramienta oficial y gratuita para desarrollar aplicaciones para teléfonos con Android.
La parte chula de la historia es que Android Things funciona en los mini-ordenadores de los que te acabo de hablar, Raspberry Pi y Arduino; de hecho, Google te explica cómo instalar Android Things en una Raspberry Pi.
Conclusión nº 3: aprender a programar en Java permite desarrollar la creatividad creando interesantes proyectos.
4
Cuarta razón: aprender a programar en Java te permitirá crear muchos proyectos de distinta naturaleza
Me imagino que te estarás preguntando si te podría poner algún ejemplo de usos de Java en programación, pero no usos invisibles, en chips o similares, sino interfaces, juegos u otros proyectos similares, donde el uso de Java sea más visible.
En primer lugar, quizá te interese saber que Java permite la creación de interfaces profesionales utilizando Swing o, en las últimas versiones de Java, utilizando JavaFX, de manera que sí, Java se puede utilizar (y, de hecho, se utiliza) para crear aplicaciones de escritorio. A continuación te enumero algunos usos de Java, donde verás lo versátil que es este lenguaje de programación:
La versatilidad de Java
- Twitter, Uber, Square y Netflix utilizan Java en su infraestructura, y si no te lo crees, échale un vistazo a este artículo.
- Algunos juegos de ordenador muy conocidos, como Minecraft, están programados en Java.
- La NASA utiliza Java en el desarrollo de software que utilizan en la planificación de maniobras de mantenimiento de órbitas y en la generación de productos de datos relacionados con la órbita del Observatorio del Clima del Espacio Profundo.
- Murex, una aplicación de trading.
- ThinkFree, una suite ofimática.
- IntelliJ IDEA, una herramienta para programar, y Android Studio, la versión oficial (y gratuita) de IntelliJ para el desarrollo de aplicaciones para Android.
- Y, por supuesto, una inmensa mayoría de las aplicaciones que existen para Android. En el siguiente punto, el 5, sabrás por qué.
Conclusión nº 4: aprender a programar en Java te va a permitir crear herramientas de todo tipo.
5
Quinta razón: Java es uno de los lenguajes de programación oficiales para desarrollar aplicaciones para Android
Y, de hecho, era el único hasta mayo de este año. Ahora comparte el "trono" de Android junto con Kotlin, un lenguaje creado en 2011.
No obstante, Java y Kotlin no son los únicos lenguajes de programación con los que se pueden desarrollar aplicaciones para Android. El incoveniente que tiene no usar uno de estos dos lenguajes es que las aplicaciones no son nativas.
¿Qué es una aplicación nativa?
Aplicación "multiplataforma"
Aplicación "nativa"
La razón principal por la que se desarrollan aplicaciones multiplataforma es evidente: si queres que tu aplicación funcione tanto en Android como en iOS (iPhone), es más barato, ya que desarrollas una única aplicación. No obstante, sus funcionalidades se verán limitadas, la velocidad es menor, la experiencia de usuario no será la mejor tampoco... tiene pros y contras (aquí lo explican muy bien), y hay que considerar qué tipo de aplicación se quiere desarrollar.
Ya que empiezo, ¿por qué aprender a programar en Java, en lugar de en Kotlin?
Si buscas en Google, encontrarás argumentos tanto a favor como en contra de ambos lenguajes.
No obstante, un argumento de peso, para mí personalmente, es que Java tiene más de 20 años. Es un lenguaje consolidado que se utiliza en multitud de aplicaciones y plataformas, a diferencia de Kotlin. Por lo que he leído, el punto fuerte de Kotlin es que está muy optimizado para Android, pero para eso aprendo a programar en Java, que no me limita solo a Android, que posee una comunidad de usuarios muy grande, del que existen numerosos tutoriales y manuales, y que está muy solicitado en muchas otras áreas, no solo en desarrollo para Android.
Conclusión nº 5: aprender a programar en Java te abre las puertas del universo Android.
6
[Actualizado] Sexta razón: las expectativas laborales de aprender a programar en Java son muy buenas
El salario medio anual es superior a los 27.000€
A continuación te muestro el salario medio anual según varios recursos (plataformas de empleo).
NOTA: Iré actualizando los datos de esta tabla de manera regular. Con cada revisión actualizaré también la fecha de publicación de este artículo.
JobFluent
Indeed
El número de ofertas de trabajo para desarrolladores Java no va a dejar de crecer
Ahí tienes los datos que manejan Randstad, una plataforma internacional de empleo; Code.org, un recurso para aprender a programar cuyo material han ayudado a crear ingenieros de Google, Facebook, Microsoft y Twitter, y Facebook, que no requiere presentación.
No sé tú, pero yo los tengo muy en cuenta:
CincoDías
La compañía Randstad Professionals, especializada en selección de mandos y técnicos de alta responsabilidad, ha avanzado que los profesionales más demandados por las compañías en 2017 van a ser los desarrolladores y analistas Java [entre otros].
Foro económico mundial
...plataformas como Facebook, estiman que en actualmente
hay cerca de medio millón de empleos relacionados a la programación que no están ocupados, debido a la falta de talento en el sector.
En el futuro próximo, en 2020, esa cifra de vacantes disponibles ascenderá a 1 millón.
elEconomista
Para el año 2020 habrá 1,4 millones de empleos relacionados con la informática frente a tan solo 400.000 estudiantes, según Code.org, una organización sin ánimo de lucro que defiende la programación como parte de la educación básica de los jóvenes.
Conclusión nº 6: aprender a programar en Java te va a permitir encontrar un trabajo bien pagado.
7
Séptima razón: puedes obtener un certificado oficial de programador Java si te lo propones
Sí, así es. Que aprendas a programar por tu cuenta no implica que tenga que ser un hobbie: la buenta noticia es que puedes aprender a programar en Java por ti mismo y puedes obtener un título oficial. Y no me lo estoy inventando; de hecho, es lo que yo hice.
Cómo obtener un certificado oficial de programador Java
Detrás de Java hay una compañía de software con sede en California, Oracle. Oracle es la empresa que, desde 2009, desarrolla y publica regularmente versiones de Java.
Y ¿a quién le corresponde examinar tus conocimientos? Al creador, claro.
Oracle ofrece un sistema de certificaciones que te permite obtener un título oficial como programador Java. Lo que significa que puedes realizar todos los pasos por tu cuenta:
Te aconsejo desde la experiencia
Si has leído el apartado sobre mí, sabrás que yo superé en marzo de 2017 el examen de certificación de programador en Java asociado, con un 92% de puntuación, y eso teniendo en cuenta, por un lado, que antes de empezar no tenía en absoluto ningún conocimiento de programación y que, por otro, me aprendí de manera autodidacta con un manual que compré en Amazon y algún curso gratuito que encontré en Internet. Aquí te muestro los recursos que utilicé.
Sí, como lo oyes. Si quieres aprender, puedes hacerlo.
Conclusión nº 7: puedes aprender a programar en Java por tu cuenta. Basta con ponerle ganas.