Best practices for updating live sites in Bubble

I was wondering if anyone has pointers or advice on how to frequently update a live application. In other words, what are the best practices in bubble when moving from a version 1.0 to 2.0 of your application which will have live data?

2 Likes

I’d recommend importing the live data to development and running a full test there before deploying the new app back to live.
Make sure to test both desktop and mobile versions as something minor might have changed.
Be sure to deploy in off hours if you can and also test again in live for anything you may have missed.
Last it wouldn’t hurt to let your users know that you are going to update and what so they are not surprised if something is amiss - but you fix it quickly :wink:

It largely depends on how acceptable it is for your application to have bugs.

Sometimes, startups go really fast and do minimal testing before each release (e.g., manually go through the whole site and click on each link) and then push. Then, if someone runs into a bug, you can revert the app. This way, the user helped you find a bug and you didn’t have to spend your own time on it. With this you could release, say, 1x a day or 1x a week.

Bigger sites do this less. They often have a robust set of tests that must be passed before each release. They may only push new code every 6-12 weeks.

We typically try to push once every couple of weeks – pretty much anytime both of our developers are at a stopping point with their code and then we do a good amount of testing before releasing. We’re just finishing up the creation of some automated test scripts that will help us validate everything is working well before each release.

1 Like

Thanks,

I’m actually trying to launch my app in beta for a few months to get the word out and fix as many bugs as possible. I’ll give your recommendation a shot

I am also interested in this.

In particular, how do you handle changes to the data structure ?

If you add new fields, these will not populate with default values in the existing things (in fact the existing things will just have this field missing)

So I guess you might need to:

  1. Deploy a version of the app that has the new field with default value or workflow to set the value for newly created things, and an API Workflow to populate this field
  2. Run a bulk operation to populate the field on all existing items.
  3. Deploy a new version of the app that can now ue this field

How do you handle this ?

Are you making the automated scripts in bubble or in something else? If something else what have you found useful to make it in?

We hired someone to help us make them in serenity bdd and cucumber, run on codeship. As such, the scripts will pretend to be specific users and will go through our site clicking on buttons and making sure everything works. Additionally, it’ll pretend to be multiple different users so that it can test social features and interactions.

2 Likes

I, too, think it would be great to have an official well-documented procedure to follow for version releases - especially when there are changes to the data. This is something I would anticipate having to do with any reasonably successful app, so it would be good to feel comfortable with the process from the outset.

1 Like

Great thanks so much - I’ll take a look at codeship :slight_smile:

@sudsy, my advise is to start lean and adjust the process as your company grows. So, start with a quick process if / when that fits your business needs and then move to a more conservative, documented, time-consuming approach once you have the traffic/critical mass for it to make sense to be more careful. Can update the process in stages.

Setting up an official, well-documented procedure from the get go doesn’t work well if you’re trying to adapt quickly to customer needs, imo.

Of course, you know your business best. But, i see a lot of first time entrepreneurs copy the practices they’ve seen at big companies when running a startup, and it typically doesn’t work very well.

Best of luck!

Thanks very much, @sridharan.s. That makes sense, and I appreciate the insight! I definitely want to get something up and running ASAP, but I have a tendency to think ahead, anticipate, and as a result, sometimes get mired in the details. I guess I’m pretty optimistic about the potential of my idea(s), and I just want to be prepared. :slightly_smiling_face:

I understand the feeling. The fastest path in startup world is often to prove product / market fit because then you have either revenue and/or funding to accelerate growth.

One thing we focus on is pairing people who have a longer-term time orientation (like yourself) with people who have a short-term time orientation. Both tendenies are really valuable, and both are a liability. By paired people with complementary tendencies, we find that they typically balance each other out so that the find the right solution for the right problem.

I mention this because it’s advise I really wish someone had given me early in my startup career – find a mentor or cofounder who has the opposite tendencies and find a way to have them constructively challenge your approach so you regularly find better ways of doing things. I’ve learned so much by doing this myself.

1 Like

This topic was automatically closed after 70 days. New replies are no longer allowed.