Olen käynyt läpi Power Platformin vibe-koodaus työkalut omissa erilisissä kirjoituksissa. Tällä kertaa vuorossa on yhteenveto. Mihin kukin vaihtoehdoista on hyvä? Mitä puutteita niissä on? Mistä pidän itse eniten?
Työkaluja on tarjolla hengästyttävä määrä.

Aloitetaan niiden purkaminen!
Plan Designer
Plan designer ei oikeastaan edes ole vibe-koodaus työkalu. Se ei kirjoita koodia. Eikä prosessi ole mitenkään erityisen iteratiivinen.

Plan designer osaa kehoitteen pohjalta
- kuvata käyttäjäroolit ja niiden vaatimukset
- luoda sovelluksesta prosessikaavion
- luoda tarvittavan tietomallin
- luoda model-driven ja canvas Power Appsin
Tietomallissa plan designer osaa hyödyntää (ainakin auttavasti) Dataversen vakiotauluja (esim systemuser) ja se tekee näppärästi model-driven sovelluksen lomakkeineen ja näkymineen. Sen luoma canvas Power Apps taas on se sama vakiosovellus, jonka voi luoda automaattisesti yhden taulun pohjalta. Joillekin hyvä aloituspiste, mutta ei se mikään kummoinen sovellus ole.
Nykyisellään plan designer on hyödyllinen kevyen sovelluksen rakentamisen aloituksessa. Saat nopeasti tietomallin, luotua taulut ja mallipohjaisen sovelluksen tietojen ylläpitoon.
Plan designer on enemmän AI-avusteinen konfigurointityökalu kuin vibe-koodaustyökalu
App Builder (preview)
App Builder taas on vibe-ohjelmointia aidoimmillaan. Sinulla on käytössäsi ainoastaan chat-ikkuna, jolla pyydät App Builderia rakentamaan sovelluksen ja tekemään muutoksia siihen. Työkalun generoimaa koodia ei ole edes mahdollista käydä väijymässä.

App Builder on käytännössä M365 Copilotissa toimiva agentti. Sen käyttö edellyttää M365 Copilot lisenssiä. Se on työkaluista ainoa joka käyttää tietovarastona SharePoint-listoja. Listojen käyttöön liittyykin App Builderin suurimmat puutteet
- Sovellusta rakennettaessa App Builder luo aina uuden SharePoint-sivuston ja sinne sovelluksen tarvitsemat listat
- Tämän jälkeen listoja ei sitten muuteta. Mikäli sovelluksen uusi ominaisuus tarvitsee uusia listoja tai muutoksia nykyisiin, saat agentin ja sitä kautta sovelluksesi takuuvarmasti solmuun.
App Builder on alustan vibe-ohjelmointityökaluista myös ehdottomasti hitain.
Tällaisenaan en näe tälle juurikaan käyttöä. Mikäli App Builderilla luodun sovelluksen käyttämiä listoja voisi jälkikäteen muokata olisi se mainio peli korvaamaan yksinkertaiset kansalaiskehittäjien tekemät canvas Power Appsit. Ne ovat tyypillisesti 1-3 listan päälle rakennettuja sovelluksia. Mutta niihinkin yleensä elinkaaren aikana tehdään muutoksia, jotka edellyttävät uusien sarakkeiden lisäämistä listoille. Ja tähän App Builder ei vielä taivu.
Toki olisi hienoa jos sovellukseen voisi jälkikäteen lisätä myös uusia listoja. Tai jos sovelluksen voisi alunperinkin rakentaa olemassaolevien listojen päälle.
No, kaikkea ei voi saada. App Builder on kuitenkin niin rajoittunut, etten ainakaan vielä oikein lämpene sille.
Generative Pages
Generative Pages on alustan omista työkaluista se monipuolisin ja nopein (ja vanhin). Sen luomaa koodia voi tarkastelun lisäksi muokata (miksi ihmeessä haluaisin) sekä verrata edelliseen versioon. Vertailu (compare) on kätevä ominaisuus. Sen avulla näkee nopeasti, miten suuren osan koodista agentti on kirjoittanut uudelleen pyytämääsi muutosta tehdessään.

