Back to Blog

Is it easy to learn Bubble.io? (My experience as a Bubble Bootcamp participant and teacher)

bubble.io founders no code software development technology web development Jun 26, 2023

My Story

Over the last year, I’ve taught, coached, mentored, and advised over 50 people about Bubble.io and whether it could help them build their app idea.

Over this time, many founders have pitched their product ideas to me. I’ve asked probing questions, trying to understand if this person would be a candidate to learn Bubble.io, or whether they are better trying to engage a Bubble.io Developer or Agency to assist them with their process.

Meanwhile, I’ve also been developing Bubble.io applications for my own startup, as well as for several other startups. I’ve been developing my own Agency to assist others with some of the more challenging aspects of Bubble.io.

Here I’ve summarised my experience both learning Bubble.io myself and teaching others.

 

So is Bubble.io easy to learn?

Well, it depends:

  • Partly on you and your objectives.
  • Partly on how you define “easy”.
  • Partly on what you compare the experience to.

Let’s talk about three possible audiences for Bubble.io.

 

Magic rainbow unicorn lovers

If you had hoped to click a few buttons over the course of an hour, a day, or a weekend, birthing a magical rainbow unicorn floating on a cloud of fine fairy sparkles in the process — and I have met a few people in this camp — then your answer is “No”. It is not easy, according to your definition, and you will probably be disappointed.

 

Aspiring Devs

If you are interested in software development and are prepared for some hard work and learning, with some challenges and hurdles along the way — then there’s a really good chance you will enjoy learning Bubble.io.

You will find it relatively easy to become a Bubble.io Developer. Now there is an investment of time required here, which I will outline later in the article.

But it is many times quicker than learning full-stack web development.

 

Founders and business people

If you are focused on your business, and you want to learn Bubble as a way to prototype your ideas at a low cost and hand them over to a more experienced developer, then learning Bubble.io can be a very good investment.

You may not be willing to invest the time of the Aspiring Dev, but you are keen to pick up the basics of user interface design, data, and workflows. You may be content to build products that are probably a little embarrassing and don’t reflect where you’d like it to go eventually. Having said this, you are completely fine to validate your business assumptions using an approach like Lean Startup.

If this describes you, aspire to learn enough Bubble.io to understand what its capabilities are, and then manage a Freelancer or Agency to deliver your project. The bonus here is that you will be able to make small tweaks to your app down the track, without needing to pay your dev.

 

Recap: What is Bubble.io?

In case you haven’t heard, Bubble.io is a fantastic tool that is quickly rising in prominence with over 800k users.

Bubble.io shifts the focus of web development away from solving abstract technical problems involving acronyms that very few people have heard of or actually care about.

Rather, you will spend your time addressing business problems that everyone understands and sees value in solving.

Perfect for start-ups and existing businesses, Bubble.io gives you the ability to translate ideas as web applications without writing traditional code, maintaining virtual infrastructure, or thinking much about anything technical.

 

Why is it easier?

Bubble.io abstracts away much of the difficulty associated with traditional coding, for example:

  • provisioning server environments, databases, and APIs (understanding how to configure the basics of the cloud, operating systems, software languages, and modules needed to run your code)
  • staring at black screens with hundreds of lines of code and tricky syntax errors (put the comma or bracket in the wrong place and everything breaks)
  • maintaining versions of your code and automating deployment (e.g. moving your code from “Dev” or “Test” version to “Live”)
  • building basic features common to all applications like authentication and workflows.

 

What traditional software development skills are still worth knowing?

While I’ve met plenty of people who have built a web application on Bubble.io without prior software development experience, it definitely pays to understand some of the higher-level concepts of development to be able to build a quality, reliable, and scalable product on Bubble.

Especially if you are in the “aspiring dev” category, it is great to know something about:

  • visual design, user experience design, and design of application structures are the same whether you use Bubble.io or traditional techniques.
  • learning how to structure your database to enable you to read, modify and write data. At first, this can seem simple, but data structures make a big difference in how your application performs. You can absolutely learn this, but it will be a process of trial and error at first.
  • cloud architecture and front-end development. You will grow in your knowledge of this, but I think it is with investing time in learning a bit of front-end web development (HTML, CSS, and Javascript) if you want to be a serious Bubble.io developer. Also, I think learning the basics of Cloud architecture is important to be able to think about linking Bubble.io to different systems via API.

 

My context and objectives.

I started playing around with Bubble.io while I was on leave from my day job, as a data warehousing and analytics developer. During that time I was participating in a demanding startup accelerator, Founder Institute (FI) Sydney, Australia, and dreaming up our startup Realify.app, a tech-enabled way to transact Real Estate.

For context, the highest level of formal computer science training I had was taking a subject in Software Design and development over the last two years of high school in NSW, Australia. I have also done quite a few short online courses in web development, business intelligence, and solution architecture between 2008 and 2020.

So I wasn’t a complete “noob” as my kids would say. But I certainly did not have current skills as a web developer either, unless you count PHP circa 2008. I definitely see myself as a “Developer” as mentioned above (with 5 years of full-time experience), although I also consider myself to be a Founder/Entrepreneur.

 

