Tim Sweeney
speaker
640 appearances
1 recordings
1 series
first heard Apr 2025
last heard Apr 2025
Tim Sweeney’s voice in public audio — every appearance, attributed to the second.
Trend
recordings per month · last 12 monthsNo recordings in the last 12 months.Older appearances are listed below; set an alert to hear about the next one.
Appearances
I had a brother, Steve Sweeney, who was 16 years older than me. At some point when I was a little kid, he went off to work in California for a tech company, and he'd gotten one of the first IBM PCs. So for one summer, I think I was about 11, I went to visit him in California. It was my first trip away from my family, just to hang out with him.
He had this brand new IBM computer, and I learned to program over the course of a few days in BASIC. I was just blown away. with the capabilities of computers at the time. It was unbelievable what they could accomplish. And I was hooked from that point onward and very much wanted to be a programmer.
Yeah, it's funny. I have a perfectly vivid memory of all of the first things I learned to program. I have a hard time remembering people's names, but code really sticks with me. Every step and every challenge, there were lessons learned. Some of which I've come to realize were just me getting over some learning hurdles, but other things were actually shortcomings of programming languages.
And the realization that there are actually better ways. And when a programmer is learning to program for the first time, a lot of what they're facing isn't the challenge of learning a new art. It's the friction introduced by failures of programming language design.
And so I've constantly come back to those early lessons there as I've progressed and done more and more things, including building programming languages.
Yeah, in the early days, I wrote a little bit of everything. I wrote some games. The first game I wrote on the Apple II was, since I only knew how to program in text mode, the computer would throw asterisks across the screen. They'd flow from left to right, and you'd have a parenthesis on the right-hand side of the screen. It looked like a baseball mitt, and you're supposed to catch the asterisks.
That was my very first game. It took about a couple hours to build and tune, and I went from there. But I built a lot of things. I built... at different points. I built a programming language and a full compiler for a language like Pascal because I didn't know where you went to buy one of those. So I made my own. And one of the fun things of that time was bulletin boards.
Before we had the internet in the hands of consumers, you used your modem and you dialed into a local phone number and connected to whoever was running the computer there. And every town or city had hundreds of these bulletin boards run by different people with their own personalities and themes.
And so I spent a lot of time building a board and board program and learning how to deal with database management and user interface and dealing with multiple users concurrently and things. And so I probably found about 115,000 hours writing code just on my own as a kid between like age 10 and age 20 before I actually shipped a program to the outside world.
Yeah, you know, it's not just hours. It's really striving to learn, to understand what knowledge you have, what knowledge you lack, and to continually do experiments and work on projects that improve your knowledge base. And I didn't do this with a great amount of structure or planning. I was rather just going from project to project, doing things that I thought would be fun and cool.
And with each project, I learned new things. learning about how to store and manage data, learning how to deal with advanced data structures, how to write complex programs that have deeply nested data and control flow. Each one of those provide a lesson which were later essential.
In 1991, I released my first game, and over the course of that decade, we went from zero commercial releases to the first generation Unreal Engine. But this was largely just using the knowledge that I'd built up over the previous decade, just doing fun hobby projects. And if I hadn't done all of that work, there's no way I could have ever built the things that came later.
Yeah, there were definitely karate kid moments. Because all this time I was learning math in high school and in college. I studied mechanical engineering. And so you learn all kinds of math, vector calculus and vector math and matrices and all these related fields, physics and stress and strain and how to deal with complex physical systems. And Yeah.
I wasn't really sure how engineers would actually make use of that knowledge. Do you just like forget about it when you actually go off to do work? Or do you write down equations on paper? It was actually not clear as an early engineering student what you do. But when I started writing the first generation on real engine and I was dealing with 3D math, I was like, wait, I know this stuff.
I learned this. Yeah. And so suddenly, like the karate kid, you get to paint the fence and wax the car and suddenly put all the pieces together into a 3D engine based on a whole lot of accumulated programming language and math knowledge. Often knowledge gained without ever anticipating that I might use it in that way.
That's right, and constantly striving to make connections between these fields and look for their applications. Long after I chipped on Unreal Engine, it was like going back through an engineering textbook and looking at, oh, yeah, I used that, I used that, I used that. And then I got to the section on eigenvalues. I'm like, I don't know what the hell this is.
But, you know, it turns out eigenvectors and eigenvalues were the critical breakthrough that made the Google search engine technology work and stand apart from the rest because they found if you threw all the links that exist in the web and, you know, links from and to different sites and you put them in a giant matrix and you found the dominant eigenvalues, then those eigenvectors described the best search results for different things.
And so constantly... Picking up knowledge and looking for ways to put it together is the thing to do. And if you aspire to be a programmer, you've got to write a lot of code and you've got to continually learn new things and improve. If you want to be an artist, you've got to continually draw artwork of all styles and all kinds and constantly push yourself to learn more and more.
Because you never know exactly what you're going to end up doing in the long run, but the more knowledge you have and the more skills, the more chance you have putting it together and being successful.
I found getting an engineering degree and then never working in an engineering field, just being a computer programmer, was immensely valuable. Yeah, I went to University of Maryland, which for some disciplines, it's kind of known as a party school, but they work the engineers to death, worked really hard.
Showing 1–20 of 640 · page 1 of 32
Next →