Siempre he estado interesado en la programación de computadores, empecé un poco tarde, pero una vez cursé la primera asignatura en la universidad relacionada con el tema, quedé atrapado por este mundo.
Lenguajes y componentes de programación
Estos son los lenguajes y componentes que he manejado en mi trayectoria como programador:
C++:
Con el que uno aprende. Como parte de la primera asignatura de la universidad, desarrollé los diferentes ejercicios y proyectos en este gran y tradicional lenguaje.
Visual Basic:
Como parte de mi formación como Ingeniero Industrial, tuve la oportunidad de cursar una asignatura en la que aprendimos algo acerca de este lenguaje. Durante diferentes proyectos de las asignaturas que hicieron parte de la carrera, implementé diversos programas en este lenguaje. Siendo el lenguaje para programación de macros en excel, éste me ha resultado útil en diversas situaciones de mi vida laboral y personal.
GISDK:
Con este kit de desarrollo para el software TransCAD, he desarrollado diversas macros y funcionalidades en los proyectos de transporte en los que he trabajado, particularmente en temas de modelación de transporte privado y público de pasajeros y también lo relacionado con Sistemas de Información Geográfica. Es de los entornos de programación que más he disfrutado, una vez lo entiendes, el provecho que le puedes sacar es muy amplio; sus funciones geográficas tienen un rendimiento altísimo y su uso es bastante intuitivo, cuando aprendes lo básico, las posibilidades se incrementan notablemente.
Python - ArcPy:
Como experto en SIG y amante de la programación, entré al mundo de python gracias al paquete ArcPy del software ArcGIS. Esta herramienta me ha permitido automatizar diversos procesos geográficos bajo arquitecturas que manejan ese tipo de licenciamiento. Aunque soy un gran detractor del grupo ESRI y todos sus productos (próximamente escribiré un artículo acerca de esto), si estás en el mundo de los sistemas geográficos, debes tener conocimiento de estas herramientas.
ArcGIS API for JavaScript:
Siguiendo con lo relativo al mundo de SIG, esta API permite desarrollar mapas WEB interactivos a la medida, es de la herramientas de ESRI que respeto un poco, su interacción con el lenguaje de cliente JavaScript permite hacer desarrollos muy particulares según diversas necesidades. He desarrollado diferentes visores geográficos usando esta tecnología y se pueden obtener buenos resultados en poco tiempo.
JavaScript:
El lenguaje de cliente, el que los navegadores entienden. Nos permite interactuar con elementos HTML y sus estilos. Este lenguaje ha evolucionado muchísimo y nos ofrece infinidades de opciones con miles de librerías que facilitan nuestro trabajo. En todas las aplicaciones WEB en las que he trabajado he tenido relación directa con este lenguaje, con cada nuevo proyecto voy fortaleciendo mi conocimiento.
C#:
El lenguaje de propósito general de Microsoft, el más usado para Programación Orientada a Objetos (OOP por sus siglas en inglés) de esta compañia. Aunque cuento solamente con las nociones básicas de la teoría de OOP, he logrado interactuar satisfactoriamente con este lenguaje en las aplicaciones WEB y de escritorio que he desarrollado.
ASP.NET:
Con este Framework logré desarrollar algunas aplicaciones a nivel personal utilizando la variante Web Forms, ahora en mi vida laboral he implementado algunas aplicaciones WEB con el patrón Modelo-Vista-Controlador (MVC), esto con la última versión de .NET Framework. He realizado algunos ejercicios para poder realizar mis próximos desarrollos con la versión .NET Core 6.0.
React JS:
Una de las librerías más usadas de JavaScript, desarrollada y mantenida por Facebook. Debido a mi incursión en forma constante en el desarrollo de aplicaciones WEB en los útlimos años, consideré fundamental aprender React, esta herramienta junto con los Frameworks VUE y Angular son las más usadas para el desarrollo de Frontend (lo que vemos de una página WEB) en la actualidad. Para esto encontré el que es tal vez el mejor profesor de programación, Mosh Hamedani, te contaré un poco más de él a continuación. Este website es la primera aplicación WEB que desarrollo con React después de haber terminado el curso completo de Mosh.
Xamarin.Forms:
Framework para desarrollar aplicaciones móviles multiplataforma. Buscando la forma de hacer mi primera aplicación móvil, encontré este componente y decidí iniciar mi proceso así. Buscando la forma de manejar el aspecto de almacenamiento encontré un tutorial para la implementación de bases de datos Cosmos DB en proyectos de Xamarin.Forms. Fue así que me embarqué en mi primer desarrollo y resulté publicando mi primera App móvil que sirve para llevar las cuentas de tu hogar o de tu grupo de amigos o familiares: Cuentas Claras.
Cursos recomendados
Si estás interesado en aprender algún lenguaje de programación te recomiendo los cursos de Mosh Hamedani, son realmente buenos, si decides pagar por alguno de ellos, no te arrepentirás, en el siguiente enlace encuentras el sitio web para tomar estos cursos:
Si deseas conocer mejor su metodología antes de pagar, hay diversos cursos introductorios gratis en YouTUBE, allí también encontrarás unos pocos cursos completos, como el de Python:
Programas implementados
Windows:
A continuación te comparto algunos de los primeros programas para Windows que desarrollé en Visual Basic y C#. Para usarlos, descomprime el archivo (.exe) y ubícalo en una carpeta de tu preferencia, si te sale algún aviso de seguridad, continua sin problema, te aseguro que no es un archivo peligroso para tu dispositivo. ¡Ejecuta el archivo y listo!.
Aplicaciones WEB:
También te comparto el enlace de una de las aplicaciones WEB que desarrollé en mi paso por la Defensoría del Pueblo de Colombia, allí podrás consultar las variables clave de las Alertas Tempranas emitidas por la entidad. Esta aplicación está desarrollada en ASP.NET MVC, está desplegada en Azure como una WebApp y utiliza el módulo DevOps para integración y entrega continua, también usa el componente Blob Storage para el almacenamiento de documentos, los datos están almacenados en un servicio SQL Azure y tiene integrados unos tableros de Power BI; también tiene incorporado un componente geográfico soportado en una arquitectura de SIG basada en tecnología de ESRI:
Alertas Tempranas - Defensoría del Pueblo de Colombia
Aplicaciones móviles:
Cuentas Claras: App para llevar las cuentas de tu hogar o de tu grupo de amigos o familiares. Lleva el balance de gastos conjuntos y préstamos personales; úsala en el hogar, en tus viajes y mucho más. Disponible en Android, Windows y próximamente en iOS. Descárgala aquí.