One Month of Vibe Coding: What I Learned as a Non-developer

Earlier this year, I heard about vibe coding from other LinkedIn users. A friend I value was learning and implementing cool ideas with it. A developer I've met told me that most of his current work uses Loveable, applying vibe coding for client mockups. Watching this range of people drawn to the same approach, I realized there was real potential I was missing.

Think about a project you've had in mind for a long time. A website, an app, a widget of some kind. If you're not someone with the technical background, you've likely been postponing your idea for later, waiting until you meet the right thinking partner or an opportunity for funding comes up. It's time to shake that off.

What Vibe Coding Is

Vibe coding is essentially coding through AI, a promising development in that it offers the chance to build projects more quickly, execute ideas more efficiently, reduce time investment, and lower costs, especially at an early stage. While facilitated by AI tools, it builds on and transforms generations of developers' work, changing not only the relationship between people and code, but also between people and technology.

Put simply, and without the inflated language often used online, it is coding with the assistance of AI tools. At some of the most accessible levels, this includes tools like ChatGPT, Claude, and Gemini. More advanced tools include Cursor, Windsurf, and Replit.

A non-coding practitioner can now request blocks of code and design apps or websites with impressive functionality, layouts, and media integration. An hour of vibe coding can produce beautiful results that previously took weeks, if not months, to implement, especially for early-stage ideas.

My First Month of Experimenting

I am now wrapping up my first month of experimenting with vibe coding. I started thinking I just wanted to understand what this was about. What surprised me is how much my appetite for learning grew. Vibe coding helped me rediscover ideas I've had in mind for years but thought were out of reach.

As these ideas are still fresh in my head, I want to share what I learned and how I would approach it differently if starting again. My intention is to update my blog later with developments that can prompt others to get creative, push the boundaries of existing ideas, and learn new skills.

Key Lessons I've Learned

Treat it as an experiment, not a project.

Yes, you'll work on a project, but approach it as an experiment. It's a new domain even for people in tech. Expect ups and downs: things that look pretty but don't work, buttons that need activation, images requiring separate hosting links. Sometimes you won't know what questions or feedback to seek. It's ok. It's normal. The speed of code block creation shouldn't fool you into thinking everything is finished.

Here's something that helped me: write down your current understanding of what you encounter in simple words. Come back to those notes later to see how far you've come. Hop into different tools, sign in, check out the environments, and read about the pros and cons of each platform. This way, you get to know the landscape while also getting a feel for the sandbox where your experiments and learning will take place.

You are where you need to be.

Anywhere to start is a good place to start. A foundation in code and some tech literacy will certainly accelerate your progress, but great ideas, tangible new skills, and meaningful participation in this space are within reach for anyone. You don't need permission or perfect conditions to begin.

Start with a Project That Genuinely Matters to You

Think about something you've been wanting to build but where a lack of technical skills or time has held you back: a beautiful blog, an inspiring portfolio, or a first app prototype. It's far more useful and sustainable to work on something that matches your genuine need or interest.

Identify the Challenge Within Your Project

Here was mine: I wanted to create a website to showcase my work to others, but my work can be lengthy and bulky to present. Considering content, appearance, readability, searchability, and relevance to my various audiences all at once produced something that felt incoherent.

Having worked as a consultant for nonprofits and civil society organizations for most of my career, I had years of work to organize across multiple regions: the Middle East/West Asia, and the European Union. I wanted the site to reflect professionalism, knowledge, and a multitude of skills in a simple narrative style. Most importantly, I wanted to connect meaningfully with people in the sector, those hoping to work in development, and NGO career seekers.

Here's the reality: most themes on web building sites are rarely exactly what you need. It's more likely that one page from theme X works better with a template from theme Y. What I needed was a suite of developer, UI/UX, design, and content perspectives working together.

That's where vibe coding made the difference. I could ask multiple AI agents the same thing: "Here's my content. Here's what this website should accomplish. Design this segment for me." I received multiple layout options, design approaches, and execution styles to choose from. Problem solved, though not without iterations and future refinements still to come.

Prompt Properly

ChatGPT, Claude, Gemini, and similar platforms are used daily for a reason. But as smart as any AI tool can be, it cannot read your mind, just as a developer in real life cannot read your mind and vision.

The more you practice for your specific use, the more you'll see that instructions relating to design, style, fonts, and function really make a difference. No code you receive is final; you can always experiment. If your web or app components still look off, try including the following in your prompt:

  • Use UI and UX best practices.

  • Ensure search engine discoverability.

  • Ensure that mobile users can view the component with the same accessibility and aesthetic as web users.

  • Reduce or increase the speed and animation of text for moving components.

  • Recommend information hierarchy styles without removing significant substance.

You'll See the Wins Faster Than Other Methods

Note them before you forget what you couldn't do before you started. Your overall AI literacy and tech fluency could grow exponentially, but you might not even notice the shift happening. I didn't, until a friend told me he couldn't keep up with what I was saying.

More than one of my website segments were built with code developed through vibe coding. One example is an animated, moving banner displaying the logos of organizations I've engaged with. I learned the term "marquee" for this feature, which I certainly didn't know before building it. If you've ever tried to place logos on a website in a way that looks good, with coherent sizing and strong presentation across different devices, you know how much thought this requires. Vibe coding handled the technical aspect while I focused on the idea.

The experience taught me two things: first, how to design code blocks that are well-crafted and display beautifully for mobile users with the same ease and aesthetic as desktop users. Second, it showed me the most common structural elements of code blocks on websites with text, knowledge I wouldn't have gained otherwise.

Another project really brought this home. I used vibe coding to help build a digital archive for a cultural organization where I volunteer. This work is still in progress, but the code blocks I created saved us more than 80% of our storage capacity on WordPress without sacrificing the resolution for a significant load of images scanned across decades. That single result captures exactly why this kind of experimentation is worth the time and iteration.

Gaining entirely new ways of getting things done is a wonderful thing to experience.

Share What You Are Building

I only really sensed my progress when I spoke to someone close to me about what I was doing. Tell those willing to listen about your new accomplishments, whether they're small or large. Show them, ask what they think, ask them to try your work on their own devices, and listen to the feedback. Since you're not the one writing the code from scratch, there's less emotional investment in it. That creates distance from your own defenses, making you more open to feedback.

Do Not Let Success in Vibe Coding Make You Less Appreciative of Developers

Hard coding skills are incredibly valuable and perform miracles for businesses and people daily. The top apps you use for critical services such as transportation, government services, and social media are not built with vibe coding. They're built with the effort of developers and teams of experts working on enhancing experiences and building things of genuine value.

All tools, no matter how advanced, have their limitations. As you build larger projects, you'll find that vibe-coded blocks become less reliable (as for now).

At the same time, the more literacy you have with traditional code and the more tech fluency you develop, the more compelling, impactful and beautiful the results you can produce.

Enjoy!