Strategies to study apart from "books cover to cover." I have never really liked reading a book from cover to cover (because I usually get bored). Most of what I've learned so far has been picked up from forums like this one, or occasional reading from books, but now (when I'm about to finish my undergraduate studies and thinking about starting graduate school) I face this situation where I need to solidify the things I know in order to study more serious topics, and I realize I can't continue learning this way anymore. 
Do you guys have any advise or strategies on how can I learn (say, differential geometry) without spending my time reading an entire book. It is not that I find the topics boring or that I want to find a shortcut, I just don't think the linear way the topics are presented in books is for me.
 A: As Alexander Gruber has pointed out, just plain reading a book can be boring. When I read a book, I generally have my white board (portable size) and work through the examples or problems so I am not just reading the book I am interacting with it. 
You will find in many upper level math books, as you read them or in your case if you read them, that the examples tend to not be complete. The author will add some guidance and say the rest is left for the reader. That is, you will have opportunities to work on problems before you hit the problem section.
I used to not read my math books too and did well in all my classes; however, I think I would know the material so much better if I got into the habit of reading the books early on, because now, I do read the books and think of what I missed out on the first time around. Purely reading the chapter you currently doing in the course should only take 20 minutes (minus working through the problems) so you will still have time to do other activities as well or just plain move onto something much more interesting.
A: Reading math books to learn math does, at least at times, feel a bit like reading a dictionary to learn a language. Linguists and polyglots will affirm that this is a bad strategy.  Instead, they will recommend that you go find some people who speak the language you want, and just start talking to them!  If you run into something you don't know how to say, you can ask them how to say it, or refer back to your dictionary at that point.
That's how I learn math, too.  I find some topic or problem that I'm interested in, then come up with my own questions to explore, and learn related information on an as-needed basis.  That way all the new information is motivated by whatever it is that I'm trying to do, and nothing ever feels without context. I call it the "Carrot on a Stick" strategy.
Then, I just keep going with it.  I'll tell to my friends about my carrot, discuss it with professors at my university, sometimes I'll even send emails to bigshots in the field asking what they think. (They usually write back!) I'm also big on running computational experiments, usually with something high level like Mathematica or GAP, so that I can just play and see what happens. Meanwhile, I keep writing and compiling my notes, and build up a document that contains everything I learned.  When I get stuck, I can show this document to other people, or at least use it to convince myself that I've actually been working on something worthwhile. Occasionally, for smaller topics, this becomes one of my questions on Math StackExchange.
It's not the most organized way of learning, but for me, it's a lot more effective than reading books cold. My theory is that some people just learn better in "output mode." If I want to understand something, I can't just soak in other people's ideas-  I need to produce. I have to write about it, make a simulation, or teach it to somebody else. So, whenever I start up a new subject, I look for a carrot to chase.
