Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

I am 16 and never really paid attention to math. For me it was just one more obstacle in passing the exams.
Now that I study computers, mostly on my own, I find that there is indeed a need for me to study math. Various topics like cryptography, etc require math. Where do I begin?

share|improve this question
    
Homework tag? Seriously? –  Nameless Dec 24 '12 at 12:19
8  
yeah, I will be doing this work at home so homework –  Little Child Dec 24 '12 at 12:22
2  
@LittleChild That is not the conventional use of that tag here. Homework is an alert to the people providing answers that they should take the form of hints. –  peoplepower Dec 24 '12 at 12:40
3  
@LittleChild Answering a few questions can help us give better advice: Are you behind for your age? If so, how far? What current skills do you already have? What is your time scope? Can you dedicate the next month, semester, or year to improving your mathematical skills? Are you sufficiently motivated? Is there any hurry (some sort of programming competition?) to prepare? You are only 16, most people take their first cryptography class around 20 years ago. –  Ragib Zaman Dec 24 '12 at 12:51
    
A good Group Theory book, a good Linear Algebra book, a good Real Analysis book, a good Topology book. Now you know what we are talking about. –  Ivan Dec 24 '12 at 13:07

8 Answers 8

up vote 6 down vote accepted

As all the answers mentioned Khan academy, it is definitely a good start to learn about the topics you have to know. But what are these topics?

In my opinion there are a few domains in math which should be covered when studying computer science. These domains are

  1. (Algorithmic) Discrete Math (Logic, Algebra - Group Theory and stuff like that -, Combinatorics, Graph Theory)
  2. Linear Algebra (all about matrices and independece of mathematical structures)
  3. Real Analysis (self-explanatory)
  4. Discrete and Continuous Probability Theory (mainly used for Cryptography and Artificial Intelligence)
  5. Theoretical Computer Science and Complexity Theory (what are languages, problems and which models of machines do exist to solve them - and is there any way to solve them?)

But this list is just my point of view I would suggest - what you REALLY need, is the actual thing YOU have to find out!

share|improve this answer

I think this is just wat you need: every basic math thing explained in video form: https://www.khanacademy.org/

share|improve this answer

Math has many areas. I suggest the following:

  1. Get to know a little bit about every area. Get familiar with notation. As Joyeuse Saint Valentin suggests, Khan Academy is a good start. I suggest just going a few lectures deep across many fields.

  2. Once you know a little about everything. I suggest that you study the area that you need to know for the field of computer science that you are studying. For example, if are studying Artificial Intelligence, you need linear alegbra. An example of a linear algebra text book is this. Once you know a little about everything, you could also identify what you need to know to master cryptography.

Also, I can relate to your experience. I found that what turned me off math class was that teachers encouraged wrote learning instead of understanding. In retrospect, I think most of them wrote learnt the material and did not understand it themselves. I also had a teacher in primary school who rather than explaining maths, just said "yeah, what Andrew said" when Andrew called out the answer. Andrew had studied math one or two years ahead of the school curriculum. So there was nothing wrong with math, just math class.

share|improve this answer

Before you get too heavy in math, you might want to look more into exactly what kind of math you need.

My recommendation would be to look into discrete math, then just take some online courses, Khan Academy and Udacity are probably good places to start. The former for learning math in general, and the later for learning what math you probably actually need.

Unless your doing physics simulation, you should probably focus on discrete math and algebra instead of say calculus. You also might want to look into geometry (especially computational geometry) if your thinking of perhaps doing something with coordinates or graphics.

share|improve this answer

I agree with the other answers saying you should start at khanacademy. You can start at the very beginning: Arithmetic and Pre-Algebra, and work all the way up to Linear Algebra, Differential Equations, and anything else (of course, only if you need to go that far). The site has got questions for almost every subject, so you can practice with the theory you've learned in the videos, but I reckon that won't be enough. So I recommend searching for extra questions just to really master every subject. You can also search for computer science courses if you want, you can find literally anything on the internet.

