Many students start out liking math. Some like it well enough that they even want to teach it. However, when they reach advanced math classes (such as abstract algebra), they become bewildered and frustrated. Their textbooks talk about strange mathematical thingamabobs they've never heard of, which have nonsensical properties that come from who knows where. In lectures, the professor/oracle makes pronouncements (a.k.a "theorems") and utters long incantations (a.k.a "proofs") , but it's hard to see the point of either.
If the above paragraph describes you, then this book is meant for you!
There's a good reason why higher math classes are bewildering for most students. I believe that we, math instructors, tend to take too much for granted. It's easy to forget that we're only able to understand abstractions because we have concrete examples that we keep referring back to, consciously or subconsciously. These examples enable us to fit new abstract ideas in with specific behaviors and patterns that we're very familiar with. But students who don't have a firm hold on the examples have nothing to hold on to, and are left grasping (and gasping) for air.
To be sure, most students have previously been exposed to various important examples that historically gave rise to abstract algebra. These examples include the complex numbers, integers mod n, symmetries and so on. They can give definitions and do some basic computations according to the rules. But they haven't been given a chance to internalize these examples. They can kind of follow along, but they aren't "fluent".
Our hope is that after reading this book, students will be able to say, "I've seen complex numbers, integers mod n and permutations before, but now I understand what makes them tick. I can see they have deep underlying similarities, which they share with other mathematical structures."
This is actually a very good time to be learning abstract algebra. Abstract algebra has moved from the outer boondocks inhabited by specialists and puzzle enthusiasts out into the center stage of modern science and technology. Two areas where abstract algebra has made strong contributions stand out particularly: information processing and physics. Coding of information is at the heart of information technology, and abstract algebra provides all of the methods of choice for information coding that is both reliable (impervious to errors) and private. On the other hand, many if not most of the great advances in physics in the past 100 years are due to deeper understanding of physical symmetries and the groups that produce them (the Lorentz group in special relativity is just one example). We try as much as possible to make connections with these two areas, and hope to do so increasingly in future editions.