Business

Gosling: "Ik wil duidelijke winnaars en verliezers in frameworks"

 

James Gosling is de vader van Java. Op een evenement als Javapolis in Antwerpen, wordt hij dan ook ontvangen als een Messias. Als hij over de beursvloer wandelt, wordt hij om de vijf meter aangeklampt voor een praatje, handtekening of foto. Nochtans niet de aard van het beestje: "Een aangeleerde vaardigheid" noemt hij het. Gevraagd naar wat hij nog liever zou doen, antwoordt hij: “Veel liever dan de wereld rond te reizen, zou ik weer willen programmeren. Als ik kon kiezen, wou ik dan werken aan de compiler voor JavaFX." Dat is java’s tegenhanger voor Adobe’s Flex.

IT Professional sprak met James Gosling over hoe hij tegen Java aankijkt tegenwoordig. We vroegen naar zijn ervaring bij de opensourcing, het falen in de consumentenmarkt en de wildgroei aan frameworks.

IT Professional: Was het moeilijk voor je toen Java vorig jaar openbron werd? Je was tenslotte ‘vader van…’.
James Gosling: Het was vrij makkelijk. Java was tot op zekere hoogte al een decennium een openbronproject. De broncode was beschikbaar en er was medewerking van de gemeenschap. Het enige dat veranderde, was onze licentie, door naar GPLv2 te gaan. Dat was geen echt probleem voor mij. Ik was er zelfs blij mee.
Het moeilijkste waren een aantal neveneffecten. We namen vroeger op geregelde tijdstippen snapshots en zetten die buiten onze firewall. Nu hebben we een live repository voor broncode.

Het was niet zozeer dat je de controle over Java verloor?
Op gebied van controle was er geen verandering. Java werd al beheerd door de Java Community Process. We opereren al jaren onder de JCP-regels.

Opensourcen zorgt ook voor forks. Kijk maar naar Google dat met een eigen runtime komt.
Wat Google deed, heeft niets met open source te maken. Ze zouden dat gedaan hebben, zelfs al hadden we niets openbron gemaakt. De grote vraag bij Google komt voort uit het feit dat ze niks vertellen. Ze hebben een zak code voor de deur gezet, maar er zijn geen tools, geen businessplan, geen telefoon waar de code op draait, geen netwerk. Er is alleen een zak code waarover je kan speculeren.
 

Hoe zie je java nog verder ontwikkelen?
Wel, enkele dingen zijn evident. Java wordt sneller, er komen meer API’s, er gaan meer interessante dingen gebeuren in ‘the edge’. Dit zijn allemaal evoluties, want ze zijn vrij voorspelbaar. Het is moeilijk om te zeggen welke abrupte veranderingen er gaan komen. 
 

 

Hoop je op iets onverwachts?
Wel, ik droom wel van onverwachte doorbraken. Een van die issues vandaag is het omgaan met multicore machines. Als je twintig jaar vooruit kijkt, zul je machines zien met duizend maal meer kernen dan vandaag. En we hebben echt geen goede manier om machines zo te programmeren. Ik droom ervan dat iemand zal komen met iets echt slim waardoor alle multi threaded problemen weg gaan. Maar dat is buitengewoon onwaarschijnlijk. 

Op welke markten zie je de toekomst van Java het rooskleurigst?
Als je kijkt waar vandaag het meeste geld te verdienen is, is het in enterprise. Maar de meeste veranderingen gebeuren in ‘the edge’: de apparaten met een interface naar de gebruiker, consumer facing devices. Aan de rand is er een grote diversiteit aan apparaten: mobiele telefoons die volwassen worden, blu-rayspelers, settop boxen, pda’s, auto’s.

Hoe belangrijk is het om actief te zijn in ‘consumer facing devices’?
Ik weet niet hoe je het kan meten. Sun doet niet echt zaken in de rand. Voor ons is de uitdaging in de verbinding tussen de rand, de kern en het netwerk. Je kan niet in het ene actief zijn zonder ook het andere erbij te nemen. De randarchitectuur moet open zijn en interconnecteerbaar. Dat is een ‘big deal’ voor ons.

