>>1
I feel like posting a serious answer.
If you want to be serious about programming:
1. Google SICP.
2. Download and watch the SICP videos.
3. Read the SICP book.
4. Learn Python to get a more realistic, yet still very powerful tool to get your stuff done.
5. Learn C. While the language is OMG OPTIMIZED and unpractical for most things, it's pretty much a necessary skill to know and understand C.
6. Learn Haskell if you want to become a haskellFag, but it's not necessary.
DON'T learn Java. It'll kill your passion for programming. It's really a terrible language with a terrible API.
DON'T get obsessed with OOP. Objects are just one programming tool, like for loops. You don't do *EVERY-FUCKING-THING* with for loops, do you? Avoid languages which shove OOP up your ass all the time.
As for what to do? I suggest:
- A mini-Lisp (watch SICP, you'll understand).
- The shell tools you always wanted to have but didn't.
- Some work on files' metadata, such as some sort of portable database and interface to set metadata and select files by metadata or standard properties. Publish it here.
- Contribute to GPLv3 projects.
- Become an hero.
>>4
why is lisp/sicp so important?
LISP? Because it's the cleanest, purest language to work with, powerful for abstraction, and because 90% of these programming features "modern" languages are introducing (Python, Ruby, Lua, etc.) were features of LISP decades ago.
SICP? Because it teaches you how to think of processes properly, and is really interesting if you like programming. It'll teach you Scheme, a LISP.
what's wrong with C#?
- Too object-obsessed
- Needlessly overcomplicated
- Features leave something to be desired (although the latest version is much better than Java)
- Platform availability
- Microsoft faggot
But it's starting to look better every day. It's not nearly as bad as Java or C++.
then should i learn both c and c++ or just one or the other?
Learn C. C++ is a piss ugly language. Learn it after C, but only if you must. It's not like you'll want to work with it after you discover LISP.
where does asm come in?
Do you want to develop new OS kernels, very particular embedded systems, or hard hacks? No? Then it doesn't come in anytime.
should i ever bother with VB6 or VB.Net?
No! Basic is a terrible language that will get you used to every wrong thing. VB.NET is a bit better, but still mediocre.
is programming really so full of crap? :{
Depends on your definition of crap. It's crap for what programming is. But it's better than doing something else, isn't it?
What we call crap is due to enterprises and suited businessmen. Just avoid the "crap", and you'll love it. There are many awesome languages waiting for you. Scheme and other LISPs, Python and Lua, Smalltalk, Erlang, Haskell, Forth... All of these languages have unique features that can be interesting and delightful to learn and use. Just avoid the usual path of boredom or failure that Java and C++, and to a lesser degree C# and VB are.
Also, C# is starting to become not-crap. Wait until
LINQ and other functional programming tools are widespread.
>>5
while lisp is a very low-level language
Whut
>>3
java is good for learning the basics of Object-Orientated programming
Whut
>>8
I like how this man thinks.
>>11
lulz
>>17
Lies. Okay, all jokes and memes aside, I do think /prog is a fairly competent bunch. For one thing, people here knows of languages centuries ahead of ENTERPRISE.