James Gosling  (born 19 May 1955) is a Canadian computer scientist, best known as the founder and lead designer behind the Java programming language.

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 window systems.

Early life 
Gosling attended William Aberhart High School in Calgary, Alberta. 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.  He received a Bachelor of Science from the University of Calgary and his M.A. and Ph.D. from Carnegie Mellon University, all in computer science. 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 system 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 Gosling's two marriages.

Career & 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.

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.
He created the original design of Java and implemented the language's 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.

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.

He left Sun Microsystems on April 2, 2010, after it was acquired by the Oracle Corporation, citing reductions in pay, status, and decision-making ability, along with change of role and ethical challenges. 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." 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." However, he approved of the court's ruling that APIs should not be copyrightable.

In March 2011, Gosling joined Google. 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. Following the acquisition, Gosling left Liquid Robotics to work at Amazon Web Services as Distinguished Engineer in May 2017.

He is an advisor at the Scala company Lightbend, Independent Director at Jelastic, and Strategic Advisor for Eucalyptus, and is a board member of DIRTT Environmental Solutions.

Awards
For his achievement, the National Academy of Engineering in the United States elected him as a Foreign Associate member. 
2002: awarded The Economist Innovation Award.
2002: awarded The Flame Award USENIX Lifetime Achievement Award.
2007: made an Officer of the Order of Canada. 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.
2015: awarded IEEE John von Neumann Medal
2019: named a Computer History Museum Fellow for the conception, design, and implementation of the Java programming language.

Books
 Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Fourth Edition, Addison-Wesley Professional, 2005, 
 James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, The Java Language Specification, Third Edition, Addison-Wesley Professional, 2005, 
 Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Third Edition, Addison-Wesley Professional, 2000, 
 James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, The Java Language Specification, Second Edition, Addison-Wesley, 2000, 
 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, 
 Ken Arnold, James Gosling, The Java programming language Second Edition, Addison-Wesley, 1997, 
 Ken Arnold, James Gosling, The Java programming language, Addison-Wesley, 1996, 
 James Gosling, Bill Joy, Guy L. Steele Jr., The Java Language Specification, Addison Wesley Publishing Company, 1996, 
 James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 2: Window Toolkit and Applets, Addison-Wesley, 1996, 
 James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 1: Core Packages, Addison-Wesley, 1996, 
 James Gosling, Henry McGilton, 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,

See also

History of Java
Fallacies of distributed computing

James Gosling's personal weblog
Presentation by James Gosling about the origins of Java, from the JVM Languages Summit 2008
The Process of Innovation – James Gosling's talk at Stanford University (video archive)
James Gosling interview on Triangulation (TWiT.tv). Recorded 2016-04-11

References

1955 births
Canadian male bloggers
Canadian computer programmers
Canadian computer scientists
Canadian inventors
Carnegie Mellon University alumni
Emacs
Fellows of the Association for Computing Machinery
Free software programmers
Java (programming language)
Living people
Officers of the Order of Canada
Open source people
People from Calgary
Programming language designers
Solaris people
Sun Microsystems people
University of Calgary alumni
Winners of The Economist innovation awards
Foreign associates of the National Academy of Engineering
제임스 아서 고슬링(, 1955년 5월 19일 ~ )은 캐나다의 소프트웨어 개발자이다. 자바를 최초 개발하여 '자바의 아버지'라 불리며, 가장 영향력 있는 프로그래머들 가운데 한 사람이다. 자바 이외에도 다중 프로세서용 유닉스와 컴파일러, 메일 시스템, 데이터 인식 시스템 등을 개발하였다.

개발자 가운데서는 마이크로소프트의 빌 게이츠(William H. Gates)만큼이나 유명하지만, 개발자 특유의 '몰두', '은둔' 성향 때문에 세상에 널리 알려지지는 않았다. 그는 또 자바 커피를 하루에도 10여 잔 씩 마시는 자바 예찬론자이기도 해서, 자바(Java)라는 명칭은 유명한 커피 재배지인 인도네시아 섬 이름인 자바섬에서 따왔다고 한다.

역사 
제임스 고슬링은 캐나다 캘거리 대학교를 거쳐 카네기 멜론 대학교에서 박사학위를 밟고 썬 마이크로시스템즈에 합류한다. 그는 1990년 말 Patrick Naughton, Mike Sheridan과 함께 Green Project Team에 배치됐다. 당시 썬 마이크로시스템즈는 어떤 하드웨어 플랫폼에서도 동작하는 객체 지향 운영 체제를 원하고 있었다. Green Project Team은 객체 지향의 새로운 언어인 Oak를 개발했다. Oak는 모든 전자제품에 적용시킬 수 있는 전천후 언어로 완성 단계에 이르렀다.

