domingo, 13 de septiembre de 2026

Lenguajes que no todos usan pero existe un mercado importante

El mundo de la informática y programación siempre está en movimiento. Todo cambia todo el tiempo.

Excel se ha convertido oficialmente en un lenguaje de programación. Las herramientas de I.A. cada vez son más usadas en las empresas (que antes rehuían de ellas, y hasta las prohibían). El programador no solo debe tener un repertorio de habilidades y conocimientos considerable ahora es indispensable saber usar éstas herramientas.  

Saber Java, PHP, Javascript, Spring Boot ... Claude Code, Github Copilot, etc. es cada día más necesario, casi obligatorio. ¿Por qué pasa con esos lenguajes raros que aparecen en algunas soicitudes? Y no, no estamos hablando de lenguajes como Rust, Go, Ballerina o hasta Erlang y Haskell. Estamos hablando de lenguajes o plataformas de desarrollo especializados en ciertas cosas como las finanzas, la estadística, el tratamiento de datos, etc.

Lenguajes o plataformas que deberíamos conocer y casi nadie sabe

Lenguajes que casi nadie conoce como:

Recapitulando:

Apex, es un lenguaje de programación orientado a objetos desarrollado por Salesforce para el desarrollo de aplicaciones en su plataforma de gestión de relaciones con clientes (CRM). Orientado a Objetos, fuertemente tipado, con una sintaxis similar a la de Java y C#. Integrado estrechamente con la plataforma Salesforce.

esProc SPL, es un lenguaje de procesamiento y cálculo de datos. Diseñado para el procesamiento avanzado de datos y se destaca en el manejo eficiente de conjuntos de datos masivos.

OpenEdge (Progress) ABL, un lenguaje de programación vinculado al entorno Progress OpenEdge, su base de datos y las utilidades que lo rodean. También ofrece herramientas esenciales para el desarrollo de aplicaciones, lo que le permite tener fácil acceso a todos los recursos de su aplicación.

SAS, es una plataforma software y un lenguaje de programación opera principalmente sobre tablas de datos. Influido por PL/1, un lenguaje de programación de propósito general adecuado para programación comercial, científica, no científica y de sistemas. Puede usar consultas SQL para la manipulación de los datos de las tablas.

Muchas preguntas tendrá el programador que no sabía de su existencia:

  • ¿Para qué usarlos? 
  • ¿En qué tipos de proyecto se ocupan? 
  • ¿Son libres de uso o tienen licencia? 
  • ¿Dónde y cómo los aprendo?
  • ¿Qué tan difícil es la curva de aprendizaje?

Observemos la siguiente tabla informativa:

Pregunta / Cuestión Apex (Salesforce) esProc SPL OpenEdge (Progress) ABL SAS
¿Para qué usarlos? Automatizar procesos de negocio complejos, crear lógica de backend, desencadenadores (triggers) e integraciones web dentro del ecosistema de Salesforce. Realizar cálculos complejos, transformaciones de datos masivos y procesamiento analítico de alto rendimiento como alternativa más eficiente a SQL/Python en escenarios de Big Data. Desarrollar aplicaciones empresariales orientadas a negocios (ERP, CRM, gestión de inventarios) conectadas directamente a su base de datos relacional nativa. Realizar análisis estadístico avanzado, minería de datos, inteligencia de negocios (BI), modelado predictivo y gestión de tablas de datos a gran escala.
¿En qué tipos de proyecto se ocupan? Proyectos de personalización de CRM, plataformas de ventas, atención al cliente, portales para usuarios y software SaaS sobre la plataforma Salesforce. Módulos de procesamiento de datos en tiempo real, data warehouses, proyectos de migración de datos y microservicios analíticos de alto rendimiento. Sistemas transaccionales (OLTP), software de gestión de recursos empresariales (ERP), sistemas bancarios, de manufactura y distribución. Proyectos de analítica financiera, investigación clínica/farmacéutica, evaluación de riesgos crediticios y estudios estadísticos gubernamentales o académicos.
¿Son libres de uso o tienen licencia? Licencia comercial (Propietario): El lenguaje se ejecuta en la nube de Salesforce. Requiere suscripciones a la plataforma (aunque existen cuentas de desarrollador gratuitas para pruebas). Código abierto / Comercial: Cuenta con una versión de código abierto (Open Source / Community) de libre uso, además de ediciones comerciales con soporte empresarial. Licencia comercial (Propietario): Requiere licencias de software de Progress Software tanto para el entorno de desarrollo como para la ejecución/base de datos. Licencia comercial (Propietario): Es una plataforma cerrada de alto costo empresarial. Cuenta con SAS OnDemand for Academics (versión gratuita restringida para aprendizaje/docencia).
¿Dónde y cómo los aprendo? Plataforma oficial: Salesforce Trailhead (gratuito e interactivo).

Recursos: Documentación de Salesforce Developers, cursos en Udemy, Pluralsight y certificación oficial de Salesforce.
Plataforma oficial: Sitio web de Raqsoft / esProc y su repositorio en GitHub.

Recursos: Documentación oficial, tutoriales en su sitio web, artículos de comparación con SQL y ejemplos en su comunidad.
Plataforma oficial: Progress Education Community y Progress Information Hub.

