James Gosling

{{Short description|Canadian computer scientist (born 1955)}}

{{Use Canadian English|date=November 2024}}

{{Use mdy dates|date=November 2024}}

{{Infobox scientist

| name = James Gosling

| honorific_suffix = {{post-nominals|country=CAN|OC|size=100%}}

| image = James Gosling 2008.jpg

| alt =

| caption = Gosling in 2008

| birth_name = James Arthur Gosling

| birth_date = {{Birth date and age|1955|05|19}}

| birth_place = Calgary, Alberta, Canada

| death_date =

| death_place =

| workplaces = {{plainlist|

}}

| alma_mater = {{ubl|

}}

| thesis_title = Algebraic Constraints

| thesis_url = http://reports-archive.adm.cs.cmu.edu/anon/scan/CMU-CS-83-132.pdf

| thesis_year = 1983

| doctoral_advisor = Bob Sproull and Raj Reddy{{MathGenealogy|id=50143}}

| known_for = Java (programming language) Gosling Emacs

| awards = Officer of the Order of Canada

IEEE John von Neumann Medal

The Economist Innovation Award

NAE Foreign Member

Fellow Computer History Museum

| children = 2

}}

James Arthur Gosling {{post-nominals|country=CAN|OC}} (born 19 May 1955) is a Canadian computer scientist, best known as the founder and lead designer behind the Java programming language.{{Cite web|url=http://www.computinghistory.org.uk/det/1793/james-gosling/|title=James Gosling - Computing History|website=Computinghistory.org.uk|access-date=2017-10-09}}

Gosling was elected a member of the National Academy of Engineering in 2004 for the conception and development of the architecture for the Java programming language and for contributions to windowing systems.

Early life

Gosling was born in Calgary, Alberta, to Joyce Morrison and Dave Gosling. He is of English, Welsh, Scottish, and Icelandic descent. Gosling attended William Aberhart High School. While in high school, he wrote some of the software to analyze data from the ISIS 2 satellite, working for the University of Calgary physics department.{{Cite interview |last=Gosling |first=James |interviewer1=Hansen Hsu |interviewer2=Marc Weber |title=Oral History of James Gosling, part 1 of 2 |url=https://archive.computerhistory.org/resources/access/text/2019/10/102781080-05-01-acc.pdf |date=March 15, 2019 |pages=19-24}} He received a Bachelor of Science from the University of Calgary{{cite web |url=http://nighthacks.com/roller/jag/resource/bio.html |title=academic-conference-style bio of James Gosling |access-date=2015-05-13 |url-status=live |archive-url=https://web.archive.org/web/20150601031152/http://nighthacks.com/roller/jag/resource/bio.html |archive-date=2015-06-01 }} and his M.A. and Ph.D. from Carnegie Mellon University, all in computer science.{{cite thesis |degree=PhD |first=James|last=Gosling |title=Algebraic Constraints |publisher=Carnegie Mellon University |date=1983 |author-link=James Gosling|id={{ProQuest|303133100}}}}[https://www.cs.cmu.edu/~alumni/advisor.html#G Phd Awards By Advisor]. Cs.cmu.edu. Retrieved on 2013-07-17. He wrote a version of Emacs called Gosling Emacs (Gosmacs) while working toward his doctorate. He built a multi-processor version of Unix for a 16-way computer systemJames Gosling mentioned a multiprocessor Unix in his statement during the US vs Microsoft Antitrust DOJ trial in 1998 {{cite web

|url = http://www.usdoj.gov/atr/cases/f2000/2049.htm

|title = DOJ/Antitrust

|work = Statement in MS Antitrust case

|publisher = US DOJ

|access-date = 1 February 2007

}} while at Carnegie Mellon University, before joining Sun Microsystems. He also developed several compilers and mail systems there.

Gosling has two children, Katie and Kelsey, who are half siblings from his two marriages.

Career and contributions

Gosling was with Sun Microsystems between 1984 and 2010 (26 years). At Sun he invented an early Unix windowing system called NeWS, which became a lesser-used alternative to the still used X Window System, because Sun did not give it an open source license.{{Citation needed|date=September 2019}}

He is known as the father of the Java programming language. He got the idea for the Java VM while writing a program to port software from a PERQ by translating Perq Q-Code to VAX assembler and emulating the hardware. He is generally credited with having invented the Java programming language in 1994.{{Cite journal | last1 = Allman | first1 = E. | title = Interview: A Conversation with James Gosling| doi = 10.1145/1016998.1017013 | journal = Queue | volume = 2 | issue = 5 | pages = 24 | year = 2004 | doi-access = free }}{{Cite journal | last1 = Gosling | first1 = J. | author-link = James Gosling| title = The feel of Java | doi = 10.1109/2.587548 | journal = Computer | volume = 30 | issue = 6 | pages = 53–57 | year = 1997 }}{{cite journal

|url = http://portal.acm.org/citation.cfm?id=974955&dl=GUIDE&coll=GUIDE&CFID=75229392&CFTOKEN=55758856

|title = Sun Labs-The First Five Years: The First Fifty Technical Reports. A Commemorative Issue

|journal = Ching-Chih Chang, Amy Hall, Jeanie Treichel

|publisher = Sun Microsystems, Inc.

|access-date = 2010-02-07

|year = 1998

|last1 = Chang

|first1 = Ching-Chih

|last2 = Hall

|first2 = Amy

|last3 = Treichel

|first3 = Jeanie

}}

He created the original design of Java and implemented the language's original compiler and virtual machine.

{{cite web

| url = http://queue.acm.org/detail.cfm?id=1017013

| title = A Conversation with James Gosling

| last1 = Gosling

| first1 = James

| author-link1 = James Gosling

| date = 2004-08-31

| website = ACM Queue

| publisher = ACM

| access-date = 2014-07-03

| quote = At Sun he is best known for creating the original design of Java and implementing its original compiler and virtual machine.

}}

Gosling traces the origins of the approach to his early graduate student days, when he created a p-code virtual machine for the lab's DEC VAX computer, so that his professor could run programs written in UCSD Pascal. In the work leading to Java at Sun, he saw that architecture-neutral execution for widely distributed programs could be achieved by implementing a similar philosophy: always program for the same virtual machine.{{Cite journal | author = McMillan, W.W. | doi = 10.1109/MSPEC.2011.5910448 | title = The soul of the virtual machine: Java's ability to run on many different kinds of computers grew out of software devised decades before | journal = IEEE Spectrum | volume = 48 | issue = 7 | pages = 44–48 | year = 2011 | s2cid = 40545952 }}

