I think that we all know that growing cloud platform services popularity is amazing, and that it implies a lot of things and one of those implications is about app development and its own life cycle management.
While nowadays is almost sure that we can have a "continuous" connection so we can work online, there are sometimes that it is simply not possible. In those cases, we need to work offline, and to work offline on cloud application projects is something that seems not compatible.
In this scenario, we have some incredible tools provided by SAP that can really make a huge difference and that can facilitate a lot of our development work. I wasn't a big fan of using all this cloud technology, but now I can see that it was just change resistance; I've been traditionally a HANA On Premise user, and I'm still amazed of all that you can achieve using HANA platform combining all of its engines, but a few weeks ago I needed to work on a HANA appliance on SCP.
First things first: when I need to work on HANA, that first thing that I do is to configure a
SAP HANA Express Edition virtual machine for each project.
You have a lot of documentation on how to install it, and how to use it. On that HANA express edition I was used to load my data, build my models, and build all application needed components using XS classic and XSJS objects. That worked really fine for a long time. When you work on that way, you need to install eclipse (SAP HANA Studio), configure plugins, configure access systems, make repositories (when you want to develop an app), activate your changes, and a long etcetera.
You can review all that scenario in this documentation.
With HANA Studio and HANA express edition you were capable to work offline. You modeled on your HANA virtual machine and you developed using HANA Studio. If you have enough resources on that machine (most of the times your personal laptop), it was possible to handle all this development landscape.
But, what happen if you want to build an app using SAPUI5? You needed to
point to that CDN URL of SAPUI5 libraries, and basically you need to have internet connection to see and test your developments. Also, you are capable to load UI5 resources as part of your own project, but believe me that it takes ages to activate any code change when you load UI5 on your SAP HANA Studio repository. You have alternatives, of course, there is always an alternative so you can work with less problems.
Now we have
SAP Cloud Platform and
SAP WebIDE.
And, when I realize all that can be created using those components and
SCP services, it was blowmind. *imagine blowmind gif here*
You just need a "modern" web browser to work with SAP WebIDE on building an SAPUI5 or even on a HANA app. You can even work on your tablet!
What about working offline?
You can have a
SAP WebIDE personal edition. This edition allows you to work offline on your own machine because it includes its own web server. It doesn't have all those capabilities that you can find on SCP version, but it is completely functional and it is a lot lighter to use instead of Eclipse. You can even
update SAPUI5 libraries and use whichever version you need.
If you keep your HANA express edition virtual machine turned on, with this SAP WebIDE personal edition you can complete all your offline development. All this components needs to have similar "architecture" that you may have when you use SCP. I mean, you need to
define destinations to connect your SAP WebIDE personal edition with HANA server on HANA express edition.
Finally, when you have access to your SAP Cloud Platform cockpit, you can enable a
git repository to your HTML5 app, and it is possible to deploy your code developed on SAP WebIDE personal edition to this git repository. If you want to deploy all HANA "backend" modeling work, you will always have a
Delivery Unit that can be imported using SAP Web based development workbench on SCP HANA tenant.
I could even write on all details and go on a deep dive, but they are very well documented on correspondent documentation. Of course, you can always ask for help.
So, that's my offline development landscape: I use HANA express edition to work on backend tasks, I use SAP WebIDE personal edition for SAPUI5 development and I synchronize my work using GIT capabilities included on WebIDE personal and SCP edition.