Brian Kernighan, a pioneering figure at Bell Labs during the birth of Unix and now a professor at Princeton, shares his wealth of knowledge on software development. He reflects on the enduring legacy of the C programming language and discusses modern languages like Go and Rust. Kernighan recounts the innovative atmosphere of Unix's inception and explores the evolution of programming methodologies. He emphasizes the importance of foundational tech education for future developers while advocating for flexibility in programming environments.
01:36:30
forum Ask episode
web_stories AI Snips
view_agenda Chapters
menu_book Books
auto_awesome Transcript
info_circle Episode notes
question_answer ANECDOTE
Unix's Birth
Brian Kernighan witnessed the birth of Unix at Bell Labs, although he wasn't directly involved in its initial development.
Ken Thompson, a remarkably skilled programmer, built the first Unix prototype in three weeks during 1969.
insights INSIGHT
Computing Evolution
Computing has drastically changed in 50 years; computers used to be million-dollar machines with limited memory and speed.
Moore's Law fueled exponential improvements, making today's powerful, interconnected computers possible.
insights INSIGHT
Persistent Challenges
Despite advancements, programmers still face limitations like resource constraints and human error, which leads to bugs.
Bad actors remain a persistent challenge, now with a broader reach due to the internet.
Get the Snipd Podcast app to discover more snips from this episode
What You Need to Know about Computers, the Internet, Privacy, and Security
Brian Kernighan
This book provides a comprehensive overview of computer technology, including hardware, software, networks, and the Internet. It explores how these technologies impact privacy, security, and broader societal issues. The updated edition covers topics like Python programming, big data, and machine learning.
You and Your Research
You and Your Research
None
Richard W. Hamming
The Mythical Man-Month
Essays on Software Engineering
Frederick P. Brooks
In this book, Frederick P. Brooks discusses several key issues in software engineering, most notably 'Brooks's Law,' which states that adding manpower to a late software project makes it later. The book explores the complexities of large programming projects, the difficulties in measuring work in 'man-months,' and the importance of effective communication and team management. It also includes insights from Brooks's experience managing the development of IBM's System/360 and OS/360.
The C++ programming language
Bjarne Stroustrup
This book provides a detailed introduction to C++, covering its core language features, standard library components, and advanced programming techniques. It is designed for both beginners and experienced programmers looking to deepen their understanding of C++.
UNIX
A History and a Memoir
Brian Kernighan
Brian Kernighan's "Unix: A History and a Memoir" offers a personal and insightful account of the development of the Unix operating system. The book details the unique environment at Bell Labs that fostered innovation and collaboration, highlighting the contributions of key figures like Ken Thompson and Dennis Ritchie. Kernighan shares anecdotes and reflections on the design principles and cultural factors that shaped Unix's success. The book explores the evolution of Unix, its impact on the computing world, and its enduring legacy. It provides a valuable historical perspective on a pivotal technology and its lasting influence.
The C++ programming language
Bjarne Stroustrup
This book provides a detailed introduction to C++, covering its core language features, standard library components, and advanced programming techniques. It is designed for both beginners and experienced programmers looking to deepen their understanding of C++.
Today we have a special treat. A conversation with Brian Kernighan! Brian’s been in the software game since the beginning of Unix. Yes, he was there at Bell Labs when it all began. And he is still at it today, writing books and teaching the next generation at Princeton.
This is an epic and wide ranging conversation. You’ll hear about the birth of Unix, Ken Thompson’s unique skillset, why Brian thinks C has stood the test of time, his thoughts on modern languages like Go and Rust, what’s changed in 50 years of software, what makes platforms like Unix and the web so powerful, his take as a professor on the trend of programmers skipping the university track, and so much more.
Changelog++ members get a bonus 2 minutes at the end of this episode and zero ads. Join today!
Sponsors:
Square – Develop on the platform that sellers trust. There is a massive opportunity for developers to support Square sellers by building apps for today’s business needs. Learn more at changelog.com/square to dive into the docs, APIs, SDKs and to create your Square Developer account — tell them Changelog sent you.
InfluxData – The time series platform for building and operating time series applications — InfluxDB empowers developers to build IoT, analytics, and monitoring software. It’s purpose-built to handle massive volumes and countless sources of time-stamped data produced by sensors, applications, and infrastructure. Learn more at influxdata.com/changelog
FireHydrant – The reliability platform for every developer. Incidents impact everyone, not just SREs. FireHydrant gives teams the tools to maintain service catalogs, respond to incidents, communicate through status pages, and learn with retrospectives. Try FireHydrant free for 14 days at firehydrant.io
MongoDB – An integrated suite of cloud database and services — They have a FREE forever tier, so you can prove to yourself and to your team that they have everything you need. Check it out today at mongodb.com/changelog