QUOTE(maxthepiro @ 24 Apr, 2008 - 08:21 PM)

in a couple of years, i wanna be a C#, Java, PHP and SQL ninja. Anyone got any tips on the best way to get better?
There are many ways to better yourself in Programming.
1. Read books
ensuring you try the examples, and reflect at the end of each chapter to ensure what you have learnt has stuck.
2. Participate in Open Source. There are plenty of ways to do this, such sites include SourceForge and Google Code.
3. Answer questions right here at </dream.in.code>. Many of the questions asked here are real world questions that you will be expected to know on the job.
4. Writing tutorials I've found is a great way to learn even more about the subject you are demonstrating. While you are explaining concepts and researching them yourself to get a more clear and consise explaination, you are furthering your knowledge, and you are writing it down. </dream.in.code> also has a section for Tutorials.
QUOTE(maxthepiro @ 24 Apr, 2008 - 08:21 PM)

Whats the best and fastest way to learn new languages? Buying books, online tutorials, or just hacking around in other people's code?
The speed of learning a new language varys from person to person. Here are some tips to make learning a new language faster:
1. Understand Program flow (very vital and important).
2. Start small (don't drown in the deep end).
3. Know the limitations of your language (is it a scripting language? client/server side?).
4. Learn the syntax of your language.
5. View online tutorials and snippets of your language, taking note of how and why stuff happens.
6. Like what you are doing. (C++ might be good for some, it might not be so good for others).
7. Give your brain plenty of time to reflect (don't force-feed it information).
But most importantly, the only way you are going to get better in any language is experience and time.
Hope that helps.