So /g/ I have no Comp Sci background and I want to learn some shit. What are some maths, languages, sciences, and shit I should learn? I want to get a good foundation, I'm a bit old at 21, but I want to do it.
>>54387274
get some calculus in you, then learn a programming language like python/ruby/java/c
but don't get sucked into learning physics
>>54387274
For math, discrete is probably the most important for basic CS. Learn that and all the prerequisites. Do it alongside with the programming.
For programming start off in something simple like python. Practice alot. Do small projects. Get really familiar with it.
Then do the same thing with C++. While doing this read on data structures and algorithms. Implement them.
Once you have that foundation learning other languages should be pretty easy. Start taking on bigger projects and learning about design principles. Once you start doing bigger projects learn git and how to run test suites and use source documentation tools. It might be overkill at first, but when you work in industry or get to really big projects, you will need it. Also throw in other material you are interested in at this point that isn't language specific. Like comp org, assembly, programming language design, compiler design, etc. This gives you more of the science part rather than just being a code monkey.
Most importantly, don't give up too easily. This shit is hard to do right. It will take a long time to learn, and even then you can always grow and improve in some areas. If you just don't end up liking it, that is fine too. It isn't for everyone.
>>54387482
What kind of projects do you mean?
>>54387274
read some books
http://4chan-science.wikia.com/wiki/Computer_Science_and_Engineering
>>54387274
"bit old at 21"
u wot m8?
>>54387274
You're not old with 21. You have plenty of years ahead to get good..
I'd haighly advise to NOT start too theoretical. It will only turn you off..
Instead work yourself straight through an interactive course and learn a langauge.
Here's an good overview of free online courses:
>http://www.inc.com/larry-kim/9-places-you-can-learn-how-to-code-for-free.html
Which language?
Totally depends what you want to do with it..
C is a very "fundamental" langauge (Windows or Linux are written in it). But since it's old, it's a little bit "ugly" and difficult. You should learn it sooner or later, but maybe it's a little bit unsexy as a start.
Java is a Langauge you also find very often an "starting Language". It's also the langauge with the highest demand in industry. It's easier and more forgiving than C, but it's not the most beautiful language.
Python is a very easy and powerful Language with good tutorials and can be found a lot in scientific areas and scripting. I'd recommend it.
Ruby is pretty close to Python but pretty much all about Web development. (I'd say don't start with we stuff directly, because it requires a lot of different stuff like JSON, HTML, JavaScript, CSS, ... - this can be confusing for beginners).
Anyway, there are probably a lot of good languages I didn't mention, so feel free to learn something different. But I'd say Python is a pretty good start, then switch to C, then add Java.
You should also go to rosettacode and get some nice ideas what to code, after you get the fundamentals.
This way you should be able to get somewhere in some weeks, depending on how much effort you put in.