Skip to content
Lex Fridman PodcastLex Fridman Podcast

James Gosling: Java, JVM, Emacs, and the Early Days of Computing | Lex Fridman Podcast #126

James Gosling is the founder and lead designer of the Java programming language. Please check out our sponsors to get a discount and to support this podcast: - Public Goods: https://publicgoods.com/lex and use code LEX - BetterHelp: https://betterhelp.com/lex - ExpressVPN: https://www.expressvpn.com/lexpod EPISODE LINKS: James Twitter: https://twitter.com/errcraft James Wiki: https://en.wikipedia.org/wiki/James_Gosling PODCAST INFO: Podcast website: https://lexfridman.com/podcast Apple Podcasts: https://apple.co/2lwqZIr Spotify: https://spoti.fi/2nEwCF8 RSS: https://lexfridman.com/feed/podcast/ Full episodes playlist: https://www.youtube.com/playlist?list=PLrAXtmErZgOdP_8GztsuKi9nrraNbKKp4 Clips playlist: https://www.youtube.com/playlist?list=PLrAXtmErZgOeciFP3CBCIEElOJeitOr41 OUTLINE: 0:00 - Introduction 4:45 - Irrational numbers 8:04 - Math and programming 10:36 - Coding style 14:41 - First computer 23:54 - Lisp 27:22 - Write an Emacs implementation in C 35:15 - Early days of the Internet 45:57 - Elon Musk, Steve Jobs, Jeff Bezos 56:13 - Work hard and smart 58:48 - Open source 1:10:25 - Java 1:28:31 - Java virtual machine 1:44:05 - Android 1:47:04 - Advice CONNECT: - Subscribe to this YouTube channel - Twitter: https://twitter.com/lexfridman - LinkedIn: https://www.linkedin.com/in/lexfridman - Facebook: https://www.facebook.com/LexFridmanPage - Instagram: https://www.instagram.com/lexfridman - Medium: https://medium.com/@lexfridman - Support on Patreon: https://www.patreon.com/lexfridman

Lex FridmanhostJames Goslingguest
Sep 24, 20201h 51mWatch on YouTube ↗

At a glance

WHAT IT’S REALLY ABOUT

James Gosling on Java, safety, Emacs, and humane tech leadership

  1. James Gosling reflects on his early fascination with math, programming, and hardware hacking, tracing how those experiences shaped his thinking about software correctness, safety, and language design.
  2. He recounts the origins of Java as a response to security, reliability, and portability problems in C/C++ and embedded systems, explaining how the JVM and strict language constraints aimed to eliminate whole classes of bugs and speed development.
  3. Gosling also describes creating an influential Emacs implementation, the culture and politics of open source versus commercial software, and the tensions around Android’s use of Java.
  4. Throughout, he contrasts different leadership styles in tech, arguing you can demand hard work and take big risks without being abusive, and urges engineers to think ethically about whether they’re building a “Blade Runner” or “Star Trek” future.

IDEAS WORTH REMEMBERING

5 ideas

Safety and correctness can be designed into a language to prevent entire bug classes.

Gosling created Java in part to eliminate common C/C++ problems like buffer overflows, pointer misuse, and memory leaks, which he saw driving the majority of security vulnerabilities and consuming developer time.

Portability and abstraction (via the JVM) give buyers and developers real freedom.

The JVM abstracts away CPU differences so software isn’t locked to a single vendor or hardware generation, addressing both purchasing pain and long-term maintainability, while still allowing efficient compilation.

Clear interfaces and enforced encapsulation reduce chaos in large codebases.

By making it hard to “sneak around the side” of APIs, Java’s visibility and object model pushed teams to negotiate proper interfaces, greatly improving robustness when software spans teams and organizations.

Developer velocity matters more than raw performance in most real systems.

Gosling argues that going from first code to solid, production-ready software is where Java shines, because failing early and visibly plus safer constructs cuts total development time, even if the first demo isn’t faster.

Open source is powerful, but “all information must be free” can be harmful.

He values open source for community and collaboration, yet rejects dogmatic views that effectively demand engineers take a vow of poverty, emphasizing the need for a pragmatic balance between openness and sustainable business.

WORDS WORTH SAVING

5 quotes

It means that your definition of perfect was imperfect.

James Gosling

I got really religious about making it so that if something fails, it fails immediately and visibly.

James Gosling

Two-thirds of my time as a software developer was hunting down mystery pointer bugs.

James Gosling

One of the toughest things about life is making choices.

James Gosling

Are you building Blade Runner or Star Trek?

James Gosling

Early experiences with math, numbers, and visual thinking in programmingFirst computers, low-level programming, and hardware tinkeringEmacs, TECO, and Gosling’s C implementation that spread over Unix and ARPANETOrigins of Java: safety, security, concurrency, and developer productivityDesign and impact of the Java Virtual Machine and portabilityOpen source philosophy, licensing, and tensions with figures like Richard StallmanLeadership and culture in tech: Jobs, Musk, Bezos, Google, risk-taking, and ethics

High quality AI-generated summary created from speaker-labeled transcript.

Get more out of YouTube videos.

High quality summaries for YouTube videos. Accurate transcripts to search & find moments. Powered by ChatGPT & Claude AI.

Add to Chrome