Miten Power Fx mahdollistaa Microsoftin low-code vision

Ajankohtaista Kirjoittanut:
Low-code -kehittäminen on noussut yhä suositummaksi kehitysmenetelmäksi, mutta lopullista läpimurtoaan se ei ole vielä tehnyt. Onko Microsoftin uusi julkistus ratkaisu siihen?

Uran vaihto low-code -kehittäjäksi

Pari vuotta sitten vaihdoin myyntiurani teknisiin hommiin, jossa kehitän sovelluksia Power Appsilla. Siirtyminen tekniseen rooliin oli tyypillistä matalakynnyksisempi, koska minun ei tarvinnut opetella oikeaa koodaamista lähes nollista vaan pääsin nopeasti kehityksen makuun Power Appsin low-code editorilla.

Kaverien kysyessä työstäni olen kuvannut, että luon PhotoShop-tyyppisellä editorilla sovelluksen, jossa voin raahata ja kliksutella ikoneita paikoilleen ja jonka logiikkaan käytän Excel-pohjaista koodia.

Käytännössä appien kehittäminen tällä app-designerillä perinteisemmän koodieditorin sijaan mahdollistaa minulle sovellusten nopeamman tekemisen, kun niitä ei tarvitse aloittaa tyhjästä. Kehittyessä kehittäjänä loin yhä vaativampia sovelluksia, mutta ehkä jotain kehittäjäidentiteetistäni puuttui, koska eihän meillä Power Apps -kehittäjillä ole edes omaa kieltä.

 

Power Fx – ohjelmointikieli jokaiselle

Siihen tuli kuitenkin nyt hiljattain muutos Microsoftin julkaistaessa low-code ohjelmointikielen nimeltään Power Fx, jonka iskulauseena on: ”The low-code programming language for everyone”. Minunlaiselle Power Apps -kehittäjälle ei heti tule suuria vaikutuksia, mutta jatkoa ajatellen tämä uudistus mahdollistaa paljon suoraviivaisemman ja ammattimaisemman kehittämisen alustalla.

Power Platformiin kuuluu tällä hetkellä monta erilaista kehitystyökalua kuten data-analyysiin tarkoitettu Power BI, Power Automate työnkulkujen automatisointiin ja tuoreimpana Power Virtual Agents, jolla voit kehittää chatbotteja ilman turhia koodeja. Power Platformin päälle kehitettäessä on eduksi osata monia osia siitä, joten kehittäjille on aiheutunut päänvaivaa, kun työkalut toimivat eri kielillä ja merkintätavoilla.

Power Fx:n on jatkossa tarkoitus yhtenäistää alustan eri työkalujen kanssa käytettävä ohjelmointikieli, joten jatkossa Power Apps -kehittäjänä voin luoda esimerkiksi sähköpostimuistutus -työnkulun Power Automatella vaivattomammin, koska kieli on sama tuttu.

Julkistuksen myötä kieli muutettiin avoimeksi lähdekoodiksi, joka mahdollistaa sen, että yhteisö voi osallistua kielen kehittämiseen. Voin kehittää Power Apps sovelluksia nyt myös Visual Studio koodieditorilla app-designerin sijaan, jolloin kehittäminen muuttuu enemmän ammattimaiseksi sovelluskehittämiseksi versionhallintoineen sekä joustavamman yhteiskehittämisen ansiosta.

Otto ja Antti työskentelevät

 

Power Fx:n mahdollisuudet ammattilaiskehittäjille

Monimutkaisemmissa appeissa voi hyödyntää pro devaajien olemassa olevaa osaamista osana kehitystiimiä, kun sovelluskehitys tulee paremmin yhteensopivaksi pro developer -työkalujen ja menetelmien (lähdekoodinhallinta, kehityskilkkeet jne.) kanssa. Tämä tuo samalla Dynamics 365 ja Dataverse -devaajien työkalupakkiin uuden työkalun.