So how easy is it to learn Bubble.io?

Bubble.io’s marketing makes it seem very easy to learn. From its simple drag-and-drop interface, with short video tutorials, building web applications at first seems to be a snap.

However, I didn’t necessarily feel like the free online training gave me the depth of knowledge I was after. They focused more on the how than the why.

First I’ll explain the process I took, along with my timelines, and I’ll try to answer this question at the end of the article.

 

My Bootcamp journey

Pardon my cynicism, but I wanted to know sooner rather than later if Bubble.io was going to be the right or wrong choice for my startup. So I signed up for a Bubble Bootcamp.

I wanted to progress quickly and talk to a real human about any challenges I faced. It was a good investment.

The following timelines are in Days. They roughly describe what I accomplished during the 8-week Bootcamp.

However, they are an estimate, where 1 day is roughly 8hrs of time invested.

As you can see, I put a fair bit of time into learning Bubble.io (close to 40 hrs/week over 2 months)

 

I started with the user interface (UI) and application structure — Day 1 to 5

At face value, building the UI was fairly easy. I spent the best part of a week looking at my favorite websites and translating their ideas into a series of desktop landing pages for our start-up. I played around with headers, footers, headings, hero images, icons, floating groups, popups, group focus, styles, and reusable elements. I decided to do a traditional website application structure (vs a single page web app) as my current project was external facing (i.e. visible to all internet users without being logged in).

I’d spent about 40hrs getting my website to look great on a desktop, and use most of the features of the Bubble.io UI elements.

My conclusion? UI design is relatively easy. Everything seemed to be going along smoothly. Until… I resized the browser window.

 

Responsiveness Part 1 — Day 6–10

Now responsiveness wasn’t on the list of Bootcamp topics for a while yet, but I REALLY wanted to know that I could get a pixel-perfect design for my app, and that it would work on a range of devices. So… I delved into Responsiveness way ahead of my class.

Having already invested around 40hrs into my UI, I was then having to break it down and in many places start again to get my design to work responsively at different browser widths.

  • Getting my Nav logo to sit on the left, my menu items in the middle, and my Auth section on the right of my header.
  • Grouping elements within additional groups with fixed amounts of padding.
  • Getting elements to center properly as page widths collapsed.
  • Selecting the correct margin setting.
  • Figuring out how to make parts of a line of elements fixed while other parts responded.
  • Having parts of a page with 2 columns. With 3 columns.

Yikes. After a few days (I’m talking say another 5 days) I decided to use Bubble’s mobile page feature, which lets the user specify an alternate version of screens for mobile devices. Phew, that got me out of trouble for a while.

My conclusion that responsiveness is hard. Mainly due to those pesky internet browsers, allowing users to resize windows to any conceivable combination of height and width… making the life of every web developer much more challenging than that of those designers who sit and make everything work at 1440px wide in their WYSIWYG design tools!

 

Designing the Database — Day 11–20

At a basic level, it was quite easy to get Bubble.io to write and read data from one or two tables (for example, creating a User record, or writing the input of a “Contact Us” form to a single Contact Us table).

Learning how Bubble queries data, especially across tables, was tricky, even for me. Keep in mind, that because of my professional background, I was a little ambitious. I grabbed a pencil and paper and went to town with wireframes, entity-relationship diagrams, and data dictionaries. I designed quite a complex database. I then implemented it. It still took me close to 80 hours to do and refine this.

I would argue that building a complex data model, of the kind required for most kinds of projects one might wish to deploy on Bubble, is not easy and will require quite a lot of time if you are new to development.

An example of this complexity may be querying a table of fixed values that the application provides users, allowing users to select one or more values, and then storing the resulting list of values to a separate “user-generated” table in the database. It is absolutely possible in Bubble, and not too difficult to implement, but if you are new to the data architecture, I would suggest seeking out an experienced developer to help you map your database and query patterns.

My conclusion that designing databases is hard (whether in Bubble.io or in any other platform). Prepare for repeated trial and error!

 

Displaying data in the UI — Day 21–22

Alright, with my database implemented and some test records created through the database editor, it was time to display my data in the UI!

My first challenge was to build a Profile page, connecting about 20 different fields from the database to show the selected user’s profile’s data. This included static fields like their name and picture, as well as interactive fields such as Favourites and Messages.

My conclusion? I found this relatively easy. Bubble’s dynamic expression builder makes this part straightforward. There is a powerful number of ways you can select and manipulate the data shown, and you can mostly get there by trial and error, and occasionally referring to Bubble’s online manual.

 

Connecting up some plugins (OAuth, Google Analytics) — Day 23–25

I wanted to make it easy for my users to log in using Google and Facebook, so I added these plugins. On the Bubble.io side these were fairly easy, but navigating the nuances and quirks of the Facebook and Google developer platforms took some time. I’d say I spent around one day getting these to work.