Java was niet succesvol in de desktop. Is die omgeving totaal verloren?
Met JavaFX proberen we echt terug te komen. Hoewel, het is niet zozeer een comeback want veel enterprises zoals banken en grote corporaties, hebben een immense hoeveelheid Java op de desktop. Wat je niet vaak ziet is Java in de consumentenspace. Daar staan we niet zo sterk als het kon zijn. Een deel van de problemen die we daar hadden, gingen over ontplooiing: hoe je applicaties downloadt en installeert. En hoe de applicaties integreren met bijvoorbeeld de web browser.

Zijn de applicaties moeilijk te installeren of de runtime?
Wel, we werken hard aan beide. Je hebt de JDK6-updater die we willen uitbrengen ergens volgend jaar. Die heeft een serie verbeteringen: de installatie is veel eenvoudiger, het heeft een snelstartfunctie voor de VM. Er is ook een Java-kernel, wat een slechte naam is voor een systeem waarbij je eerst een klein pakket downloadt en de stukken daarna pas als je ze nodig hebt.

De grootste wijziging is de volledige herontwikkeling van de plugin-engine. Die verbindt de webbrowser met de applicaties. Er zijn met de huidige plugin een veelheid aan problemen door een oorsprong in Windows 98 en juridische problemen. We herbouwen hem nu.

Wat heeft –buiten Sun- de grootste invloed op Java?
De invloed van de Java-gemeenschap op de koers van Java, is enorm. Als je bijvoorbeeld kijkt naar de API’s van Java ME. Die zijn bijna volledig gedreven door de telecomoperatoren en de telefoonmakers. Wij zijn betrokken, maar zij doen het meeste werk. Het is hun universum, zij kennen het.
Gelijkaardig daaraan zijn smart cards. We zijn betrokken, maar de industrie leidt de veranderingen daar. Omdat Sun geen smartcards maakt, zijn we dus meer een smeermiddel dan een drijvende kracht.

 

 

Veel van de Java-zwakheden worden opgelost in frameworks. Dat leidt tot een gefragmenteerde omgeving. Hoe gaat dat verder gaan?
Wel, de frameworks zijn allemaal sets API’s. En het feit dat er zoveel API’s zijn, is net een van de grootste sterktes van het Java-platform. Je kan beginnen met een standaard-API, samengesteld op basis van hetgeen mensen het meest gebruiken. Daarnaast heb je dan de meer gespecialiseerde frameworks. Vaak zie je dat mensen eigen API’s gaan ontwikkelen in een gebied dat ze belangrijk vinden. En dat kan wel verwarring veroorzaken. 

De hoeveelheid frameworks zorgt niet alleen verwarring, maar toch ook problemen in rekrutering?
Ja, maar het is ook een fundamenteel deel van het innovatieproces. Mensen proberen. Een deel ervan slaagt, anderen falen. Als je dat proces gaat forceren, krijg je altijd een slecht resultaat. Er zijn een hele hoop frameworks geweest die mensen gebruiken. Maar de meeste hebben sterktes die gedupliceerd worden in de anderen.  Ik wil niet zozeer minder frameworks, maar ik wil minder verwarring rond frameworks. Ik wil dat er duidelijke winnaars en verliezers komen. Dat zou al helpen de verwarring te verminderen.

Welke zou je dan aanduiden als duidelijke winnaars?
Euhm… Ik ben allicht de slechtste persoon om dat aan te vragen. Ik heb geen encyclopedische kennis van de frameworks.

Waarom wil Sun met JavaFX in een markt intreden waar al twee bedrijven vechten voor een plaats? Microsoft heeft Silverlight en Adobe heeft Flex.
Het is een markt waarin we al meer dan tien jaar actief geweest zijn. We hebben er alleen niet genoeg aandacht aan besteed. We hebben onze energie in enterprise software gestoken.
Adobe timmert hard aan de weg met Flex, maar wij ook. Waarom zouden we uit de weg gaan en opgeven? Dat zou stom zijn.

Wat vind je van de nieuwe openheid van Microsoft?
Ze hebben nog een lange weg te gaan. Probeer maar eens de broncode vast te krijgen van het .NET framework, of van Windows. Als experiment. En wat voor licentie gebruiken ze? Shared source… ik heb nog geen advocaat erover laten gaan. Maar er is een grote afstand tussen shared source en alles wat aanvaard zou worden door de openbrongemeenschap.

 

blogbusinessitprofessional

Gerelateerde artikelen

Volg ons

Bekijk de huidige aanbiedingen bij Coolblue

Bekijk de huidige aanbiedingen bij Coolblue

👉 Bekijk alle deals