제임스 고슬링은 Oak를 기반으로 상품 개발을 추진했다. Interactive TV(양방향TV)에 탑재해 비디오와 오디오를 통제할 수 있는 작은 액정 Controller를 제작했다. 그 후 Green Project는 자바 프로젝트로 새 출발을 하게 된다. 고슬링은 Oak를 웹에 적용시킬 수 있는 코드 작업을 맡았고 Naughton이 코드를 인터넷 상에서 컴파일할 수 있는 킬러 애플리케이션을 제작했다. 그 결과 고슬링의 코드는 자바(Java)라는 이름으로, Naughton의 킬러 앱은 핫자바라는 이름으로 완성된다.

자바의 특징은 일단 프로그램을 작성하면 어떤 플랫폼에서도 실행된다는 의미에서 WORA(Write Once, Run Anywhere)로 요약된다. 이는 기존 프로그램들의 약점을 보완할 수 있는 놀라운 아이디어였다.

컴퓨터 운영 체제는 호환이 되지 않기 때문에 예를 들어 유닉스에서 만든 프로그램은 다른 OS에서 돌릴 수 없어 새롭게 변형해야 하는 어려움을 안고 있었다. 하지만 자바는 각 OS마다 프로그램이 똑같이 동작할 수 있도록 OS와 프로그램 사이의 중계 구실을 하는 가상 머신을 만들어 이 문제를 해결했다.

원래 Java는 가전기기를 운영하기 위한 프로그래밍 언어로 개발됐다. 하지만 1990년대 초의 상황은 가전기기 따위에 Java를 동작시킬 만한 메모리나 하드웨어 여건이 마련되지 못했다. 하지만 인터넷과 웹 브라우저 시대가 되면서 자바는 화려하게 부상했고, 전 세계 프로그래머들 사이에 급속도로 확산될 수 있었다. 아이러니한 사실은 10여년이 흐른 최근에야 휴대전화나 TV셋톱박스, 심지어 화성탐사용 로봇에도 자바로 만든 프로그램이 탑재돼 자바의 원래 소원을 이루게 된 것이다.

지난 몇 년 동안 마이크로소프트와 썬 마이크로시스템즈 사이의 지루한 자바 기술 침해에 관한 소송이 진행되기도 했다. 최근 두 회사가 화해하고 손을 잡게 되면서, 이후 두 진영은 상호발전을 위하여 협력하는 분위기이다. 컨퍼런스와 외부행사에서 경쟁사의 제품에 대해 호의적 평가가 나오고 있다.

이후, 썬 마이크로시스템즈가 오라클에 흡수 합병되었고, 고슬링은 오라클의 클라이언트 소프트웨어 그룹 CTO로 활동하였다. 그리고 지난 2010년 4월 9일 고슬링은 오라클을 떠났으며 1년 정도 후에 구글에 입사하였다가 5개월 만에 다시 구글을 떠나 해양정보수집로봇을 개발하는 벤처기업 '리퀴드로보틱스'의 CSA(최고 소프트웨어 아키텍트)로 자리를 옮겼다. 2017년부터는 아마존 웹 서비시즈(AWS)에서 일하고 있다.

저서 
 Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Fourth Edition, Addison-Wesley Professional, 2005, 
 James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, The Java Language Specification, Third Edition, Addison-Wesley Professional, 2005, 
 Ken Arnold, James Gosling, David Holmes, The Java Programming Language, Third Edition, Addison-Wesley Professional, 2000, 
 James Gosling, Bill Joy, Guy L. Steele Jr., Gilad Bracha, The Java Language Specification, Second Edition, Addison-Wesley, 2000, 
 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, 
 Ken Arnold, James Gosling, The Java programming language Second Edition, Addison-Wesley, 1997, 
 Ken Arnold, James Gosling, The Java programming language, Addison-Wesley, 1996, 
 James Gosling, Bill Joy, Guy L. Steele Jr., The Java Language Specification, Addison Wesley Publishing Company, 1996, 
 James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 2: Window Toolkit and Applets, Addison-Wesley, 1996, 
 James Gosling, Frank Yellin, The Java Team, The Java Application Programming Interface, Volume 1: Core Packages, Addison-Wesley, 1996, 
 James Gosling, Henry McGilton, 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,

외부 링크 

 James Gosling's personal weblog
 James Gosling's weblog at Sun
 Presentation by James Gosling about the origins of Java, from the JVM Languages Summit 2008
 slide show depicting Gosling's life

1955년 출생
살아있는 사람
캐나다의 발명가
카네기 멜런 대학교 동문
캘거리 출신
캘거리 대학교 동문
프로그래밍 언어 설계자
캐나다의 블로거
캐나다의 프로그래머
ACM 석학회원
이맥스