Google Analytics was also quite easy to connect. I simply installed the plugin and created my app, with Google picking up data from my Bubble app’s usage within a day. I then changed to a different plugin which enabled me to add custom events. This was still quite easy. So I expanded my app to capture incoming growth marketing variables such as:

  • utm_source
  • utm_medium
  • utm_content
  • utm_campaign
  • utm_term

I added some more plugins to capture the IP address and System/Browser Info and log this activity in an Audit Log table. There was a bit of playing around but I got it working fairly quickly.

My conclusion? working with common plugins was quite easy.

 

Improving the UI and building more pages — Day 29–39

I decided to build another feature (an onboarding process) and this time use a single-page app with URL parameters. I was pleasantly surprised that it all seemed to click for me. The user could navigate between screens of the single-page app, the data was being stored, I even attempted some nice animations.

My conclusion: Perhaps after 25 days of Bubble.io, things were starting to click for me.

 

Responsiveness Part 2 — day 40–42

I decided that I didn’t like having two versions of the same page, so I gave myself the challenge to refactor my design into a single version that worked from desktop all the way to mobile. I fine-tuned my understanding of responsive principles and got my content to the center nicely and work across each device size.

My conclusion: Ok now responsiveness is getting easier. After about 12 days of practice.

 

Reflections on the learning curve

I could go on, but after 42 days (or around 336hrs) you get the idea. The above timeline is roughly what I achieved during the Bootcamp, in my first 2 months of learning Bubble.io.

Compared to learning full-stack web development from scratch, I’d say the learning curve of Bubble.io was around 10% of the length (say 2 months vs 20 months!) to get to an intermediate bordering on an advanced level of proficiency.

Yes, I had a technical background, mainly on the data side of things, but in my book, 10% of the time is a significant win and an impressive accomplishment by the Bubble.io founders and team:

All in all, I found that Bubble.io pretty easy to learn.

However, the people I have taught without a developer background have often said they find it hard to learn and didn’t expect to have to invest as much time into learning as is actually required to achieve progress.

 

Why is that?

My running theory is that a proficient Bubble Developer is still really a Developer at heart. By this, I mean someone who has the desire to understand how web applications are built, with an interest in optimizing aspects of the product to improve the end user’s experience. Developers are committed to working things out when it becomes challenging — rather than giving up — and they readily take this on as part of their professional identity. People without this drive seem to struggle. I’d suggest that it might be better to put themselves in the founder/business owner category.

 

Is learning Bubble.io for everyone?

Bubble’s power is in its flexibility. It has limited guardrails, meaning you can do what you like, unlike other no-code tools that more or less give you a set menu of options. When thinking about your app, it is important to remember that all features must be built, and this takes time.

In my view, Bubble Inc presents Bubble.io as easier for people than it really is. As a motivated founder and developer, I totally understand where the Bubble founders are coming from with this. Their product has made it SO much easier for people, that I find it easy to forget that parts of Bubble.io are still best driven by someone with a software development background — or is willing to learn.

Anyone can learn Bubble.io given enough time and determination. But is that the right decision for you?

When people seek me out for advice, I really try to understand if they are software developers at heart, or whether they are more of entrepreneurs or business people. I see myself as both. I’d happily chip away at a complex software problem for days (starting at a screen, without talking to anyone), but I also enjoy the high level of business and startups.

When people “don’t have enough time” to start building anything of substance, it becomes clear that they are more focused on their business or job, which is perfectly valid.

At this point, I encourage them to understand Bubble.io at a level at which they could manage others to do the building on their behalf. But I also try to explain that if they don’t have the time themselves (and I’m talking 200–400hrs of time to learn and build their product) then they will have to be able to pay a competent developer to work for them.

 

Conclusion

Bubble.io is undoubtedly empowering. It is part of a broader democratizing and demonetizing force in tech, as part of the movement referred to as no-code. Bubble.io can certainly enable you to build a product, however, I have seen a lot of people underestimate the learning curve and the development time required to build an application to a professional standard on Bubble.io.

 

TLDR: So is Bubble.io easy to learn?

Developer track

If you have 200–400 hours and a desire to be a developer, the answer is Yes. Learn Bubble.io. You’ll thank me later. Really.

Founder/Business owner track

Do you have 40-60 hours to commit and want to leverage Bubble.io's shorter dev time to start or enhance your business? Then the answer is Yes. It is easy to learn the basics but you won’t get on to advanced topics in this timeline.

Try to get an overview of what Bubble.io can do for your business. This might be UI, data, and workflows, and then thinking about APIs and connecting your app to different third-party services.

Focus less on learning to do everything. Prioritise learning how to manage a Bubble.io Developer or Agency.

If you are a developer or a founder, you can begin learning Bubble faster than you can imagine. Join us for our intensive Bubble bootcamp here

 



Written By Will Ericksson

Managing Director of MomentumGroup.tech, Founder of Momentum Academy, and former Bubble Bootcamp/Bubble Immerse Instructor created over 40+ apps with Bubble.io.

 


 

Want to learn Bubble.io with us?

Sign up to know more about Momentum Academy and developing with Bubble.io!