What's Behind One Button: Why Vibe Coding Isn't for Everyone

Learn about the complexity behind a simple "Follow" button and why a deep understanding of programming is essential for effective and secure digital solutions.

Stepan Mocjak Executive director
published 1 day ago

At first glance, it may seem that a button is just a simple element in the user interface that just needs to be pressed to perform its function. But behind every such button lies a complex world of decisions that requires a deep understanding of programming and problem-solving skills. This is why the concept of Vibe Coding - that is, programming without a deep understanding of the underlying principles - can be misleading and ineffective.

What's behind the "Follow" button

One example is the "follow" button on social media. It may seem that clicking this button just puts a row in the followers table and changes its colour. However, the reality is much more complex:

  • User login status: What happens if the user is not logged in? Does the button redirect them to the login page, or does it silently ignore the action? And if it redirects him, does it take him back to the original page after logging in? Does the user have to click tracking again, or does the app remember the action?

  • User restrictions: What happens when a user is blocked? Can he still track other users even if his account is deactivated?

  • Tracking notifications: Do we notify the other user that he/she has been tracked? In what way? Do we send emails? Do we have our own SMTP server or do we use an external service to send emails? Is our domain email on a spam list? Do we use push notifications? Do we collect tokens for notifications and one for each device, or one per user? Do we need Firebase to send out notifications?

  • Real-time updates: What if a user is following someone on one page, but has seven different tabs of our app open? Do we have a system for real-time updates for all tabs and devices? Are we using WebSockets, Events, or polling? How do we manage this with 100,000 active users?

  • Interaction with blocking: What if a user you're following blocks you? Do we delete the "follow" or show the page that you are blocked? And what if you block someone else? Does that remove the following? Or do you still see their content?

  • Peer tracking display: Do we display special peer tracking labels? On each page, we need to load all your tracking and combine it with the other user's tracking to find overlaps. Is this query fast? Maybe we should index this table or periodically run a "job" to update the peer tracking.

Vibe Coding vs. The Art of Programming

Programming isn't just about writing code, it's about designing systems that are scalable, efficient, and secure. Each button, each function, is just the tip of the iceberg, under which complex algorithms and decisions are hidden. Without a deep understanding of these aspects, a programmer can easily end up creating an unmaintainable or insecure system.

Vibe Coding - an approach to programming without understanding the basics - cannot replace the need for real skills and knowledge in the field. It is an "art" that takes time, practice, and constant learning. And that's what makes apps and websites run efficiently, securely, and deliver real value to users.


To learn more about the complexities of programming and how we can help you with your digital projects, please don't hesitate to contact us. We're here to help you bring your ideas to life!

Share this article

Written by
Stepan Mocjak Executive director
Contact me stepan.mocjak@guava.cz
Get in touch