Zach Irving: Economics, Computer Science, and Building Models

This week I am excited to share part one of an interview I did with Zach Irving. I met Zach freshman year at LMU. We were assigned as roommates, and we have been great friends ever since.
Zach is an Economics and Computer Science double-major with a Philosophy minor and a Math minor. Yep, he's doing it all! He has a multiplicity of interests, and we regularly have wide-ranging conversations and debates.
This summer Zach has been working as a STEP intern at Google. He was kind enough to share some of his time and insights for this interview. I hope you enjoy it!
Introduction
Ian Gray: Why don’t you start by introducing yourself, Zach? What’s your story? How did you end up at LMU?
Zach Irving: I'm Zach. I'm a computer science and economics double major, and I am studying at LMU, Loyola Marymount University, in Los Angeles. Originally, I'm from England. I moved to Orlando when I was seven. So, I've lived there for most of my life.
I came to LMU because I was, I guess, looking to get out of where I was and find somewhere that was far away. Not because I thought of where I was as bad, but just because I wanted something new. Also, the main reason why I chose LMU is because they gave me the most money if I'm being honest.
It was also kind of my first choice because I wanted to go to LA. You know, California is like the land of beaches and trees and all that kind of stuff. One of my rules is that I am only going to live places where palm trees grow.
Ian: That’s a good rule!
Zach: It is a good rule.
I’m majoring in computer science and economics because basically I just enjoy solving problems and trying to figure things out. I enjoy trying to understand how systems work and how things come together and produce something, and how many components come together to produce something that's bigger than the sum of the parts.
Computer Science
Zach: I got into computer science in high school. When I was a freshman, I didn't really know anything about computers, anything like that. But one of my friends was in the robotics club, and he invited me to come. He said there was free pizza or something, so I went.
And I really enjoyed it. Mostly, at first, I built the robots. I focused on the hardware side, which is basically putting all the motors and stuff like that on the axles, all those kinds of things. I enjoyed that because I enjoy creating things. It was cool to actually build something that you can see with your own two hands.
I did that for the first two years. And in the last two years, I switched over into software because we lost our programmer. I really enjoyed that because it was problem solving. I didn't have to, like, get a saw out or anything like that. I could just sit with a laptop and make the robot do something cool. I like software and I decided to major in it because I had enjoyed doing what I did in their robotics program.
Since then, I really got to realize how much computer science is actually not just about creating some software that can solve a problem, but also understanding the general nature of problems, and what are the best algorithms or software design that can help solve those types of problems. So, that's what computer science is. It’s a much more general form of programming.
One general type of problem in computer science is called dynamic programming. Dynamic programming is the solution to the type of problem where on a first glance it seems like the only way to figure it out is going to be by trying all the different combinations.
The classic example is if you're trying to make ten cents and you have one- and five-cent coins, what's the smallest number of coins you can use? With something like that it's super easy for us as people to say, “okay, two five-cent coins.” But it gets much harder when you ask, "What about one-hundred one cents?" "What about 1113 cents?" It's hard to figure out what’s the smallest number of coins.
The people who came up with dynamic programming figured out if you want to make 1113 cents, you could look at it as making 1112 cents and then making one cent. At first you think, “that doesn't make it very easy.” But if you do that over and over again, eventually the problem at its base just becomes, “How do I make one cent?” “How do I make five cents?” Then, “How many five cents do I need to go into 1113 cents,” and whatever is leftover. It's just a decomposition of the problem. Then, there's all sorts of ways you can save time.
I probably went too much into the example. But just the idea that by trying to figure out what a problem is actually asking us, we can figure out a way to program something to solve that problem. It really forces you to understand how you're actually solving a problem as opposed to just defaulting to your instinctive answer. How did you get to two five cent coins equals ten cents? It's easy for us to just come up with an answer, but it's hard to say exactly what the steps are that we subconsciously took to get to that answer? And how can you make something which can't make those intuitive leaps? How can you program something to do that for you?
Ian: That’s really interesting.
Economics
Zach: Economics, for me, is just something that I was always interested in on the side. I'm always fairly interested in figuring out how the world works. And for a while now, I've been convinced that the way the world works is fundamentally economic.
I would say that economics is the decisions people are making and the money which they have to make those decisions, the specific skill sets they have to offer, and the specific things that they desire. Economics is how all of these wishes, desires, power, and all of those things go together and create basically the way the world works.
To me, that's what economics tries to study. It’s basically the science of human interaction with each other within a society. There is other stuff like sociology, which tries to study that too. But for me, economics is the way of studying it that gets at the root of it.
For instance, there's a concentration of income at the top. How does that occur? And what are the results of it? As opposed to saying that just is bad or something like that? I think I would say it is bad, obviously. But more fundamentally, I want to understand why is that the case so that I can figure out how I would change it. Or if it's something that even needs to be changed in the first place?
Economics is incredibly complex because of all of these different factors. People are not simple in the way that even something like physics is. Physics is like trying to figure out how atoms and protons and molecules all bump together and interact, and there are physical laws that you can learn and apply. In economics, there are laws that you can learn and apply, but they're not as strict and they're not as well-known because people are strange and make strange decisions and there's so many variables that it just becomes super difficult to figure out.
Ian: Would you say that what sets apart good economics from bad economics is the extent to which people choose the right variables and disregard the ones that aren't relevant?
It seems to me, at least the further I get into economics, that to solve any sort of economics problem, you always have to make some sort of assumption and that that assumption can sometimes pre-determine your answer. Would you say that that's one of the things that you're trying to figure out as you work through models? Figuring out how to make good assumptions?
Zach: Yeah, I think one of the things that economics attempts to do, successfully or not, is to handle that problem in two ways. It doesn't say that theoretical models are obsolete.
I think that there's a tendency sometimes to say, "If we try and understand all of these interactions and all of this data, as soon as we try and put any kind of story to it or explanation to it, we're going to lose some correctness and some understanding, so we just shouldn't do it. We should just say that this is the data."
But then if you do something like that, you can't really make any kind of predictions, and you can't understand, which was the whole point in the first place of trying to understand how things are working.
So there has to be some loss of information, like you were saying, there has to be some assumptions that we make, and some variables that we ignore, in order to understand how things work in a way that we can fit into our heads. And then at the same time, we also want in economics to test those assumptions that we've made, and the variables that we've left out.
Economics is at the same time both a sort of theoretical science and also an empirical science. So it also says, “what if we tried putting in these variables?” Maybe someone else thinks that those are relevant, and so they put them in. We have all sorts of econometric ways of measuring when we put in those variables if it has better explained our results or not, if it better fits the data or not. It's always this balance between trying to model the economy and then trying to use the actual economic figures we have to determine if that model is right.
Ian: It's that balance of trying to find something accurate and something meaningful. We are trying to find how can we make it as accurate as possible while also extracting as much meaning as possible from it. Like you were saying, we do this by finding the right combination of variables.
Zach: Exactly! Even something as simple as supply and demand. If the price goes up, the supply goes up, the demand goes down. That's an economic law. It's one of the most commonly accepted ones. We have tons of good data showing that, most of the time, this does hold, but we also know that sometimes that doesn't always happen. Right?
There are certain cases where it's less true. For instance, if the demand is constant or people really need this thing and no matter what the price is, they're willing to pay it. There are even some cases where the actual price of the good is what causes the demand for the good. Some people buy a Louis Vuitton bag because it's $1,000, and they want to show that they have $1,000. Lowering the price of the Louis Vuitton bag to $25 would make people not buy it anymore because it’s not exclusive anymore.
But it's a balance, right? I mean, you still want to be able to understand that as price goes up, people are going to want to sell more things, because they make more money. People are going to demand less things because it costs them more money for the same thing. But at the same time, you can't do that if you just look at a series of transactions or something. Because that’s what that model is based off of. It's modeling a series of transactions. But if you just look at it as a totally disconnected series of transactions, you can't understand it. It's just data. You have to be able to abstract from the data and to create a model of the data that works, even if it doesn't work 100% of the time. At the same time, it's important not to dismiss those other points of data because they lead you to other things. Understanding how luxury goods work for example.
Building Models
Ian: Yeah, that's interesting. Do you think that these fields of study are related at all? Do you think you find crossover, either obvious examples or even more theoretical connections between your two majors? Do you find that getting better at computer science has made you a better economist and vice versa?
Zach: Yeah, the obvious and simple examples are programming and math. In economics, especially in econometrics, looking at this empirical data is largely programming and math based. There are Stata and R and all these statistical software languages that you need to learn in order to have a computer do this modeling for you, because it's just too much for a person to look at.
If you look at the old economists, like Adam Smith, they had to look at just one thing like grain records or something over just five years because a human could only synthesize so much information, but a computer can do a lot more. We've been able to have a lot of advances by applying the tools that people have developed in computer science and applied with economics and math.
Both computer science and economics are super math driven. There's the simplistic supply and demand models and stuff like that, but then anytime you want to do a rate of change or anything like that, you're talking about calculus. Then, you quickly get into more mathematical models to try and understand the economy. And the same thing is true with computer science. If you start getting into comparing algorithms, you begin asking, “as I increase the size of my database does my algorithm’s speed increase exponentially or logarithmically or something like that?” So both majors use math heavily.
Those are the obvious two areas where they overlap, but there are other random ones too. Game theory is another random thing that happens to be in both economics and computer science. Also, the idea of abstraction is present in both fields.
With computer science, you have some problem, and you solve that problem specifically. Then, you abstract from that and say, “here's what I can take from this problem and also apply to this other problem. And here's what I can take from those two problems and also apply to this other problem.” It is this idea of abstracting and creating a basic model for solving problems.
In economics, you have this abstract model of the economy that you use to then understand specific things. You have a Keynesian economic model or something, and then you use that to understand what happened in 2008, the Great Recession, and then you can apply that model to all sorts of things.
So both of them, I think, deal pretty heavily in the idea of abstraction and creating models, either for solving problems or for understanding events.
Ian: That’s really interesting.
Thanks for reading part one! I hope you enjoyed it. Check back next week for part two! If you have any questions, contentions, or thoughts on what we talked about this week, comment, and I will pass them along to Zach.
[blog_subscription_form subscribe_text="Enter your email to receive weekly posts in your inbox"]