Innovatie

Microsoft DevDays: Change the rules

0

DevDaysDat ook Microsoft inziet dat ‘de community’ een steeds belangrijkere plaats in neemt in de adoptie van alle producten en technieken mag geen nieuws heten, en in lijn met deze algemene trend was ook het thema van DevDays 2010 gekozen: ‘Change the rules’. In dit artikel, vooral gericht op developers, aandacht voor de presentatie van keynote Anders Hejlsberg over ontwikkelingen in programmeertalen.

Het gebruiken van nieuwe technologie, creativiteit en ‘outside the box’ denken waren de kapstok waaraan meer dan 80 sessies (zie ook de agenda) werden opgehangen.

Anders-HejlsbergAnders Hejlsberg (foto), die als lead C# architect bij Microsoft werkt, gaf in zijn keynote een prachtig overzicht van de geschiedenis van het programmeren, inclusief een live Turbo Pascal demo. Interessant om te merken was dat hij daarin de nadruk legde op hoe de learning curve in de afgelopen jaren verschoven is: lag vroeger bij het leren van de taal het zwaartepunt op het begrijpen van de syntax, tegenwoordig ben je veel meer tijd kwijt aan het leren werken met de bijbehorende IDE.

DevDays Community

DevDays Community

Dit hangt nauw samen met het feit dat de manier van developen de afgelopen jaren nauwelijks is veranderd; nog steeds houdt het merendeel van architecten en developers zich bezig met hoe iets ontwikkeld moet worden, en niet met het wat. Dit ‘overspecificeren’ resulteert erin dat de compiler uiteindelijk weinig voor je kan doen op het moment dat je klaar bent met je code. Dit vormde dan ook gelijk het opstapje naar wat ons de komende jaren te wachten staat op het gebied van ontwikkelingen.

In zijn keynote ging Hejlsberg in op de trends op het vlak van een aantal bekende programmeertalen:

  • domein-specifieke programmeertalen, ook wel DSL genoemd
  • functionele programmeertalen
  • dynamische programmeertalen

Voor elk van deze programmeertalen zijn voor- en nadelen te noemen, om te beginnen de nadelen. Als het gaat om domein-specifieke programmeertalen dan geldt dat deze vaak moeilijk te lezen zijn zonder kennis van het platform, bij functionele programmeertalen moet je de variabelen bewust manipuleerbaar maken, terwijl dynamische programmeertalen weer minder ondersteuning geven voor types. Bij moderne programmeertalen is de trend dat de voordelen van de bestaande talen worden gecombineerd.

Een goed voorbeeld hiervan is het nieuwe F# waarbij multi paralel programming wordt ondersteund. Want hoewel Moores Law nog steeds opgaat zien we wel dat de laatste jaren zich dit voortzet in meerdere cores (processoren). Tegenwoordig heeft een gemiddelde gebruiker 2.3 cores, terwijl bijna alle geschreven code nog steeds word geoptimaliseerd voor een enkele core. Juist die verandering, het optimizen voor nieuwe ontwikkelingen, dient ondersteund te worden door techniek. Zoals Heilsberg zijn introductie ook afsloot: de dag dat we stoppen met innoveren kunnen we naar huis.

Volg hier de hele serie DevDays artikelen.