Este post forma parte de la serie Éxodo creada tras el anunciado cierre del servicio trial de SAP Cloud Platform, en el entorno NEO:
Pero, ¿por qué buscar una alternativa al Business Application Studio (BAS) cuando es la opción que recomienda SAP?
Aunque aún me quedan opciones que explorar dentro de BAS, la verdad es que es un entorno muy bueno. Eficiente, moderno, abierto, gratuito… ¿Qué más se le puede pedir?
Bueno pues no es oro todo lo que reluce. El principal motivo para buscar una alternativa no es en sí el entorno de desarrollo, sino las condiciones generales del entorno Cloud Foundry de SAP Cloud Platform.
Para empezar la cuenta se desactiva cada 30 días y lo puedes extender hasta los 90. A partir de ahí, aunque lo puedes crear de nuevo, hay que volver a configurarlo todo cada vez.
Oye, que se puede vivir con ello. Basta con tener el código en repositorios git y volver a clonarlos una vez al mes. La configuración básica de la cuenta para usar BAS son solo 5 minutos. Pero no me gusta. Y no me da nada de confianza.
Luego ya el servicio Business Application Studio tiene otras restricciones con las que también se podría vivir pero que tampoco me gustan nada. Solo puedes tener dos Workspaces y solo uno activo en cada momento. Además si no hay actividad en 4 horas te paran el Workspace.
Vaya… cuanta generosidad…

Es un tema que se está moviendo ahora mismo dentro de SAP. Como muestra puedes ver el artículo de Jelena Perfiljeva o la reflexión de Antonio de Ancos sobre el tema. Es posible que haya cambios al respecto. O puede que no. Hay que moverse en cualquier caso.
Visual Studio Code
Para mi está es la alternativa: Visual Studio Code.
Como probablemente sepas, el servicio BAS está basado en Visual Studio Code (VS Code). A lo mejor no lo digo muy preciso pero el Business Application Studio es básicamente una máquina virtual en la nube con Visual Studio Code vitaminado y por debajo Node, Git y el resto de utilidades básicas necesarias para funcionar como servidor independiente.
Visual Studio Code es el entorno de desarrollo de Microsoft. Quizás esta no es una marca muy molona hoy en día pero no te engañes. Microsoft no es la empresa rancia de los 90 que devoraba a los competidores con talonario o con leyes. Hoy es día esta empresa se está acercando al Open Source y está apostando fuertemente por los desarrolladores. Pero lo que hace que Visual Studio Code sea el mejor entorno de desarrollo del mercado no es solo la cantidad de dinero que está metiendo ahí Microsoft. Lo que realmente marca la diferencia es el ecosistema que se ha creado a su alrededor.
Mira el gráfico del estudio que hizo /src/ comparando los mejores editores de código del mercado. Puedes acceder al informe completo aquí.

Está claro, no? Para mi la alternativa es obvia. Para irme a un VS Code restringido en la nube me voy a un VS Code local donde yo mande.
¿Ventajas? Al ser un programa local tienes control total sobre el software y el entorno. También es una ventaja la velocidad. En cualquier equipo decente el rendimiento es considerablemente mejor que el servicio en la nube. Aunque las cosas van a mejor, el cockpit de la plataforma y muchos de sus servicios nunca han destacado por su velocidad ni por su estabilidad. Además te quitas de en medio el SAP Cloud Connector.
Podría parecer un inconveniente el tener que instalarlo y configurarlo tú todo, pero la realidad es que el servicio BAS te lo dan casi vacío. También tienes que configurarlo.
La principal desventaja es que oficialmente SAP no está dando soporte a ningún IDE local, así que te tienes que buscar más la vida. Encontrarás algún apunte en la ayuda de SAP y algunos artículos, pero hay mucha menos información. Pero mucha menos información.
Por otro parte, no hay que preocuparse demasiado. Todo lo que se va haciendo en BAS se adapta rápido a VS Code. Tienes que contar con que todos los manuales, tutoriales, etc. no te van a valer tal cual. Vas a tener que esforzarte un poco más. Pero creo que puede merecer la pena. Es el precio a pagar por el poder que te otorga el lado oscuro.

Visual Studio Code por perfiles profesionales
Respecto a la elección de VS Code. Vamos a revisar las opciones por cada perfil profesional dentro de SAP.
Si eres un desarrollador Fiori / SAPUI5, todo lo dicho anteriormente no se mueve, nos quedamos con VS Code.
Veámoslo desde el punto de vista de un Abapero. Está previsto que en un futuro se puede hacer ABAP en BAS pero no se sabe cuando ni cuanto se podrá hacer. Dudo que puedan ganarle la batalla a Eclipse en el corto plazo.
Por otro lado, ya hay una integración decente de Abap con VS Code así que aquí sale ganando lo local. No obstante, es una integración limitada.
Si eres un usuario de front y lo que quieres es consultar cosas del back-end entonces VS Code está genial. Tienes acceso a todo el File Systems de SAP y puedes consultar y modificar todos los objetos.
Pero si eres un desarrollador Abap o realmente Full-Stack, esta integración se queda muy corta. Eclipse tiene muchísimas más opciones a las que no puedes renunciar. Tendrás que convivir con VS Code + Eclipse.
Con el análisis inverso, si eres un consultor de Abap puede que solo quieras consular la parte de SAPUI5 o hacer pequeños mantenimientos. Entonces puedes vivir solo con Eclipse y tener replicados los repositorios de SAPUI5 ahí mismo. No necesitas otro editor. Pero recuerda que Eclipse ya no es un entorno de desarrollo válido para para SAPUI5. Oficialmente está descontinuado y carece de todas ventajas de Fiori Elements incluido los desarrollos guiados de las Fiori Tools.
¿Y si eres un desarrollador de HANA? Aquí el escenario es aún más incierto, dependerá de dónde estés haciendo tus aplicaciones HANA. Si estás en HANA Platform (local o la nube) tendrás que seguir por el momento con el SAP WebIDE Full-Stack, la administración desde Eclipse… y estar atento a ver que pasa. Si estás usando el servicio HANA de Cloud Foundry ahí sí puedes elegir entre BAS y VS Code. Una locura.
Resumiendo
Como desarrollador Full-Stack la mejor opción que veo es mudarse a Visual Studio Code. Aunque por supuesto no se pueden desatender el resto de entornos.
En las próxima entradas veremos cómo configurar tu entorno de trabajo y después veremos end-to-end como llevar un proyecto de SAP WebIDE Full-Stack a Visual Studio Code. Cómo migrarlo, adaptarlo, testearlo y desplegarlo a un sistema on premise.
He sudado sangre pero ya está controlado.

Se ve que te has peleado con el tema… y lo has sufrido un poco… 😉
¡Gracias por los consejos!