people/g/GoslingJames/index.html
<!--#include virtual="/header-start.html" -->
<title>James Gosling</title>
<!--#include virtual="/header-end.html" -->
<figure class="left side">
<figcaption>Gosling</figcaption>
<img alt="James Gosling" src="portrait.jpg">
</figure>
<p>Gosling naît <time>1956-05-19</time>. Dès son jeune âge, il manifeste de l'intérêt pour les ordinateurs. Quand est
venu le temps d'aller à l'université, il choisit l'Université d'Alberta pour y étudier l'informatique. Il obtient un
BSc en Informatique de l'Université de <span class="place">Calgary (Canada)</span> <time>1977</time>, puis un doctorat
en Informatique de l'Université de Carnegie-Mellon <time>1983</time>. Le titre de sa thèse est La
manipulation algébrique des contraintes.</p>
<p>Il construit des systèmes d'acquisition de données satellites, une version multiprocesseurs de <a
href="/tech/info/soft/prod/os/unix">Unix</a>, plusieurs compilateurs, des systèmes de messagerie et des interfaces
fenêtrées. Il construit aussi un éditeur de texte WYSIWYG, un éditeur d'image basé sur des contraintes et un contribue
avec <span class="people">Richard Stallmann</span> au développement de l'éditeur de texte pour <a
href="/tech/info/soft/prod/os/unix">Unix</a> nommé Emacs.</p>
<section>
<h2>Sun</h2>
<p>Chez Sun sa première tâche est d'être ingénieur en chef du système de fenêtrage NeWS.</p>
<section>
<h3>Java</h3>
<p><time>1990</time> Gosling, Patrick Naughton et Mike Sheridan commencent le projet "Green", visant à produire
un OS pour l'industrie de l'électronique grand public. En 1991 l'équipe comme à étendre le compilateur <a
href="/tech/info/soft/proj/impl/lang/cpp">C++</a> pour développer un <a
href="/tech/info/soft/proj/impl/lang/oo">langage OO</a> indépendant de la plate-forme qui permettrait à des
appareils comme un décodeur tv et un lecteur de CD de dialoguer. Cependant, Gosling reconnait que le <a
href="/tech/info/soft/proj/impl/lang/cpp">C++</a>l n'est pas adapté et l'équipe commence à écrire son propre
langage. Alors qu'il s'apprête à créer un répertoire pour ce nouveau langage, Gosling va perdre son regard dehors.
Il voit un chêne : le langage s'appelera Oak.</p>
<figure>
<img alt="L'auteur et Gosling lors des Sun Tech Days à Paris le 6 Décembre 2002"
src="/time/2/0/0/2/12/06/MeAndGosling.JPG"/>
<figcaption>L'auteur et Gosling lors des Sun Tech Days à Paris <time>2002-12-06</time></figcaption>
</figure>
<p>On s'aperçoit peu après qu'un autre langage a un nom similaire, et Oak est renommé Java <time>1995-01</time>.
</p>
<p>Ayant l'expérience de systèmes d'acquisition de données de satellites, Gosling contribue par la suite à la
spécification de Java temps réel.</p>
<p>Vice-président de la compagnie, après 10 ans consacrés à Java, Gosling part se changer les idées aux laboratoires
de Sun. Là, l'inventeur d'Emacs reprend ses recherches sur l'évolution des <a
href="/tech/info/soft/prod/ide">IDE</a> (plugin pour NetBeans).</p>
<p>Quand on reproche à Sun de prendre du retard par rapport aux actions de Microsoft (.Net, Web Services), Gosling
répond :</p>
<blockquote>
<p>Les <a href="/politique/etat/gouv/regime/Democratie.html">démocraties</a> avancent moins vite que les
dictatures (...) Par exemple, si vous créez un système de
réservation aérienne standard, vous devez réunir Travelocity, Orbitz et Expedia afin qu'ils se mettent d'accord
sur un schéma XML commun pour définir ce qu'est un vol et comment réserver un billet d'avion. Vous pouvez
toujours essayer d'imposer un système de réservation aux compagnies aériennes, mais je doute fort qu'elles
apprécient cela.</p>
</blockquote>
</section>
<p>Gosling est également critique à propos de C# :</p>
<blockquote>
<p>Il semble après l'avoir étudié que Microsoft a dû faire des compromis à tous les niveaux. Les règles de
conception imposaient de supporter les langages C et C++, ce qui implique d'avoir un modèle de mémoire permettant
d'accéder à tout, à tout moment. Or, ces compromis sont à l'origine des problèmes de sécurité, de fiabilité et de
productivité que rencontrent à présent les développeurs. D'une part, Microsoft a copié Java, d'autre part, il a
ajouté des éléments futiles, pour ne pas dire stupides.</p>
</blockquote>
</section>
<p>Auteur de :</p>
<ul>
<li>Gosling & <span class="people">Stallmann</span>: Emacs</li>
<li>Java</li>
<li>The Java Application Programming Interface:
<ul>
<li>Volume 1: Core Packages</li>
<li>Volume 2: Window Toolkit and Applets avec Frank Yellin.</li>
</ul>
</li>
<li>The Java Language Specification</li>
<li>The Java Programming Language
<ul>
<li>The Java Programming Language, Second Edition avec Ken Arnold.</li>
</ul>
</li>
</ul>
<!--#include virtual="/footer.html" -->