From my actual experience it is important to start development with one rule in mind:
Mobile performance and responsiveness first! From scratch!
Everything else comes second!
I had also performance problems and then i asked myself: What is the main problem? Its easy to say that some tech is the reason. In my case i was understanding simply this: my development workflow is wrong! Im the problem!
Because today most websites and apps will be used on mobile devices and often loaded over mobile phone networks. From my experience also the javascript rendering in mobile web browsers is slower. This means finaly: If you start with performance and responsiveness questions in the middle or end of your development, you will get endless problems!
What does that mean in practice? What you can do?
-
Most of all: use a smartphone with mobile phone network connection (not WiFi !) and a mobile browser as your main test screen. From beginning! After every development step reload the app on your smartphone over the mobile phone network. You will see problems instantly.
-
If you have a nice idea in mind, what the app could show your users and you see that this idea needs too much loading or rendering or database search time: make the idea simpler or forget the idea. The best idea makes no sence if your user will not see your idea fast.
-
Make the index/ home/ landing page as fast as possible.
-
Experiment with different settings if you have a performance problem and doesnt find the reason. For this just clone a whole page or app and then delete step by step every group and element. On every step reload the smartphone. At the latest here you will find your performance brakes.
-
And for the maintenance of your app:
A) Dont repeat yourself. Instead ask yourself from the beginning how you can reuse elements and data. As example: The design of your app you can manage often globally with database entires, costum states or under the “Styles” button. This way you dont need to change the appearance of every single element if you want to try later something new. You do this globally for a bunch of elements, the whole page or the whole app.
B) Name every element clear. Same for every data type and data field. You will find already used elements and data much faster in the elements tree or for dynamic data requests.
Sure also the Bubble platform self needs to be better and faster with the time. Same for every technology. No questions. But my point is: Before pointing on the technology, ask what yourself maybe doing wrong. Start with question your own development workflow! Like i did. On this way you will avoid not all, but much problems on the core 