Another contribution of Gosling's was co-writing the "bundle" program, known as "shar", a utility thoroughly detailed in Brian Kernighan and Rob Pike's book The Unix Programming Environment.{{cite book |last1=Kernighan |first1=Brian W |last2=Pike |first2=Rob |title=The Unix Programming Environment |date=1984 |publisher=Prentice Hall |isbn=0-13-937681-X |pages=[https://archive.org/details/unixprogramminge0000kern/page/97 97-100] |url=https://archive.org/details/unixprogramminge0000kern/page/97 }}

He left Sun Microsystems on April 2, 2010, after it was acquired by the Oracle Corporation,{{cite web |last1=Guevin |first1=Jennifer |title=Java co-creator James Gosling leaves Oracle |url=https://www.cnet.com/news/java-co-creator-james-gosling-leaves-oracle/ |website=CNET |access-date=13 June 2020}} citing reductions in pay, status, and decision-making ability, along with change of role and ethical challenges.Darryl K. Taft. (2010-09-22) [http://www.eweek.com/c/a/Application-Development/Java-Creator-James-Gosling-Why-I-Quit-Oracle-813517/ Java Creator James Gosling: Why I Quit Oracle]. eWEEK.com He has since taken a very critical stance towards Oracle in interviews, noting that "during the integration meetings between Sun and Oracle, where we were being grilled about the patent situation between Sun and Google, we could see the Oracle lawyer's eyes sparkle."Shankland, Stephen. (2011-03-28) [https://www.cnet.com/news/java-founder-james-gosling-joins-google/ Java founder James Gosling joins Google]. CNET Retrieved on 2012-02-21. He clarified his position during the Oracle v. Google trial over Android: "While I have differences with Oracle, in this case they are in the right. Google totally slimed Sun. We were all really disturbed, even Jonathan [Schwartz]: he just decided to put on a happy face and tried to turn lemons into lemonade, which annoyed a lot of folks at Sun."[http://nighthacks.com/jag/blog/393/index.html My attitude on Oracle v Google]. Nighthacks.com. Retrieved on 2016-05-17. However, he approved of the court's ruling that APIs should not be copyrightable.{{Cite web|url=http://nighthacks.com/jag/blog/397/index.html|title=Meltdown Averted|website=Nighthacks.com|access-date=2017-03-13}}

In March 2011, Gosling joined Google.[http://nighthacks.com/jag/blog/365/index.html Next Step on the Road]. Nighthacks.com. Retrieved on 2016-05-17. Six months later, he followed his colleague Bill Vass and joined a startup called Liquid Robotics. In late 2016, Liquid Robotics was acquired by Boeing.{{Cite web|url=https://www.liquid-robotics.com/press-releases/boeing-to-acquire-liquid-robotics-to-enhance-autonomous-seabed-to-space-information-services/|title=Boeing to Acquire Liquid Robotics to Enhance Autonomous Seabed-to-Space Information Services|date=December 6, 2016}} Following the acquisition, Gosling left Liquid Robotics to work at Amazon Web Services as Distinguished Engineer in May 2017.{{cite web|url=http://fortune.com/2017/05/22/java-creator-james-gosling-joins-amazon-web-services/|title=Legendary Techie James Gosling Joins Amazon Web Services|last=Darrow|first=Barb|date=May 23, 2017|website=Fortune.com|access-date=23 March 2018}} He retired in July 2024.[https://www.linkedin.com/feed/update/urn:li:activity:7213740307538956289/ LinkedIn post about retirement]

He is an advisor at the Scala company Lightbend,[http://typesafe.com/company/team Typesafe — Company: Team]. Typesafe.com. Retrieved on 2012-02-21. Independent Director at Jelastic,[http://www.infoq.com/news/2014/11/Gosling-and-Souza-Join-Jelastic James Gosling and Bruno Souza Join Jelastic as Advisers]. InfoQ.com. Retrieved on 2014-11-24. and Strategic Advisor for Eucalyptus,[http://www.eucalyptus.com/news/eucalyptus-appoints-dr-james-gosling-inventor-java-strategic-advisor Eucalyptus] {{webarchive|url=https://web.archive.org/web/20130425061622/http://www.eucalyptus.com/news/eucalyptus-appoints-dr-james-gosling-inventor-java-strategic-advisor |date=2013-04-25 }}. Eucalyptus.com Retrieved on 2013-04-22 and is a board member of DIRTT Environmental Solutions.{{Cite web|url=https://www.dirtt.net/company/leadership/james-gosling|archive-url=https://web.archive.org/web/20180323154924/https://www.dirtt.net/company/leadership/james-gosling|archive-date=2018-03-23|url-status= unfit|title=James Gosling|website=DIRTT Environmental Solutions Ltd.}}

Awards

For his achievement, the National Academy of Engineering in the United States elected him as a Foreign Associate member.{{cite web | url = http://www.nae.edu/MembersSection/Directory20412/30859.aspx | title = NAE Members Directory – Dr. James Arthur Gosling | publisher = NAE | access-date = March 29, 2011}}

  • 2002: awarded The Economist Innovation Award.[http://www.economistconferences.co.uk/innovation/winners2002 The 2002 Economist Innovation Award Winner] {{webarchive|url=https://web.archive.org/web/20120422181414/http://www.economistconferences.co.uk/innovation/winners2002 |date=2012-04-22 }}.
  • 2002: awarded The Flame Award USENIX Lifetime Achievement Award.{{cite web|url=https://www.usenix.org/about/flame|title=Flame Award|date=6 December 2011|website=Usenix.org|access-date=20 January 2018}}
  • 2007: made an Officer of the Order of Canada.{{cite web|url=http://www.gg.ca/media/doc.asp?lang=e&DocID=4984 |archive-url=https://wayback.archive-it.org/all/20080207062736/http://www.gg.ca/media/doc.asp?lang=e&DocID=4984 |archive-date=February 7, 2008 |title=Governor |url-status=dead |access-date=August 28, 2016 }}. February 20, 2007 The Order is Canada's second highest civilian honor. Officers are the second highest grade within the Order.
  • 2013: became a fellow of the Association for Computing Machinery.[http://www.acm.org/press-room/news-releases/2013/fellows-2013 ACM Names Fellows for Computing Advances that Are Transforming Science and Society] {{webarchive|url=https://web.archive.org/web/20140722132808/http://www.acm.org/press-room/news-releases/2013/fellows-2013 |date=2014-07-22 }}, Association for Computing Machinery, accessed 2013-12-10.
  • 2015: awarded IEEE John von Neumann Medal{{cite web|url=http://www.ieee.org/documents/von_neumann_rl.pdf|archive-url=https://web.archive.org/web/20100619223921/http://ieee.org/documents/von_neumann_rl.pdf|url-status=dead|archive-date=June 19, 2010|title=IEEE JOHN VON NEUMANN MEDAL : RECIPIENTS|website=Ieee.org|access-date=20 January 2018}}
  • 2019: named a Computer History Museum Fellow for the conception, design, and implementation of the Java programming language.[https://www.computerhistory.org/fellowawards/hall/James-Gosling/ Computer History Museum names James Gosling a 2019 Fellow]

Books

  • Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Fourth Edition, Addison-Wesley Professional, 2005, {{ISBN|0-321-34980-6}}
  • James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, The Java Language Specification, Third Edition, Addison-Wesley Professional, 2005, {{ISBN|0-321-24678-0}}
  • Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Third Edition, Addison-Wesley Professional, 2000, {{ISBN|0-201-70433-1}}
  • James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, The Java Language Specification, Second Edition, Addison-Wesley, 2000, {{ISBN|0-201-31008-2}}
  • Gregory Bollella (Editor), Benjamin Brosgol, James Gosling, Peter Dibble, Steve Furr, David Hardin, Mark Turnbull, The Real-Time Specification for Java, Addison Wesley Longman, 2000, {{ISBN|0-201-70323-8}}
  • Ken Arnold, James Gosling, The Java programming language Second Edition, Addison-Wesley, 1997, {{ISBN|0-201-31006-6}}
  • Ken Arnold, James Gosling, The Java programming language, Addison-Wesley, 1996, {{ISBN|0-201-63455-4}}
  • James Gosling, Bill Joy, Guy L. Steele Jr., The Java Language Specification, Addison Wesley Publishing Company, 1996, {{ISBN|0-201-63451-1}}
  • James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 2: Window Toolkit and Applets, Addison-Wesley, 1996, {{ISBN|0-201-63459-7}}
  • James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 1: Core Packages, Addison-Wesley, 1996, {{ISBN|0-201-63453-8}}
  • James Gosling, Henry McGilton, [http://www.stroustrup.com/1995_Java_whitepaper.pdf The Java language Environment: A white paper], Sun Microsystems, 1996
  • James Gosling, David S. H. Rosenthal, Michelle J. Arden, The NeWS Book: An Introduction to the Network/Extensible Window System (Sun Technical Reference Library), Springer, 1989, {{ISBN|0-387-96915-2}}

See also

{{Commons category|James Gosling}}

{{Portal|Computer programming}}

References

{{Reflist}}