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

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

Lex Fridman PodcastSep 24, 20201h 51m

Lex Fridman (host), James Gosling (guest), Lex Fridman (host), Narrator

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

In this episode of Lex Fridman Podcast, featuring Lex Fridman and James Gosling, James Gosling: Java, JVM, Emacs, and the Early Days of Computing | Lex Fridman Podcast #126 explores james Gosling on Java, safety, Emacs, and humane tech leadership 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.

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

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.

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.

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.

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.

Key Takeaways

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.

Get the full analysis with uListen AI

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.

Get the full analysis with uListen AI

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.

Get the full analysis with uListen AI

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.

Get the full analysis with uListen AI

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.

Get the full analysis with uListen AI

Working extremely hard is essential; being abusive is not.

Gosling criticizes the idea, popularized by some readings of Steve Jobs, that you must be a jerk to succeed, noting there are highly successful, non-abusive leaders (e. ...

Get the full analysis with uListen AI

Taking calculated risks—and accepting failure—is key to meaningful innovation.

Many of his projects have “crashed and burned,” but he sees risk-taking as necessary; his advice is not to fear risk, to accept doing some “stupid things” once or twice, and to keep moving toward the futures you’d actually want to live in.

Get the full analysis with uListen AI

Notable 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

Questions Answered in This Episode

How might modern languages and toolchains further reduce or eliminate entire classes of security vulnerabilities beyond what Java achieved?

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.

Get the full analysis with uListen AI

What trade-offs would you make differently if you were designing Java and the JVM from scratch today, knowing how hardware and the web evolved?

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.

Get the full analysis with uListen AI

How can engineering teams create a culture of extreme effort and high standards without drifting into the abusive patterns you see in parts of Silicon Valley?

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.

Get the full analysis with uListen AI

Where is the healthiest balance between open source ideals and the need for sustainable business models that fairly compensate creators?

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.

Get the full analysis with uListen AI

Looking at today’s AI and networked systems, what concrete choices can developers make to push the world toward a “Star Trek” future rather than a “Blade Runner” or “Skynet” one?

Get the full analysis with uListen AI

Transcript Preview

Lex Fridman

The following is a conversation with James Gosling, the founder and lead designer behind the Java programming language, which in many indices is the most popular programming language in the world, or is always at least in the top two or three. We only had a limited time for this conversation, but I'm sure we'll talk again several times in this podcast. A quick summary of the sponsors: Public Goods, BetterHelp, and ExpressVPN. Please check out these sponsors in the description to get a discount and to support this podcast. As a side note, let me say that Java is the language with which I first learned object-oriented programming, and with it, the art and science of software engineering. Also, early on in my undergraduate education, I took a course on concurrent programming with Java. Looking back at that time, before I fell in love with neural networks, the art of parallel computing was both algorithmically and philosophically fascinating to me. The concept of a computer in my mind before then was something that does one thing at a time. The idea that we could create an abstraction of parallelism where you can do many things at the same time while still guaranteeing stability and correctness was beautiful. While some folks in college took drugs to expand their mind, I took concurrent programming. If you enjoy this thing, subscribe on YouTube, review it with five stars on Apple Podcast, follow on Spotify, support on Patreon, or connect with me on Twitter, @lexfridman. As usual, I'll do a few minutes of ads now and no ads in the middle. I try to make these interesting, but I do give you timestamps, so go ahead and skip, but please do check out the sponsors by clicking the links in the description. It's the best way to support this podcast. This show, sponsored by Public Goods, the one-stop shop for affordable, sustainable, healthy household products. I take their fish oil and use their toothbrush, for example. Their products often have a minimalist black and white design that I find to be just beautiful. Some people ask why I wear this black suit and tie. There's a simplicity to it that, to me, focuses my mind on the most important bits of every moment of every day, pulling only at the thread of the essential in all that life has to throw at me. It's not about how I look, it's about how I feel. That's what design is to me; creating an inner conscious experience, not an external look. Anyway, Public Goods plants one tree for every order placed, which is kind of cool. Visit publicgoods.com/lex or use code Lex at checkout to get 15 bucks off your first order. This show is also sponsored by BetterHelp, spelled H-E-L-P, help. Check it out at betterhelp.com/lex. They figure out what you need and match you with a licensed professional therapist in under 48 hours. I chat with a person on there and enjoy it. Of course, I also regularly talk to David Goggins these days, who is definitely not a licensed professional therapist, but he does help me meet his and my demons and become comfortable to exist in their presence. Everyone is different, but for me, I think suffering is essential for creation, but you can suffer beautifully, in a way that doesn't destroy you. I think therapy can help in whatever form that therapy takes, and I do think that BetterHelp is an option worth trying. They're easy, private, affordable, and available worldwide. You can communicate by text any time and schedule weekly audio and video sessions. Check it out at betterhelp.com/lex. This show is also sponsored by ExpressVPN. You can use it to unlock movies and shows that are only available in other countries. I did this recently with Star Trek Discovery on UK Netflix, mostly because I wonder what it's like to live in London. I'm thinking of moving from Boston to a place where I can build the business I've always dreamed of building. London is probably not in the top three, but top 10 for sure. The number one choice currently is Austin, for many reasons that I'll probably speak to another time. San Francisco unfortunately dropped out from the number one spot, but it's still in the running. If you have advice, let me know. Anyway, check out ExpressVPN. It lets you change your location to almost 100 countries and it's super fast. Go to expressvpn.com/lexpod to get an extra three months of ExpressVPN for free. That's expressvpn.com/lexpod. And now, here's my conversation with James Gosling. I've read somewhere that the square root of two is your favorite irrational number.

Install uListen to search the full transcript and get AI-powered insights

Get Full Transcript

Get more from every podcast

AI summaries, searchable transcripts, and fact-checking. Free forever.

Add to Chrome