Estaba haciendo un ejercicio mental que suelo hacer después de cumplir ciertas metas, identificar las tendencias tecnológicas de mi campo para enfocarme, aprender y obtener un beneficio. Todos dicen comúnmente que debemos hacer lo que nos gusta, pero por mi profesión hasta para llegar a esa conclusión solemos ser sistemáticos.
La ingeniería es tan amplia como su propia definición, así como sus ramas de conocimiento y gracias a la cuarta revolución industrial muchas disciplinas parecen converger con avances que hacen muy difícil seguir el ritmo. También es claro que como arquitecto, se suele tener un panorama general de distintas soluciones y tecnologías, sin embargo siempre vale la pena especializarse.
Después de la maestría decidí enfocarme en microservicios; aprender de patrones, estilos, contenedores, orquestadores, frameworks, etc. Es claro que no lo sé todo aún en esta área, sin embargo hay muchas nuevas opciones interesantes para aprender. Hice un resumen de las tendencias en el área de la ingeniería de software que tal vez pueda interesar.
Microservicios:
Este estilo de arquitectura ha ganado fuerza desde que Martin Fowler introdujo el concepto, como una forma de construir sistemas a través de componentes aislados tal que pueden desplegarse de manera independiente. Una gran cantidad de desarrollos que escalan en la nube aprovechan los microservicios para optimizar los costos, en todo caso la complejidad del mantenimiento sigue siendo un punto debil al iniciar. Actualmente varios lenguajes se han ajustado para permitir la construcción de microservicios, un curso muy interesante en udemy puede ser seguido para aquellos que gustan de java, particularmente spring boot: https://www.udemy.com/course/microservices-with-spring-boot-and-spring-cloud/
Alrededor de los microservicios existe una gran cantidad de tecnologias, patrones y conceptos que ocupan un buen tiempo para ser aprendidos y practicados: contenedores, orquestadores, api gateways, estilos de despliegue, etc. Una base puede ser encontrada en https://microservices.io/ y uno de los libros mejor vendidos es Building Microservices de Sam Newman, 2015.
Blockchain:
Esta práctica de base tecnológica distribuida favorece la confiabilidad y seguridad en las transacciones y habilita además la capacidad de ser auditadas. Aunque nació originalmente para intercambio de dinero electrónico, la cadena de bloques ha comenzado a ser explotado en una gran variedad de casos de uso. La universidad Nacional de Colombia ha ofrecido cursos prácticos para la construcción de contratos inteligentes aunque se debe estar pendiente de las fechas cada año, para el 2020 se llevó a cabo en abril: https://ingenieria.bogota.unal.edu.co/uec/?p=9749
Igualmente, alrededor de blockchain existe una gran cantidad de conceptos y tecnologías, el siguiente es un landscape que representa a cierto nivel esta realidad:
https://medium.com/@josh_nussbaum/blockchain-project-ecosystem-8940ababaf27
Inteligencia Artificial.
Más allá de una práctica o un estilo de arquitectura, es un campo de la computación. En la búsqueda de lograr la autonomía de las máquinas y facilitar así la vida, la inteligencia artificial tiene como objetivo principal lograr pasar el test de Turing. El avance actual en esta área ha llevado a varios expertos a pronosticar que se podría alcanzar, lo que llaman, la singularidad tecnológica : momento en el que la inteligencia artificial podría alcanzar la humana a la vez que se pueden diseñar y mejorar a sí mismas, es un punto entre el año 2045 y 2070 para el que no se puede predecir que sucederá después.
Todos los gobiernos están incentivando las nuevas generaciones para capacitarse en este tema, así como los negocios están viendo nuevas oportunidades para explotar. La IA está en casi todos lados, televisores, celulares, vehículos, etc, lo que genera una gran oportunidad laboral; solo es de recordar los 20 mil millones de pesos que invirtió el gobierno nacional en hacer análisis de sentimientos de publicaciones en redes sociales. A propósito, la interpretación del lenguaje natural y su análisis para identificar el tono y la intención es uno de los algoritmos más viejos ya expuestos como servicios en distintas plataformas de nube.
Al ser un área de la ingeniería es difícil indicar por dónde empezar, sin embargo, Coursera tiene unos cursos muy buenos en relación a este tema, principalmente "IA Paratodos" es una buena base para comenzar.
Big Data
Áreas como Big Data, Inteligencia Artificial, Machine learning, IoT e incluso computación cuántica están convirtiendose en prácticas interrelacionadas. La principal arquitectura de referencia para el procesamiento de datos escalable y tolerante a fallas es la Arquitectura Lambda.
Existe una enorme cantidad de recursos para aprender al igual que una gran cantidad de plataformas y tecnologias, el ecosistema es inmenso y uno de los principales institutos certificadores es Arcitura.
Luego de la acogida de Hadoop, las nubes principales decidieron ofrecer servicios PaaS para el procesamiento masivo de datos sobre la base de esta tecnologia de apache. El ecosistema basado en lambda, actualmente incluye distintas capacidades: ingesta, procesamiento, analitica, almacenamiento, indexación, visualización, etc:
https://www.oreilly.com/content/whats-next-for-big-data-applications/
Computación cuántica
Esta es un área relativamente nueva que incluye un paradigma de programación totalmente diferente que se basa principalmente en la teoria de la fisica cuantica y el algebra lineal. El procesamiento tradicional no ha tenido un crecimiento drástico en los últimos años por lo que la Ley de Moore, dicen algunos expertos, llegaria a su límite proximante, tal vez en 2023. Es la computación cuántica una oportunidad para continuar con esta tendencia.
Vienen 2 workshops interesantes en los próximas días empleando Microsoft e IBM como plataformas para desarrollo facilitados por Globant y EAFIT respectivamente.
- Globant. https://more.globant.com/webmail/497451/562251750/de1ba7a766cdb8854076cbdb0ed8d6f3f058b8ef6f9f37b6ccdea1d84098a726
- EAFIT. Aparte de incluir un posgrado en su oferta académica, va a tener un workshop práctico en un par de semanas. https://www.eafit.edu.co/cec/congresos/Paginas/computacion-cuantica.aspx
Hace un par de meses hubo un webinar tambien introductorio en la Escuela Colombiana de Ingenieria Julio Garavito, con un temario interesante:
https://ldbn.is.escuelaing.edu.co/events/q2020/index.html#Agenda
Comentarios
Publicar un comentario
Comenta, pregunta u orienta constructivamente.