of idiocy. If you go into school, or you come out of school, and you're a doctor or you're a lawyer or you're an engineer, you expect that the rest of society or everybody that you deal with is going to have at least a base level of idiocy, I guess you could call it. Which is, you expect them to know at least what you knew when you first went in. And I think that causes frustration. I think that when we've got software being developed, and somebody says, "I kind of sort of want a system that kind of sort of does this," the software engineer might say something like, "I know exactly what you want." And we've all seen those depictions of "what I wanted was not what I got." And why do you think that happens? In construction, we've got floor plans, and we can say, you know, "I want a two-bedroom, three-story house." And typically, you're going to end up with something that looks fairly similar. Why do we have all the problems in software?
Mauricio: For many reasons. Maybe the first is that construction has been going on for about 3,000 years at least. Like the pyramids, think of the pyramids. People have been learning about construction for a long, long time, while software development has been around for about, let's say, about 30 years only. And that's a very, very small amount of time considering 3,000 years as a basis. And something else. You go to your house, and you see the interior of the house every single day of your life. And you go to hotels and other people's houses, you get many, many examples to draw upon. And that doesn't happen in the case of software. Even though you may interact with the Internet, and you may use Quicken or other systems at home, you will not have so many experiences, so many different experiences of the interior way software is built as you have in houses. And there are many other options also. And software is evolving much, much faster than construction. How long have you had rooms and bathrooms and kitchens? For hundreds of years at least. And how long have you had the Internet? Four years, at most.
Carol: Do you think that the whole Internet speed… I know that Steve McConnell just wrote a book called After the Gold Rush, and he talked about programmers kind of being tied into the most common way of programming in the United States, which is code and fix, code and fix. Is the code and fix the most dominant way of designing systems in Brazil as well?
Mauricio: Oh yeah, yeah, I read that book too. And that's just the way people want to do things, you know. I think that's the friction between engineering and art. Like, people want to be free and create and do it, whatever they want. And the most pleasurable way of doing things is by trial and error. You do it, you do a little bit, and you see what happens. And then you do a little bit more, and you correct it, and you go ahead. But that's not the way engineers have to do things, right? And people will try to do it by code and fix, and you will have to have a way that they will change. And that's what process improvement is all about right now.
Carol: And would you say that software, the way that software is developed, in terms of coding and fixing, one of the things