3 puntos por GN⁺ 2023-11-16 | 1 comentarios | Compartir por WhatsApp

¿Por qué se usa VBA?

El contexto del uso de VBA

  • Recientemente vi un video de un youtuber llamado ThePrimeTime sobre las quejas de un desarrollador respecto a la cultura empresarial.
  • Prime es un exemprendedor que actualmente trabaja en desarrollo de software en Netflix, y sus opiniones han sido criticadas por reflejar decepción con la cultura empresarial de las FAANG.
  • Aunque hay algo de verdad en lo que escribió el desarrollador, creo que está pasando por alto muchas de las causas de fondo de estos problemas.

La diversidad de usos de VBA

  • En el departamento de ingeniería de la empresa donde trabajo actualmente, tenemos acceso a varias tecnologías (plataformas de automatización).
  • Usamos diversas tecnologías on-premise y en la nube, como PowerShell, Excel (VBA, OfficeJS, OfficeScripts, PowerQuery), PowerBI Desktop, SAP Analysis for Office, Power Platform, ArcGIS, MapInfo e InfoWorks ICM.
  • También hay varias bases de datos administradas por TI, que incluyen problemas de clientes, datos de activos, datos de telemetría, datos de riesgo y datos financieros.

La garantía de mantenibilidad de VBA

  • En los años 2000, muchos sistemas se construyeron sobre bases de datos IBM Lotus Notes.
  • En 2019, Lotus Notes fue adquirido por HCL, y la continuidad de su soporte a largo plazo quedó en entredicho.
  • El equipo técnico intentó migrar los sistemas a nuevas tecnologías, pero la solución IBM BPM no está bien mantenida ni ofrece suficientes funcionalidades.
  • Cuando los SME (expertos en la materia) usan VBA, pueden controlar y mantener los sistemas según sus necesidades.

El control que ofrece VBA

  • En proyectos para construir nuevos sistemas de TI, el equipo técnico restringe el acceso al código y exige usar Microsoft PowerApps y Azure Pipelines.
  • Aunque los gerentes y SME tienen más conocimientos de desarrollo, resulta difícil aceptar las exigencias del equipo técnico.
  • Los SME mejoran y mantienen los sistemas existentes, y además tienen un conocimiento profundo de cómo interactúan los sistemas entre sí.

La UX de VBA

  • La mayoría de los ingenieros usan hojas de cálculo en su trabajo, y VBA puede integrarse dentro de esas hojas para mejorar la UX.

Conclusión

  • Hay muchas razones por las que las hojas de cálculo (y VBA) se siguen usando en muchas organizaciones.
  • Entre ellas están la insuficiencia de las alternativas que ofrece TI, la mala conectividad con los sistemas de origen, fallas en la estrategia de TI, la falta de colaboración con los SME y la poca capacitación en los sistemas alternativos.
  • Aunque se reconocen las debilidades de VBA, la mayoría de las personas dentro de la organización simplemente está haciendo lo mejor posible con las herramientas que tiene disponibles.

La opinión de GN⁺

  • Lo más importante de este artículo es que VBA sigue siendo una tecnología esencial en muchas organizaciones.
  • La flexibilidad, la garantía de mantenibilidad y la capacidad de control que ofrece VBA brindan ventajas que otras tecnologías no pueden reemplazar fácilmente.
  • Este artículo ofrece una mirada interesante sobre la complejidad de elegir tecnologías y sobre cómo se usan realmente dentro de las organizaciones.

1 comentarios

 
GN⁺ 2023-11-16
Comentarios en Hacker News
  • Según la experiencia de un ingeniero de software, le sorprendió que muchos desarrolladores profesionales usen Excel/VBA como herramienta auxiliar. Por ejemplo, un modelo de Excel creado por un analista de datos de un hedge fund incluía código VBA, que se usaba para extraer datos de una base de datos, colocarlos en hojas, armar fórmulas y darles formato. El analista elogió Excel y VBA, y comentó que si lo hubiera hecho en Python, habría tenido que seguir explicándolo.
  • Las empresas ya tienen un entorno de desarrollo dentro de Excel y pueden usarlo sin aprobaciones especiales. Con Excel y SharePoint se pueden construir almacenes de datos en red e interfaces web.
  • Un desarrollador contó que tuvo que crear una interfaz CRUD dentro de Excel para analistas. Explicó que, debido a las restricciones del departamento de TI, no le quedó otra que usar VBA.
  • Hay críticas a que los departamentos de TI no están orientados al servicio debido a procesos complejos y sus propios problemas. Se señala la complejidad de TI con el ejemplo de que la API REST de IBM BPM es casi inútil para el equipo técnico y los SME.
  • Existe la opinión de que VBA es una solución de los usuarios para rodear al departamento de TI: no es perfecta, pero es mejor que otras alternativas.
  • También hay experiencias de analistas de datos que se aburrían de tareas repetitivas diarias, descubrieron el botón de "grabar macro" y así empezaron a usar VBA.
  • Un desarrollador compartió que tuvo que crear una aplicación en VBA para personal desplegado en Afganistán.
  • Existe la perspectiva de que las hojas de cálculo, aunque son una tecnología antigua, siguen siendo efectivas para la programación funcional reactiva.
  • Hasta hace poco no había buenas alternativas a VBA, y existe la opinión de que el nuevo modelo de "add-ins" es el futuro.
  • Software como Airtable podría reemplazar Excel VBA, pero en entornos corporativos es difícil comprar y justificar software nuevo porque Excel ya está pagado y en uso.
  • Alguien visitó a un cliente para reemplazar una solución en VBA hecha por usuarios de negocio, pero existía la preocupación de que la nueva solución costaría mucho y no ofrecería tantas funciones como la solución existente.