Interview med David Rousset.

The Cool Microsoft Guy

Franske David Rousset var blandt talerne på årets ColdFront-konference. Han er en sjælden kombination af Microsoft-veteran og idemand bag flere non-kommercielle open source-projekter. Mød ham her og find ud af, hvordan han har gjort 3D-visualiseringer nemmere og hurtigere at arbejde med.

David Rousset begyndte sin karriere i Microsoft for ca. 15 år siden. Her arbejdede han i en årrække som Support Engineer på Internet Explorer 6 – en opgave, han set i bagspejlet selv kalder for et mareridt for en udvikler. Senere røg han over i en anden af Microsofts divisioner, hvor han blev såkaldt HTML5 Evangelist. I dag er han Senior Program Manager på Microsoft Edge.

“Men jeg bruger stadig meget tid på HTML5, hvor jeg taler på konferencer og skriver om frontend-udvikling baseret på blandt andet JavaScript og CSS. Sammen med en kollega fra Microsoft, David Catuhe, har jeg også været med til at udvikle de to frameworks Babylon.js og Vorlon.js,” indleder David Rousset over en skrattende Skype-forbindelse fra Paris.

Opbakning fra Microsoft

Det er navnlig udviklingen af de to non-kommercielle, open source-frameworks, der har gjort David Rousset til et navn i udviklermiljøet.

“I Frankrig er jeg kendt som The Cool Microsoft Guy,” siger han og griner. Han ved godt, at alt hvad Microsoft står for, som IT-gigant og milliardpengetank, ikke nødvendigvis harmonerer med hobbyprojekter som Babylon.js og Vorlon.js. Men han og Microsoft har med tiden fundet en balance mellem de to verdener, hvilket kommer begge parter til gode.

Anser Microsoft ligefrem dit arbejde på Babylon.js og Vorlon.js som vigtigt?
“I begyndelsen arbejdede David Catuhe og jeg kun på projekterne i vores fritid. Hvilket vil sige aftener, weekender og ferier. Men efterhånden er det blevet tydeligt, at vi igennem Babylon.js kan bruge den teknologi i vores arbejde med at supportere Microsofts platforme såsom Windows Phone, Internet Explorer og Edge. Derudover kunne Microsofts management-team godt se, at når vi deltog på konferencer, var vi på en måde med til at repræsentere Microsoft, selvom vi ikke snakkede direkte om Microsofts teknologier. Så det er win-win for alle, og i dag oplever vi mere og mere opbakning fra Microsoft-organisationen til at vedligeholde vores hobbyprojekter.”

Fra Microsofts synspunkt giver det vel også god mening at blive forbundet med jer to og jeres projekter?
“Bestemt. For Microsoft hjælper det dem meget at have sådan nogle som os, der er en del af et community uden at have et kommercielt formål,” siger David Rousset.

Babylon.js skal reducere kompleksitet

Nu til teknikken. For de uindviede er WebGL et JavaScript API til rendering af interaktiv 3D- og 2D-grafik i enhver kompatibel webbrowser uden brug af plug-ins såsom Flash og Silverlight. Udfordringen med WebGL er, at det er en relativ vanskelig og kompleks teknologi at arbejde med – selv for erfarne udviklere. Det var denne kompleksitet, der oprindeligt fik David og David til at udvikle Babylon.js.

“Vores mål har været at skabe et abstraktions-lag rundt om WebGL og lave et framework, der er virkelig nemt at arbejde med og som virker på tværs af alle enheder,” siger David Rousset.

“David Catuhe har arbejdet med 3D-visualisering i mere end 30 år, men jeg har aldrig været særlig god til det. Jeg ved ikke hvorfor, men jeg har på fornemmelsen, at der er nogle udviklere, som ligefrem har stræbt efter at gøre 3D-teknologi svært at forstå for andre. Derfor sagde jeg på et tidspunkt til David, da vi udviklede Babylon.js, at hvis jeg ikke forstår det her, så er der sikkert rigtig mange andre udviklere, der heller ikke forstår det. Det fik os til at træffe en række valg og udelade visse features i værktøjet. I dag er den feedback, vi oftest hører, at Babylon.js er enormt simpelt at arbejde med. Det gør mig både glad og stolt.”

Målgruppen for Babylon.js

“Målgruppen er alle, der har lyst til at lave 3D-visualiseringer på webben. Det kan være folk, der laver interaktive 3D-spil. Det kan være folk, der vil lave animerede logoer. Eller det kan være museer, der ønsker at give brugeren en virtuel rundvisning. Der er mange muligheder. Derudover er vi lige nu i dialog med spiludvikleren Ubisoft, som er interesseret i et samarbejde, ligesom vi også taler med et firma, der laver light-udgaver af flysimulatorer.”

Ud af komfortzonen

David Rousset forklarer, at der har været en klar udvikling i samspillet mellem ham og David Catuhe og det community, der har anvendt Babylon.js.
“Det første lange stykke tid skrev folk til os med spørgsmål til koden i stedet for selv at læse koden, når de stødte på noget, de ikke forstod. Derefter begyndte de selv at læse koden, og efter et års tid begyndte community’et at få de nødvendige færdigheder, der gjorde, at de kunne være med til at udvikle på koden. Det sidste er ekstremt hjælpsomt i et non-kommercielt projekt som vores, fordi det er krævende kun at være to til vedligeholdelsesarbejdet,” fortæller David Rousset.

Både Babylon.js og Vorlon.js er en inspirationskilde for mange udviklere. Hvor henter du selv din inspiration fra?
“Jeg er så heldig, at jeg får lov til at gæste en masse konferencer. Når jeg ikke selv taler, lytter jeg til de andre talere og henter meget inspiration derfra,” siger David Rousset og fortsætter:

“Helt generelt er mit bedste råd til andre, der søger inspiration, at de skal ud af deres komfortzone. Hvis man er WebGL-ekspert, er det eksempelvis ikke særlig interessant at være til en konference om WebGL, for det meste vil være velkendt viden. Når jeg er til konference, prøver jeg eksempelvis at lytte til designeksperter for at lære deres udfordringer at kende. Som udvikler har jeg en anden tilgang til webprojekter end dem. Og hvem ved – måske kan vi hjælpe hinanden?”


Babylon.js

Babylon.js er et komplet open source JavaScript-framework til eksempelvis at bygge og afvikle 3D-spil direkte i en browser med HTML 5 og WebGL.
Hvor det kræver en stor mængde JavaScript-kode og er meget komplekst at tegne selv et simpelt 3D-objekt i WebGL, kan man gøre det samme i Babylon.js med meget mindre kodearbejde og på en meget mere simpel måde.
Læs mere på: www.babylonjs.com

Vorlon.js

Vorlon.js er et open source-værktøj til remote debugging og test af JavaScript-kode i en webbrowser på en hvilken som helst enhed.
Læs mere på: www.vorlonjs.com

INtf?

KonsulentNyt nr. 40 2015: