Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 34 reacties
Bron: Computerworld

De geestelijk vader van Java zou, als hij een keuze moest maken, ervoor kiezen de kern van de programmeertaal open source te maken. James Gosling, de man die Java acht jaar geleden losliet op de wereld, is ervan overtuigd dat Java veilig zou zijn voor sabotagepogingen van concurrenten die Java ongunstig gezind zijn. De markt zou zijn werk doen en tegengaan dat iemand code in Java zou smokkelen die het product incompatible zou maken en de ontwikkelgemeenschap zou breken.

Binnen Sun, een bedrijf dat beslissingen neemt op basis van consensus, bestaat echter grote onenigheid over de mogelijkheden die open source ontwikkeling Java zou bieden. Gosling is zoals gezegd een voorstander, maar Jonathan Schwartz (de executive vice president of software bij Sun) is duidelijk niet klaar voor de sprong. Zijn grootste angst bestaat uit een concurrent (hij noemt Microsoft met naam en toenaam) die Java zou kunnen leveren aan consumenten en daarvoor een aangepaste versie zou nemen, die niet voldoen zou aan de gedachte die de ontwikkelgemeenschap heeft bij de werking van Java.

Achter Java staan onderhand miljoenen ontwikkelaars, die vrij zijn ook met de kern van het systeem te experimenteren, zolang de ontwikkelingen niet commercieel gebruikt worden. Daarnaast is er sprake van een groeiend aantal open source Java-projecten. Sun is van plan de gemeenschap van Java-ontwikkelaars te stimuleren zodat deze groeit van 3 miljoen tot 10 miljoen leden. Desgevraagd zijn Gosling daar het volgende over:

JAVA logoI think it's a very realistic goal. It's a tough one, and a lot depends on how you think of the goal. You've got this huge educational system that is feeding the world with pre-educated Java developers. If you counted up all the people who have learned to program in Java, we are way ahead of 10 million.
Moderatie-faq Wijzig weergave

Reacties (34)

Je krijgt dan een dergelijk evolutie als bij Linux is gebeurd. Er zullen verschillende Java's komen. Jave SuSE, Java Red Hat etc. (slechts enkele voorbeelden)
Het gevolg hiervan is meestal functionaliteit. Iets wat heel mooi is. Een ander gevolg is echter concurrentie. Die concurrentie is ook weer leuk voor de evolutie van de taal en misschien zelfs zo goed in de richting van een 100% Java OS maar kan er ook voor zorgen dat Java midden in een machtsgevecht komt.

Voor beide kanten valt wat te zeggen, echter ik ben toch bang dat in de huidige markt een Java open source meer zou schaden als goed doen...
bedoel je zoiets?
http://developer.apple.com/macosx/architecture/index.html

een uiterst mooie integratie van JAVA in het besturingssysteem? Dan ben ik voor.
maar ik vind je stelling niet echt duidelijk.

ik persoonlijk vind JAVA open genoeg. Je hebt de sources van de class files in de API, en kan dus makkelijk kiezen vanwaar je je extends start. Vector? LinkedList? kijk even in de code, en je ziet snel de voordelen.
in .NET kun je dat neit zien, en weet je ook niet waar je bijvoorbeeld een customcontrol begint te extenden. Rechtstreeks van een tabel, of toch maar een webcontrol ? Je tast tamelijk in het duister omtrent implementatie (en databinding).
in .NET kun je dat neit zien, en weet je ook niet waar je bijvoorbeeld een customcontrol begint te extenden

Op zich heb je gelijk, alleen kleven daar een paar dingen aan vast. Op de eerste plaats is het open karakter van een JAVA Package niet echt commercieel interessant omdat een bedrijf niet wilt dat de klant de code kan zien. ok, hier zijn oplossingen voor, maar uiteindelijk zijn die wel buiten het pakket om.

Bij .NET kun je de code wel zien, mits je wegwijs bent in de Intermidiate Language en op zich is dat niet echt vriendelijk, maar wel goed te doen.
Ik kan niet geloven dat er ooit een Java OS zou komen. Want Java is nu eenmaal een vrituel machine en draait niet echt op de pc, eerder op het OS dat eronder zit en dat dan alles moet doorsturen naar de hardware.
JAVA OS bestaat al.
werd het eerst gebruikt op thin clients van Sun.
Was redelijk beperkt maar verbazend snel.
Er zijn nog wel meer JAVA OS'en. Ik heb net even gegoogled maar ik kan het niet zo snel vinden.

Op de HCC deelden ze 2,5 jaar geleden CDtjes uit van een JAVA OS (bij de UNIX tent). Maar nou weet ik helaas niet meer hoe dat OS heette. In(nogwat). Zoiets was het.
Java is een programeertaal. Je kan deze compileren (met bv. gjc) naar processor-specifieke bytecode.
Sun heeft er echter voor ge-opteerd om, omwille van platform onafhankelijkheid, een model te kiezen van een virtuele machine (JVM) die specifiek voor ieder platform geschreven moet worden en java bytecode interpreteert en omzet naar processor specifieke bytecode.
Omslachtig, maar je kan je programma compileren (en de sourcecode is dus verborgen) en die ene code vrijgeven voor alle platformen die een JVM hebben.
Men is anders al heel ver met het ontwikkelen van een BIOS die virtual machines ondersteunt. Daarmee kan je een native JAVA implementatie in de ene VM draaien, en een willekeurig ander OS in een andere VM.
Er bestaat geen RedHat java
Wel een jre/sdk van Sun, IBM en een van Blackdown.

Ik denk niet dat MS een aangepaste versie gaat maken als het onder GPL vrijgegeven wordt, want MS moet dan hun aanpassingen ook onder GPL vrijgeven en daarmee komen ongetwijfeld zeer veel geheimen van MS Windows boven water.
Als dit gebeurt en dan denk ik vooral aan microsoft, dan komt microsoft binnen no-time met een nieuwe virtual machine die in windows zit en niet zo traag opstart als die van Sun, kortom, microsoft blij, sun genaaid en de normale consument (lees: consument die geen benul heeft van tweaken enzo) merkt er niets van.
Dat Microsoft een (L)GPL product in z'n distrubitie op gaat nemen lijkt me van zowel jou als van Sun een onrealistische verwachting. Mochten ze het wel doen, kan ik me best indenken dat ze inderdaad een incompentable VM gaan uitbrengen, zoals ze in het verleden ook al gedaan hebben.
GPL is slechts een van de open source standaarden. Sun kan ook voor een andere open source variant kiezen.
Denk het wel eigelijk.
Webpagina's starten dan sneller op.
Ik zit hier met me forced XP zooi (dell laptop) een goeie 40 seconden te starten voordat JAVA eindelijk eens groen licht geeft. Als dit door microsoft goed geďntegreert zou worden, zou dat aanzienlijk veel tijd -kunnen- schelen.

Je hoeft geen tweaker om een dergelijke snelheidwinst te merken.
dat ligt aan xp en niet aan java.
ik draai het op een pIII/1200 met nt4 en dat gaat als een trein.
Maar is dat niet precies zoals de argumenten over hoe snel IE opstart tegenover Opera / Mozilla / Netscape enz... ? Namelijk: Microsoft laat allerlei dingen tijdens GUI opstart al in het achtergrond laden.

Dan denkt de consument: "Jezus, wat duurt dat stomme Netscape / Java / vul-maar-in lang om op te starten! Zal wel slechter zijn geprogrammeerd dan de Microsoft versie."

Dan besef je helemaal niet dat het ten eerste extra start-up tijd kost en ten tweede dat allerlei crap in het achtergrond draait of hangt, ten koste van je performance.
Je bedoelt, Microsoft komt binnen no-time met een *incompatible* (met de rest v.d. wereld) virtual machine...
Je bedoelt, Microsoft komt binnen no-time met een *incompatible* (met de rest v.d. wereld) virtual machine...

Ik snap je niet ... is de JAVA virtual machine bij uitgave dan niet incompatible met de rest van de wereld?

Wat bedoel je uberhaubt met compatibillity wat betreft de Common Language RunTime of de JVM?
simpel, bedoeld wordt dat Microsoft dan (zoals ze in het verleden al gedaan hebben), dan met een VM komt die allerlei speciale calls naar het Windows OS mogelijk maakt. Onder het mom van "mooi he, daardoor kunnen ontwikkelaars bepaalde dingen veel beter/mooier programmeren" maar ondertussen runt de aldus geschreven code dan dus alleen nog maar op die speciale Microsoft VM wat de hele platform portabiliteit van Java ondergraaft.
En CLR hoort weer bij .NET, dus wat dat ermee te maken heeft snap ik niet helemaal ?
who cares, die implementatie zou dan ook open source moeten zijn (ik ga ervanuit dat we het hier over de LGPL of GPL hebben)
ik ga ervanuit dat we het hier over de LGPL of GPL hebben
Dat lijkt mij helemaal niet zo vanzelfsprekend. De meeste bedrijven die code releasen doen dat zeker niet *alleen* als (L)GPL, omdat de techniek dan niet meer in hun eigen (closed source) programma's, en in die van andere bedrijven, toegepast kan worden. (denk aan bijv. AOL/Mozilla)

Sun snijdt zichzelf en bedrijven als IBM heus niet in de vingers door dat te doen, dat zou ook helemaal niet goed voor Java zijn.
Precies. En dat is dan gelijk de doodsteek voor Java, want die compatibiliteit is de enige bestaansreden voor Java.

De eerste poging een aantal jaren geleden toen MS proprietaire extenties wilde inbouwen, heeft SUN kunnen afslaan, omdat zij uiteindelijk gewoon bepaalden hoe Java eruit kwam te zien.

Als Java opensource zou worden, zou SUN die machts basis verliezen. En dan hou ik mijn hart vast....
Dat klopt niet, denk maar eens aan de Linux kernel, die is open source maar Linus (ja, de Linus) selecteert nog steeds wat er wel en vooral niet in komt
Dat is natuurlijk niet waar. Iedereen mag besluiten de huidige Linux release te forken en zelf verder gaan ontwikkelen en er dingen in te stoppen die Linus er niet in stopt.
Vervolgens kan je het gewoon releasen als jouw Linux, je hebt kans dat je een andere naam moet kiezen wegens trademarks e.d. en natuurlijk is het ook duidelijker als je het een andere naam geeft, maar het mag!

Dat is juist de kracht van OSS: Als je de houding van een maintainer van een stuk software niet aanstaat, bijvoorbeeld omdat hij/zij je patches om welke reden dan ook niet wil applien, dan kan je besluiten zelf verder te gaan werken aan het programma.
Dit is bijvoorbeeld gebeurd bij Mplayer, op een gegeven moment kwam er een nieuw stuk software MplayerX uit, gebaseerd op Mplayer, maar met wat patches die de makers van Mplayer niet wilden toevoegen. Uiteindelijk is dit uitgelopen op een flamewar van hier tot ver voorbij Mars, maar dat ligt denk ik meer aan de Mplayer-developers ;)
Nog niemand heeft Python genoemd in dit draadje...

Python valt onder een BSD achtige license. En wordt intussen behoorlijk veel gebruikt. Maar is nog niet echt gekidnapt door een eng groot bedrijf. En ik denk ook niet echt dat dat snel zal gebeuren...

Iets wat ook interessant is is het feit dat Sun Java onder een non-free license laat vallen doet veel ontwikkelaars overstappen naar Python.
Bij Java denk ik niet zozeer aan de taal zelf, maar meer aan alle technologie die je kunt gebruiken door middel van dingen die je in Java schrijft. J2EE is een behoorlijke verzameling van specificaties die veel dingen mogelijk maakt.

Ik denk dat je blik op de wereld een beetje beperkt is als je zegt dat veel ontwikkelaars overstappen van Java op Python omdat de taal Java niet onder een open licentie is verspreid. Binnen (grotere) bedrijven is er eigenlijk maar een taal/platform waarmee je behoorlijke systeemintegratie kunt doen en dat is Java. Python is in die kringen een bijzonder exotisch beestje.
Ok, misschien is mijn blik op Java en op (grotere) bedrijven een beetje beperkt. Maar om daarmee ook meteen mijn blik op de wereld beperkt te noemen?

Misschien is de blik op de wereld binnen (grotere) bedrijven een beetje beperkt als men denkt dat je alleen met Java behoorlijke systeemintegratie kunt doen ;)
Een beetje prikkelen kan nooit kwaad ;) Natuurlijk zijn er vele wegen die naar Rome leiden. Dat geeft ook meteen de ruimte om verschillende oplossingen naast elkaar te proberen en de beste te kiezen.

Wat ik vooral wilde aangeven (en dat hebben anderen in deze draad ook al gedaan met opmerkingen over JVM's, libraries en specificaties) is dat Java (als je al die dingen meeneemt die ik zonet noemde) een van de meest uitgebreide sets van tools biedt die je nodig hebt voor het ontwikkelen van bedrijfsapplicaties.

De taal Java is daar maar een klein onderdeel van en is eigenlijk helemaal niet zo belangrijk. De enorme hoeveelheid libraries en specs is dat wel. Sun heeft op zich redelijk goed werk geleverd en heeft met de introductie van van het JCP duidelijk laten zien dat ze heel goed begrijpen dat Sun niet de enige plek is waar goed over Java-technologie wordt nagedacht. Of Sun dat nu gedaan heeft uit motieven die de OSS puristen ook aanhangen blijft natuurlijk de vraag, maar je kunt in ieder geval beter volgen wat er in de toekomst met Java gaat gebeuren.

Mijn beperkte blik op de wereld laat zien dat systeemintegratie met Java veel voordelen biedt: ondersteuning door grote leveranciers ("IBM ondersteunt het" is soms een sterk verkoopargument), veel tools (Eclipse, IntelliJ, Ant), stapels open source projecten (Apache Jakarta en alles wat daar onder hangt) en een omgeving waarin je heel erg goed standaardcomponenten kunt draaien (J2EE). Alles wat je hartje wenst en te gebruiken in 1 taal. Bovendien werkt het ook nog eens cross-platform zodat het ontwikkelen van mainframe-applicaties niet alleen meer afhangt van de vergrijzende groep Cobol kloppers....
De bytecode- en language-specificatie van Java is compleet publiek gemaakt en de sourcecode van de compiler (javac) wordt standaard bij de Java Development Kit geleverd. Ik vraag me eigenlijk af wat er nu nog meer 'open-source' moet worden aan Java? Met andere woorden; hebben deze opmerkingen van de ontwikkelaar eigenlijk wel iets te betekenen?
Uhm, deze ontwikkelaar???????
De beste man is de geestelijk vader, niet 1 of andere code kloppert.
Wie denkt dat Microsoft een door zichzelf aangepaste versie van java openbaar zou maken heeft geen ervaringen met dat bedrijf. Ze zouden het gewoon niet zeggen dat ze het hebben aangepast of dat ze de source "ergens" hebben gezet (waar niemand kan komen).

Ik denk dat Sun toch beter zelf zijn source moet houden, maar het ontwikkelen alleen voor de geregistreerde ontwikkelaars (die gratis mogen aanpassen) van de opensource community moet toelaten. Zo hebben ze wel de mogelijkheid van de vele ontwikkelaars en kennis in de os community en toch is het besloten en kunnen ze mensen dwingen deze code niet vrij te laten geven. (Ik weet niet of ze dat nu al doen)
Waar heeft 'java' in het artikel betrekking op? Op de compiler? De taalspecs? De JVM? De class libraries?

Het enige dat interessant is voor Java is dat de taal, de JVM plus de base class library gestandaardiseerd wordt door bv ISO of ECMA. Dan praat je over een gestandaardiseerd systeem waar je dan een open source implementatie van kunt maken (die is er overigens al) of een closed source. Hoe meer er gestandaardiseerd wordt, hoe minder ellende er is voor de developers, zodat echecs ala JBoss tot het verleden behoren.

Echter, ik zie het Sun nog niet doen.
Sun wil Java niet vrijgeven. Maar qua innovatie van het Java gebeuren schiet Sun ook niet zo hard op. Da's jammer vind ik. Want op zich zou een open source community die innovatie wel veel sneller en breedschaliger kunnen brengen.
Al dit gemorrel aan Java speelt MS in de kaart. Het .Net concept is in feite een concurrent van java, maar biedt door zijn taalonafhankelijkheid (én platformonafhankelijkheid) op een aantal gebeieden meer mogelijkheden dan Java. Wellicht is dit bericht dan ook een reactie op .Net, voelt Gosling de hete adem van MS in zijn nek, en zoekt hij de bescherming van de Open Source Community, om er zo voor te zorgen dat zijn taal niet verloren gaat.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True