Monthly Community Update -- February 2022

Hi all,

This is our February community update! Read last month’s update here.

We’re starting to feel like a broken record saying this, but our main focus as a company right now is hiring and building the team. We’re short-staffed across the board on everything we want to be doing, and we have a very ambitious set of goals for the next year, so getting the right team in place is crucial for us. On the product front, we have three main goals driving a lot of our efforts: make Bubble’s performance really fast, harden Bubble’s security posture relative to external standards such as SOC2, and make it easier for new users to ramp up and onboard onto the platform.

We welcomed five new people to the team this month:

  • Jessica joining the engineering team to lead our agile development processes
  • Sofia joining the Success team
  • Andrew joining as an engineer
  • Vaed and Peter joining us as engineering interns

As always, our open roles can be found here. As mentioned in previous updates, these two roles are ones we think are particularly interesting for current Bubblers:

  • Technical Product Support Specialist: help us do deep investigations of user-reported bugs and issues. Does not require programming experience, but previous Bubble experience is a big plus!

  • Video Producer: help us create amazing educational content to accelerate the learning curve of new Bubblers!

Changes we made this month

As a part of our ongoing performance push, we made a number of small improvements, including some fixes to situations that can slow down loading the editor, improvements to the editor for apps with many version control conflicts, and improvements to performance for apps that have a lot of reusable elements.

We shipped a small improvement to version control to make it easier to revert as well as a few more version control bug fixes.

We also made a number of small product quality and polish improvements, including:

  • The debugger now shows when a property on an element is coming from a style, and can properly display date and number ranges
  • Improved the handling of expired magic link tokens
  • The ability to specify the type of an ordered list in bbcode
  • For our Stripe plugin, the ability to add a subscription_id in the Add Invoice Item action
  • … as well as many bug fixes

We continued to release bug fixes and improvements to our new responsive engine, including the ability to allow layout and sizing properties to be conditionally changed.

Finally, we partnered with Daily to release a new video conferencing and chat plugin.

On the community side of things:

  • We launched a new bootcamp format, Jumpstart Assembly, for people who want to get started with a smaller time and cost commitment
  • We’re launching a #BuildInPublic initiative to encourage people sharing their building journey with others
  • We’re preparing for the next Immerse cohort and will be opening applications shortly
  • We’re working with a few schools on no-code incubators, offering education and mentoring to young entrepreneurs

We have a number of new blog posts this month, including:

This month in numbers

  • New conversations via bug reports or support@bubble.io: 7,689 (down 5.4%).

  • Average first response time to messages: 6h 41m during business hours (up 2.6%)

  • Average response time to messages: 6h 36m during business hours (up 4.8%)

  • Open tickets being investigated by the engineering team: 63 (down from 74)

  • Of those, tickets that have been open longer than 7 days: 35 (up from 32)

Things on our minds

The last week was pretty disappointing in terms of uptime: we had two significant outages, on the 26th and on the 1st. While the causes for the two incidents were different, zooming out, the bigger pattern behind them is continued growth and load on our key systems and us falling behind on proactive maintenance. On the infrastructure side, we’ve been investing heavily in improving our observability, which should help us get in front of brewing problems rather than responding after things are already down, but we’re still doing a lot of the legwork there and haven’t realized all the benefits. We’re also still aggressively trying to grow the engineering team; right now we’re mainly focused on bringing on management and experienced engineers since our current team skews junior, although we hope that by mid-Spring we’ll be pushing hard on both junior and senior hiring.

What we’re currently working on

Our major performance push, focused on data loading and rendering, continues. We’re continuing to work on optimizing invisible elements, building a data dependency graph to optimize querying, and generating HTML and CSS upfront instead of on the fly. All of these are major projects and we expect them to take months to quarters of work, though for some of them we expect to see performance improvements along the way. We’re also pursuing smaller performance bug fixes as we find them.

Another note on performance: the new responsive engine performs significantly better than the old one, because the old engine relies on a lot of Javascript-based manual manipulation of element positioning, whereas the new engine relies on CSS, which is much faster. So we see continuing to improve the new engine and making it easier for both new and existing projects to move onto it as a major performance priority as well. Some of the upcoming performance work we’re doing will only benefit the new engine, because it builds on top of the technical changes the new engine introduces behind the scenes.

Speaking of the new responsive engine, we’re working on the following features:

  • Padding controls
  • Row / column gap controls
  • Drag-and-drop interaction with the elements tree

We’re also doing work around the new user experience and general in-editor education, to make Bubble easier to ramp up on for new users. This involves fixing some ongoing painpoints such as how long it takes to load the plugin installation UI, as well as tweaks to the onboarding and new app experience.

Another workstream we’re kicking off is an overhaul of our network architecture with the goal of hardening our security posture. We aim to be SOC2 compliant by the end of the year, and this is one of the key prerequisites.

As mentioned above, we’re continuing to improve version control, both from a bug-fixing and feature development perspective.

On the QA front, our outsourced partners have now built 332 tests. For migrating code to Typescript, we’ve now actually started the Typescript-ification part of the process – we have one file in our main codebase that’s in Typescript – and we’re making slow but steady progress off of coffee-script, which is down to 45.5% of the codebase.

Thank you all for all your support, and have a great February!

Josh and Emmanuel

53 Likes

This will come in handy! Excited for the improvements.

@josh I did a little mockup of UX improvements for the workflow page that would greatly enhance our productivity. Would mean a lot if you take a look.

10 Likes

This would be insane :rocket:

14 Likes

Thanks for the update! Although downtimes are a bummer, really appreciate the transparency and authenticity when they happen!

Side note: HIRE ME cuz I’m a raving fan!!! :wink:

I'll tell you why...

I freaking LOVE BUBBLE!! I’m half-decent at building in Bubble now, but my main expertise is in software sales and video presentations. People say I have a voice like smooth jazz and they could listen to me talk about anything all day! I’ll do educational videos, sales, support… shoot I’ll even do janitorial work. This product is AMAZING and the leadership seems to match! I already went part time at my current job (live stream sales) to focus more on my bubble app… but would love to work here instead!

3 Likes

This is so exciting for me. Can’t wait. Bubble is almost perfect, with the exception of the initial page loading speed. Sometimes our apps show a blank page for seconds before the page starts loading. I think enabling at least the animated loading progress bar while users wait would greatly improve the user experience.

7 Likes

YES PLEASE. :slight_smile:

4 Likes

Finally :rocket:

This is awesome!

I agree team building is key and working on improving the performance is needed, but shipping small features that are needed /requested should be manageable. I feel like the product team processes or metrics need some attention to keep up with the bubblers’ needs.
Again you guys are doing fabulous work this is just an external observation.

2 Likes

Will this improve our SEO score? Currently with a complete bubble mobile blank page and running Google’s Lighthouse, seeing pages scores of 10-12

3 Likes

Thanks for the updates @josh !!

Can you tell us more about what we would expect the end result of this optimization work to be?

We have, for example, tables on front-end pages which query large data tables, and give users the ability to filter by one or multiple options. We have had to put a lot of work into optimizing that experience with Bubble’s current speed and features, and we’re planning further refinement.

But we are always wondering, “What improvements is Bubble making that may ‘abstract away’ the optimization work we are doing by improving the fundamentals we don’t control?”

1 Like