Tämä toimii myös toisinpäin, eli low-code tai kansalaiskehittäjä tulee yhä omavoimaisemmaksi, koska hänen ei tarvitse pyytää esimerkiksi Model-driven Appsia kehittäessä heti apua JavaScript-devaajalta vaan hän voi jatkossa tehdä lisätoiminnot Power Fx:llä.

Vaikka puhutaan low-code -kehittämisestä, niin edistyksellisemmät ratkaisut edellyttävät tyypillisten ohjelmoinnista tuttujen käsitteiden, kuten muuttujat, taulukoiden iterointi jne, sekä pilven eri mahdollisuuksien omaksumista. Aloitteleva kehittäjä saa kyllä tehtyä yksinkertaisia ratkaisuja, mutta osaavan tekijän käsissä Power Fx tukee myös vaativampien tuotantosovellusten kehityksen.

Power Fx tulee siis selkeyttämään linjaa läpi Power Platformin ja täydentämään uudempien tuotteiden kuten Virtual Agentsin kehitystapoja kielellä, joka on monille tuttu. Analytiikkapuolella Power BI -osaajille vakiintuneet kielet M ja DAX pysyvät kuitenkin toki ennallaan ja Power Fx  keskittyy siinä vain lukuun ja joidenkin relaatiotietojen kirjoittamiseen.

 

Siirtyminen Excel-velhosta Power Platform -devaajaksi

Power Fx pohjautuu Exceliin ja se on hyvä ratkaisu, koska niin moni ammattilainen osaa Excelin käytön ja funktiot. Microsoftin visio kansalaiskehittäjyydestä eli siitä, että vähemmän teknisesti orientoitunut henkilö pystyy kehittämään nopeasti ja tietoturvallisesti oman organisaationsa liiketoimintatarpeisiin vastaavaa sovellusta vaikuttaa realistiselta tavoitteelta.

Tämä taulukko näyttää kaikki Power Fx:n funktiot ja vihreällä merkatut ovat identtisiä tai hyvin lähellä Excelin versiota. Valkoisella taustalla olevia funktioita ei ole samalla tavalla käytössä Excelissä, ja joillekin näistä on käyttöä vain Power Apps sovelluksia luodessa:

Taulukko joka kuvaa esimerkkejä eri fx-koodeista

 

Sen lisäksi, että Power Appsin funktiot ovat pääosin tuttuja Excelistä niiden toiminta on myös samankaltaista. Näet Power Fx:ssä reaaliajassa miten lausekkeen muuttaminen vaikuttaa itse sovellukseen samoin kuten Excelissä-taulukossa näet solun muuttuvan, mikäli muokkaat jonkin toisen siihen liittyvää solua.

Tämän jatkuvan uudelleen laskemisen lisäksi Power Fx:llä voi lisätä automaatioita, jotka triggeröityvät tietyn napin painalluksella, kun taas Excel-taulukoissa näin ei ole. Olen ei-koodaaja taustaisena pystynyt keskustelemaan sovelluksen muokkaamisesta helposti ja pieniä muutoksia on voinut tehdä palavereissa jopa livenä, kun ei ole tarvinnut kirjoittaa viittätoista riviä JavaScript-koodia.

Mikäli sinulla on Excel tai koodiosaamista voit suuntautua siis osaksi Microsoftin kasvavaa Power Platformin kehittäjäyhteisöä. Power Platformille kehittäminen on parhaimmillaan hyvin kokonaisvaltaista ja yhtenäisen kielen ansiosta voit jatkossa ottaa nopeastikin haltuun mitä mielenkiintoisempia työkaluja Appseista aina Virtual Agentseihin unohtamatta AI Builderia. Saa nähdä pitääkö Gartnerin-tutkimus paikkansa missä se arvioi, että 2024 mennessä yli 65% sovelluskehityksestä tehdään low-code ratkaisuilla. Ainakin Microsoftilla on hyvät eväät siihen.