Materialism and Idealism are two competing schools of philosophy with opposite premises. Materialism teaches that only the physical universe exists, and that if you can't hypothetically touch it, it's not real. Idealism teaches that the physical universe is not real (but instead some kind of elaborate fraud, or dream) and that non-tangible ideas are what's real.
Now, these are not the only two big ideas, and many philosophies exist between the two, such as Cartesian Dualism that teaches that both physical and idea things are real, and have some degree of interaction with each other. However, many other schools of philosophy are strongly connected to one or the other, which is why I bring them up.
See, science, the primary motivation I have for writing this, is strongly materialist, because idealist science would make no sense. In science, one makes a hypothesis, makes observations and experiments, then compares the hypothesis with the observations. If the hypothesis fails to conform to the observations, then it's wrong and needs to be discarded. If science were idealist, one would make a hypothesis, and then flail around helplessly with it because you'd have no way of verifying it other than your own thoughts and the thoughts of others. (Oh, and some of those thoughts would be wrong, but good luck figuring out which ones.)
So what's the big mover of idealism, then? Surely an unsupported idealism would have gone extinct? No, it has a very very large backer: religion. Most religions I can name at least strongly lean idealist (like Christianity), and a few are the very avatar of idealism (such as Buddhism). Believers are given a mental framework that gives them purpose, meaning, an explanation of the physical world, and a goal. Under a more materialist framework, they would be denied most of those things. The materialist universe has no clear purpose, and answers as to its nature will not be handed down on high, but one must work to understand them. If idealism was Wikipedia, materialism would be a dusty and long forgotten tome buried in the library that the librarian kinda half remembers putting there about 30 years ago.
I am not as materialist as I would like to be. As a computer science major, I already work several layers of indirection from the actual operation of a computer: I enter programming as text on a keyboard, it's translated several times before becoming the final machine code which I only loosely understand, and it's stored as a complex series of magnetic fields before being translated into the series of electrical impulses that actually do the work. The electrical impulses aren't very helpful to understanding what the computer is doing. So I think about programming in high level language.