6 takeaways fra Microsoft Build 2019

13. maj 2019

Fra den 6.-8. maj var der Microsoft Build 2019 i Seattle, hvor vores Senior Tech Lead Tino Dainese deltog. Han blogger her om det vigtigste fra konferencen. Blandt andet kommer han ind på Azure, .net5, dotnet, c#, ML.net og AutoML.

Build-konferencen er i modsætning til Ignite-konferencen, som Microsoft også afholder årligt, 100% fokuseret på udvikling og udviklingsteknologier. Jeg deltog i år primært for at høre nyt om:

  • .net, ASP.NET Core og c#
  • Azure generelt
  • Machine learning

Selvom man går efter nogle særlige emner, kan det ikke udgås, at man bliver inspireret af de utrolig mange områder, som Microsoft breder sig over. I år var der ca. 600 sessioner, hvorfra ca. 175 var tekniske breakout sessioner, så der var masser af ny viden.

Noget nyt for Microsoft er den store fokus på studerende. Faktisk startede hele konferencen med et ”Imagine Cup World Championship”, som er finalen i en konkurrence, som har kørt i et år og inspireret tusindvis af unge mennesker til at anvende teknologi til at løse problemer. Det projekt, som vandt, hedder EasyGlucose og gør, at man med en almindelig mobil kan aflæse blodsukkeret ved at tage et macrobillede af øjet på en patient med diabetes og analysere det. Projektet vandt 100.000 USD og et mentorforløb med Microsofts CEO. Læs mere om det her:

Edge browseren

Vores frontend udviklere kan glæde sig over, at Microsoft har valgt at bruge en Chromes ”motor” til Edge browseren, men med en feature som gør, at man kan simulere en Microsoft IE browser. Det er der nok en del virksomheder, der er glade for, da mange intranet-applikationer er skrevet specielt til denne browser.

Dotnet

Jeg er stor fan af Scott Hanselmann og synes faktisk, at han ofte rammer et teknisk niveau, som passer til publikum, og samtidig er så underholdende, at det meste glider ned. Så hvis man går efter de sessioner, som han står for, er det helt sikkert underholdende. c#, dotnet krydret med tips og tricks. Der var masser af sessioner, som havde med dotnet at gøre, som det ses på billedet.

Dotnet er i det hele taget blevet et meget modent udviklingsframework. Hvis man var i tvivl om det – så så dette billede.

Ja, vi skal vænne os til at .net core og .net framework skal videre – og at det hele kommer til at hedde .net5, men der er faktisk god tid til at omstille sig. En udmelding som denne fra Microsoft gør, at vi ikke skal ud og lave en masse applikationer om lige nu, men vi ved, hvad vi skal bruge, når vi skal lave nye løsninger.  ”Long term support” er også noget vi skal vænne os til.

c# sproget fortsætter

For os udviklere er det godt at vide, at det c# sprog, vi har lært at kende og elsker, forsætter med at udvikle sig. Vi kan bruge det samme værktøj til at lave:

  • Desktop programmer, services etc.
  • Web asp.net
  • Cloud services
  • Mobile applikationer f.eks. med xamarin
  • Spil
  • Iot
  • AI med ML.net

Ja, det hele kommer til at hedde .net5, som er videreudviklingen af .net-standard. Der er ting, som ikke kommer med over til .net5 som f.eks. Windows form app – det skal stadig laves i .net framework, sikkert også efter 2020.

c# sproget har også fået nogle nye features. Normalt er det kun det nyeste, der bliver talt om. Ikke så meget de gamle versioner, men der var faktisk en talk med Anders Hejlsberg og et historisk tilbageblik på, hvor det hele kommer fra, Borland, Turbo-Pascal, Delphi etc. Anders arbejder pt. på TypeScript.

En sjov ide var denne figur, hvor man skulle lave en snor imellem de forskellige teknologier etc., som man hver især bruger.

  • Udvikler til windows, linux,mac
  • Editor, er visual studio code, sublime, Vim, Emacs, Atom, Eclipse, Visual studio
  • Sprog: vb.net, c#, Phyton, F#, Ruby, c++, Javascript, Java, TypeScrpt, Go
  • Udvikler til, Desktop, web, voice, games, blockchain mf.
  • Jeg bruger tabs eller spaces

Billedet tog jeg efter første dag, og det var bestemt ikke alle 6000 deltagere, som havde været forbi, men så mange, at man godt kunne se, at vi er meget forskellige.

Azure

Azure var naturligvis det helt store altoverskyggende emne. Alt er Azure, og der er alt, hvad man kan tænke sig, se bare dette katalog. Vi bruger allerede nu en række forskellige services til de projekter, vi bygger, men ikke AI og Machine Learning Azure services. Det er noget, som kunne være spændende at investere mere tid i.

ML.net

ML.net er machine learning framework, som er lavet til dotnet. Frameworket kan bruges, når man f.eks. gerne vil lave produktanbefalinger på baggrund af ordremængder – på samme måde som vi kender det fra Raptor og lignende. Det er helt nyt, at man ikke skal ud af .net for at lave query af big data. Frameworket kan også bruges til ”se” forskel på billeder og f.eks. lave metadata til billeder. Jeg lavede et sample-program på standen og fik beskrivelsen ud fra et billede af en mand, som hænger noget tøj på plads. Det er oplagt at bruge til metadata for vores produktbilleder, som normalt er meget enkelt opstillet.

AutoML

AutoML fik jeg også kigget på. Normalt er det en meget svær øvelse at få valgt de rigtige strategier for f.eks. at lave forecast af data, men det er nu blevet meget nemmere for data scientister.

Man skal naturligvis stadig have en meget god forståelse af data og bruge en masse tid på at ”vaske” data, så de er brugbare i machine learning-sammenhæng, men man kan hurtigere komme længere ved at bruge dette værktøj fremfor at have en data scientist til at lave en masse forskellige forsøg for at se, hvilke strategier der fungerer bedst på disse data.

 

Alt i alt har det været nogle gode dage på Microsoft Build. Jeg har fået meget inspiration og viden med hjem, som skal bearbejdes og deles med min kollegaer.