Skip to main content

From Code to Prompt: 3 Ways to Build Apps in 2026

10 min readPower Platform
Download talk PDF

This is the written version of my session "From Code to Prompt: 3 Ways to Build Apps in 2026", delivered at Global Power Platform Bootcamp Madrid 2026.

The development landscape has shifted: from writing every line of code to describing what you want in natural language. The talk walked through three approaches to building apps in 2026 and when to pick each one.

The 2026 context: building apps today

Three very different ways to build an application now coexist:

  • Traditional Web Development — full control: you build everything.
  • Power Apps — the platform gives you structure, you configure.
  • Vibe Apps — you describe your idea, AI builds it for you.

The question is no longer how do I code it but which one is right for my case.

The development spectrum

From more control to more speed:

Pro-Code

  • Technologies: HTML, CSS, JS, C#, APIs, databases, DevOps
  • Profile: Full-stack developers

Low-Code

  • Technologies: Power Fx, connectors, Dataverse, drag-and-drop
  • Profile: Citizen developers, business analysts

Prompt-Code

  • Technologies: Natural language, AI agents, auto-generated React
  • Profile: Anyone with a business idea

Traditional Web Development

Stack and workflow

  • Presentation layer: React · Angular · Vue · Blazor
  • Services / Backend: ASP.NET Core · Node.js · Django
  • Data layer: SQL Server · PostgreSQL · CosmosDB
  • Platform & Infrastructure: Azure · Docker · Kubernetes
  • CI/CD: Azure DevOps · GitHub Actions

The workflow runs Requirements → Design → Development → Testing → Maintenance, in cycles of weeks or months, with frontend, backend, QA, DevOps and DBA teams.

Web Dev responsibilities

Every line is yours, and everything is your responsibility:

  • Security: Auth, OWASP, SSL, CORS…
  • Hosting: servers, scaling, monitoring
  • Database: design, migrations, backups
  • CI/CD: pipelines, environments, deploy
  • UI/UX: responsive, accessibility, testing
  • Identity: OAuth, JWT, Entra ID
  • Governance: code review, docs, architecture

Pros and cons

Pros

  • Full control over the app
  • Unlimited customization
  • Mature framework ecosystem
  • No vendor lock-in
  • Custom scalability

Cons

  • Long time-to-market (months)
  • Steep learning curve
  • High cost: team + infrastructure
  • Continuous maintenance
  • Integrations are custom development

What you need to know to deploy a web app connected to Dataverse

  1. Identity & Auth — Microsoft Entra ID
  2. MSAL — Authentication Library
  3. Dataverse Web API — REST + OData v4
  4. Azure Hosting — Static Web Apps + Functions
  5. Connectivity — CORS, Proxy, Redirect URIs
  6. Deployment Flow — 5 steps to production

Power Apps

Canvas vs Model-driven

Two approaches, one ecosystem:

Canvas Apps

  • Free-form "blank canvas" design
  • Pixel-level UI control
  • Power Fx as the language
  • Ideal for mobile apps

Model-driven Apps

  • UI generated from the data model
  • Dataverse: forms, views, dashboards
  • Less design, more structure
  • Ideal for management and process apps

Maker responsibilities in Power Apps

The platform handles most of the heavy lifting:

  • Security: Entra ID + Dataverse roles (included)
  • Hosting: Microsoft manages everything (included)
  • Database: Dataverse with automatic backups (included)
  • CI/CD: native Solutions + Pipelines (included)
  • Identity: automatic Entra ID, SSO (included)
  • Governance: DLP, environments, CoE Starter Kit (included)
  • UI/UX: you design it or it gets generated (your responsibility)
  • Business logic: Power Fx / Flows, you define it (your responsibility)

Pros and cons

Pros

  • From idea to app in hours/days
  • 1,400+ ready-to-use connectors
  • Enterprise governance included
  • Citizen developers can build
  • Full ecosystem (Automate, BI…)

Cons

  • UI limitations in Canvas
  • Power Fx: own learning curve
  • Vendor lock-in (Microsoft)
  • Complex licensing
  • Complex apps hard to maintain

Vibe Apps: the new experience

How it works

  1. Describe your idea — in natural language (text or voice)
  2. Enhance Prompt — AI improves your description
  3. Agents work — Plan + Data + Code in parallel
  4. Iterate and edit — request changes in natural language
  5. Publish — connect to Dataverse and deploy

Powered by GPT-5 · auto-generated React · enterprise-grade · globally available (preview).

The prompt we used in the demo: Room Booking

For the live demo we built a room booking app from this exact prompt (reproduced from the slides):

Create a Room Booking application for an office with the following features:

Data model:

  • A "Places" table with: Name, Description, Location (floor/building), Capacity (number of people), Status (Active/Inactive), and an optional Photo.
  • A "Bookings" table with: Place (lookup to Places), Booked By (person's name or email), Booking Date, Start Time, End Time, Purpose/Subject, and Status (Confirmed/Cancelled).

Core functionality:

  1. Places Management screen: A gallery showing all available places with their name, location, capacity and photo. A form to add new places and edit existing ones. Option to deactivate a place so it no longer appears for booking.
  2. Booking screen: The user selects a place from a list or card gallery. The user picks a date, start time and end time. Before confirming, the app must validate that no other active booking exists for the same place that overlaps with the selected date and time range. If there is a conflict, show a clear error message indicating the time slot is already taken and show who booked it. On successful booking, save the record and show a confirmation message.
  3. Calendar/Agenda view: A screen showing all bookings for a selected date, grouped by place, so users can see availability at a glance before booking. Allow filtering by place and by date range.
  4. My Bookings screen: Show all bookings made by the current user. Allow the user to cancel their own future bookings.

Overlap validation logic (important): A conflict exists when for the same Place and same Date, an existing confirmed booking's start time is before the new booking's end time AND the existing booking's end time is after the new booking's start time.

UX requirements: Use a modern, clean design with a left-side navigation menu. Use color indicators: green for available slots, red for occupied. The app should be responsive and mobile-friendly. Show toast notifications for success and error actions.

Vibe Apps responsibilities

Almost everything is included in the platform:

  • Security: Entra ID + Dataverse
  • Hosting: managed by Microsoft
  • Database: generated from the prompt
  • CI/CD: Solutions-aware, integrated
  • UI/UX: AI-generated, editable
  • Code: auto React, visible and editable
  • Identity: automatic Entra ID
  • Governance: enterprise-grade, included

Pros and limitations

Pros

  • From idea to app in minutes
  • No coding required
  • Enterprise-grade included
  • Conversational iteration
  • Generative Pages (GA August 2025)

Cons

  • Still in Preview (not for critical production)
  • Not editable outside Vibe
  • Best for small/medium apps
  • Complex apps need review
  • Requires Copilot in the tenant

The big comparison: which one do I pick?

Choose Web Dev when…

  • You need full control over the architecture
  • You have very specific requirements
  • You have a Dev + Ops experienced team

Choose Power Apps when…

  • They're departmental / CRUD apps
  • You need enterprise governance from day 1
  • Your team is citizen devs or functional profiles

Choose Vibe Apps when…

  • You want fast prototyping or to validate an idea
  • It's a new app with no dependencies
  • You want to explore the future of development

Wrap-up

There is no "best" option. There's the "right" option.

Thanks to everyone who came to GPPB Madrid 2026 — happy to keep the conversation going on any of these threads.