Mutta…
Generative Pagesin avulla voi tehdä ainoastaan yksittäisiä sivuja jotka upotetaan model-driven appsin navigaatioon. Sillä ei voi tehdä itsenäisiä sovelluksia. En ole myöskään löytänyt tapaa, jolla näin luodun sivun voisi avata (kontekstin kanssa) model-driven appsin lomakkeelta. Toisin päin tämän voi tehdä, eli avata generative pagesista model-driven appsin lomakkeen.
Generative pagesilla luodut sivut ovat omaan makuuni liian rajoitettuja käyttää.
Vibe Power Apps (preview)
Vibe Power Apps näyttää epäilyttävän paljon plan designerilta. Ikäänkuin se olisi irroitettu plan designerista omaksi kokonaisuudekseen.

Vibe Power Apps on kohtuullisen nopea ja tuottaa modernin näköisiä sovelluksia.
Sen erityisominaisuus on visuaalisesti näyttävien, mutta turhia graafisia elementtejä täynnä olevien sovellusten rakentaminen. Alla on kuva assettien hallinta -työkalusta. Pääsivulla ei näy asset-listaa ollenkaan. Sen sijaan meillä on 5 eri paikkaa, mistä voi luoda uuden assetin.

Suurin Vibe Power Appsin ongelma on kuitenkin sen luoma tietomalli. Se ei osaa (vielä) hyödyntää Dataversen valmiita tauluja. Tietomallia voi jälkikäteen muokata, mutten ole kertaakaan onnistunut saamaan sitä käyttämään olemassaolevia tauluja. Sovellus vain lopettaa kaiken toimintansa muutoksen jälkeen.
Ja vaikka tämä puute saataisiinkin korjattua (ja eiköhän se saada, plan designer toimi aluksi samalla tavalla), on tässä sama ongelma kuin Generative Pagesissa. Vibe Power Appsilla voi tehdä vain itsenäisiä sovelluksia.
Mitä oikeasti tarvitsisin on vibe-ohjelmointi työkalu, jolla voi tehdä sekä itsenäisiä sovelluksia, että custom page tyylisiä model-driven appsin laajennuksia.
Oma arvaukseni on että generative pages, plan designer ja vibe Power Apps tulevat jollain aikataululla yhdistymään. Ja hyvä niin.
Power Apps Code Apps (preview)
Power Apps Code Apps on tarjolla olevista työkaluista ehdoton suosikkini. Vertailu ei tosin ole järin reilu. Edellä läpikäydyt työkalut ovat osa alustaa. Niiden käyttöönotto ei vaadi mitään (paitsi Power Apps / M365 Copilot lisenssin ellei sitä jo ole). Ne on suunniteltu kenen tahansa käyttöön.
Power Apps Code Apps taas on täysiveristä ohjelmistokehitystä. Työ tehdään omalle työasemalle viritetyllä kehitysympäristöllä käyttäen vakiintuneita ohjelmistokehitystyökaluja. IT-alalla työskenteleville tai muuten kiinnostuneille ei mitenkään ylivoimaista. Mutten näe omaa äitiäni tekemässä pikkusovelluksia tällä setupilla.

Toisin kun alustan omilla vibe-työkaluilla, tällä voisin kuvitella tekeväni monimutkaisiakin sovelluksia. Koodin saa versionhallintaan, jolloin voit itse määritellä palautuspisteet. Pääset takaisin tasan tarkkaan siihen versioon, mikä sinulla jonain ajanhetkenä oli. Toisin kuin aiemmissa vaihtoehdoissa, joissa pyydät kielimallia palaamaan edelliseen versioon.
Työ on nopeaa ja voit valita mitä kielimallia käytät. Voit edetä haluamallasi tavalla. Kielimallin avulla tehtyjen määrittelyn ja teknisen suunnitelman kautta vaihettaiseen toteutukseen. Tai suoraan ensimmäiseen versioon ja siitä vapaasti iteroiden eteenpäin.
Tyyli on vapaa.
Aivan erinomainen työkalu jo nyt itsenäisten sovellusten tekemiseen. Sama puute tosin kuin generative pagesin ja vibe Power Appsin kanssa. Toivoisin että näitä voisi käyttää helposti custom pagen tapaan osana model-driven appsia. Esimerkiksi dialogeissa.
Yhteenveto
Alustan omat vibe-koodaustyökalut ovat vielä kaikki enemmän tai vähemmän keskeneräisiä. Uskon että niiden lukumäärä tulee myös jossain kohtaa vähenemään.
Mutta Power Apps Code Apps tekee selväksi LLM-pohjaisen kehityksen potentiaalin. Näitä työkaluja ei kannata sivuuttaa, vaan ottaa osaksi omaa työkalupakkia.