What has troubled me in the past with math is the way it is usually taught at school. You are given a formula, or a method to solve a particular type of question, without actually gaining the intuition as to why you should do it like that. If you just study math like this, it is harder than it needs to be. If you actually create an intuition, it will be a lot easier. This site can help you with that, if you ever come across anything and you don't know why it is used/when it is used/etc, just ask.

If you don't like math, just remember that it is the key to your ambition, and that you can fully explore 'the computer' once you get the math out of the way. It's like eating your vegetables before eating the nice meat. However, I think that you'll start to like math more if you do it correctly (as described in the 2nd paragraph), and it will get less tedious if you do.

share|improve this answer
    
With all due respect, Khan is not mathematics. Khan is a list of courses in passing exams. –  akkkk Dec 24 '12 at 13:03
    
@akkkk For someone starting from scratch, khan is an excellent place to start. I agree you won't learn a lot from it after you've reached a considerable level, but I think it might help this guy. –  JohnPhteven Dec 24 '12 at 13:05

I did M.Sc. in both math and computer science and from my experience I can recommend you the following things:

  • Linear algebra (could anybody recommend any books?). It is crucial in literary every math and computer science research area.
  • Analysis 101 (functions of one variable, sequences, series, differentials, integrals, etc.).
  • Discreete mathematics, try this book, it is rather friendly and might be a good place to start.
  • Probability, try this book.

BEWARE! This is if you are dedicated to study computer science only. As you are young, I urge you to keep your options open. In real life you wouldn't like to limit your future possibilities, there is a wide range of computer applications in bioinformatics, physics, economics, and other domains. The wider perspective you will be able to gain now, the easier it will be for you later.

Also, there are some specialties like this book which can help you understand how beatiful math can be and what kind of wonders it has to offer. For me to deeply appreciate math is more important that just to know how to use it.

Take care!

share|improve this answer
1  
This is just awesome for anybody who wants to study linear algebra: ocw.mit.edu/courses/mathematics/… –  MSKfdaswplwq Dec 24 '12 at 13:21
1  
@JoyeuseSaintValentin Great, thanks! –  dtldarek Dec 24 '12 at 13:27

Precautionary note: I am also a beginner here. (But!) You can still believe me because I know I am sincere.


The Rule of Thumb: Never go too hard on yourself; where there is a will—there is a way!

Chill down... there are a lot of resources on the web. You can always get books. Books are your best friend. I read books related to Mathematics whenever I am depressed. You can even watch lectures if you fail to understand the long texts. Another thing you need to do is to love Mathematics. Note that Mathematics is not just the high school mathematics.

Ordered tips:

  1. Start by fetching any book for mathematics. Open the contents, then the introduction/preface.

  2. Read a few pages and see if you love the book. Continue with this process only if you like it. Now search some keywords on this site associated with what you have learnt after reading a few pages.

  3. Answer questions! One has learnt when one knows how to explain.

  4. Read blogs on the internet associated with your subject.

  5. Go to chat and talk to others for a break.


List of online resources:

  1. Khan Academy: A website for high school and undergrad level mathematics.

  2. MathOverflow: A website for research-level mathematics.

  3. Book Boon: Download free e-books.

  4. Google: Search anything.

  5. Wolfram|Alpha: Online computation engine.

  6. Wolfram Mathematica: Software to visualize and calculate easily with full control.

  7. MATLAB: Understanding mathematics through programming.

share|improve this answer

To add to all this answers: many of them are really giving advice on a lot of topics which probably are to advanced for you now (but maybe not in a year...). Until you have got to speed in elementary algebra (yes, the high-school kind), everything will be difficult. So take just one of all those books you have been pointed to, which you like, and concentrate on doing exercises. Do all of them! until it becomes easy. Do them in as many different ways as you can find! Learn different proofs of the same theorem (the 12-something Paul Erdős (google him!) boasted of knowing 36 different proofs for the Pythagoreanas's Theorem!)

Others have been given software, but all of them were commercial. Here is a short list of free software you can find useful:

Sage is much easier to install in GNU Linux than under Windows, for the others it doesn't really matter.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.