Recursos: Cursos en la plataforma de Progress, documentación técnica de OpenEdge ABL y comunidades de desarrolladores Progress.
Plataforma oficial: SAS Skill Builder y SAS Learning Hub.

Recursos: Cursos gratuitos con SAS OnDemand, certificaciones oficiales de SAS, tutoriales en Coursera y documentación técnica de SAS.
¿Qué tan difícil es la curva de aprendizaje? Moderada: Si ya conoces Java o C#, la sintaxis te resultará muy familiar. La mayor dificultad no es el lenguaje en sí, sino entender los límites de recursos de la plataforma (Governor Limits) y la arquitectura de Salesforce. Moderada a Alta: Utiliza un enfoque de programación basado en cuadrículas/tablas y un paradigma de datos diferente al de SQL tradicional o bucles convencionales, lo que requiere cambiar la forma de pensar el flujo de datos. Baja a Moderada: Tiene una sintaxis en inglés muy conversacional y orientada a eventos/negocio. Diseñado para interactuar con bases de datos de forma muy sencilla, aunque su ecosistema propietario tiene sus particularidades. Moderada: Su sintaxis es procedural y particular (basada en pasos DATA y pasos PROC). Si conoces SQL la manipulación de datos te resultará accesible, pero dominar los procedimientos estadísticos avanzados requiere una base matemática sólida.

Prácticamente todos son de licencia. Algo que el programador promedio no lo verá con buenos ojos. Salvo que el lugar donde los programadores se le dote de una licencia se ve difícil que uno desenvolse una cantidad considerable para hacerse con una para poder empezar a aprenderlo y usarlo.

Apex, esProc SPL, OpenEdge ABL, SAS frente a los lenguajes habituales

1. Frente a Java, C# y Kotlin:

  • Apex es esencialmente un derivado estilizado de Java/C# reducido para correr en la nube de Salesforce. 
  • Kotlin superpone expresividad moderna y paradigma funcional sobre la JVM, mientras que OpenEdge ABL y Apex priorizan la simplicidad de acceso a datos o reglas de negocio sobre la modernidad funcional del lenguaje.

2. Frente a Python, R y SQL (El mundo de los Datos):

  • SAS reinó en la analítica corporativa durante décadas, pero Python y R han dominado el mercado moderno debido a su ecosistema abierto (Open Source), librerías de Machine Learning y versatilidad general. 
  • esProc SPL busca solucionar las limitaciones sintácticas de SQL y el consumo de memoria de Python al procesar datos estructurados en lote.

3. Frente a JavaScript y PHP (Desarrollo Web y Prototipado):

  • JavaScript y PHP son flexibles y dominan la web de propósito general. Por el contrario, Apex y OpenEdge ABL están empaquetados para conectarse directamente a entornos de datos sin necesidad de configurar frameworks de backend desde cero.

4. Frente a Rust, Go y Haskell (Rendimiento, Concurrencia y Rigor):

  • Rust y Go se enfocan en concurrencia extrema, rendimiento a nivel de sistema y bajo consumo de recursos (microservicios e infraestructura). Ninguno de los 4 lenguajes especializados busca competir en este terreno. 
  • Haskell empuja la pureza funcional y la verificación matemática del código. En contraste, lenguajes como SAS o esProc SPL priorizan un modelo declarativo/procedural directo enfocado exclusivamente en transformar tablas y series de datos de negocio.

¿Qué lenguaje de estos 4 es el más recomendado?

Apex es el más recomendado. Su sintaxis es prácticamente idéntica a Java(orientación a objetos, tipos de datos y estructuras). Además hay una enorme demanda global y local de desarrolladores Salesforce ("Salesforce Developers"), con sueldos competitivos.

Quien este familiarizado con el desarrollo de APIs con Spring Boot lo encontará fácil o al menos podrá adaptarse mejor con respecto a los 3 restatntes.

esProc SPL, es excelente para procesamiento analítico de datos masivos como alternativa a SQL/Python, pero no está diseñado para construir arquitectura de microservicios o APIs empresariales. Un punto en contra. Poco recomendado.

SAS, es dominado por analistas de datos, estadísticos y científicos de datos. Se aleja del perfil de desarrollo de software/APIs tradicional y usa un paradigma procedural (pasos DATA y PROC). Un punto en contra. Poco recomendado.

OpenEdge ABL, es un lenguaje propietario enfocado en mantenimiento de sistemas legacy o ERPs específicos. La curva de oportunidad laboral es mucho más reducida frente al ecosistema moderno de APIs. Nada recomendado.

En definitiva, Apex es la mejor opción.

Continuaremos sobre estos temas y otras cosas sobre programación.

Enlaces:

https://codemonkeyjunior.blogspot.com/2024/06/sas-un-lenguaje-de-programacion-para.html
https://codemonkeyjunior.blogspot.com/2024/06/apex-un-lenguaje-de-programacion.html
https://codemonkeyjunior.blogspot.com/2024/03/openedge-abl-como-definir-variables-y.html
https://codemonkeyjunior.blogspot.com/2024/12/mas-sobre-esproc-spl-un-lenguaje.html

No hay comentarios:

Publicar un comentario

Lenguajes que no todos usan pero existe un mercado importante

El mundo de la informática y programación siempre está en movimiento. Todo cambia todo el tiempo. Excel se ha convertido oficialm...

Etiquetas

Archivo del blog